Page 21 - 计算机应用软件开发技术研究
P. 21
第一章 软件工程
(二)软件工程学科的基本确立
如果从学科意义上考察,软件工程在当时还有许多方法理论和实践问题未得
到广泛和统一的认识,况且软件工程的定义、原理、方法等诸多基本问题都存在
争议,研究软件工程的专家学者陆续提出了上百条关于软件工程的定义、准则或
“信条”。1983 年,IEEE 给软件工程下了定义,即“软件工程是开发、运行、
维护和修复软件的系统方法”。这个定义高度概括了软件工程具有的系统性。
Fairly 则从学科内涵的角度认为:“软件工程学是为了在成本限额以内按时完成
开发和修改软件产品所需要的系统开发和维护技术及管理学科。”Fritz Bau-er
则强调:“软件工程是为了经济的获得可靠的且能在实际机器上有效地运行的软
件而建立和使用的完善的工程化原则。”
B.W.Boelim 综合这些学者们的意见并总结了 TRW 公司多年开发软件的经
验,于 1983 年提出了软件工程的 7 条基本原理,具体如下:
一是用分阶段的生命周期计划严格管理;二是坚持进行阶段评审;三是实行
严格的产品控制;四是采用现代程序设计技术;五是结果应能清楚地审查;六是
开发小组的人员应该少而精;七是承认不断改进软件工程实践的必要性。
这些基本原理是确保软件产品质量和开发效率的原理的最小集合,在此之前
提出的关于软件工程原理的各种表述都蕴含在这些原理之中或由之派生。
针对关于软件工程的各种论述,1993 年 IEEE 进一步给出了一个更全面的
定义。软件工程是:第一,把系统化的、规范的、可度量的途径应用于软件开
发、运行和维护的过程,也就是把工程化应用于软件中;第二,研究之前提到的
途径。
软件工程学广泛地研究软件开发、管理与维护中使用的原则、方法和技术,
提出了关于开发理论、开发方法、开发工具等方面的一系列研究课题。因此,软
件工程学就是研究“如何借助科学的理论和现代工程技术来指导软件的开发,从
而达到用较少的投资获得高质量的、可靠的软件的目的”的科学。
软件工程学的发展可以分为 4 个时期:程序设计时期、软件时期、软件工程
时期、后软件工程时期。现在是处于软件工程时期,至于后软件工程时期,人们
可以设想会出现许多比现在更为人性化、科学化、高效化和智能化的软件开发环
境和工具;“人件”“智件”及其他先进的观念及方法将指导“软件”开发的全
过程,人们仍在不断探索软件开发的新技术和新方法。总之,软件工程学还是一
·9·

