资源描述:
《软件技术的发展》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、专业技术资料分享软件技术的发展骆亚芬(计算机科学系软件051班)摘要:在四个方面对软件技术的发展进行可一些思考:(1)从事物发展规律的角度,揭示软件技术发展的历程;(2)从软件本质特征的角度,浅析虚拟机各抽象层次的构造;(3)从软件开发的本质,提出了软件工程学科研究的内容,并研究了软件工业化生产模式;(4)Internet的出现为背景,探索了软件技术的发展趋势。关键词:软件工程,软件特征,软件工业化生产,软件复用,网构软件。软件工程作为独立的一门学科,其发展已逾30年。20世纪60年代,由于高级语言的流行,使得计算机的应用范围得到较大扩展,对软
2、件系统的需求急剧上升,从而产生了所谓的“软件危机”,即软件开发从质量、效率等方面均不能满足应用需求。为了解决软件危机这一问题,1968年,在NATO会议上首次提出了“软件工程”这一概念,使软件开发开始了从“艺术”、“技巧”和“个体行为”向“工程”和“群体协同工作”,本文针对该历程中的若干问题进行了一些探索,即从事物发展规律的角度,揭示软件工程技术发展历程;从软件本质特征的角度,浅析虚拟机各抽象层次的构造;从软件开发的本质,指出了软件工程学科研究的内容,并研究了软件工业化生产模式;以Internet的出现为背景,探索了软件技术的发展趋势。1、软件
3、技术发展的历程WORD文档下载可编辑专业技术资料分享30多年来,软件工程的研究和实践取得了长足的进步,其中一些具有里程碑意义的进展包括:20世纪60年代末7年代中期,在一系列高级语言应用的基础上,出现了结构化程序设计技术,并开发了一些支持软件开发的工具。20世纪70年代中期8年代,计算机辅助软件工程(CASE)成为研究热点,并开发了一些对软件技术发展具有深远影响的软件工程环境。20世纪80年代中期9年代,出现了面向对象语言和方法,并成为主流的软件开发技术;开展软件过程及软件过程改善的研究;注重软件复用和软件构件技术的研究与实践。软件是客观事物的
4、一种反映,客观世界的不断变化促使软件技术的不断发展,这种事物发展规律促使软件工程的产生和发展。我们仅从解决软硬件的异构性和各种软件之间的异构性角度,就可窥见软件技术发展的一种途径。如:为屏蔽计算机硬件之间的异构性发展了操作系统,为屏蔽操作系统之间和编程语言之间的异构性出现了支撑软件和中间件,为屏蔽不同中间件之间的异构性发展了WebServices技术等等;随着解决问题的不断深入,易用性和适应性要求的不断提升,以及软件技术的不断发展,还会出现更新、更复杂的异构问题,它的解决会促进软件技术的不断发展。从学科角度来看,要不断提炼所要解决问题的概念,建
5、立相应的模型,并寻找处理方法,从而解决这些问题的概念模型和处理问题逻辑间的映射问题。2、软件与软件特征软件是对客观世界中问题空间与解决空间的具体描述,是客观事物的一种反映,是知识的提炼和“固化”WORD文档下载可编辑专业技术资料分享客观世界是不段变化的,因此,构造性和演化性是软件的本质特征,如果使软件模型具有更强的表达能力、更符合人类的思维模式,即如何提升计算机环境的抽象层次,在一定意义上来讲,这紧紧围绕了软件的本质特征——构造性和演化性。在高级语言出现以前,汇编语言(机器语言)是编程的工具,表达软件模型的基本概念(或语言构造)是指令,表达模型
6、处理逻辑的只要概念(机制)是顺序和转移,显然这一抽象层次是比较低的,高级语言的出现,例如:FORTRAN语言、PASCAL语言、C语言等,使用了变量、标识符、表达式等概念作为语言的基本构造,并使用3种基本控制结构来表达软件模型的计算逻辑,因此软件开发人员可以在一个更高的抽象层次上进行程序设计,。随后出现了一系列开发范型和结构化程序设计技术,实现了模块化的数据抽象和过程抽象,提高了人们表达客观世界的抽象层次,并使开发的软件具有一定的构造性和演化性的。3软件工程的主要研究内容从某种角度来说,软件开发的本质就是要实现“高层概念”到“低层概念”的映射,
7、实现“高层处理逻辑”到“低层处理逻辑”的映射。对于大型软件系统的开发,这一映射是相当复杂的,涉及到有关人员、使用的技术、采取的途径以及成本和进度的约束,因此,我们可以把软件工程定义为:软件工程(softwareWORD文档下载可编辑专业技术资料分享engineering)是应用计算机科学理论和技术以及工程管理原则和方法,按照预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或以之为研究对象的学科,软件工程与其他工程一样要有自己的目标、活动和原则。4软件技术的发展趋势Internet无疑是20世纪末伟大的技术进展之一,为我们提供
8、了一种全球范围的信息基础设施。这个不断延伸的网络基础设施,形成了一个资源丰富的计算平台,构成了人类社会的信息化、数字化基础,成为我们学习、生活和工作的