首页 > 范文大全 > 正文

浅析软件工程的历史以及发展趋势

开篇:润墨网以专业的文秘视角,为您筛选了一篇浅析软件工程的历史以及发展趋势范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘 要】自20世纪60年代末以来,软件工程以其自身的优越性,经过30多年的摸索,现已成为计算机领域不可或缺的一门独立学科,其综合性和工程性以及实用性都非常的强。随着使用计算机的人数越来越多,计算机被应用的领域越来越广,需求在变化,这就要求软件开发的过程也要进行不断的变化。本文从软件工程的背景与学科技术出现的历史背景对其进行探讨,在回顾了软件工程从出现到现在近40多年来的理论、方法和实现的战果进行分析,最后通过因特网技术和平台在新机遇中所面临的挑战,对其进行初步的探讨。

【关键词】软件工程 历史 发展趋势

一、前言

软件或许对世人比较的陌生,但是一提起互联网,那家喻户晓的知名度再次展现了属于它独有的风采。作为一种特殊产品的软件,人们通常只看见附属在它之上的东西,而无法从真正意义上去理解它。它较之其它精神类的产品,有着莫大的差别,比如说作品,它是一种精神类的产品,它给人带来的除了供人欣赏之外,却并不具备实用价值。而软件工程与其它的工业产品相比,其它的工业产品的成本主要集中在前期的原材料的选购、生产过程的开销等,但是相对于软件来说,它的生产成本主要体现在设计、实现软件以及软件在被投入使用后的维护,开发人员的薪资等,当一款软件被制造出来之后,有用户购买了它,那么它就成了该软件的所有人,并且拥有其使用权。软件产品相比于工业产品来说,它的使用期限比较的长,因为在相同硬件条件下的用户一年前使用的软件和五年后使用的软件没有任何的差异,但是工业产品就不同了,工业产品有着磨损和损坏的特点、使用过之后会出现报废的现象。且工业产品的生产过程是可见的,而软件开发的过程是不具有预知性的,很难看见其进度。

所谓的软件工程就是要将这些看不见的东西转变成“可视化”、“定量化”的过程,把之前存在脑海中的东西转变成现在的“文档”或其他的可见其进度的东西。

二、软件工程的出现

计算机首次从军用领域转向民用领域是在二十世纪中期,那时的编程工作非常的复杂,而编程量也是庞大的,所从事的编程人员更是少之又少,只因为编写程序的工作如同艺术家的创作一样,都是记在编程人员的脑海中,非常依赖于开发人员的才智,而当时的计算机也是非常昂贵的,这在某些程度上就促使开发人员能追求如何在有限的时间内对程序的处理能力以及在存储器空间的约束下,让程序的执行能力越来越强,运算速度也越来越强,都在力求编写出体积小,运算速度快的软件。随着计算机应用范围的扩展,到了二十世纪六十年代的时候,因其传统的开发和方法无法适应当前用户的需求,故此,爆发了所谓的“软件危机”。

为解决这样的危机,同时为了更好的满足人们对于计算机的需求,在NATO会议上“软件工程”的概念被首次提了出来,首次将“艺术”和“个体行为”引向“工程”。这样概念的被提出,是因为科学理念和技术所导致的进度和预算不按照既定的路线发展。故此,软件工程诞生了。

三、软件工程的发展

风靡一时的结构化开发方法――面向过程的开发或者面向结构的开发,是七十年代的主要研究成果,至此,我们可知道,软件工程的发展大致沿着两个方向在发展,其一就是侧重软件开发过程的分析、设计和研究。其二就是面向管理的角度,实现软件开发的工程化,在这方面的主要研究成果就是“瀑布式”生命周期模型的提出,它是在“软件危机”之后首次被提出,也是被出现的第一个完整意义上的生命周期模型,以分析―设计―编码-测试以及维护的顺序来完成对软件的开发。再其之后有人根据这样模型的缺陷和不足又相继提出了快速原型法、螺旋模型以及喷泉模型等来对瀑布式模型进行补充,在现在的软件开发过程中,这样的模型依然广泛被采用。

