使用Rational Method Composer 定义客户化的统一过程

发表于:2008-08-15来源:作者:点击数: 标签:rationalRationalRATIONALComposerMethod
本文将概述如何通过一个简单但完整的例子使用IBM Rational Method Composer生成并发布客户化的统一过程(RUP)。 介绍 在传统的软件 开发 过程中,经常被使用的开发方法称之为瀑布型开发方法。开发团队要以严格的顺序来完成一系列的项目阶段,它们包括 需求分

本文将概述如何通过一个简单但完整的例子使用IBM Rational Method Composer生成并发布客户化的统一过程(RUP)。
介绍

  
在传统的软件开发过程中,经常被使用的开发方法称之为瀑布型开发方法。开发团队要以严格的顺序来完成一系列的项目阶段,它们包括需求分析、设计、实现/集成,最后是测试。这样做的好处是项目管理本身非常简单。

  
随着软件开发项目的越来越庞大,需求越来越复杂,瀑布型开发方法所带来的问题凸现出来。在软件开发过程中需求的变化以及开发过程中遇到的问题越来越多,这些变化及问题可能会严重的影响软件的发布期限。并且这种开发过程会使主要的团队成员在一些开发环节中是空闲的,为了避免这些空闲,团队成员不得不被迫切换于不同的项目之间。

  
一种新的开发方法称之为迭代化开发。它使用并行的程序开发流程,将一个项目分解成为若干子项目,互不制约的各个子项目之间可以同步进行,这种改进可以缩小后期的集成带来的风险,同时使测试人员更早的介入测试工作,也为管理人员提供更准确的项目状态。每一个子项目称为一个迭代,迭代有详细的目标定义,并可完成最终系统的部分功能,每一个后续的迭代建立在之前的迭代基础上不断地增加项目的功能,直到最终产品开发完成。

  
迭代化开发方法带来项目管理难度的骤然加大,IBM Rational Unified Process正是为了管理和分发整个项目的开发过程而实现的,它是一个基于浏览器的,可定义的软件开发过程平台。它以软件开发行业公认的最优化方法为核心,实现对项目中不同元素在开发过程中的分配的管理。

  
通常意义上来说,默认的RUP可以满足一部分用户的使用需求,用户只需要作简单的删改就可以发布并使用。但是对于某些特定的项目,RUP的默认配置就无法胜任了,这个时候,需要使用第三方的软件来定义客户化的RUP系统,RMC就是为这个需求而发布的一个软件。

 

针对的读者

  
本文主要面向在软件开发项目中的项目管理人员。假设读者已拥有了一定的项目管理基础,了解RUP以及部分Rational产品的使用经验。

 

RMC概述

  
项目管理者可以使用RMC定制、部署、修改特定开发团队的项目开发过程,它是一个灵活的工具平台,可以应用于整个软件开发生命周期,有效的协助项目组保持一致性的客户化开发过程。

  
RMC是IBM RUP的下一个主要发行版本,对发展中的软件开发流程解决方案有很大程度的完善。最新的发行版本为7.0,具有以下特点:

用户可以使用RMC通过多种途径与项目成员保持一致的开发过程
基于Eclipse的方法构建和发布工具
提供过程库,包括所有早期版本的RUP内容以及RUP的插件

 

客户化RUP

  
在RMC出现之前,定制客户化的RUP需要若干步骤,需要使用不同的工具软件来完成。

RUP Modeler - 定义客户化插件
Rational Process Workbench - 定义工作流程
RUP Organizer - 扩充插件内容并导出插件
RUP Builder - 配置RUP视图并发布
MyRUP - 客户端自定义
  
RMC使用一个界面完成了上述软件的全部RUP相关功能,可以方便的针对客户独特的需求定义一个全新的或者是从默认基础上更改的RUP系统。

 

RMC的增强特性

  
RMC除了可以完成以前的若干工具软件所能实现的定制客户化RUP功能,还有很多扩充:

为制作、配置、查看和发布开发过程提供完成的可重定义工具。
在专用浏览视图中提供实时预览,允许视图的快速切换。
使用基于表单的管理方法内容的用户界面,无须掌握UML模型开发作为基本技能。
提供所见即所得的文本编辑工具用于创建方法的描述,编辑器允许使用风格样式表、图形、表格、超链接以及直接编辑HTML代码。
使用分类结构编辑器和流程图表创建过程。分类结构编辑器支持多种过程视图,RMC在过程发生变化时可以自动同步视图。
虽然RMC发行包中包含最新版本的RUP,但要记住,RMC是一个灵活的过程定义工具,而不仅仅是RUP。
增强的可重用性和可扩展性。
使用拖放操作快速定义过程。
填补了过程与项目管理之间的空白。


RMC(RUP)中的元素

核心元素

  
核心元素包括角色、任务和产品。

角色

  
角色是一个可参与到开发过程中的一个元素。它包含一个独立的个体的职责、相关技能及能力的集合。多个角色可以组成一个角色集合,用于一个迭代过程的资源使用。角色通过执行某一任务,产生相应的产品及其他非核心元素。

任务

  
任务定义为一个项目中被细化的可分配单元。每个任务被分配给一个指定的角色或角色集。任务的细化程度通常设定为由分配的角色在几小时到几天之间完成,并且尽量使该任务在整个项目的影响最小化,通常,只会影响到一个产品。

产品

  
产品是软件开发过程中任务的输入/输出的统称,RMC包含三种常见类型的产品:

Artifact
Outcome
Deliverable
非核心元素

  
非核心元素包括Checklist, Concept, Example, Guideline, Practice, Report, Reusable Asset, Road map, Supporting material, Template, Term Definition, Tool Mentor, Whitepaper。它们完成在软件开发的中间环节的交互以及构成统一过程系统的必要组成部分。

 

使用RMC构建客户化的RUP

新建Method Library

  

原文转自:http://www.ltesting.net