111软件危机的介绍 软件危机:在计算机软件开发 和维护过程中,遇到的一系列严重问 题,造成软件危机。(正常、不正常 成本% 运行的软件都具有这种问题) 典型表现:1、成本和进度的估 80 计很不准确,实际成本比估计成本高6/硬件 几倍十几倍,实际进度比预期进度拖 延几个月甚至几年。2、用户对完成20 年份 的软件系统很不满意:开发人员与用 户的信息交流不充分。3、产品质量 1950 1970 极端靠不住:软件质量保证技术的不 完善和未全面推广
软件危机:在计算机软件开发 和维护过程中,遇到的一系列严重问 题,造成软件危机。(正常、不正常 运行的软件都具有这种问题) 典型表现:1、成本和进度的估 计很不准确,实际成本比估计成本高 几倍十几倍,实际进度比预期进度拖 延几个月甚至几年。2、用户对完成 的软件系统很不满意:开发人员与用 户的信息交流不充分。3、产品质量 极端靠不住:软件质量保证技术的不 完善和未全面推广。 1.1.1 软件危机的介绍
软件常常不可维护:程序中的错误难以改正,“软件重用”难以 实现。 5、没有适当的文档资料:文档资料缺乏、或不合格,软件的开发和 维护极端困难。 6、软件成本在计算机系统中的占比逐年上升; 软件生产率的提高速度,远远慢于计算机的迅速普及和深入发展, 软件产品“供不应求
4、软件常常不可维护:程序中的错误难以改正, “软件重用”难以 实现。 5、没有适当的文档资料:文档资料缺乏、或不合格,软件的开发和 维护极端困难。 6、软件成本在计算机系统中的占比逐年上升; 7、软件生产率的提高速度,远远慢于计算机的迅速普及和深入发展, 软件产品“供不应求
1.12软件危机的产生原因 1)本身特点造成; 2)软件开发与维护的方法问题。 主要表现: (a)忽视软件需求分析; (b)无统一、规范的方法论指导开发过程,文档资料 不全,坚持认为软件开发就是写程序、运行程序 (c)轻视软件维护
1.1.2 软件危机的产生原因 1)本身特点造成; 2)软件开发与维护的方法问题。 主要表现: (a)忽视软件需求分析; (b)无统一、规范的方法论指导开发过程,文档资料 不全,坚持认为软件开发就是写程序、运行程序; (c)轻视软件维护
不同阶段修改软件需付出的代价很不相同: 代价 高中低 早期中期后期软件开发时期 引入同一修改的代价随时间变化的趋势
不同阶段修改软件需付出的代价很不相同: 高 中 低 早期 中期 后期 软件开发时期 代价 引入同一修改的代价随时间变化的趋势
关于软件开发的常见观点:VorX “有一个对目标的概括描述就足以着手编写程序了,许多细节可以 在以后再补充 “所谓软件开发就是编写程序并设法使它运行。” “用户对软件的要求不断变化,然而软件是柔软而灵活的,可以轻 易地改动。” “软件投入生产性运行以后需要的维护工作并不多,而且维护是 种很容易做的简单工作。”软件维护的费用占软件总费用的55% 70% 不完善的系统定义往往是导致软件项目失败的主要原因 只有质量差的软件产品才需要维护
◦ “有一个对目标的概括描述就足以着手编写程序了,许多细节可以 在以后再补充。” ◦ “所谓软件开发就是编写程序并设法使它运行。” ◦ “用户对软件的要求不断变化,然而软件是柔软而灵活的,可以轻 易地改动。” ◦ “软件投入生产性运行以后需要的维护工作并不多,而且维护是一 种很容易做的简单工作。”软件维护的费用占软件总费用的55%- 70% ◦ 不完善的系统定义往往是导致软件项目失败的主要原因。 ◦ 只有质量差的软件产品才需要维护。 关于软件开发的常见观点:√ or X