问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

软件危机产生的原因是什么?

发布网友 发布时间:2022-04-26 06:26

我来回答

4个回答

热心网友 时间:2022-06-24 16:46

软件危机产生的原因:

1、用户需求不明确

2、在软件开发过程中,用户需求不明确问题主要体现在四个方面:

3、在软件开发出来之前,用户自己也不清楚软件开发的具体需求;

4、用户对软件开发需求的描述不精确,可能有遗漏、有二义性、甚至有错误;

5、在软件开发过程中,用户还提出修改软件开发功能、界面、支撑环境等方面的要求;

6、软件开发人员对用户需求的理解与用户本来愿望有差异。

软件危机解决途径:

软件工程诞生于60年代末期,它作为一个新兴的工程学科,主要研究软件生产的客观规律性,建立与系统化软件生产有关的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以期达到降低软件生产成本 、改进软件产品质量、提高软件生产率水平的目标。软件工程学从硬件工程和其他人类工程中吸收了许多成功的经验,明确提出了软件生命周期的模型,发展了许多软件开发与维护阶段适用的技术和方法,并应用于软件工程实践,取得良好的效果。

在软件开发过程中人们开始研制和使用软件工具,用以辅助进行软件项目管理与技术生产,人们还将软件生命周期各阶段使用的软件工具有机地集合成为一个整体,形成能够连续支持软件开发与维护全过程的集成化软件支援环境,以期从管理和技术两方面解决软件危机问题。

热心网友 时间:2022-06-24 16:46

软件工程研究结果表明
,软件危机的原因主要有两方面:
①与软件本身的特点有关。
软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件;软件样品即是产品,试制过程也就是生产过程;软件不会因使用时间过长而“老化”或“用坏”;软件具有可运行的行为特性,在写出程序代码并在计算机上试运行之前,软件开发过程的进展情况较难衡量,软件质量也较难评价,因此管理和控制软件开发过程十分困难;软件质量不是根据大量制造的相同实体的质量来度量,而是与每一个组成部分的不同实体的质量紧密相关,因此,在运行时所出现的软件错误几乎都是在开发时期就存在而一直未被发现的,改正这类错误通常意味着改正或修改原来的设计,这就在客观上使得软件维护远比硬件维护困难;软件是一种信息产品,具有可延展性,属于柔性生产,与通用性强的硬件相比,软件更具有多样化的特点,更加接近人们的应用问题。
随着计算机应用领域的扩大,99%的软件应用需求已不再是定义良好的数值计算问题,而是难以精确描述且富于变化的非数值型应用问题。因此,当人们的应用需求变化发展的时候,往往要求通过改变软件来使计算机系统满足新的需求,维护用户业务的延续性。
②危机原因来自于软件开发人员的如下弱点:
其一,软件产品是人的思维结果,因此软件生产水平最终在相当程度上取决于软件人员的教育、训练和经验的积累;
其二,对于大型软件往往需要许多人合作开发,甚至要求软件开发人员深入应用领域的问题研究,这样就需要在用户与软件人员之间以及软件开发人员之间相互通讯,在此过程中难免发生理解的差异,从而导致后续错误的设计或实现,而要消除这些误解和错误往往需要付出巨大的代价;
其三,由于计算机技术和应用发展迅速,知识更新周期加快,软件开发人员经常处在变化之中,不仅需要适应硬件更新的变化,而且还要涉及日益扩大的应用领域问题研究;软件开发人员所进行的每一项软件开发几乎都必须调整自身的知识结构以适应新的问题求解的需要,而这种调整是人所固有的学习行为,难以用工具来代替。
软件生产的这种知识密集和人力密集的特点是造成软件危机的根源所在。
从软件开发危机的种种表现和软件开发作为逻辑产品的特殊性可以发现软件开发危机的原因:
(1)用户需求不明确
在软件开发过程中,用户需求不明确问题主要体现在四个方面:
在软件开发出来之前,用户自己也不清楚软件开发的具体需求;
用户对软件开发需求的描述不精确,可能有遗漏、有二义性、甚至有错误;
在软件开发过程中,用户还提出修改软件开发功能、界面、支撑环境等方面的要求;
软件开发人员对用户需求的理解与用户本来愿望有差异。
(2)缺乏正确的理论指导
缺乏有力的方法学和工具方面的支持。由于软件开发不同于大多数其他工业产品,其开发过程是复杂的逻辑思维过程,其产品极大程度地依赖于开发人员高度的智力投入。由于过分地依靠程序设计人员在软件开发过程中的技巧和创造性,加剧软件开发产品的个性化,也是发生软件开发危机的一个重要原因。
(3)软件开发规模越来越大
随着软件开发应用范围的增广,软件开发规模愈来愈大。大型软件开发项目需要组织一定的人力共同完成,而多数管理人员缺乏开发大型软件开发系统的经验,而多数软件开发人员又缺乏管理方面的经验。各类人员的信息交流不及时、不准确、有时还会产生误解。软件开发项目开发人员不能有效地、独立自主地处理大型软件开发的全部关系和各个分支,因此容易产生疏漏和错误。
(4)软件开发复杂度越来越高
软件开发不仅仅是在规模上快速地发展扩大,而且其复杂性也急剧地增加。软件开发产品的特殊性和人类智力的局限性,导致人们无力处理“复杂问题”。所谓“复杂问题”的概念是相对的,一旦人们采用先进的组织形式、开发方法和工具提高了软件开发效率和能力,新的、更大的、更复杂的问题又摆在人们的面前。这个只是原因,有一些解决的方法,我不想打字了
累死我了!你要是想知道再说吧。

