软件工程学概述
1.1 软件危机
1.1.1 软件危机的介绍
软件工程的由来:
为了更有效的开发与维护软件,软件工作者在20世纪60年代后期开始认真研究消除软件危机的途径,从而逐渐形成了一门新兴的工程学科——计算机啊软件工程学(软件工程)。
软件危机的产生:
种种维护软件的工作,以令人吃惊的比例耗费资源。更严重的是,许多程序的个体化特性使得它们最终成为不可维护的。“软件危机”就这样开始出现!
软件危机的介绍:
定义:软件危机是指在计算机软甲的开发和维护过程中所遇到的一系列严重问题。
软件危机面临的问题:
1. 如何开发软件,以满足对软件日益增长的需求。
2. 如何维护数量不断膨胀的已有软件。
软件危机的表现:
1. 对软件开发成本和进度的估计常常很不准确。
2. 用户对“已完成的”软件系统不满意的现象经常发生。
3. 软件产品的质量往往靠不住。
4. 软甲常常是不可维护的。
5. 软件通常没有适当的文档资料。
6. 软件成本在计算机系统总成本中所占的比例逐年上升。
7. 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
1.1.2 产生软件危机的原因
1.1.3 消除软件危机的途径
首先应该对计算机软件有一个正确的认识,软件是程序、数据以及文档的完整集合。
软件开发应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
应该推广使用在实践中总结出来的开发软件的成功的技术和方法。
总之为了解决软件危机,既要有技术措施,又要有必要的组织管理措施。(管理、技术)
1.2 软件工程
1.2.1 软件工程的介绍
软件工程的定义:
1968年第一届NATO会议上曾经给出了软件工程的一个早期的定义:“软件工程就是为了经济的获得可靠的且能在实际机器上有效运行的软件,而建立和使用完善的工程原理。”
1993年IEEE给出一个更为全面具体的定义:“软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件; ②研究①中提到的途径。”
1.2.2 软件工程的基本原理
1.2.3 软件工程方法学
1.3 软件生命周期
软件生命周期由 软件定义、软件开发 和 运行维护(软件维护)3个时期组成。