`
crazyox
  • 浏览: 185112 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

RUP(Rational Unified Process)统一开发过程是一套面相对象的软件工程过程.

软件过程是指实施于软件开发和维护中的阶段, 方法, 技术, 实践和相关产物(计划,文档, 模型, 代码, 测试用例和手册等)的集合.有效的软件过程可以提高软件组织的生产效率, 提高软件质量, 降低成本并减少风险.  软件过程是开发高质量软件所需要完成的任务的框架.

当前流行的软件过程:

 Rational Unified Process(RUP);
 OPEN Process;
 Object-Oriented Software Process(OOSP);
 Extreme Programming(XP);
 Catalysis;
 Dynamic System Development Method(DSDM).

传统的软件开发模型:

1.瀑布模型

 瀑布模型将软件生存周期划分为六个阶段: 需求分析,设计,实现,测试,运行,维护. 是一种线性模型,按顺序进行每个阶段的工作, 直到某个阶段工作得到确认才能进行下一阶段工作,否则返回前一阶段.

 缺点: 在系统建立之前很难只依靠分析就确定出一套完整, 准确, 一致, 有效的用户需求,而且根本不能适应用户需求变化的情况.

2.螺旋模型

     它保持了传统生命周期模型中系统的,阶段的方法,但将其并入了迭代框架,更加真实地反映了先是世界.螺旋模型体现了RUP中的迭代思想,即一步步接近目标系统,每完成一圈,得到一个更接近目标的圆形,同时开发的风险也随之降低.

 

RUP的二维开发模型

 传统的瀑布开发模型是一个一维的模型,开发过程被化分为多个连续的阶段.在一段时间内,只能做某一阶段的工作. 而在RUP中,软件开发生命周期根据时间和RUP的核心工作流化分为二维空间: 横轴表示项目的时间维, 纵轴以内容来组织,为自然的逻辑活动,体现开发过程的静态结构.

 RUP的工作流

  共有9个,分为6个核心工作流(包括商业建模,需求,分析和设计,实现,测试,部署)和三个核心支持工作流(包括配置和变更管理,项目管理,环境).

 RUP的4个阶段

   RUP包括初始阶段,细化阶段,构造阶段和交付阶段. 每个阶段都由一个或多个连续的迭代组成,每个迭代都是一个完整的开发过程,是一个具体的迭代工作流从头到尾的执行. 每个阶段结束于一个主要的里程碑(Major Milestones);每个阶段本质上是两个里程碑之间的时间跨度.在每个阶段的结尾执行一次评估以确定这个阶段的目标是否已经满足.如果评估结果令人满意的话,可以允许项目进入下一阶段.

  这四个阶段每个阶段的的侧重点都有所不同.

   初始阶段: 需求和分析工作流;

初始阶段结束时是第一个重要的里程碑:生命周期目标(Lifecycle Objective)里程碑。生命周期目标里程碑评价项目基本的生存能力。<o:p></o:p>

   细化阶段: 需求,分析和设计工作流;

细化阶段结束时第二个重要的里程碑:生命周期结构(Lifecycle Architecture)里程碑。生命周期结构里程碑为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量。此刻,要检验详细的系统目标和范围、结构的选择以及主要风险的解决方案。<o:p></o:p>

   构造阶段: 实现工作流;

构建阶段结束时是第三个重要的里程碑:初始功能(Initial Operational)里程碑。初始功能里程碑决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运作。此时的产品版本也常被称为“beta”版。<o:p></o:p>

   交付阶段: 实现和测试工作流.

在交付阶段的终点是第四个里程碑:产品发布(Product Release)里程碑。此时,要确定目标是否实现,是否应该开始另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段的结束重合。<o:p></o:p>

RUP的迭代开发模型
 
 RUP中的每个阶段都可以进一步分解为迭代. 一个迭代是一个完整的开发循环, 产生一个科执行的产品版本, 是最终产品的一个子集, 它增量式地发展,从一个迭代过程到另一个迭代过程到成为最终的系统.
 在工作流中的每一次顺序的通过称为一次迭代.软件生命周期式迭代的连续, 通过它, 软件是增量的开发.

 迭代过程的优点:
 
  降低了在一个增量上的开支风险. 如果开发人员重复某个迭代, 那么损失只是这个开发有误的迭代的花费.

  降低了产品无法按照既定进度进入市场的风险.通过在开发早期确定风险, 可以尽早解决问题而不至于在开发后期匆匆忙忙.

  加快了整个开发工作的进度. 因为开发人员清楚问题的焦点所在, 他们的工作会更有效率.

  由于用户的需求并不能在一开始就做出完全的界定, 通常是在后续阶段中不断细化的. 因此, 迭代过程这种模式使适应需求的变化会更容易.

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
RUP的三大特点:

 软件开发是一个迭代过程;
 软件开发是由Use Case驱动的;
 软件开发是以构架设计(Architectural Design)为中心的.


 
分享到:
评论

相关推荐

    RUP 模板--RUP 模板

    ### 一、RUP概述 RUP是一种迭代和增量的软件开发模型,强调了业务需求、系统架构和软件质量的重要性。它的核心思想是通过周期性的迭代开发,逐步完善和交付软件产品。RUP涵盖了需求分析、设计、实现、测试和部署等...

    敏捷开发中的RUP中文模版

    ### 一、RUP概述 RUP是一种以用例驱动、架构中心、迭代并增量的软件开发过程框架。它包含了软件开发的各个阶段,如初始阶段、细化阶段、构建阶段和交付阶段。RUP强调了以下关键概念: 1. **用例驱动**:通过用户...

    RUP课件中英文版本.7z

    RUP概述** RUP是一种迭代和增量的开发方法,强调了业务需求、系统架构和软件实现之间的连续性和一致性。它涵盖了软件开发生命周期的各个阶段,包括初始阶段、细化阶段、构造阶段和交付阶段,旨在帮助团队在项目进程...

    rup.rar_it_rup

    RUP概述** RUP的核心理念是将软件开发视为一个持续演进的过程,而不是一次性完成的任务。它将软件开发划分为四个主要阶段:初始、细化、构造和发布,每个阶段都有明确的目标和交付物。RUP也强调了软件开发中的迭代...

    2019RUP.zip

    1. **RUP概述**:RUP是一种迭代和增量的软件开发过程模型,强调早期的架构设计和持续的反馈改进。它提供了一套完整的方法论,涵盖了软件生命周期的各个阶段,包括初始、细化、构造和交付四个主要阶段。 2. **核心...

    rup统一软件开发过程教程

    ### RUP概述 RUP,即Rational Unified Process,是一种面向对象的、基于迭代的、增量式的软件开发流程。它的核心理念是在整个开发过程中保持持续的沟通、建模、可视化和验证,通过不断迭代,逐步完善软件系统。 ##...

    A Manager’s Introduction to The Rational Unified Process (RUP)

    #### 二、RUP概述 RUP是一种面向对象和组件的技术系统开发过程,具有明确且规范的特点。该方法论强调通过迭代的方式来提高软件质量与开发效率,并关注项目的四个关键阶段:启动、细化、构建和交付。 ##### 2.1 启动...

    软件工程-RUP导论

    **一、RUP概述** RUP(Rational Unified Process,统一软件开发过程)是由IBM Rational公司提出的软件开发框架,它是一个迭代和增量的软件开发模型,强调了软件生命周期中的各个关键阶段,包括需求分析、设计、实现...

    胖子说RUP(转贴)

    一、RUP 概述 RUP 是一种基于组件的、迭代的和风险管理驱动的过程模型。它强调了软件生命周期中的关键活动,包括需求分析、设计、实现、测试和维护。RUP 提供了一套完整的工作流、角色定义、最佳实践和模板,帮助...

    RUP要点(清晰pdf 格式)

    #### 一、RUP概述 **Rational Unified Process (RUP)**是一种面向对象且基于网络的程序开发方法论,为软件开发提供了详细的指导框架。RUP的核心理念是通过迭代的方式进行软件开发,每个迭代周期都会经过一系列的...

    研发过程改进中的RUP实施文档

    **一、RUP概述** RUP的核心理念是基于构件的软件工程,它将软件开发分为四个阶段:初始、细化、构造和交付。每个阶段都包含迭代,允许团队在项目的不同阶段逐步完善产品。RUP还强调了角色、工作流、制品和指导原则的...

    RUP Practice (PPT 资料)

    **RUP(Rational Unified Process)实践** RUP,全称Rational Unified Process,是由IBM Rational公司开发的一种软件开发过程...这份PPT资料将为读者提供一个全面的RUP概述,帮助理解和应用这一强大的软件工程框架。

    rup培训文档

    RUP概述 - **面临的问题**:传统的软件开发方式难以适应现代复杂多变的软件系统需求。传统方法往往假设需求可以在项目初期完全定义,设计方案一次到位,但实际上软件项目的不确定性很高。 - **什么是软件过程**:...

    软件开发过程纵横谈(1):RUP

    1. **RUP概述** RUP是一种灵活的过程框架,可以根据项目的规模、复杂性和团队能力进行定制。它提供了软件开发的指导原则、最佳实践和模板,涵盖了需求分析、系统设计、实现、测试以及维护等各个阶段。RUP的核心理念...

    RUP软件工程研究及应用分析.doc

    RUP概述** RUP最初被称为Rational Object Process,随着时间的推移,通过不断升级和扩展,与UML的集成使其成为软件工程领域的重要模型。RUP通过动态结构和静态结构来解释软件开发过程,为开发者提供了详细的规范、...

    RUP UML概述

    标题和描述中提到的“RUP UML概述”,聚焦于两个关键领域:Rational Unified Process (RUP) 和 Unified Modeling Language (UML),两者都是软件工程领域的核心概念,旨在提高软件开发的效率和质量。 ### RUP:...

    讲义资料——RUP大讲堂(第二讲)-业务驱动开发

    #### 二、RUP概述 RUP(Rational Unified Process)是一种面向对象且基于网络的程序开发方法论,它提供了一套完整的软件开发流程指导。RUP的核心理念在于强调业务驱动,即通过理解业务需求来驱动软件开发过程,确保...

    rational统一开发过程.pdf

    #### 一、RUP概述 **Rational统一开发过程**(Rational Unified Process, RUP)是由IBM Rational提出的一种面向对象且基于网络的程序开发方法论。RUP是一种迭代式的增量软件开发流程模型,它强调在软件开发生命周期内...

    项目开发流程

    #### RUP概述 RUP(Rational Unified Process,统一软件开发过程)是一种面向对象且基于网络的程序开发方法论。它由Rational公司(Rational Rose及统一建模语言UML的开发者)提出,旨在为软件开发的所有方面和层次...

Global site tag (gtag.js) - Google Analytics