热心网友 时间:2022-06-24 16:47

研制软件系统需要投入大量的人力和物力,但系统的质量却难以保证,也就是说,开发软件所需的高成本同产品的低质量之间有着尖锐的矛盾,这种现象就是所谓的“软件危机”。

· 产生软件危机的原因:

j 用户对软件需求的描述不精确,可能有遗漏、有二义性、有错误,甚至在软件开发过程中,用户还提出修改软件功能、界面、支撑环境等方面的要求。

k 软件开发人员对用户需求的理解与用户的本来愿望有差异,导致开发出来的软件产品与用户要求不一致。

l 大型软件项目需要组织一定的人力共同完成,多数管理人员缺乏开发大型软件系统的经验。各类人员的信息交流不及时、不准确、有时还会产生误解。

m 软件项目开发人员不能有效地、独立自主地处理大型软件的全部关系和各个分支,因此容易产生疏漏和错误。

n 缺乏有利的方法学和工具方面的支持,过分的依靠程序设计人员在软件开发过程中的技巧和创造性,加剧软件产品的个性化。

o 软件产品的特殊性和人类智力的局限性,导致人们无力处理“复杂问题”。

· 要克服软件危机,就要认真分析软件危机的原因,探索用工程的方法进行软件生产的可能性,即用现代工程的概念、原理、技术和方法进行计算机软件的开发、管理、维护和更新。

2. 什么叫软件工程?软件工程的诞生是否从根本上消除了软件危机? 为什么?

解:· 软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。

· 软件工程的诞生只能大大减少软件开发成本并提高软件质量,不能从根本上消除软件危机。

3.软件生存周期为什么要划分阶段?各个阶段的任务是什么?

解:· 软件也是一种产品,同样存在生存周期。把软件生存周期划分为几个阶段后,软件开发按照每个阶段的基本任务进行并产生相应的工作结果,这样有利于对软件开发过程进行管理,有利于提高软件产品质量。

· 可行性研究与计划阶段的基本任务:研究开发该项目的可行性。

需求分析阶段的基本任务: 理解和表达用户的要求。

设计阶段的基本任务: 建立系统的结构。

编程阶段的基本任务: 编写程序。

测试阶段的基本任务: 发现错误和排除错误。

4.什么是软件?如何评价软件的质量?

解:· 软件是程序以及开发、使用和维护程序所需的所有文档。

· 软件质量从可维护性、可靠性、可理解性和效率等方面对软件作较全面的评价.
打字不易,如满意,望采纳。

热心网友 时间:2022-06-24 16:47

