- 相关推荐
软件工程的历史与发展趋势论文
在学习、工作生活中,大家总免不了要接触或使用论文吧,论文是指进行各个学术领域的研究和描述学术研究成果的文章。那么一般论文是怎么写的呢?下面是小编收集整理的软件工程的历史与发展趋势论文,供大家参考借鉴,希望可以帮助到有需要的朋友。
软件工程的历史与发展趋势论文 篇1
论文摘要:软件是一种特殊的产品,随着其规模和复杂性的提高、使用范围的扩大,需要从技术和管理两方面对软件的开发过程进行控制。从软件工程这门学科和技术出现的背景出发,回顾了软件工程在近40年来理论、方法和实践中的成果。最后结合Internet技术和平台的挑战,初步讨论了软件工程需要面对的新挑战。
论文关键词:软件危机;构件;体系结构;软件项目管理;中间件
1软件工程的出现
1.1软件危机
20世纪中期,计算机刚被从军用领域转向民用领域使用,那时编写程序的工作被视同为艺术家的创作。当时的计算机硬件非常昂贵,编程人员追求的是如何在有限的处理器能力和存储器空间约束下,编写出执行速度快、体积小的程序。程序中充满了各种各样让人迷惑的技巧。这时的软件生产非常依赖于开发人员的聪明才智。
到了20世纪60年代,计算机的应用范围得到较大扩展,对软件系统的需求和软件自身的复杂度急剧上升,传统的开发方法无法适应用户在质量、效率等方面对软件的需求。这就是所谓的“软件危机”。
为解决这个问题,1968年NATO会议上首次提出“软件工程”(SotfwraeEngineeirng)的概念,提出把软件开发从“艺术”和“个体行为”向“工程”和“群体协同工作”转化。其基本思想是应用计算机科学理论和技术以及工程管理原则和方法,按照预算和进度,实现满用户要求的软件产品的定义、开发、发布和维护的工程。从此也诞生了一门新的学科——软件工程。
迄今为之,为了达到最初设定的目标,软件工程界已经提出了一系列的理论、方法、语言和工具,解决了软件开发过程中的若干问题。但是,由于软件固有的复杂性、易变性和不可见性,软件开发周期长、代价高和质量低的问题依然存在。IEEE在2002年发表的报告指出,即使是IT产业最发达的美国,在2001年美国本土公司开发的软件产品中平均每1000行代码中有0.37个错误,对于美国之外的其他国家,这个比例更高。
1.2软件与其他产品的差异
软件是一种特殊的产品,人们通常看到的是它的载体,而真正具有意义的是载体上的计算机或信息。
软件既不同于通常的精神产品,也不同于常见的物质产品。作家的作品是一种精神产品,它没有使用价值却可以供人阅读欣赏。若把软件也看成是一种作品,却发现其价值在于供人们使用,无人喜欢读它的源代码。
软件也与传统的工业产品不同。工业产品在设计好之后,主要的成本是原材料成本、生产过程的开销等,但生产任何软件的主要成本是设计、实现软件时的成本,以及软件投入使用后的维护成本,在生产线上制造软件的成本非常低。用户购买某种商品后,就拥有了该商品的所有权和使用权。可是用户买来的软件却只拥有它的有限“使用权”。工业产品会随着使用而磨损、报废,但软件在使用过程不会有任何磨损,在相同的硬件条件下用户1年前使用的软件和5年后使用该软件无任何差别。传统的工业产品在车间里生产,生产过程可见、可触摸,也容易衡量生产过程中的消耗和进展。可是软件的开发过程在人的大脑里,很难度量其进度。
所谓的“软件工程”就是要这种过程“可视化”、“定量化”,把看不见的思维活动变成看得见的“文档”或者其他看得见的东西。
2软件工程方法和技术
30多年来,软件工程的研究和实践取得了长足的进展,尽管目前离彻底解决“软件危机”还有相当的差距(对是否能彻底解决目前也存在争议),但软件工程的方法对软件产业的发展还是起到了很大的推动作用。从20世纪60年代以来,陆续出现了结构化程序设计技术、计算机辅助软件工程(CASE)、面向对象语言和方法、软件过程及软件过程改善研究等一系列成果,并应用到实践中。目前软件工程中主要使用的方法和技术可以分成技术和管理两类。
2.1技术的角度
主要包括:软件开发范型、软件设计方法。软件开发范型关注软件工程的方向,即如何才是正确的编写满足需求的软件;软件设计方法关注软件工程的“途径”,即研究怎样完成从高层概念模型到低层概念模型的映射。
软件工程理论在实践中应用时重点放在软件复用上。参考目前成熟的工业产品的开发模式,软件复用可以在软件开发中避免重复劳动,它以已有的成果为基础,充分利用过去开发应用系统中积累的知识和经验,将开发的重点集中于新应用的特有构成成分上。通过使用软件复用技术,开发应用系统时可以充分利用已有的开发成果,消除软件生命周期中的许多重复劳动,提高软件开发的效率。同时,复用高质量的已有成果,可以避免重新开发时引入的错误,从而提高软件质量。
实现软件复用的关键技术包括软件构件技术(softwarecomponenttechnology)、领域工程(domainen—gineering)、软件体系结构(softwarearchitecture)等。
软件构件是指应用系统中可以明确辨识的构成成分,可复用构件是指具有相对独立功能和可复用价值的构件。目前,构件的概念即包括源代码,也包括需求、需求规约、系统和软件的体系结构、文档、测试计划、测试用例和数据以及其他对开发活动有用的信息,这些信息都可以称为可复用软件构件。软件构件技术是支持软件复用的核心技术,其主要研究内容包括:如何有目的的进行构件生产和从已有系统中挖掘提取构件;构件的本质特征及构件间的关系是什么样的;如何描述构件;如何对构件进行分类、组织及检索等。
研究实践表明,由于某个特定领域需要的软件具有相似的需求,因此软件复用在特定领域内更容易获得成功,由此出现了领域工程。领域工程是为一组相似或相近系统的应用工程建立基本能力和必备基础的过程,它涵盖了建立可复用软件构件的所有活动。包括美国卡内基·梅隆大学软件工程研究所(CMU/SEI)在内的许多研究机构已经提出了一些领域分析方法。
如果软件复用仅停留在代码阶段,开发人员得到的好处是有限的。软件体系结构技术使软件复用从代码复用发展到设计复用和过程复用。在建筑工程领域人们用体系结构表达建筑的整体结构,软件工程研究中引人体系结构这个术语,其核心内容是软件系统的结构,它包括如下一些实体:构件、构件之间的交互关系、限制、构件和连接件构成的`拓扑结构、设计原则与指导方针。
2.2工程管理的角度
参考其他成熟工程领域中的做法,软件工程也研究管理学理论在软件工程中的应用。软件项目管理方法抛弃了以前个人的作坊式开发方式,根据管理科学的理论,结合软件产品开发的实际,保证工程化系统开发方法的顺利实施。为了使软件项目能够按照预定的成本、进度、质量顺利完成,软件管理方法对成本、人员、进度、质量、风险、文档等进行分析管理和控制。进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,其开发风险也越小。软件项目管理已经是公认的软件开发企业的核心竞争力之一。
根据在前面提到的软件与其他产品的区别,软件项目管理具有一些与其他项目管理不同的特性软件项目管理中遵循着一些原则,例如:软件项目中需要平衡需求、资源、工期、质量这四个要素之间的关系;大规模的项目要拆分成几个小项目,从而减小项目的管理风险,并且使目标具体明确;依靠一套规范的过程来实时控制项目进度,并确保项目经理能够及时发现问题、解决问题,保证项目具有很高的可见度;针对不同项目的特点,制订不同的项目管理的方针政策;合理控制项目组的规模控制原则;有效的积累知识,做到人员的专业化培养。
目前在软件项目管理方面有国际标准化组织专门为软件行业定制的ISO9003标准,它给出了衡量软件质量的准则;美国卡内基·梅隆大学软件工程研究所提出的CMM(CapabilityMaturityModel,能力成熟度模型)则提供了一整套较为完善的软件研发项目管理的方法。
3软件工程的新发展
20世纪末开始流行的Internet给人们提供了一种全球范围的信息基础设施,形成了一个资源丰富的计算平台,未来如何在Internet平台上进一步整合资源,形成巨型的、高效的、可信的虚拟环境,使所有资源能够高效、可信地为所有用户服务,成为软件技术的研究热点。
Internet平台具有一些传统软件平台不具备的特征:分布性、节点的高度自治性、开放性、异构性、不可预测性、连接环境的多样性等。这对软件工程的发展提出了新的问题。软件工程需要新的理论、方法和技术和平台来应对这个问题。目前投入很大精力研究的中间件技术就是这方面的典型代表。
综上所述,Internet及其上应用的快速发展与普及,使计算机软件所面临的环境开始从静态封闭逐步走向开放、动态和多变。软件系统为了适应这样一种发展趋势,将会逐步呈现出柔性、多目标、连续反应式的网构软件系统的形态。面对这种新型的软件形态,传统的软件理论、方法、技术和平台面临了一系列挑战。从宏观上看,这种挑战为我们研究软件理论、方法和技术提供了难得的机遇,使我们有可能建立一套适合于Internet开放、动态和多变环境的新型软件理论、方法和技术体系。从微观的角度来看,Internet的发展将使系统软件和支撑平台的研究重点开始从操作系统等转向新型中间件平台,而网构软件的理论、方法和技术的突破必将导致在建立新型中间件平台创新技术方面的突破。
软件工程的历史与发展趋势论文 篇2
摘要:随着科学技术的不断发展,信息产业已经逐渐成为了现代化产业中不可或缺的重要一环,信息产业在发展的过程中不断与传统行业进行交互与发展,促进了传统行业的变革与发展也为当前的经济发展注入了新的活力。软件工程作为信息产业的重要支柱学科,其随着信息产业的发展也迎来了发展的黄金时期,软件工程凭借其在数字信息时代的重要意义,也成为了当前信息产业中不可缺少的重要学科。本文将对软件工程技术的发展现状进行分析就技术未来的发展趋势进行简要的判断。
关键词:软件工程技术现状;发展趋势
一、引言
信息产业的发展极大的改变了传统行业的发展面貌也使得现代化产业呈现出新的发展局面,软件工程作为信息产业中的重要基础学科,其在计算机学科领域有着十分重要的作用。随着经济社会的不断发展,信息产业还有着广泛的发展前景,软件工程顺应着信息产业的发展趋势也将迎来进一步的创新和提升,因此对于软件工程技术的发展现状和发展趋势进行分析判断有着十分重要的价值和意义。
二、软件工程概述
软件工程作为一门利用工程建设的手段来对软件进行分析维护的学科,其在学科内容上包括有软件的开发工具、程序设计语言以及数据库的内容,随着信息技术在人们生活中应用的越来越广泛,软件工程也在诸多领域得到了施展和应用,随着计算机学科领域的不断丰富与拓展软件工程也逐渐转变为计算机领域的一门重要独立学科。软件在种类和内容上十分丰富其一般包括有操作系统、数据库、社交软件以及游戏软件等,这些软件被广泛应用于传统工业、金融行业以及人们的日常生活当中,软件的不断丰富与拓展极大的改变了人们的日常生活,为人们的工作学习提供了诸多便利,对促进社会经济的发展与进步,改善人们的生活质量有着十分积极的影响。通常对软件质量的评价标准上往往会根据软件自身的实用性、安全性以及功能性等作为质量评判的重要依据。
三、软件工程技术发展现状
从20世纪末开始我国软件行业就呈现出良好的发展态势,自21世纪以来我国软件业务盈利更是以超过10%的增长速度逐年递增,而软件外包营收更是一度超过了80%的增长速度。软件产业有着良好的市场发展前景和广阔的市场空间,国家方面更是出台了一系列的政策来鼓励软件工程技术的发展。就目前而言,软件工程技术良好的发展前景具体表现为:
软件工程技术人员有着良好的就业环境和就业形势。随着信息行业发展的不断增速,越来越多的互联网信息产业开始呈现出跨越式的扩增态势,随着信息产业发展规模都不断扩大,对于软件工程专业人才的需求也在逐年提升。同时相比传统行业,软件工程技术人员有着较为良好的工作环境和薪资待遇。
软件工程技术人员有着较为广泛的就业方向。
软件工程学科对于从业人员有着较为严格的专业技能水平要求,这是由于软件工程在技术上包括了软件研发、测试以及应用等一系列内容,正是由于软件工程的复杂性和高要求性也使得软件工程的专业性人才有着较为广泛的就业渠道,随着信息化时代的到来,无论是互联网企业还是金融企业和政府部门都急需软件工程领域的专业性人才,软件开发和性能维护已经成为了当前现代化企业经营发展的必然趋势,因此一旦掌握了软件工程专业知识技能就能够拥有十分广阔的就业方向。
软件工程技术人员待遇丰厚。近年来随着软件技术人才的短缺,使得软件工程技术人员更容易受到企业的青睐和追求,在这样的发展背景下软件工程从业者往往能够获取更高的薪资待遇水平。
四、软件工程技术发展趋势
软件工程技术全球化。随着经济全球化进程的不断加快,软件工程技术全球化已成为了未来发展的重要趋势,软件工程凭借其专业技能上的广泛性和共通性,期待工程技术上的发展不仅仅局限于某一个地区或者国家,而是需要结合全球软件发展交互的共同性逐渐促使软件工程发展更为成熟。全球化的软件工程发展趋势符合当前经济发展的重要趋势,各国之间通过实践软件系统框架网络的建设,实现全球软件交互和通力协作,在全球化的软件工程概念下,软件工程的发展能够吸取不同地区和国家的先进经验,从而构建出更加符合人们需求的软件产品。
软件工程技术开放性。开放计算式当前软件工程技术发展的必然趋势和未来方向,通过开放计算能够提升企业之间软件开发研究的效率,通过实现企业软件的交互应用,能够简化未来软件工程在软件开发上的投资消耗,提升软件工程开发的灵活性和简易程度。在软件工程技术开放性的发展过程中需要个国家最先进的软件开发技术经验实现共享,以此来作为后续软件开发和投资的重要关键技术保障。
软件工程技术模板化。随着信息化时代的到来软件市场的竞争也不断加剧,面对日益复杂的软件开发和维护环境,为了能够在激烈的`市场竞争中占得先机提升软件开发和维护的效率,企业需要加强其在业务能力上的灵活性通过以模板化的思维来提升企业在软件开发运用上的效率。模板化思维在企业经营发展中的应用能够有效的帮助企业对现有的软件实行分解组装,结合当前的软件系统根据不同的软件资源需求针对企业的业务来进行更加灵活的变动,使得软件工程技术的发展更加符合企业的利益。
五、结语
计算机技术的迅速发展也使得软件工程技术得到了进一步的提升,软件工程技术在发展的过程中不断向全球化、开放性以及模板化迈进,在这一过程中必须严格恪守软件开发所需要遵循的相关规律,结合软件工程技术的发展特征不断深入研究,共同促进我国软件工程技术的发展与提升。
参考文献
[1]刘宇洋.浅析软件工程的发展趋势[J].科学技术创新,2017(1):180-180.
[2]施少杰.浅析软件工程技术的发展[J].明日风尚,2017(14):299-299.
[3]冯勃达.浅谈软件工程标准化的现状[J].中国新通信,2017(20):52.
[4]郑宇.浅谈软件工程技术的发展历程[J].数字技术与应用,2017(5):226-226.
软件工程的历史与发展趋势论文 篇3
【摘 要】计算机技术的广泛应用,促进了全球范围内的经济结构转型,也正是结构转型促进了众多经济生产领域对计算机软件等技术有了更高的要求,为信息技术的进一步革新发展提供了强劲的推动力。论文对现阶段的软件发展现状进行了分析,并对软件的未来发展趋势进行了大胆预测,探讨未来软件的发展趋势。
【关键词】计算机软件;软件危机;发展趋势;未来展望
1 引言
20世纪中期,计算机信息技术逐渐以声势浩大的发展态势席卷了中国社会的各个角落。时至今日,计算机已经成为人们日常娱乐消遣、企业进行生产经营的重要媒介手段。从深层角度来看,计算机不仅是一种简单的交流传输工具,更是人类高级智力文化的延伸与扩展,并在经济管理、数据通信、工业设计、医疗诊测、工业生产等众多领域发挥出卓越效果,占据了越来越不可替代的地位。其中软件更是其发挥重要作用的核心元件,计算机的硬件不断进行更迭换新,软件工程也面临着迫切的转型与更新。
2 现阶段软件工程工程现状
2.1 计算机软件危机出现
20世纪中期,计算机刚刚突破军事领域的局限,拓展到民众使用领域,彼时的计算机操作人员成了罕见的如同艺术家一样的人物。当时的计算机硬件造价异常昂贵,计算机编程人员的最大诉求是在有限存储空间与处理能力下,编写出能够高效带动计算机的小巧、快速的代码程序,依赖于彼时编程人员的开拓创新精神,出现了形式各样、种类丰富的软件原型。20世纪60年代,计算机应用维度得到了显著拓宽,并且由于经济发展的.极大刺激与推动,计算机软件的开发与革新进入到了前所未有的快速发展阶段,传统的计算机软件系统已经不能很好地契合当时的社会生产需求,软件在开发过程中遇到了“软件危机”[1]。为了有效改善软件危机情境,在1968年的NATO会议上,名为“软件工程”的新兴概念横空出世,其具体内容是要将软件这种略显独立、艺术的过程转型为协同进行开发合作的大型工程项目,根据计算机的应用技术与科学理论,并辅助科学合理的管理方式,制定有条不紊的进度与预算机制,并结合社会对计算机软件的期望与定位,进行软件的开发、维护工作。从此,名为“软件工程”的学科诞生了。迄今为止,为了保证软件工程能够实时满足社会发展需求,在软件工程领域制定了一系列工具、语言、方法、理论等进行软件平台的实时更新與进步,解决软件开发进程中遇到的瓶颈。
2.2 软件危机产生的原因
计算机软件在发展过程中,面临的提升方向越来越复杂,具有显著的特殊性质,其具体变现在:第一,在进行软件研发的过程中,不能准确地收集使用者的操作习惯,满足其操作需求,导致软件的功能不能很好地契合用户的使用标准,这就提出进一步的改进要求[2]。第二,软件工程是需要眾志成城才能完成的大型项目,需要在软件开发中进行合理的协调管理,保证开发进度有条不紊地保持下去。但是往往由于许多开发人员缺乏相关管理经验,或者管理人员不了解软件开发的具体情况,因此软件开发方向只能奔着个性化方向迈进。第三,软件工程是人类智慧的高度浓缩,不同于其他类型的产品,使软件工程的发展出现了瓶颈。
2.3 软件危机的具体表现
软件工程的危机主要体现在五个方面:第一,软件工程的开发具有不可见、不可控性,因此,软件工程的开发成本也具有显著的不可控性;第二,随着软件普及程度越来越高,必须将软件成本控制放在首要位置,但往往急功近利会严重危害用户的利益[3];第三,开发人员与用户沟通存在一定障碍,很多用户缺乏对计算机软件的全面了解,导致其没有办法全面地表达自己的具体用意,从而导致后续阶段出现矛盾;第四,在软件编程过程中容易出现一些编程误差,但是因其具有一定的隐蔽性,不容易被察觉,所以在运营阶段会出现一定的不稳定现象;第五,软件开发工程是编程人员知识与智慧的结晶,当出现故障时,不利于其他人员进行软件维护。
3 计算机软件的未来发展趋势
3.1 全球化趋势
随着经济贸易全球化脚步的加快,软件工程的应用环境也发生了显著变化。在这个剧烈的转变期间,沿用传统的软件工程开发管理模式已经远远不能适用于更加现代化的软件环境。全球化是软件开发、经济全球化发展下的必然趋势。因而,更广阔的软件使用领域与层次,对软件技术提出了更为严格的要求[4]。甚至具有特殊属性的软件开发工程无法在国内完成,需要集合国外的优质资源才能够完成。
3.2 软件计划得到进一步利用
软件计算方式的开放性是软件开发领域的一种新型发展趋势,软件自身的开发就是由开发技术构成的,在全球化背景的辅助下使得其开放性特征不断增强,这种开放性的趋势在未来的软件开发环境中也势在必行。同时,开放的软件工程开发方式可以为开发人员提供较大的便利,为开发人员的沟通提供了便利渠道,在后期维护阶段,更容易发挥其便捷的专业性,这对于开发人员与用户来说,是一种更加完善的共赢方式。
3.3 模块化思想的挑战
全球化的软件开发环境为开发人员带来了更多的挑战与机遇,同时更为软件工程领域带来了新的挑战与机遇。并且,随着软件开发的数量逐渐增多,竞争也呈现越来越白热化的趋势,正是由于这种激烈的竞争态势,促进软件开发方式转型为模块化发展模式。模块化的发展模式相较于传统的开发技术具有显著的灵敏性特征。通過科学的规划手段,将属于同一种类型的软件进行划分,并采取一定的措施,将开发方式进行模块化处理。这种模块化开发思想的引进,不但大大提高了企业软件开发的质量与效率,提高了软件开发企业在市场当中的有利地位,还在更深层面上,为未来的软件工程技术提供了长远的发展前景。
4 结语
随着经济全球化发展趋势不断增强,计算机硬件与软件也在全球化趋势下呈现了更加规范与高效的发展态势。现阶段软件开发工作的主要内容是软件的设计规划、项目流程管理、软件开发模型与工程支持技术,这几个软件开发环节都已经展现出成熟的发展趋势,并引导软件开发走出了原有的单一的开发工作环境,变成了集有效性、規范性、科学性、复杂性为一体的新型发展状态。但是,随着开发环境的逐渐扩展与提升,开发过程总会面临一些瓶颈,在软件开发过程中,应以史为鉴,朝着更加广阔的空间迈进。
【参考文献】
【1】杨锐.浅谈计算机软件工程的发展趋势与未来展望[J].计算机光盘软件与应用,2014(17):70-71.
【2】朱俊锟.关于计算机软件工程的发展趋势及未来展望分析[J].电脑迷,2016(08):52.
【3】孙丽霞.我国计算机软件技术的现状及发展趋势[J].金田(励志),2012(10):311.
【4】刘倩.我国计算机软件技术的现状及发展趋势探析[J].计算机光盘软件与应用,2012(19):191-192.
【软件工程的历史与发展趋势论文】相关文章:
土木工程发展趋势论文04-29
汽车电子技术发展趋势论文04-19
历史小论文怎么写?10-11
历史小论文(精选23篇)07-18
软件工程毕业论文开题报告07-01
分析中国商务英语的现状及发展趋势论文04-25
2014软件工程师毕业论文提纲08-28