第一章 概论
软件工程概念
“软件工程”的概念是为了有效的控制软件危机的发生而被提出来的,是将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的工程、软件工程研究的内容包括软件开发技术和软件工程管理两个方面。
软件工程的目标是运用先进的软件开发技术和管理方法来提高软件的质量和生产率,也就是要以较短的周期、较低的成本生产出高质量的软件产品,并最终实现软件的工业化生产。
本章要点
1、了解软件的概念、特点和分类方法2、了解软件的发展和软件危机的起因3、了解软件工程和软件生存周期的概念4、了解软件工程的基本目标和原则
- 关于软件危机对科学发展带来影响的实例:
- 1991年海湾战争,美国的爱国者导弹晕倒以色列已防御飞毛腿的攻击,击中了自己军队的兵营,原因在于软件设计中的定时累积的错误;
- 80年代欧洲丽安娜火箭的发射失败,原因是软件错误;
- 美国阿托拉斯火箭的发射失败,原因是软件故障;
- 英国1986年开发的办公室信息系统Folios经过4年,因性能达不到要求,1989年取消;
- 日本第5代机因为软件问题在投入50亿美元后于1993年下马;
- 1963年美国飞往火星的火箭爆炸,原因:FORTRAN循环 do 5 i=1,3 误写为 do 5 i=1.3
软件的测试工作是保证软件质量的关键步骤,可见软件工程的每一步都不能省。
- 软件工程的3要素
方法、工具和工程
从上图可以看出,在”程序“与“方法”层面,注重于“(具体的)实现”;而在“过程”和“工程”层面,注重的是“团队”问题。
- 软件工程过程模型
常见的过程模型如下:
- 瀑布模型
![]()
![]()
- 快速原型模型
- 增量模型
- 螺旋模型
- 喷泉模型
- 基于构件的开发模型
- 统一过程
![]()
第二章 软件计划
思维导图
一张图来概括第二章软件计划的部分知识