虽然,关于软件危机被彻底的解决仍存在着强烈的争议,但是从软件工程的诞生至现在40多年来,软件工程在研究领域上还是有着不错的发展。其对软件行业的发展是有一定的促进作用,从二十世纪六十年代的面向对象语言的提出以及诸如CASE等计算机辅助教学的出现就是最好的应用。就目前来说,软件工程使用方法和技术主要可划分为管理和技术类,从管理的方向上看,主要是关注软件工程的生命周期中所实施的一系列活动,通过对该软件开发过程的度量,分析、评价以及改进所涉及到的实例进行不断的优化,使得该软件能够被循环的使用,按照螺旋式的方向上升发展。其最著名的研究成果就是由美国卡内基梅隆大学软件工程研究会所所提出的能力成熟度模型,它主要针对的是为大型的项目竞标、投标活动提供一系列的评审,发展到最后,又被应用于软件工程内部机构的过程改进中。软件开发的泛型及设计方法都是从技术方法的角度上对其进行分析的。泛型的关注方向主要是研究如何才能编写出满足用户需求的软件。设计方法关注的是软件工程的方向。

目前,针对软件工程项目管理方法制定了国际标准化组织专门为软件行业制定了ISO9003的标准,它对衡量软件质量给出了一些标准,而之前”能力成熟度模型”,也提出了一套较为完整的软件研发项目管理的方法。根据某些管理理念,并且结合现有的软件产品实际开发的经验,在保证工程系统开发方法的顺利实施的过程中,为了使软件项目能够按照预期的进度在项目之初制定的成本、进度以及质量评估中顺利的完成,软件管理的方法也对成本、人员以及进度、风险、质量上进行了分析管理。被公认软件开发企业核心竞争力之一的软件项目管理,是评价企业开发能力的具体表现。这样的管理有利于将个人开发能力转化为企业的开发能力,倘若一个企业的开发能力越高,则该企业的软件生产力越趋向于成熟。

四、软件工程未来的发展趋势

站在当前的市场上来看,Internet给人们的生活带来了极大的便利,在全国信息化同步的今天,早已形成了一个资源丰富的计算平台。在之后甚至更长的时间内,这种巨型的、高效的、可信的虚拟环境将会被越来越多的人接受,使其所有资源都能够高效的、可视的为所有用户开放,而网络平台具有分布性、节点高度自治性以及开放性、异构性和不可预测性的特点,而这些特点都是传统软件平台所不具备的特征。故此,这又对软件工程有了新的要求,提出了新的方向:软件工程需要新的理论,新的技术和新的方法来对其起到支撑,起到创新并且更好的应对这个快速发展的社会所提出的种种问题。

早期的软件开发只考虑人的因素,传统的软件工程太过于强调物性的规律,而较之现代的软件工程最大的不同点在于人与物的关系,特别是当面向对象建模语言的出现更是使得软件行业发生了翻天覆地的变化,随之它的越来越被广泛的受到关注,和软件的复用以及基于组件的软件开发等新的方法,这些都是软件工程在新的环境中新的发展方向。

五、总结

互联网在人们有目共睹的视野中快速、高度的增长,因此,计算机软件工程也开始由传统的静态封闭模式逐渐走向开放、多变以及动态的层面上,为了适应与迎接这样的发展,将会逐步呈现出多目标、连续反应式的网购软件系统的形态,这样新型的形态,传统的软件理论、技术方法上都面临着巨大的挑战,从微观上看,互联网的发展将使得中间件平台形成主流的发展平台,研究的重点也从传统的面向操作系统转变到面向研究中间件平台中,网购软件的理念和技术方法的突破必将是新一轮的创新。从宏观上来看,这样的挑战为研发人员提供了挑战的同时,也提供了新的机遇,是我们有可能在基于互联网的基础上建立一套适合网络的多台、开放且多变的新型软件体系。

参考文献:

[1]郑人杰.殷人昆.陶永雷.实用软件工程(第二版)[M].北京:清华大学出版社.1997.

[2]赵辉.李万龙.郑山红等.软件工程课程教学改革的研究[J].长春工业大学学报(高教研究).2006.27(4).58-60

[3]潘娅.软件工程教学方法探索[J].高教研究.2006.79(2).28-30

作者简介:杨旭(1990-)男,汉族,湖北武汉人,现为华中科技大学文华学院信息学部10级软件工程专业2班学生。