软件工程发展综述

软件工程发展综述

1.引言

随着经济、科技的发展与进步,软件技术的应用已经涉及到各行各业,因此软件工程的相关研究对社会各方面的影响日趋显著。本文对软件工程的发展起源、发展历史、发展现状以及发展趋势做出了总结性研究,以期对软件工程今后更好更快的发展提供理论支持与帮助。

2.软件工程的发展起源

二十世纪中叶,随着计算机设备逐渐由军用领域开始向民用领域开放运用,计算机的应用越来越广泛。当时的软件开发工具非常落后,生产个体化,只能依靠单一的软件开发平台。特别是在软件维护方面,尽管浪费了非常大的人力、物力,仍无法很好的完成维护的工作。到了60年代,计算机应用范围的更加广泛,软件发展的规模也越来越大,自身的复杂程序以及软件系统方面的需求不断扩大,之前传统软件开发方法同用户在效率和质量上的实际需求之间的差距不断拉大,于是就产生了“软件危机”。为了摆脱“软件危机”,计算机软件专家最终决定把软件开发与工程技术结合起来,于是“软件工程”就被抬上了历史的舞台。软件工程概念是在1968年德国召开的NATO(北约软件可靠性会议)上首次被提出来的,当时把软件工程定义为在软件的生产过程中所采取的工程化手段方法以及用一系列现代化科学技术来进行软件开发,之后软件工程发展成为了一门独立的学科。

3.软件工程的发展历史

软件工程的发展经历了一个漫长的过程,总结起来,软件工程三十多年来的发展之路大致可以分为三个阶段。软件工程形成的初始阶段一般是指20世纪60年代末期到70年代中期,这一阶段主要完成的工作有:在总结当时软件开发出现的问题的基础上提出了软件工程这一概念,并且能够利用独立的设计思想和工具来提高工作效率、完成工程任务。软件工程学的形成阶段一般指的是20世纪70年代中后期到80年代中期,在这一时期内,软件工程开始完善学科内部的建设,把工程学的思想和方法引入到软件设计中,促进了软件工程学的快速发展,使软件工程从此之后进入了一个崭新的、大规模的发展阶段。第三个阶段大致指20世纪80年代后期以后这段时间,在这个时期面向对象的语言和方法开始出现并逐步流行,并且最终成为人们主流的软件开发技术,人们的注意力开始转向如何改善软件的开发过程,侧重于有关软件构建技术的研究和实践。

4.软件工程的发展现状

进入20世纪90年代以后,软件工程的热点研究内容是软件过程的分析,其研究对象主要集中在过程成熟程度的评估、过程模型以及建模技术等几个方面,在过程成熟度评估的研究方面最具代表性的就是美国软件工程研究中心提出的CMM模型(能力成熟度模型)。近年来,软件原型技术相继取得了一些新的研究进展,目前使用最为广泛的原型技术就是渐进式和废弃式原型两种技术,这里所说的废弃式原型技术主要是指代码最终都要抛弃的原型技术,这里所谓的渐进式原型技术主要师指的是通过一系列迭代,原型最后都会进化成产品。一些原型语言的出现是这个领域内最重大的进展和成果,这些语言可以用来定义可执行系统模型,并且不用给出具体系统组成部分的算法细节,同时要使用大量的可重用代码技术和可重用代码技术来设计原型语言。到现在为止,软件重用技术在软件工程研究体系中仍然占有十分重要的地位,因为软件重用技术在理论基础方面还相当匮乏,并且相关的经济问题和法律问题没能得到有效的处理解决,因此软件重用技术尽管获得了一些有实用价值的成果,但软件重用技术还没有在真正意义上获得突破。

5.软件工程的发展趋势

软件工程未来的发展趋势主要有以下几个:第一,软件工程的开放性计算。由于计算机的可用性的中间件技术以及高并行计算能力已经得到越来越广泛的运用,大多数企业和个人用户都对可以互通互联的软件比较青睐。开源软件的开放性计算是软件工程的一个大的发展趋势。第二,建立软件开发过程的相关标准。软件更新换代的速度日益加快,这也就对软件团队提出更加严格的要求,这包括软件开发的全过程,如需求分析、软件构架以及软件测试能力等。因此建立相关的标准,合理规划软件工程的发展也是未来的一大发展趋势。第三,软件工程的模块化。软件的模块化设计思想是针对SOA技术在应对企业业务灵活性不足时,可以通过科学的方法将不同的软件应用及软件构件打包在一起,提高企业的现资产重用水平和自身能力。

6.结语

通过以上论述,我们得知,软件工程经过多年的发展已经成为一门综合性很强的学科,随着社会需求的不断增加,软件工程必定会朝着开放性计算、标准化以及模块化方向更好、更加迅速的发展下去。我们要在总结软件工程的历史以及发展现状的基础上,发现问题并及时改正,不断挖掘其中可以改进和提升的地方,使软件工程朝着更加健康的方向发展,更好的服务于相关领域行业。

作者:李健 张敏敏 单位:天津师范大学 曲阜师范大学