《软件技术的发展》.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件技术的发展 骆亚芬 (计算机科学系 软件051班) 摘要:在四个方面对软件技术的发展进行可一些思考:(1)从事物发展规律的角度,揭示软件技术发展的历程;(2)从软件本质特征的角度,浅析虚拟机各抽象层次的构造;(3)从软件开发的本质,提出了软件工程学科研究的内容,并研究了软件工业化生产模式;(4)Internet 的出现为背景,探索了软件技术的发展趋势。 关键词:软件工程,软件特征,软件工业化生产,软件复用,网构软件。 软件工程作为独立的一门学科,其发展已逾 30 年。20 世纪 60 年代,由于高级语言的流行,使得计算机的应用范围得到较大扩展,对软件系统的需求急剧上升,从而产生了所谓的“软件危机”,即软件开发从质量、效率等方面均不能满足应用需求。为了解决软件危机这一问题,1968 年,在 NATO 会议上首次提出了“软件工程”这一概念,使软件开发开始了从“艺术”、“技巧”和“个体行为”向“工程”和“群体协同工作”,本文针对该历程中的若干问题进行了一些探索,即从事物发展规律的角度,揭示软件工程技术发展历程;从软件本质特征的角度,浅析虚拟机各抽象层次的构造;从软件开发的本质,指出了软件工程学科研究的内容,并研究了软件工业化生产模式;以 Internet 的出现为背景,探索了软件技术的发展趋势。 1、软件技术发展的历程 30 多年来,软件工程的研究和实践取得了长足的进步,其中一些具有里程碑意义的进展包括: 20 世纪 60 年代末7 年代中期,在一系列高级语言应用的基础上,出现了结构化程序设计技术,并开发了一些支持软件开发的工具。 20 世纪 70 年代中期8 年代,计算机辅助软件工程(CASE)成为研究热点,并开发了一些对软件技术发展具有深远影响的软件工程环境。 20 世纪 80 年代中期9 年代,出现了面向对象语言和方法,并成为主流的软件开发技术;开展软件过程及软件过程改善的研究;注重软件复用和软件构件技术的研究与实践。 软件是客观事物的一种反映,客观世界的不断变化促使软件技术的不断发展,这种事物发展规律促使软件工程的产生和发展。我们仅从解决软硬件的异构性和各种软件之间的异构性角度,就可窥见软件技术发展的一种途径。如:为屏蔽计算机硬件之间的异构性发展了操作系统,为屏蔽操作系统之间和编程语言之间的异构性出现了支撑软件和中间件,为屏蔽不同中间件之间的异构性发展了 Web Services 技术等等;随着解决问题的不断深入,易用性和适应性要求的不断提升,以及软件技术的不断发展,还会出现更新、更复杂的异构问题,它的解决会促进软件技术的不断发展。从学科角度来看,要不断提炼所要解决问题的概念,建立相应的模型,并寻找处理方法,从而解决这些问题的概念模型和处理问题逻辑间的映射问题。 2、软件与软件特征 软件是对客观世界中问题空间与解决空间的具体描述,是客观事物的一种反映,是知识的提炼和“固化”客观世界是不段变化的,因此,构造性和演化性是软件的本质特征,如果使软件模型具有更强的表达能力、更符合人类的思维模式,即如何提升计算机环境的抽象层次,在一定意义上来讲,这紧紧围绕了软件的本质特征——构造性和演化性。 在高级语言出现以前,汇编语言(机器语言)是编程的工具,表达软件模型的基本概念(或语言构造)是指令,表达模型处理逻辑的只要概念(机制)是顺序和转移,显然这一抽象层次是比较低的,高级语言的出现,例如:FORTRAN 语言、PASCAL 语言、C 语言等,使用了变量、标识符、表达式等概念作为语言的基本构造,并使用3 种基本控制结构来表达软件模型的计算逻辑,因此软件开发人员可以在一个更高的抽象层次上进行程序设计,。随后出现了一系列开发范型和结构化程序设计技术,实现了模块化的数据抽象和过程抽象,提高了人们表达客观世界的抽象层次,并使开发的软件具有一定的构造性和演化性的。 3 软件工程的主要研究内容 从某种角度来说,软件开发的本质就是要实现“高层概念”到“低层概念”的映射,实现“高层处理逻辑”到“低层处理逻辑”的映射。对于大型软件系统的开发,这一映射是相当复杂的,涉及到有关人员、使用的技术、采取的途径以及成本和进度的约束,因此,我们可以把软件工程定义为: 软件工程(software engineering)是应用计算机科学理论和技术以及工程管理原则和方法,按照预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或以之为研究对象的学科,软件工程与其他工程一样要有自己的目标、活动和原则。 4 软件技术的发展趋势 Internet 无疑是 20 世纪末伟大的技术进展之一,为我们提供了一种全球范围的信息基础设施。这个不断延伸的网络基础设施,形成了一个资源丰富的计算平台,构成了人类社会的信息化、数字化基础,成为我们学习

文档评论(0)

这么近,那么远 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档