本文来自于 Rational Edge:本文概述了如何在业务建模、需求管理和工具支持的重要领域中,将RUP和MSP集成起来处理MSP中的缺口。最终结果是一个更全面的处理方法,分析和指定一个组织的转化,以及软件工具和技术的使用。
编者注:下面的文章描述了管理成功的规划(Managing Successful Programmes,MSP),这是在英国的一种流行方法。我们有意留下了Russell Norland 用英国习惯的拼写--例如 organisation 和 programme --以为我们的国际读者保留它的英语的原滋原味。
在今天的商业环境中,变更的压力来自于不同的来源,例如政府推动的、日益增加的来自于第三世界的竞争者,等等。规划是用以实现业务变革的同时维护与整个业务战略一致的传达手段。
管理成功的规划,或者MSP,提供了一个有关规划管理的非私有的最佳实践方法。此方法由英国的政府管理办公室开发,已经成功地被用在公共的和私有的领域中。Rational Unified Process ®,或者RUP ®,提供了一个组织良好的开发软件产品的方法,它利用了一组项目阶段、规程和迭代。它也被成功地用于整个公共和私有领域中。组织可以通过合并这两个管理方法论,将他们用在业务变革项目和规划中,以获得巨大的利益。
图1显示出,MSP和RUP规划管理方法在很大程度上是互补的。
图1:规划管理方法
注意,MSP缺乏许多重要的元素:
- 一个用于分析和详细说明组织结构和过程的正式方法
- 捕获和抽取业务需求的方法
- 裁剪个体组织过程的方法
- 用以识别、捕获和分析度量(益处)的内部工具和方法
- 文档模版
- 详述核心角色,例如业务分析师
本文描述了采用RUP的软件工程方法如何能处理这里的某些不足之处,并导致业务变更更有效的交付。
什么是RUP?
Rational统一过程,或RUP,提供了一种软件产品开发的组织良好的方法,其使用一组项目阶段、流程和迭代。
如图2所示,RUP开发生命周期包括四个连续的阶段(图表的顶部),涉及到财务、战略、商业和人力资源上的项目因素。九个核心规程(图表的左边)涉及到项目的技术方面,包括业务建模、实现、测试等等。
图2:RUP概述
一个RUP项目的每个阶段都会进一步细分为迭代(图表的底部);这些迭代包含了产生一个可执行软件发布版本的开发活动。
如图3所示,每个RUP角色都负责一组活动和一组相关联的工件1(产品)。每个工件由一组指南所支持,这些指南显示了如何开发、评价和使用这些工件。
图3:RUP活动组件
每个活动由一个工作指南所支持,工作指南解释了如何执行此工作。工具向导描述了软件工具如何支持此活动。
什么是MSP?
管理成功的规划,或MSP,是由政府商业办公室联合行业专家,包括BT、Logica、公共部门组织以及其它组织开发的。作为实施业务变更的一个手段,MSP包含了一组有效规划管理的核心法则和过程。
如图4所示,MSP过程是由很多过程组成的。
图4:MSP过程生命周期
表1概述了这些过程中的每一个。
表1:MSP过程
建立 | |
过程 | 目标 |
确定一个规划 | 规划目标的一个清晰理解。 |
定义一个规划 | 规划的一个完整定义,因此资金得到了承诺。 |
建立一个规划 | 建立规划环境,包括人员、工作实践和标准。 |
执行 | |
管理项目资产 | 管理时间、成本和质量,以确保商业利益被交付。 |
交付收益 | 按照可度量的方式跟踪和实现来自新性能的收益。 |
关闭规划 | 关闭规划并确认蓝图和愿景陈述的交付。 |
表2概述了促进一个规划成功交付的MSP的核心因素。
表2:MSP的核心因素
MSP 区域 | 描述 |
组织结构 | 将关键角色、过程和管理结构集合在一起,交付规划所期望成果。 |
计划(包括财务) | 按照完成规划目标并交付成果的一种方式来组织工作。包括详细的财务管理和会计实践,例如成本和支出简要描述。 |
效益管理 | 包括计划、管理和交付一组已定义的受益。 |
涉众管理 | 包括确认、分析和管理涉众期望以及他们的特定需要和利益。 |
问题和风险管理 | 包括定义将如何识别、分析和管理规划风险和问题的过程。 |
质量管理(包括配置管理和审计) | 确保质量成为规划管理过程和规划可交付物的组成部分。配置管理包括确认和控制文档,以反映规划的当前状态和业务操作。 |
管理范围和变更 | 包括必需的过程以确保规划包括了成功完成所必需的所有工作--并且只有必需的工作。 |
与MSP一起使用RUP
表3突出显示了MSP中的能够被RUP文档的使用所增强的区域。
表3:RUP和MSP文档
规划管理文档 | 组织 | 计划 | 效益管理 | 涉众管理 | 问题和风险管理 | 质量管理 |
规划大纲(MSP) | 业务对象模型(RUP)# | |||||
规划定义(MSP) | 业务规则(RUP) | |||||
规划定义的TOR(MSP) | 业务补充规约(RUP)# | |||||
(包括配置管理 & 审计) | 范围和变更管理 | 组织结构(MSP) | 规划计划(MSP) | 效益管理策略(MSP) | 涉众图(MSP) | 风险管理策略(MSP)* |
质量管理策略(MSP)* | 愿景声明(MSP)* | |||||
职位描述(MSP) | 项目资产(MSP) | 效益计划 | 沟通策略(MSP) | 风险记录(MSP)* | 配置管理计划(MSP)* | 蓝图(MSP)* |
PSO功能定义(MSP) | 共享资源简述计划 | 效益简述(MSP) | 沟通计划(MSP) | 问题管理策略 | 规划管理政策、标准和过程(MSP)@ | 业务词汇表(RUP)# |
依赖网络(MSP) | 业务用例(MSP) | 规划沟通(MSP) | 问题记录(MSP)* | 审核需求(MSP)* | 目标组织评估(RUP)# | |
规划时间表 | 效益评审报告(MSP) | 规划管理进展报告(MSP) | 规划经验教训报告(MSP) | 需求管理计划(RUP)# | ||
(MSP)项目大纲 | 度量计划 | 项目经验教训报告(MSP) | 需求数据库(RUP) | |||
财务计划(MSP) | 度量数据库# | 开发案例(RUP)# | 业务用例(RUP)# |
要点 | |
* | MSP和RUP之间的重叠 |
# | 由RUP所填充的缺口 |
@ | RUP技术能够帮助的区域 |
如表3所示,以下MSP方面可能会从RUP中受益:
- 范围和变更管理
- 问题和风险管理
- 质量管理(包括配置管理和审计)
- 问题和风险管理
- 效益管理
- 涉众管理
以下,我们将依次考虑以上这些方面的每一个,突出显示重叠和缺口的部分,并解决矛盾之处。
范围和变更管理
如表4所示,在两个主要文档中,RUP和MSP之间有较大的重叠。在这两个实例中,推荐是用RUP文档替代MSP文档。
表4:RUP和MSP中的愿景和构架文档
MSP文档 | RUP文档 | 描述 | 解决方案 |
愿景声明 | 业务愿景声明 | 按照已转变的组织的新的或扩展能力来描述规划结果。此能力的交付是规划的最终目标。 | 使用RUP文档替代MSP文档。RUP业务愿景文档比相应的MSP文档更加全面。 |
蓝图 | 业务构架文档(BAD) | 描述已转变的组织(例如,规划结果),包括中间里程碑。BAD包括业务模型,运行性能度量,组织结构,信息系统和支持服务需求。 | 使用RUP文档替代MSP文档。 RUP业务构架文档比相应的MSP文档更加全面。 |
表5显示了可以采用哪些RUP文档组织来补充MSP文档。这些来自RUP业务建模和需求流程的文档,主要被用于:
- 分析当前的和目标组织。
- 捕获和文档化业务需求以使组织能够确定项目的规模和范围。
表5:用RUP文档补充MSP的范围和变更管理
RUP 文档 | 描述 | 解决方案 |
业务词汇表 | 定义规划的业务建模部分中使用的重要术语。 | 采用--为规划团队提供一个公共词汇表。 |
目标组织评估 | 描述组织的当前状态,在组织中系统要按照当前的过程、工具、员工能力和态度、顾客、竞争对手、技术趋势、问题和改进区域。 | 采用--理解问题区域和潜在改进 |
需求管理计划 | 描述业务需求文档、需求类型、以及它们各自的需求属性,指定被收集和用于度量、报告以及控制对规划需求变更的信息和控制机制。 | 采用--文档化控制规划范围的方法。 |
需求数据库 | 包含从一个需求管理透视图跟踪的规划需求、属性和依赖关系的存储库。 | 采用--提供对规划需求的公共访问。 |
业务用例模型 | 建模预期的业务功能。用作一个必须的输入,以确定组织中的角色和可交付物。 | 采用--用作对规划需求的输入和参考。 |
业务对象建模 | 描述业务用例在两种情形中的使用:当前情形(原来的样子);预想的新过程(将要成为)。 | 采用--要用作对规划需求的输入和参考。 |
业务规则 | 宣告必须被满足的政策或条件。 | 采用--要用作对规划需求的输入和参考。 |
业务补充规约 | 显示没有被包括在业务用例模型或业务对象模型中的必需的定义。 | 采用--要用作对规划需求的输入和参考。 |
附录A提供了有关RUP业务建模流程的更多详细内容。
问题和风险管理
表6建议了如何解决在问题和风险管理区域中MSP和RUP文档之间的重叠。
表6:解决MSP和RUP问题和风险管理的重叠
MSP 文档 | RUP 文档 | 描述 | 解决方案 |
风险管理策略 | 风险管理计划 | 描述风险将如何管理和为交付必需受益的规划的潜在可能 | 使用MSP文档,其充分地覆盖了此区域。 |
风险记录 | 风险列表 | 能够跟踪和监控分析和规划的交付受益的潜在可能。 | 使用MSP文档,其充分地覆盖了此区域。 |
NA | 问题解决方案计划 | 描述用于报告、分析和解决项目问题的过程。 | 采用RUP文档。没有可对比的MSP文档。 |
问题记录 | 问题列表 | 记录和跟踪与规划管理相关的问题、例外、异常和不完善的任务。 | 使用MSP文档,其充分地覆盖了此区域。 |
质量管理(包括配置管理和审计)
表7建议了如何解决在此区域中的重叠。
表7:解决MSP和RUP质量管理的重叠
MSP 文档 | RUP 文档 | 描述 | 解决方案 |
质量管理策略 | 质量保证计划 | 显示规划将会采取的度量以确保质量。 | 使用MSP文档,其充分地覆盖了此区域。 |
配置管理计划 | 配置管理计划 | 描述在产品或项目生命周期中被执行的所有配置和变更控制管理(CCM)活动。详细说明活动的时间表,被分配的职责和所必需的资源,包括人员、工具和计算机设备。 | 使用RUP文档,其充分地覆盖了此区域。 |
审核需求 | 评审和审核计划 | 指定在管理项目评审和审核中要使用的进度表、资源、方法和过程。 | 使用MSP文档,其充分地覆盖了此区域。 |
开发案例 | NA | 描述规划被裁剪的开发方法论。 | 采用--系统地文档化规划过程。 |
RUP业务用例建模技术也能够帮助正式地定义规划管理政策、标准和过程。
效益管理
如表8所示,MSP和RUP都使用业务用例来定义一个规划的潜在受益。此表也显示了哪些RUP文档补充了MSP的效益管理。
表8:解决RUP和MSP效益管理的重叠
RUP 文档 | MSP 文档 | 描述 | 解决方案 |
业务用例 | 业务用例 | 定义保证规划的理由,基于按照由组织转变产生的预期收益的估算成本。 | 使用MSP文档,其充分地覆盖了此区域。 |
度量计划 | 定义监控规划进度的度量目标、关联度量和要收集的基本度量。 | 采用--建立可以被监控和控制的客观目标。 | |
度量数据库 | 作为规划的度量数据的活动存储库的功能。 | 采用--提供对最新规划信息的访问:收益,资源,过程以及在原始级别和导出级别的产品度量。 |
涉众管理
RUP和MSP都强调涉众和顾客的切实收益交付的重要性。
MSP涉众图列出了每个主要涉众以及他们在规划中的利益。此文档的主要目的是作为规划沟通策略的基础。要捕获涉众需要和需求的一个更详细的分析,RUP愿景文档可能是一个更好的媒介。
愿景能够创建保证规划的动机的一个公共理解。此文档是公共的、共享的并且是所有涉众意见一致的,提供了管理涉众期望的方法,基于涉众的特定利益和需要。
列出MSP和RUP文档
表9显示了MSP和RUP工件的一个排列,其基于以上推荐的解决方案。
表9:列出的MSP和RUP文档
规划管理文档 | ||||||
组织 | 计划 | 效益管理 | 涉众管理 | 问题和风险管理 | 质量管理(包括配置管理&审计) | 范围和变更管理 |
组织结构(MSP) | 规划计划(MSP) | 效益管理策略(MSP) | 涉众图(MSP) | 风险管理策略(MSP) | 质量管理策略(MSP) | 业务愿景(RUP) |
职位描述(MSP) | 项目资产(MSP) | 效益计划(MSP) | 沟通策略(MSP) | 风险记录(MSP) | 配置管理计划(RUP) | 业务构架文档(RUP) |
PSO功能定义(MSP) | 共享资源简述计划(MSP) | 效益简述(MSP) | 沟通计划(MSP) | 问题解决方案计划(RUP) | 规划管理政策、标准和过程(MSP) | 业务词汇表(RUP) |
依赖网络 | 业务用例(MSP) | 规划沟通(MSP) | 问题列表(RUP) | 审核需求(MSP) | 目标组织评估(RUP) | |
规划时间表(MSP) | 效益评审报告(MSP) | 规划管理进度报告(MSP) | 规划经验教训报告(MSP) | 需求管理计划(RUP) | ||
项目大纲 | 度量计划(RUP) | 项目经验教训报告(MSP) | 需求数据库(RUP) | |||
财务计划(MSP) | 度量数据库 | 开发案例(RUP) | 业务用例(RUP) | |||
规划大纲(MSP) | 业务对象模型(RUP) | |||||
规划定义(MSP) | 业务规则(RUP) | |||||
规划定义的TOR(MSP) | 业务补充规约(RUP) |
将RUP应用到MSP生命周期中
图5显示了RUP流程的一部分如何被应用到MSP的整个生命周期中。大多数MSP过程已经被分为两组流程:
- 规划管理(收益、风险和问题、财务、质量、计划过程)
- 业务变更(涉众、沟通)
RUP流程到MSP生命周期的应用规划
可以补偿MSP中的缺口的RUP流程如表10所示。
表10:MSP采用的RUP流程
RUP 流程 | 收益 | 采用说明 |
业务建模 | 提供文档化业务变更的一种严格方式。 | 采用完整的业务建模工作流。 |
需求 | 提供一种抽取、编写和管理规划需求的一致方式。 | 采用完整的需求工作流。 |
项目管理 | 增强MSP项目质量和管理。 | 某些RUP项目管理活动可以被采用--例如,“开发度量和项目解决方案计划”。 |
配置和变更管理 | 提供一个管理和控制规划资产的全面方法。 | 采用完整的配置和变更管理工作流。 |
环境 | 提供根据过程和工具管理规划环境的方法。 | 裁剪环境工作流,使得其更集中在规划级,而不是项目级。 |
在适当的地方,尽可能多得使用RUP流程以节约时间和工作量。如果你裁剪一个流程,在RUP开发案例文档中保存它。
一个值得注意的额外收益是,RUP是伴随着一个全面的工件模版和范例集产生的。这些模版减少了必需创建文档的工作量,并制定了一个组织中的一致方法。它们也有助于减少学习曲线。
RUP在规划结构组织上的影响
图6显示了一个普通规划组织结构。引入RUP将会对规划支持办公室产生最大的影响。
图6:典型的规划组织
在MSP中,此办公室的主要职责是:
- 管理规划过程。
- 定义规划内容。
- 量化规划成本和收益。
- 确定和启动组件项目。
- 提供设计权威能力。
- 在沟通计划和市场方面提供帮助。
要支持RUP增强,规划支持办公室将需要增加RUP角色,如表11所示。
表11:需要支持RUP/MSP集成的RUP角色
角色 | 描述 |
业务分析师 | 通过定义被建模的组织来引导和协调业务建模。对业务架构负责。 |
业务设计师 | 执行详细建模和业务过程的规格说明。 |
系统分析师 | 协调需求抽取、编写和管理。 |
配置经理 | 提供全面的配置管理(CM)基础和环境。 |
过程工程师 | 检查规划开发过程,包括在规划启动之前配置过程,并持续地在规划生命周期中改进它。 |
工具专家 | 检查规划工具的规格说明、获取和维护。 |
IBM Rational工作支持
所有IBM Rational的自动化工具都被设计支持RUP。图7显示了一部分计划、配置、需求管理和可视化建模工具,这些工具能够对开发规划工件、使团队能够节省时间、减少工作量和改进沟通上提供自动化支持。3
图7:应用到规划管理的IBM Rational工具集
表12描述了这些IBM Rational工具的一部分。
表12:选择的加速和支持软件开发的IBM Rational工具
工具 | 描述 | 收益 |
IBM Rational® Requisite Pro® | 对所有规划需求提供了一个集中数据库。可以与Microsoft Word集成,因此在文档中所包含的需求可以被导入到数据库中。 |
|
IBM Rational Rose®产品族 | 使业务分析师能够建模业务过程,使用统一建模语言(UML)。 |
|
IBM Rational Soda® | 自动化规划文档和报告的产生和维护。 |
|
IBM Rational ClearCase® | 管理规划产品的变更和提供自动化的版本控制。 |
|
IBM Rational ClearQuest® | 自动化与问题、风险和变更管理相关的过程。 |
|
IBM Rational Project Console® | 自动化研究和报告规划状态的过程,包括一个基于Web的进度度量仪表板,并且也适合于捕获收益量度。 |
|
结束语
要概述合并RUP和MSP的益处,我们可以说,RUP在以下关键过程域有效地补充了MSP。
- 组织结构--RUP定义了一组支持规划的技术角色,包括业务分析师、系统分析师、配置经理,等等。
- 效益管理--RUP的度量技术可以改进规划进度和交付收益的度量。
- 范围管理--RUP业务架构文档提供了一个简明的但严格的业务范围定义。
- 涉众管理--RUP提供了对涉众要求和需求的捕获、管理和达成一致的机制。需求的共享理解增大了规划成功的机会。
结合工程的方法,技术,和RUP的工具,MSP领域里的规划管理实践,一个 "世界上最好的方法 "包括了下面的好处:
- 一个用于分析和指定组织结构和过程的严格方法。
- 抽取、编写和管理业务需求的正式方法
- 一个按照规划需求的已裁剪过程
- 支持软件工具,这些可以节省时间、减少工作量和改进团队沟通。
使用MSP提供“什么”,RUP提供“如何”,你的对交付成功规划的期望如何被非常大的改进。
参考资料
政府控制办公室(UK),Managing Successful Programmes. HMSO, 1999. ISBN: 0113300166
Philippe Krutchen, Rationgal统一过程、一本能入门的. Addison-Wesley, 2000. ISBN: 0201707101
Walker Royce, "改进软件经济学,第三部分" Rational Edge2001年6月1日
附录A:业务建模
一个业务变更项目的主要产品,,可能 会影响到
- 商业过程过程
- 业务组织区域(BUSI)QUYU (业务单元)
- 业务位置
- 业务数据
- 业务应用规划
- 业务技术
- 业务服务级别
- 业务能力需求
对这些变更没有评估,一下的事情是不可能的:
- 估算项目成本。
- 有效地确定范围、计划和管理项目。
- 充分地建模或文档化已变更的组织。
在MSP中,这个关键信息是按照两个核心文档被捕获的:
- 愿景
- 蓝图
愿景沟通规划的最终目标到涉众。蓝图,如在图A-1中所概述的,概述了在已变更组织中愿景的使用。
图A-1:MSP中的愿景和蓝图
MSP不提供创建蓝图的工具、方法和技术。RUP业务建模流程提供这些。此流程描述了如何开发一个新组织的愿景,将会在业务变更完成后被建立。此外,基于此愿景,它也在一个业务架构文档中定义了过程、技术、角色和组织的职责。
图A-2:关键业务建模角色和编写
图A-2概述了业务建模中的关键角色和文档。
- 业务愿景--沟通变更规划的最终目标。描绘业务将如何在变更被实施时被转变的一个简单的图像。
- 目标组织评估--描述了变更将被部署的组织的当前状态。
- 业务用例模型--建模预期的业务功能。用作一个必需的输入,以确定组织中的角色和可交付物
- 业务对象模型--建模业务工作人员和需要关联和协作的业务实体,以执行业务过程。
- 业务架构文档 --编写业务的架构视图:
- 业务过程视图--概述核心
- 组织结构视图概述和分组关键业务角色和职责。
- 文化视图--表示组织文化的一个愿景,并定义激励此项文化的机制。
- 人力资源视图--讨论维护和开发员工技能集的机制。
在RUP里,有一个文档化的工作流程和一组关联的活动.另外,大量的工具能帮助业务建模,包括了Rational Rose,它能帮助你产生业务用例模型.
附录B:过程工程师角色
RUP定义了此角色的职责,如下所示:
- 帮助规划经理和/或团队为了创建将用在开发工作量中的项目工作分解结构和进度表,使用方法论(MSP/RUP)。
- 指导项目团队成员在规划的整个生命周期中在方法论上随需所取。这包括提供对任务所在团队、任务依赖关系、技术和可交付物以及任务角色。
- 审核由团队产生的可交付物,以验证它们是否使用方法按照接近项目的方法来排列,并且它们会促进项目的进展。
- 监控和对规划经理和提供阶段性的状态,对处于开发进度、时间表、可能风险、方法的必需修改,以及与规划和使用的方法论有关的其它问题。
- 提供对过程改进组在变更上的输入,这些变更一直是为了更新未来使用的方法论而对规划计划所做的。
注释
1一个工件可以是一个模型、一个模型元素或一个文档。一个文档可以包含其他文档。
2角色不是一个个体!个体的规划成员将会戴着不同的帽子来担任不同的角色(例如,具备多个技能的人员)
3参见附录B。