软件开发过程大观——软件开发过程改进为什么能帮助软件质量提升?
软件发展的二个典型趋势
1、软件规模日益扩大。类似摩尔定律,功能类似的软件系统的规模大约每18个月翻一番,每5年,功能类似的软件系统的规模扩大为原来系统的10倍。
2、软件在整个系统中的比重日益增加。20世纪60年代,F-4战机中,由软件来完成的功能约占整体功能的8%,21世纪,F-22战机中,由软件来支持的功能则达到了整体功能的80%
以上趋势使得软件软件质量问题越来越突出。
软件规模日益扩大,使得软件越来越难做;软件比重的日益增加,使得软件质量问题的影响越来越广泛和严重。
软件开发项目经常陷入包括软件质量不佳、项目进度延期、成本超支、客户不满……等等的“焦油坑”。
在传统行业,质量管理和企业管理方面的经验和理论表明,产品的质量取决于过程的质量。
用工程化的思想来管理软件开发,借鉴传统行业在质量管理方面的经验,可以在一定程度上缓解上述问题。
软件工程,是研究以一种高效的方式提供高质量软件产品的工程学科。
软件开发过程的发展历史
20世纪50年代,没有成熟的程序设计语言,软件开发需要直接面对硬件环境。
20世纪60年代,软件作坊(Softwarecrafting)诞生。
软件开发的特殊性被发现:
1<