《软件工程过程模型》PPT课件

《软件工程过程模型》PPT课件

ID:39157959

大小:836.51 KB

页数:52页

时间:2019-06-26

《软件工程过程模型》PPT课件_第1页
《软件工程过程模型》PPT课件_第2页
《软件工程过程模型》PPT课件_第3页
《软件工程过程模型》PPT课件_第4页
《软件工程过程模型》PPT课件_第5页
资源描述:

《《软件工程过程模型》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章软件工程过程模型2.1软件工程的技术基础2.2软件工程过程2.3软件过程模型2.4线性顺序模型2.5原型模型2.6快速应用开发模型2.7演化软件过程模型2.8软件过程技术2.9软件重用技术2.10小结2.1软件工程的技术基础图2.1软件工程过程层次图正如其他工程方法一样,软件工程必须以有组织的软件质量保证为基础。因此说,对质量的关注构成了软件工程的根基。软件工程过程是将技术层(包括工程技术与管理技术)结合在一起的凝聚力。过程层是软件工程的基层。软件工程过程定义了一组关键过程域(KPAs),这对于软件工程技术

2、的有效应用是必需的。这些关键过程区域是对软件工程项目进行管理与控制的基础,并且确定了上、下各区域之间的关系。其中,对于技术方法的采用、阶段产品的产生、工程里程碑的建立、质量监控与保证、变更控制等方面都进行了规定。除各个开发组织可以定义自己的软件工程过程之外,目前流行比较广泛的软件工程过程包括有RUP过程、极限(XP)过程、敏捷软件过程(AgileS.P)等等。软件工程方法涵盖了需求分析、设计、编程、测试、维护等各个环节,它给出了完成这些任务在技术上应当“如何做”的方法。它依赖于一组基本原则,这些原则控制了每一个技

3、术区域,涉及到建模活动和其他描述技术。工具层对过程和方法提供支持,使得工程活动、管理活动得以自动、半自动的进行。例如,目前广为使用的数据库建模工具Erwin、面向对象的建模工具RationnalRose、配置管理工具等等。如果把一系列的工具集成起来使用,使得一个工具产生的信息可以被另一个工具使用时,就形成了一个支持软件开发的系统。这种集成了软件、硬件和一个软件工程数据库的软件工程环境,称为计算机辅助软件工程(CASE)。2.2软件工程过程如前所述,软件工程过程是开发或维护软件及其相关产品的一系列活动。软件工程过程

4、是过去十年中人们关注的焦点。软件工程和软件工程过程之间是强相关的。软件工程过程通常包括四种基本的过程活动:(1)软件规格说明:规定软件的功能、性能及其运行限制。(2)软件开发:产生满足规格说明的软件,包括设计与编码等工作。(3)软件确认:确认软件能够满足客户提出的要求,对应于软件测试。(4)软件演进:为满足客户的变更要求,软件必须在使用的过程中演进,以求尽量延长软件的生命周期。在一个良好的软件过程中,还应当包括一些“保护性”的活动,包括软件项目的跟踪监控、正式的技术审核、软件配置管理活动、软件质量保证活动、文档的

5、准备和产生、软件测试、风险管理等等。这些保护性活动贯穿于整个工程过程之中。在具体的工程过程中,可以根据实际需要,采用不同的过程模型来实现上述的基本活动和保护活动。事实上,软件工程过程是一个软件开发组织针对某一类软件产品为自己规定的工作步骤,它应当是科学的、合理的,否则必将影响到软件产品的质量。一个良好的软件工程过程应当具备如下特点:(1)易理解性。(2)可见性:每个过程活动都以得到明确的结果而告终,保证过程的进展对外可见。(3)可支持性:容易得到CASE工具的支持。(4)可接受性:比较容易被软件工程师接受和使用。

6、(5)可靠性:不会出现过程错误,或者出现的过程错误能够在产品出错之前被发现。(6)健壮性:不受意外发生问题的干扰。(7)可维护性:过程可以根据开发组织的需求的改变而改进。(8)高效率:从给出软件规格说明起,就能够较快地完成开发而交付使用。一个软件过程可以表示成如图2.2所示的形式。其中,公共过程框架是通过定义若干适合于所有软件项目的框架活动而建立的;若干任务集合中,每一个集合都由软件工程工作任务、软件项目里程碑、软件工作产品和交付物以及质量保证点组成;保护性活动独立于任何一个框架,贯穿于整个过程。图2.2软件工程

7、过程2.3软件过程模型在一个具体的实际工程活动中,软件工程师必须设计、提炼出一个工程开发策略,用以覆盖软件过程中的基本阶段,确定所涉及的过程、方法、工具。这种策略常被称为“软件工程过程模型”。这一模型的选择应当是根据组织定义的标准软件过程,参考具体工程项目的特点和资源状况进行裁剪来进行的。从宏观上来看,所有的软件开发过程都可以看成是一个循环解决问题的过程。其中包括四个截然不同的阶段:状态描述、问题定义、技术开发和方案综述,如图2.3所示。状态描述表示了事物的当前状态;问题定义标识了要解决的特定问题;技术开发通过应

8、用某些技术来解决问题;方案综述提交解决结果(如文档、程序、数据、新的商业功能、新产品)给那些从一开始就需要方案的人。前面定义的软件工程的一般阶段和步骤很容易映射到这些阶段上。图2.3问题循环解决的各个阶段上述的问题循环解决过程可以应用于软件工程的多个不同开发级别(阶段)上,包括考虑整个系统开发的宏观阶段,开发程序构件的中间阶段,甚至是代码编制阶段,因此可以采用分级集合表示

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。