软件工程框架
1软件危机的主要表现为以下。工具
(1)软件开发生产率提升的速度,远远跟不上计算机迅速普及的趋势。软件需求的增加得不到知足,软件产品“供不该求”的现象令人类不能充分利用现代计算机硬件提供的巨大潜力。测试
(2)软件成本在计算机系统总成本中所占的比例逐年上升。编码
(3)不能正确估计软件开发产品的成本和进度,导致实际开发成本高出预算不少,并且超出预期的开发时间要求。设计
(4)软件开发人员和用户之间的信息交流每每很不充分,用户对“已完成的”软件系统不满意的现象常常发生。生命周期
(5)软件产品的质量不易保证。开发
(6)软件产品经常是不可维护的。文档
(7)软件产品的重用性差,一样的软件屡次重复开发。产品
(8)软件一般没有适当的文档资料。程序设计
软件危机的产生一方面是因为软件开发自己的复杂性,另外一方面与当时的手工做坊式软件开发模式有着密切关系。
软件工程学
就是研究如何有效地组织和管理软件开发的工程学科。IEEE在1983年将软件工程定义为:软件工程是开发、运行、维护和修复软件的系统方法。
著名的软件工程专家Boehm于1983年提出了软件工程的7条基本原理。
(1)用分阶段的生命周期计划严格管理。
(2)坚持进行阶段评审。
(3)实行严格的产品控制。
(4)采用现代程序设计技术。
(5)结果应能清楚地审查。
(6)开发小组的人员应该少而精。
(7)认可不断改进软件工程实践的必要性。
软件工程方法学包含三个要素:方法、工具和过程。方法是指完成软件开发的各项任务的技术方法,工具是指为运用方法而提供的软件工程支撑环境;过程是指为得到高质量的软件所须要完成的一系列任务的框架。
软件生存周期中各阶段的划分标准不统一,名称也不一致。本书参照《软件评测师考试大纲》,将软件生存周期分为需求分析、概要设计(系统设计)、详细设计(组件设计)、编码、测试和维护等阶段。