面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程

上传人:E**** 文档编号:89457319 上传时间:2019-05-25 格式:PPT 页数:32 大小:264KB
返回 下载 相关 举报
面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程_第1页
第1页 / 共32页
面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程_第2页
第2页 / 共32页
面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程_第3页
第3页 / 共32页
面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程_第4页
第4页 / 共32页
面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程》由会员分享,可在线阅读,更多相关《面向对象技术及UML教程教学课件 PPT 作者 李磊 王养廷 第2章 RUP软件开发过程(32页珍藏版)》请在金锄头文库上搜索。

1、面向对象技术及UML教程,第2章 RUP软件开发过程,第2章 RUP软件开发过程,为了保证项目的成功不仅需要面向对象的分析设计工具,还需要一个好的软件开发过程。 RUP(Rational Unified Process)又称为统一软件过程能够有效的管理工作进度,控制和改善工作效率。它是目前的软件过程中与UML结合最好的过程,支持面向对象的软件开发,本章将对RUP进行简要的介绍。,2.1 RUP软件开发过程概述,RUP是Rational公司推出的软件过程模型,它是软件业界迄今为止商品化最成功的软件过程模型。RUP的近千页文档可以从Rational公司的网站下载,RUP的主要特征包括: 采用迭代的

2、、增量式的开发过程 采用UML语言描述软件开发过程 有一系列功能强大的软件工具支撑,2.1.1 RUP简介,2.1 RUP软件开发过程概述,RUP有三个突出的特点: (1)用例驱动 (2)以构架为中心 (3)采用迭代和增量模型,2.1.2 RUP主要特点,(1)所有的软件开发都是用户需求驱动的。统一软件开发过程采用用例来描述用户需求,同时提供了一套方法把用例转化为设计的类图,进一步变成最终的程序代码。在整个软件开发过程中,需求用例是可跟踪的。,2.1 RUP软件开发过程概述,(2)构架是一个小的、皮包骨头的系统,它实现了用户的核心需求,包括了系统中最重要的静态和动态特征。构架刻画了系统的整体设

3、计,它舍弃了细节部分,突出了系统的重要特征。,(3)在进行软件系统开发时,统一软件开发过程采用迭代和增量的开发方式,把一个软件产品划分成多个较小的部分,每次完成一个部分,这个部分是产品的一个增量部分。每个增量部分的生产过程是都受控的。,2.1 RUP软件开发过程概述,RUP在不断的实践过程中,总结出六个最有效地实践经验,称为最佳实践。这些最佳实践是对实际软件开发过程应用的总结,这六个最佳经验是: (1)迭代的软件开发 (2)需求管理 (3)使用基于构件的体系结构 (4)可视化软件建模 (5)验证软件质量 (6)控制软件变更,2.1.3 RUP最佳实践,2.2 RUP过程框架,使用RUP开发软件

4、产品,每个软件产品的开发过程都应该包括多次循环。每个循环包括四个阶段:初始、细化、构建和产品化。每个阶段又包括多个迭代过程。,2.2.1 RUP过程框架模型,2.2 RUP过程框架,统一软件过程是一个二维结构,如图2.1所示,2.2 RUP过程框架,RUP中的软件生命周期在时间上被分解为四个顺序的阶段,每个阶段结束时都有一个主要的里程碑,在每个阶段结束时,对本阶段的工作是否达到预定的目标进行评估。如果评估结果令人满意的话,项目就可以进入下一个阶段。,2.2.2 RUP过程阶段,2.2 RUP过程框架,1. 初始阶段 初始阶段有时也称先启阶段。初始阶段的目标是为系统建立商业用例,确定要开发系统的

5、边界,找出与系统交互的所有外部实体,列出实体与系统的交互过程。 初始阶段在RUP中具有非常重要的意义,在这个阶段中所关注的是整个项目进行中的业务和需求方面的主要风险。,2.2 RUP过程框架,2. 细化阶段 细化阶段也称为精化阶段。细化阶段的目标是分析问题领域,准备构架的设计,编制项目计划,淘汰项目中最高风险的元素。为此必须在理解整个系统的基础上确定系统的构架,包括系统的范围、主要的功能需求以及性能需求。同时为项目建立支持环境,包括创建开发案例,创建模板并准备工具。细化阶段结束时第二个重要的里程碑周期结构里程碑。,2.2 RUP过程框架,3. 构建阶段 在构建阶段,主要完成选择所需要的构件,开

