从20世纪60年代开始,软件界在感受计算机应用造福人类的同时,更经常遭受软件危 机的袭扰。
以1BM公司的OS/360操作系统为例。它共有4000多个模块、100万行指令.共投入人力 5000名.耗资5亿美元.但在交付使用的系统中仍找出2000个以上的错误。
在客观上,软件不同于硬件。软件开发实质上是逻辑思维的过程,在写出程序并在计算 机上运行之前,软件开发的进展情况难于掌握,质量也难于评价,因此管理软件开发过程十 分困难。同时,软件规模和复杂度呈指数级增长。成百上千人共同开发一个大型系统时,大 量的通信、后勤工作成为问题。这常常是造成软件开发失败多、费用高的重要原因。人们面 临的不光是技术问题.更重要的是管理问题。管理不善必然导致失败。
经研究发现,研制软件系统需要投人大量的人力、物力和财力,但是系统的质量却无法 保证。开发软件所需的高成本与软件产品的低质量之间存在尖锐的矛盾,致使软件开发陷入 不可自拔的恶性循环之中,这种现象被称为“软件危机”(Software crisis)。
软件危机主要体现在
1)软件开发进度难以预测。拖延工期几个月甚至几年的现象并不罕见,这种情况降低 了软件开发组织的信誉。据——项研究统计结果表明:只有15%的项目是按计划进度完成的。
2)软件开发成本难以控制,投资一再追加,令人难以置信。据同样的研究统计结果表 明:仅有10%的项目是按费用计划完成的。
3)用户对软件产品的功能要求难以满足。下面表格列出了在美国因开发的软件不能满足 闻户需求所治成的经济损失的统计资料(1988年)。
4)软件产品的质量无法保证,系统中的错误难以消除。软件是逻辑产品,质量问题很 难以统一的标准度量,因而造成质量控制困难。据统计数据表明,在美国,软件开发项目 的开发时间平均超出计划时间的50%。软件项目越大,情况就越坏。所有大型系统中,大 约有3/4的系统有运行问题,要么不像预料的那样起作用,要么就根本不能使用。1979年, 美国US Government Accounting Office对政府开发的9个软件项目进行了调查.调查结果见表 1—3。随着软件开发技术的发展和科学化、规范化的软件项目管理,使得情况有所改善,但 是问题仍然严重。例如,英国国防部猎迷机载预警系统的需求和设11穆改了无数次,空开车 了复杂的多处理系统的不少功能软件,但该项目终终还是被取消。日本的第五代计算机计 划.投入50亿美元后,因软件原因于1993年被迫下马。
5)软件产品难以维护。软件产品本质上是开发人员的逻辑思维活动的代码化描述,他 人难以理解和替代*开发过程中因规范、标准、编程风格、文档资料、检测手段等很难统 一,导致开发出的软件系统可维护性差。
6)软件通常缺少文档资料。软件的文档是开发组织和用户之间权利和义务的合同节, 是系统总体设计考向开发人员下达的任务书,是系统维护人员的技术指导手册,是用户的操 作说明书。缺乏必要的文档或者文档不合格,将给软件开发、维护带来严重的后果。
7)软件开发生产效率的提高速皮难以满足社会需求的增长率。软件产品“供不应求 的现象致使不能充分利用现代计算机硬件提供的巨大潜力。
评论加载中...
|
Copyright@ 2011-2017 版权所有:大连仟亿科技有限公司 辽ICP备11013762-1号 google网站地图 百度网站地图 网站地图
公司地址:大连市沙河口区中山路692号辰熙星海国际2215 客服电话:0411-39943997 QQ:2088827823 42286563
法律声明:未经许可,任何模仿本站模板、转载本站内容等行为者,本站保留追究其法律责任的权利! 隐私权政策声明