第1章 软件与软件危机
1.1 软件概念
随着计算机技术的发展,不同阶段有不同的认识。计算机发展的初期,硬件的设计和生产是主要问题,那时的所谓软件,就是程序,甚至是机器指令程序,它们处于从属的地位。软件的生产方式是个体的手工方式,设计是在一个人的头脑中完成的,程序的质量完全取决于个人的编程技巧。其后,人们认识到在机器上增加软件的功能会使计算机系统的能力大大提高,于是在研制计算机系统时既考虑硬件,又考虑软件,而且开始编制一些大型程序系统。这时的生产方式类似于互助合作的手工方式,所以人们认为软件就是程序加说明书。后来,社会需要对计算机提出了更高的要求,有的大型系统的设计和生产的工作量高达几千人/年,指令数百万条,有的达几千万条,如美国宇航飞船的软件系统有4000万条语句。现在,软件在计算机系统中的比重越来越大,而且这种趋势还在增加。所以人们感到传统的软件生产方式已不适应发展的需要,于是提出把工程学的基本原理和方法引进到软件设计和生产中,就像机械产品一样,软件生产也被分成几个阶段,每个阶段都有严格的管理和质量检验,科学家们研制了软件设计和生产的方法和工具,并在设计和生产过程中用书面文件作为共同遵循的依据。这时软件的含义就成了文档加程序。文档是软件的“质”的部分,程序则是文档代码化的形式。
……