作者:江南白衣,最终版本见:http://blog.csdn.net/calvinxiu/archive/2007/03/19/1533825.aspx,转载请保留。--- last update 2007.4.14
剪裁,在RUP里和迭代一样,都是属于喋喋不休了一百遍的东西,但攻击RUP笨重的人总是习惯性的直接无视。
其实在《The Rational Unified Process Made Easy - A Practitioner's Guide--Rational 统一过程实践者指南》里有一个极致的,一人一星期完成的超小型项目RUP过程示例,描述了创世的5天里,最关键的活动与工件。
我们的头,在初始阶段拜完二哥、切完烧猪后,就会召集核心办事人来作一次过程定义。大家根据项目情况,从RUP的过程集、工件集中抽取出最简单的、刚好够用的部分,在如何做这件事,产出什么工件,工件的格式内容取得共识,记成一份Development Case,再以此来制订项目的总计划和第一次迭代计划,比以前拍脑袋的WBS好了很多。
RUP里的剪刀手学名叫Process Engineer,在RUP 7.0的文档中(从IBM下载Rational Method Composer 7.0的试用版),列在Production & Support的RoleSet里面(在RUP2003列在Manager里)。他只作一件事情,就是Tailor the Development Process for the Project,属于环境Disicipline,产出Development Process工件。
RUP建议一切的中间工件都不要太正式,能简就简。在剪裁时,最重要的参考源是每个Discipline下的Important Decisions Guideline,如《Important Decisions in Requirements 》、《Important Decisions in Analysis & Design》 ....还有《Classifying Work Products》表明了哪些是RUP最根本的,只建议化简不建议取消的工件。另外,每个工件的Tailoring部分给出了工件内容的剪裁建议。
Development Process可以有很多定义方式比如Rational Method Composer,但简单的用word文档也就够了,Development Case文档的template连example共三种样式。
普通情况下,建议以Disicipline为纲,每个Disicipline用一个表格指明了有哪些工件、活动和制作工件的模版和指南(这些模版和指南通常是Project-Specific的)。 但如果结构性的大剪裁,剪得太厉害了,直接以阶段为纲来表达活动和工件,比如我们在再工程过程就剪得很厉害。
在大剪特剪的时候发现RUP的方法定义框架本身就是一个好东西,除了XP这种极端的兵无常势只有最佳实践没有过程定义的之外,其他的过程如果不止于方法论与最佳实践,还想有一个完整的开发生命周期定义的话,众多大师就开始头痛如何去表述自己的过程了。而 "Unified Method Architecture" (UMA)的元模型就是一个完备而明确的过程定义框架,你可以很省事的使用它的表述模式来定义自己的过程。
RUP7.0 自己已经分开了Large Project 和 Small Project 两个部分,另外Scott. Ambler的Agile UP也值得参考:http://www.ambysoft.com/unifiedprocess/agileUP.html。
分享到:
相关推荐
**敏捷开发中的RUP中文模版** RUP(Rational Unified Process)是IBM公司提出的一种软件开发过程模型,它提供了一种结构化的、迭代的、增量的软件开发方法。RUP强调灵活性,允许团队根据自身需求调整过程。在这个...
RUP中文模版集是这套方法论在中国语境下的应用体现,主要包含了软件开发生命周期中各个关键阶段的文档模板。** RUP的核心理念是迭代和增量式开发,它强调了软件开发过程的灵活性和适应性。通过将开发过程分为四个...
在RUP中,需求文档通常分为业务需求、用户需求和技术需求三个层次。通过详细列出需求,团队可以明确软件的目标,避免后期的误解和变更。 3. **架构文档**:架构文档定义了软件的整体结构,包括组件、接口、数据模型...
在RUP中,软件设计是将需求转化为可实现的系统结构的过程,这涉及到创建各种设计文档,如类图、用例图、序列图、组件图等。这些文档使用统一建模语言(UML)进行绘制,以可视化地表达系统的结构和行为。RUP中文模板...
RUP的核心理念是强调软件生命周期中的关键实践和角色,以及它们之间的相互作用。 **一、RUP的基本概念** 1. **迭代开发**: RUP主张通过一系列连续的迭代周期进行软件开发,每个迭代都包括计划、设计、实现、测试和...
RUP模板是RUP过程的一个核心组成部分,旨在帮助项目团队在实际工作中有效地实施RUP方法论。 ### 一、RUP概述 RUP是一种迭代和增量的软件开发模型,强调了业务需求、系统架构和软件质量的重要性。它的核心思想是...
测试在RUP中的位置并非始于后期,而是从项目的早期就开始介入。在RUP中,测试工作是与需求分析和系统设计紧密相关的。测试计划在初始化阶段就开始制定,以便尽早识别潜在的风险和问题。测试用例设计则在构架定义阶段...
在RUP中,工作产品通常包括: 1. **需求文档**:记录用户的需求和期望,为后续的设计和实现提供基础。 2. **用例图**:描述系统的主要功能,通过用户故事和用例来表达。 3. **架构设计**:定义系统的整体结构,包括...
3. **角色与职责**:RUP定义了一系列角色,如业务分析师、系统架构师、开发人员、测试人员等,明确了各角色在整个开发过程中的职责和协作方式。 4. **工作流**:RUP包括了九个工作流,分别是业务建模、需求、分析与...
在**RUP模板**中,我们可以找到一系列指导性文档,这些文档旨在帮助项目团队按照RUP的原则和最佳实践来规划和执行他们的工作。中文版的RUP模板使得中国开发者和项目团队能够更方便地理解和应用这个框架,避免语言...
### Rational Unified Process (RUP) 最佳实践 #### 什么是Rational Unified Process (RUP)? Rational Unified Process(简称RUP)是一种软件工程过程,它为软件开发团队提供了一个结构化的方法来指导整个软件开发...
- **最佳实践指南**:如何实施RUP中的各项实践,以及它们如何促进项目的成功。 - **实例分析**:通过实际案例展示RUP在项目中的应用和效果。 - **迭代开发**:讲解RUP如何通过迭代来适应需求变化和风险管理。 - **...
RUP的核心概念包括了软件开发过程中多个关键元素及其相互关系。本文将深入解析RUP的一些关键概念,以帮助读者更好地理解和应用RUP。 首先,我们需要明确概念的重要性。在快速发展的软件工程领域,许多新术语的出现...
在RUP中,开发过程被分为四个主要阶段:初始阶段、细化阶段、构造阶段和交付阶段。每个阶段都包含了若干关键的工作流,如业务建模、需求获取、分析与设计、实现、测试和部署等,这些工作流相互关联,共同推进项目的...
3. RUP中的核心概念:RUP强调了几个核心概念,如迭代开发、用例驱动、构架为中心和风险管理。迭代开发允许开发团队逐步构建和完善软件,用例驱动是指使用用例来捕捉用户需求,并作为开发的基石。构架为中心的方法...
在RUP中,视图和模型是构建系统理解的关键组成部分,它们帮助团队组织和管理复杂的软件开发项目。 **1. 视图(Views)** 在RUP中,视图是系统的一个特定方面或角度的表示,它提供了一个关注点,帮助我们理解和描述...
5. 验证软件质量:在 RUP 中软件质量评估不再是事后进行或单独小组进行的分离活动,而是内建于过程中的所有活动,这样可以及早发现软件中的缺陷。 6. 控制软件变更:迭代式开发中如果没有严格的控制和协调,整个...