您的位置: turnitin查重官网> 管理学 >> mba >> mba排版的要求 >简述软件工程软件工程技术进展

简述软件工程软件工程技术进展

收藏本文 2024-03-04 点赞:18568 浏览:82564 作者:网友投稿原创标记本站原创

摘 要 软件工程是采用工程的概念、原理、技术和方法来指导计算机软件开发和维护的工程学科,该学科将正确的管理策略和最好的技术与开发方法结合起来。本文主要探讨软件工程技术发展的思考。
关键词 软件工程;技术;原理
A 文章编号 1674-6708(2013)93-0224-02
软件开发个性化的时代已永远成为过去,在网络、硬件、软件等支持环境的迅猛发展下,软件规模不断扩大,复杂程度显著提高。如何更经济、高效地开发出高质量、可维护、可重用的软件,已成为软件业广泛关注的问题。
1软件工程概述
为了尽可能消除软件危机的影响,高效地开发出高质量的软件系统,软件工程作为一门学科应运而生,它的最终目的是实现软件的工业化生产。为了克服软件缺乏“可见性”的特点,从软件过程管理、开发方式、产品构成等方面着手,借鉴工业化生产的成功经验,对软件产品的生产过程加以严格的管理和控制。也就用下式来表示:软件工程=管理+技术。
传统软件工程将软件开发生命周期划分为问题定义、可行性分析、需求分析、概要设计、详细设计、编码、测试、运行维护8个阶段,每一阶段都有具体的任务和交付成果。软件过程模型指如何具体地组织衔接软件开发生命周期的各个阶段。常用的有瀑布模型、原型模型、螺旋模型、增量模型和喷泉模型等。
2软件工程的目标软件
工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。软件工程活动是“生产一个最终满足需求且达到工程目标的软件产品所需要的步骤”,主要包括需求、设计、实现、确认以及支持等活动。需求活动包括问题分析和需求分析,问题分析获取需求定义,又称软件需求规约;需求分析生成功能规约。设计活动一般包括概要设计和详细设计,概要设计建立整个软件体系结构,包括子系统、模块以及相关层次的说明、每一模块接口定义;详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。
3新的软件开发技术

3.1软件复用

软件复用(Software Reuse)就是将已有的软件成分用于构造新的软件系统,以缩减软件开发和维护的花费。无论对可复用构件原封不动地使用还是作适当的修改后再使用,只要是用来构造新软件,则都可称为复用。被复用的软件成分一般称为可复用构件。软件复用是提高软件生产力和质量的一种重要技术。早期的软件复用主要是代码级复用,后来扩大到包括领域知识、开发经验、项目计划、可行性报告、体系结构、需求、设计、测试用例和文档等一切有关方面。但对一个软件进行修改,使它运行于新的软硬件平台不称为复用,而称为软件移植。可以划分为如下的复用级别。

3.2软件产品线

软件产品线是一组具有共同体系构架和可复用组件的软件系统,它们共同构建支持特定领域内产品开发的软件平台。一个软件产品线由一个产品线体系结构、一个可重用构件集合和一个源自共享资源的产品集合组成,是组织一组相关软件产品开发的方式。软件产品线的产品则是根据基本用户需求对产品线架构进行写作,将可复用部分和系统独特部分集成而得到。软件产品线方法集中体现一种大规模、大粒度软件复用实践,是软件工程领域中软件体系结构和软件重用技术发展的结果。
图1 软件生产线

3.3敏捷开发

敏捷小组的整体工作:项目取得成功的关键在于,所有的项目参与者都把自己看作朝向一个共同目标前进的团队的一员。一个成功的敏捷开发小组应该具有“我们一起参与其中”的思想。虽然敏捷开发小组是以小组整体进行工作,但是小组中仍然有一些特定的角色。有

源于:论文写作格式www.udooo.com

必要指出和阐明那些在敏捷估计和规划中承担一定任务的角色。(3)敏捷小组的短迭代周期:迭代是受时间框(time box)限制的,意味着即使放弃一些功能,也必须按时结束迭代。时间框一般很短。大部分敏捷开发小组采用2~4周的迭代,但也有一些小组采用长达3个月的迭代周期仍能维持敏捷性。大多数小组采用相对稳定的迭代周期长度,但是也有一些小组在每次迭始的时候选择合适的周期长度。

3.4 CMM方法

CMM是指“能力成熟度模型”,其英文全称为Capability Maturity Model for Software,英文缩写为SW—CMM,简称CMM。它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好地实现商业目标。CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。CMM分为5个等级:一级为初始级,二级为可重复级,为已定义级,四级为已管理级,五级为优化级。CMM为软件企业的过程能力提供了一个阶梯式的改进框架,它基于过去所有软件工程过程改进的成果,吸取了以往软件工程的经验教训,提供了一个基于过程改进的框架,指明了一个软件组织在软件开发方面需要管理哪些主要工作、这些工作之间的关系以及以怎样的先后次序,一步一步地做好这些丁作而使软件组织走向成熟。
4结论
总之,软件工程是为了尽可能消除软件危机的影响,克服软件缺乏“可见性”的缺点,借鉴工业化生产的成功经验,对软件产品的生产过程加以严格管理和控制的一门学科。它的最终目的是实现软件的工业化生产。通过以上对软件工程技术发展进行探索,期望能对软件工程的发展起到一定的参考价值。
参考文献
李斌.软件工程质量管理的研究现状及发展趋势[J].硅谷,2011(3):112-113.
李辉.软件工程开发方法的现状与展望[J].福建广播电视大学学报,2011(3):109-110.
[3]许璐.软件工程未来发展[J].科技传播,2011(13):67-68.
[4]嵇春梅.基于软件工程的系统设计与开发[J].数字技术与应用,2011(10):56-57.

copyright 2003-2024 Copyright©2020 Powered by 网络信息技术有限公司 备案号: 粤2017400971号