6、发应用程序的主要功能,并把这些功能集成为产品,并对这些产品进行测试。从某种意义上说,构建阶段是一个制造过程,其重点放在管理资源及控制运作以及优化成本、进度和质量。构建阶段结束时是第三个重要的里程碑功能里程碑。,2.2 RUP过程框架,4. 产品化阶段 产品化阶段又称为交付阶段,这个阶段的重点是确保软件对最终用户是可用的。产品化阶段可以跨越几次迭代,包括为发布做准备的产品测试,基于用户反馈的少量的调整。在产品化阶段的终点是第四个里程碑发布里程碑。此时需要判断最初预定的目标是否实现,是否应该开始下一个开发周期。,2.2 RUP过程框架,RUP中的每个阶段可以进一步分解为迭代。一个迭代是一个完整的开

7、发循环,产生一个可执行的产品版本,是最终产品的一个子集。采用增量开发方式,不断从一个迭代过程到另一个迭代逐步积累,一步一步地完成最终的系统。,2.2.2 RUP迭代开发模式,2.3 RUP的静态结构,在RUP模型图中包括九个工作流,被称为RUP的核心工作流。核心工作流进一步分为六个核心过程工作流和三个核心支持工作流。模型图中的阴影部分描述了不同的工作流在不同的时间段内工作量的不同。,2.3 RUP的静态结构,1. 业务建模 业务建模工作流描述了系统开发的一个构想,使用业务用例模型来描述这个构想,包括业务对象模型中定义组织的过程、角色和责任。大多数实际工程项目的主要问题在于软件工程和企业工程这两

8、个领域无法进行有效的交流,导致对企业工程的分析无法直接进行转换用于软件开发。,2.3 RUP的静态结构,2. 需求 需求工作流的目标是描述系统应该做什么,并使开发人员和用户就这一描述达成共识。为了达到该目标,要对需要的功能和约束进行提取、组织、文档化,最重要的是理解系统所解决问题的定义和范围。,2.3 RUP的静态结构,3. 分析设计 分析设计工作流将需求转化成未来系统的设计,为系统开发一个健壮的结构,并调整设计使其与实现环境相匹配,优化其性能。分析设计的结果是一个设计模型和一个可选的分析模型。设计模型是源代码的抽象,由设计类和一些描述组成。设计类被组织成具有良好接口的设计包(Package)

9、和设计子系统(Subsystem),而描述则体现了类的对象如何协同工作以实现用例的功能。,2.3 RUP的静态结构,4. 实施 实施工作流的目的包括以层次化的子系统形式定义代码的组织结构,以构件的形式(源文件、二进制文件、可执行文件)实现类和对象,将开发出的构件作为单元进行测试,以及集成由单个开发者所产生的结果,使其成为可执行的系统。,2.3 RUP的静态结构,5. 测试 测试工作流要验证对象间的交互作用是否符合设计要求,验证软件中所有构件是否正确集成,检验所有的需求是否被正确的实现。在测试工作流中发现并确认缺陷,在软件部署之前对这些缺陷进行处理。RUP提出了迭代的方法,意味着在整个项目中都需

10、要进行测试,从而尽可能早的发现缺陷,从根本上降低了修改缺陷所带来的成本。,2.3 RUP的静态结构,6. 部署 部署工作流的目的是成功的生成版本并将软件分发给最终用户。部署工作流描述了那些与最终用户相关的活动,包括:软件打包、生成软件本身以外的产品、安装软件、为用户提供帮助。,2.3 RUP的静态结构,7. 配置与变更管理 配置与变更管理工作流描绘了如何在多个成员组成的项目中控制和管理变更。配置和变更管理工作流提供了一套准则来跟踪软件创建过程中的各个版本。配置与变更管理工作流描述了如何管理并行开发、分布式开发、如何自动化创建工程。同时也阐述了对产品修改原因、时间、人员进行记录。把谁、什么时候、

