首页 理论教育 软件工程:形成与发展

软件工程:形成与发展

时间:2023-11-06 理论教育 版权反馈
【摘要】:几十年来,软件工程研究的范围和内容也随着软件技术的发展不断变化和拓展。软件工程的发展经历了以下3个阶段。这时,进一步提高软件生产率、保证软件质量就成为软件工程追求的更高目标。软件复用和软件构件技术正逐步成为主流软件技术,软件工程也由此进入了新的发展阶段——构件软件工程时代。

软件工程:形成与发展

自1968年NATO会议上提出软件工程这一概念以来,人们一直在寻求更先进的软件开发的方法与技术。当出现一种先进的方法与技术时,就会使软件危机得到一定程度的缓解。然而,这种进步又促使人们把更多、更复杂的问题交给计算机去解决,于是又需要探索更先进的方法与技术。几十年来,软件工程研究的范围和内容也随着软件技术的发展不断变化和拓展。软件工程的发展经历了以下3个阶段。

第一阶段:20世纪70年代,为了解决软件项目失败率高、错误率高以及软件维护任务重等问题,人们提出软件生产工程化的思想,希望使软件生产走上正规化的道路,并努力克服软件危机。人们发现将传统工程学的原理、技术和方法应用于软件开发,可以起到使软件生产规范化的作用。它有利于组织软件生产,提高开发质量,降低成本和控制进度。随后,人们又提出软件生命周期的概念,将软件开发过程划分为不同阶段(需求分析、概要与详细设计、编程、测试、维护等),以适应更加复杂的应用。人们还将计算机科学和数学用于构造模型与算法上,围绕软件项目开展了有关开发模型、方法以及支持工具的研究,并提出了多种开发模型、方法与多种软件开发工具(编辑、编译、跟踪、排错、源程序分析、反汇编、反编译等),并围绕项目管理提出了费用估算、文档评审等一些管理方法和工具,基本形成了软件工程的概念、框架、方法和手段,成为软件工程的第一代——传统软件工程时代。

第二阶段:20世纪80年代,面向对象的方法与技术受到了广泛的重视,Smalltalk-80的出现标志着面向对象的程序设计进入实用和成熟阶段。20世纪80年代末逐步发展起来的面向对象的分析与设计方法,形成了完整的面向对象技术体系,使系统的生命周期更长,适应更大规模、更广泛的应用。这时,进一步提高软件生产率、保证软件质量就成为软件工程追求的更高目标。软件生产开始进入以过程为中心的第二阶段。这个时期人们认识到,应从软件生命周期的总费用及总价值来决定软件开发方案。在重视发展软件开发技术的同时,人们提出软件能力成熟度模型、个体软件过程、群组软件过程等概念。在软件定量研究方面提出了软件工作量估计COCOMO模型等。软件开发过程从目标管理转向过程管理,形成了软件工程的第二代——过程软件工程时代。(www.xing528.com)

第三阶段:进入20世纪90年代以后,软件开发技术的主要处理对象为网络计算和支持多媒体信息的WWW。为了适合超企业规模、资源共享、群组协同工作的需要,企业需要开发大量的分布式处理系统。这一时期软件工程的目的在于不仅提高个人生产率,而且通过支持跨地区、跨部门、跨时空的群组共享信息,协同工作来提高群组、集团的整体生产效率。因整体性软件系统难以更改、难以适应变化,所以提倡基于构件的开发方法——即部件互连集成。同时人们认识到计算机软件开发领域的特殊性,不仅要重视软件开发方法和技术的研究,更要重视总结和发展包括软件体系结构、软件设计模式、互操作性、标准化、协议等领域的复用经验。软件复用和软件构件技术正逐步成为主流软件技术,软件工程也由此进入了新的发展阶段——构件软件工程时代。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