|
2003-5-30
阅读次数:次
在计算机发展史上曾出现过一次“软件危机”。危机的起因是由于软件规模越来越大,复杂程度日益提高,使研制过程失控,造成软件价格昂贵,而且供需矛盾严重。为摆脱困境,北大西洋公约组织(NATO)于1968年提出了发展“软件工程”以走出危机的设想。此后,软件工程逐步成为一门计算机科学技术领域中具有独立性的学科。软件工程的目的是使计算机软件从单纯的程序设计发展为系统设计,从小规模的“作坊”式生产发展为大规模的产业化生产,为软件产业的诞生奠定基础。
软件工程像一般工业工程一样具有规范化组织、专业化分工协作等特性,比如建筑工程要经过需求调查、可行性分析、工程设计、施工、质量检测、工程验收、使用中维护等阶段、软件工程把软件产品的生产也划分为类似的阶段,比如,根据瀑布模型把软件的产生过程划分为问题定义、可行性研究、需求分析、概要设计、详细设计、编码、测试、维护等阶段。按工程化的方法设计和开发计算机软件。在每个工程阶段结束时要产生相应的技术文件,其中计算机程序设计在编码阶段完成。所有文件和程序都要按相应的标准、条例、甚至格式规定等编写,这些标准、规定被称为软件工程技术规范,是进行软件工程化生产的重要基础和必要的前提。如美国国防部于1984年公布的DOD-HDBK-281(NAVY),国际标准化组织ISO于1985年颁布的ISO5807-1985等都是软件工程规范。我国于1992年颁布了第一套软件工程国家规范《计算机软件工程规范国家标准》,对指导我国软件的标准化生产起到了重要作用。各种计算机辅助软件工程工具(常称为CASE工具)的推出使软件工程日益走向自动化。现在已从单件工具发展到成套工具,组成了工具箱,逐步构成较为完善的软件工程环境。
软件工程学现在已成为一门综合性学科,主要内容包括软件工程开发方法论,软件工程标准化,软件工程工具和环境,软件工程管理学,软件工程理论等。软件工程学的发展进一步指导了软件工程实践,为各类大型计算机系统设计和大规模软件开发奠定了理论基础。
|