11、为什么对什么产品做的什么修改记录下来。,2.3 RUP的静态结构,8. 项目管理 软件项目管理平衡各种可能产生冲突的目标,管理风险,克服各种约束并成功交付使用户满意的产品。其目标包括:为项目的管理提供框架,为计划、人员配备、执行和监控项目提供实用的准则,为管理风险提供框架等。,2.3 RUP的静态结构,9. 环境 环境工作流的目的是向软件开发组织提供软件开发环境,包括过程和工具。环境工作流集中于配置项目过程中所需要的活动,同样也支持开发项目规范的活动,提供了过程指导手册并指导项目组如何来实现过程。环境工作流的重点是在项目环境中,进行软件开发过程的配置活动。,2.4 RUP的角色,角色是抽象的职

12、责定义,它定义的是所执行的一组活动和所拥有的一组工件。角色通常由一个人或作为团队相互协作的多个人来实现。项目团队成员通常要履行许多不同的角色职能,就象一个人可以担任许多职务,一个人也可以担任许多不同的角色。角色并不代表个人,而是说明个人在业务中应该如何表现以及他们在业务活动中应该承担的责任。,2.4 RUP的角色,RUP角色可以分为以下五个角色集: (1)分析员角色集 (2)开发人员角色集 (3)测试人员角色集 (4)经理角色集 (5)其它角色集,2.5 RUP的活动,在RUP中,为每个角色定义了要完成的工作,每个单独的工作成为一个活动。一项活动是一个工作单元,由参与项目的某一成员执行,活动有

13、明确的目的,其内容通常表述为创建或更新某些工件,例如一个模型、一个类或一个计划。每个活动都被分配给具体的角色。一个活动一般延续几个小时到几天,它通常涉及一个或几个角色,只影响一个或少数几个工件。一项活动应该是一个便于实施的计划单元及流程单元。,2.5 RUP的活动,(1)先启阶段核心活动 先启阶段的核心活动有:明确地说明项目规模;计划和准备商业理由、评估风险管理、人员配备、项目计划和成本/进度/收益率折衷的备选方案;综合考虑备选构架,评估设计和自制/外购/复用方面的折衷,从而估算出成本、进度和资源;准备项目的环境,评估项目和组织,选择工具,决定流程中要改进的部分。,2.5 RUP的活动,(2)

14、细化阶段核心活动 细化阶段的核心活动有:快速确定构架、确认构架并为构架建立基线;根据此阶段获得的新信息改进前景,对推动构架和计划决策的最关键用例建立可靠的了解;为构建阶段创建详细的迭代计划并为其建立基线;改进开发案例,定位开发环境,包括流程和支持构建团队所需的工具和自动化支持;改进构架并选择构件。,2.5 RUP的活动,(3)构建阶段核心活动 构建阶段的核心活动有:资源管理,控制和流程优化;完成构件开发并根据已定义的评估标准进行测试;根据前景的验收标准对产品发布版进行评估。 (4)产品化阶段核心活动 产品化阶段的核心活动有:执行部署计划;对最终用户支持材料定稿;在开发现场测试可交付产品;制作产

15、品发布版;获得用户反馈;基于反馈调整产品;使最终用户可以使用产品。,2.6 RUP的工件,工件是项目期间生成并使用的最终或中间产物。工件用于获取和传达项目信息。工件可以是文档、模型或模型元素。例如商业理由或软件构架文档,用例模型或设计模型,还有像子系统这样的模型元素。 为使整个软件系统的开发易于管理,工件根据核心工作流程组织成各个集合。有些工件在若干核心工作流程中都要用到(例如:风睑列表、软件构架文档和迭代计划)。这些工件属于最初生成它们的核心工作流程。在RUP中每个阶段的核心活动都产生文档 。,2.7 小结,为了有效组织开发和进行交流,团队中所有的成员需要使用公共的过程、公共的表达语言、以及支持该语言和过程的工具。RUP就是这样一种公共过程,而且已经在多个软件开发组织的实践中被证实可以有效解决上述矛盾。统一建模语言(UML)则可以作为开发团队的公共语言。UML不是完整的开发方法,UML规范也没有定义标准的过程,而RUP则是有效使用UML的指南。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号