1.与软件本身的特点有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件;软件样品即是产品,试制过程也就是生产过程;软件不会因使用时间过长而“老化”或“用坏”;软件具有可运行的行为特性,在写出程序代码并在计算机上试运行之前,软件开发过程的进展情况较难衡量,软件质量也较难评价,因此管理和控制软件开发过程十分困难;软件质量不是根据大量制造的相同实体的质量来度量,而是与每一个组成部分的不同实体的质量紧密相关,因此,在运行时所出现的软件错误几乎都是在开发时期就存在而一直未被发现的,改正这类错误通常意味着改正或修改原来的设计,这就在客观上使得软件维护远比硬件维护困难;软件是一种信息产品,具有可延展性,属于柔性生产,与通用性强的硬件相比,软件更具有多样化的特点,更加接近人们的应用问题。随着计算机应用领域的扩大,99%的软件应用需求已不再是定义良好的数值计算问题,而是难以精确描述且富于变化的非数值型应用问题。因此,当人们的应用需求变化发展的时候,往往要求通过改变软件来使计算机系统满足新的需求,维护用户业务的延续性。
2.来自于软件开发人员的弱点。其一,软件产品是人的思维结果,因此软件生产水平最终在相当程度上取决于软件人员的教育、训练和经验的积累;其二,对于大型软件往往需要许多人合作开发,甚至要求软件开发人员深入应用领域的问题研究,这样就需要在用户与软件人员之间以及软件开发人员之间相互通讯,在此过程中难免发生理解的差异,从而导致后续错误的设计或实现,而要消除这些误解和错误往往需要付出巨大的代价;其三,由于计算机技术和应用发展迅速,知识更新周期加快,软件开发人员经常处在变化之中,不仅需要适应硬件更新的变化,而且还要涉及日益扩大的应用领域问题研究;软件开发人员所进行的每一项软件开发几乎都必须调整自身的知识结构以适应新的问题求解的需要,而这种调整是人所固有的学习行为,难以用工具来代替
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
计算机等级考试有什么条件 全国计算机等级考试(ncre),这个大学毕业了之后可以考吗? 计算机等级考试有年龄限制吗? ...的数据叫做这组数据的___,众数能够反映一组数据的___情况 众众数能够反映一组数据的集中情况. 众数能反映一组数据的___情况. 什么能够反映一组数据的集中趋势;什么应用最广泛,能够充分地反映这组... 众数能够反映一组数据的___情况.在一组数据中,___可能不止一个,也... 众数能够反映一组数据的 ___ 情况.在一组数据中, ___ 可能不止一个,也... 众数能够反映一组数据的集中情况,平均数能准确地评价一组数据的整体情况... 软件危机产生的原因,以及应对方法? 软件工程学的软件危机 华为手机版本11.0.0149和9.1.0.359有什么区别? 快手购物没发货,可以取消订单吗? 花呗支付快手订单没有发货的入账单了吗? 我在快手上下单买的袜子怎么没有消息呢? 快手下单对方没发短信是不是假的? 快手买东西有了订单号,还没有发货,退单的时候就不能退邮费吗? 快手上买衣服下单后商家未发货我选择退款属于退货率吗? 快手平台下单先付款了,但不发货啥办? 快手买东西未发货不想要了,能直接点退款吗? 快手上买东西扣完钱一直不发货,现在交易关闭,联系商家说没有我的订 ... 快手买东西没发货怎么申请退款 快手买东西没发货之前钱是快手保管吗 南京海底世界开园时间 南京海底世界怎么走 法院冻结银行卡,但已结案,银行卡多久解冻 结案后银行卡多久解冻 中国银行储蓄卡,莫名其妙被*冻结了,是不是三天后就恢复正常了? 华为手机9.1.0.185与9.1.0.155有什么区别? 请大神 列举 近几年/几十年国内外 因为软件问题而引发的灾难。 谢谢! 产生软件危机的原因是什么?怎样才可能消除软件危机? 软件危机的表现有哪些? 为了改正错误或满足新的需求而修改软件的过程是什么 A.测试 B.软件设 ... 软件危机的出现对软件的发展产生了什么影响 软件工程的提出对软件危机提供了哪些解决方法与工具 什么是软件工程?它有哪些本质特征?怎样用软件工程消除软件危机? 如何把PPT中数据导入EXCEL 网络IP电话匿名短信能追查吗 ppt文本如何链接到excel指定的单元格数据 如何将图片内容粘贴在Excel里 如何查询谁发的匿名信息 ppt里的图片不能复制粘贴到excel 抖音匿名发信息给我老婆说我找情人报警能查到吗 怎样查找给我发匿名短信的人? 如何查处匿名(隐身)短信的真正号码? 匿名短信诽谤能不能报警?能不能查得到? 用软件发匿名骚扰短信的号码怎么查 快手盛典票红包抢得快必怎么用 分液漏斗的使用
  • 焦点

最新推荐

猜你喜欢

热门推荐