UML
软件工程
组织
北京火龙果软件工程技术中心
企业的项目组合管理流程改进实践之路,第二部分: 打造统一的项目管理平台之范围管理
宁 德军, Rational高级技术专员, IBM 中国
概念定义
1 背景
2 什么是项目范围管理
3 使用RMC定义可视化的范围管理流程
4 在RPM中进行项目范围管理
5
小结
本文从打造统一的项目管理平台的角度出发,讨论如何基于IBM Rational的项目组合管理平台和流程工具,快速实现项目管理九大知识领域中的范围管理部分。
概念定义
1) 范围基准:批准的详细项目范围说明书与对应的工作分解结构和工作分解结构词汇表都是项目的范围基准。
2) 产品范围:产品、服务或成果的特征与功能。产品范围是否完成,则以产品要求作为衡量标准。
3) 项目范围:为提供具有规定特征与功能的产品、服务或成果而需要完成的工作。项目范围是否完成是以项目管理计划、项目范围说明书、相应的工作分解结构,以及工作分解结果词汇表作为衡量标准;
1 背景
企业项目组合管理流程的建立、推广和执行是一项长期而艰巨的任务,它必须通过对企业项目组合管理流程的持续改进来实现。而在实践过程中,企业的项目管理流程改进必将经历三个主要阶段:
第一阶段:建立规范的、可执行的项目管理方法,用来指导项目管理团队进行项目管理活动;
第二阶段:打造统一的项目管理平台,为项目团队的具体管理流程提供支撑;
第三阶段:建立起多项目的监控、管理、人力资源平衡以及多项目间的依赖关系处理等能力,保证企业管理者能够根据业务发展要求,在多项目间进行很好的投资组合分析;
本文从打造统一的项目管理平台的角度出发,讨论如何基于IBM Rational的项目组合管理平台和流程工具,快速实现项目管理九大知识领域中的范围管理部分。
2 什么是项目范围管理
2.1 PMBOK的项目范围管理定义
在PMBOK中,产品范围定义为项目所提交的产品、服务或成果的特征与功能,产品范围是否完成,以产品需求作为衡量标准;而项目范围则定义为提供具有规定特征与功能的产品、服务或成果而需要完成的工作,项目范围是否完成是以项目管理计划、项目范围基准作为衡量标准。项目范围管理知识领域是确保成功完成项目所需的全部工作,但又只包括必须完成的工作的各个过程.项目范围管理的过程的重点是确定项目的范围基准,它包括经过批准的详细项目范围说明书,相应的工作分解结构,以及工作分解结构词汇表。为了完成项目范围管理,PMBOK将项目范围管理流程划分成范围规划、范围定义、制定工作分解结构、范围核实和范围控制五个管理流程。
在范围管理的管理流程中,范围规划、范围定义和制作工作分解结构属于规划过程组,范围规划的主要目标是制定项目范围管理计划,回答如何进行项目范围管理的问题,包括如何进行项目范围确定、核实与控制,如何制定与定义工作分解结构(WBS),如何核实项目范围,以及如何控制项目范围等;范围定义和制定工作分解结构两个范围管理流程组回答什么是项目范围的问题,其中项目范围定义的主要目标是根据项目章程文档、项目初步范围说明书和项目范围管理计划,制定详细的项目范围说明书;而制作工作分解结构过程则是在项目范围说明书的基础上,将项目大的可交付成果与项目工作进行分解,划分为较小和更易管理的组成部分,最终形成项目范围管理的范围基准。范围核实和范围控制则属于项目管理的监控过程组,范围核实是取得利益关系人对已完成的项目范围与相应的可交付成果正式验收的过程;而范围控制关心的则是如何控制项目范围基准的变更。
2.2 Rational Portfolio Manager中的项目范围管理定义
Rational Portfolio Manager(简称RPM)对项目范围元素的定义分为两个方面,即项目需求(Requirement)和项目执行过程中发生的意外(Exceptions),如变更请求(Change Request)、风险(Risk)、问题(Issue)、缺陷(Defect)、服务请求(Service Request)和行动(Action)。RPM项目范围架构如图1所示,产品需求决定产品范围,产品范围决定了项目范围,项目范围本身又可以直接转化为工作分解结构和项目计划,同时会受到需求变化或者发生项目意外的影响,而项目范围的变化,最终反映到项目计划和工作分解结构上。而在整个项目生命周期中,项目范围的变更,服务请求和缺陷等应该被完整跟踪和全面管理,即使它们还未影响到项目范围。
图1 各种范围要素之间的相互影响关系
RPM中的范围管理,主要通过范围规划、范围定义、制定工作分解结构、范围核实和范围控制等范围管理流程,完成以上项目范围元素的定义,分解、跟踪、核实和控制,同时完成范围元素的变更管理。通过在RPM中有效定义和重用项目管理流程模板和有效使用项目的"范围管理"功能,项目管理团队能够很好的遵循组织预定义的项目范围管理流程,完成项目范围管理任务。
2.3 项目范围管理的实现说明
IBM Rational对项目范围管理的实现包括两个部分:
1) 使用RMC定义可视化的范围管理流程,通过提供统一的项目范围管理流程和方法,帮助企业进行范围管理标准流程和方法的推广;
2) 使用RPM执行已定义的范围管理流程,通过提供统一的项目范围管理平台,提高项目管理团队的范围管理执行能力和效率;
具体企业项目范围管理的要求和解决方案的实现方法对应关系如表一所示:
表一、企业项目范围管理的要求和解决方案的实现方法对应关系
3 使用RMC定义可视化的范围管理流程
"过程改进、方法先行",使用IBM的平台和流程工具实现项目范围管理的第一步,就是利用IBM的过程改进工具RMC为项目范围管理建立完整的管理流程,如图2所示,流程中应该包括项目范围管理流程的流程图,过程的执行角色、主要任务和每个任务的输入输出工件。同时,企业也可以根据自身的经验建立一些合适的工件模板,例如项目范围管理计划模板、针对特定项目类型的WBS模板等等。有关如何使用RMC定制具体的可视化流程,请参考《企业项目组合管理流程改进的实践之路 ――第一篇 过程改进 方法先行》。
图2 项目范围管理流程定义
图3 项目范围管理流程定义
在标准的项目管理方法和过程的推广过程中,企业一般都会根据自身项目管理的实际需求,为不同类型项目的管理流程定制不同的项目管理流程模板,这就是目前常常被人们提起的"可适应的流程"(Adaptable process)的具体含义。由于目前企业面临的商业环境的日新月异、信息技术的快速发展,建立"可适应的流程"逐渐成为企业过程改进的基本要求,不能"随需应变"的过程,必然无法在企业内部有效推广。
RMC在这方面做了非常好的工作,首先它基于UMA的方法定义架构,保证了企业可以根据需要快速生成所需的企业标准管理方法和流程。其次在RMC中定制的项目管理方法,可以通过RMC内置的导出功能,导出到RPM中生成可执行的项目管理流程模板,或导出生产MS Project的项目计划文件,生成工作分解结构,然后作为整个项目管理计划的一部分,指导项目管理团队开展项目工作。此外,在从RMC中导出流程模板时,用户还可以通过更改流程中指定活动的"已计划"属性,决定是否在导出的流程模板中包含该活动,方便定制具体要导出的计划内容。
图4 在RMC中根据需要设置"已规划"属性
图5 导出时选择只导出具 有"已规划"属性的部分
图6 导出范围管理计划
这样,RMC中的可视化的项目管理流程就变成了RPM中的可执行的项目管理流程,使整个项目管理团队能够在不知不觉中,轻松愉快的按照组织预定义的项目管理方法,完成项目管理工作。
图7 举例说明组织项目管理流程模板定制
当项目团队在具体项目中进行项目范围管理工作时,项目经理和相关项目管理人员就可以通过拖-放的方式,重用范围管理流程模板,获的项目范围管理流程的组织标准工作过程,其中包括角色、文档模板、工作指南和主要活动,也可以包括组织根据自己的标准所进行的各种定制内容。基于项目范围管理流程模板,项目团队就可以在不知不觉中,轻松愉快的按照组织预定义的项目范围管理流程,完成项目范围管理工作,这对提高组织项目管理流程的成熟度有很大帮助。
4 在RPM中进行项目范围管理
企业在使用RPM进行具体项目管理活动时,应该已经使用RMC定义了"可适应"的项目管理流程。这样,在具体的工作过程中,项目组成员就可以根据自己的角色和所从事的工作内容,随时参考、学习组织过程资产中的标准的、可视化的项目管理方法,从而通过流程可视化,做到行动标准化,实现项目过程质量保证和执行效率最大化。
4.1 在RPM中实现范围规划过程
范围规划的主要目标是制定项目范围管理计划,记载如何确定、核实与控制项目范围,以及如何制定与定义工作分解结构(WBS)。范围规划的输出是《项目范围管理计划》,说明项目团队如何确定项目范围,制定详细的《项目范围说明书》,确定与制作工作分解结构,核实项目范围,以及控制项目范围。
图8 使用项目范围规划流程模板指导项目规划工作
在项目团队使用RPM进行具体的项目范围规划工作时,项目经理和相关人员可以通过拖-放的方式,重用通过项目范围规划流程模板,获的项目范围管理流程中的组织标准工作过程,包括角色、文档模板、工作指南和主要活动。这样项目范围规划人员不但可以方便获取组织过程资产中关于范围管理方法和流程的内容定义,还能够根据预定义好的《项目范围管理计划》模板和指南,快速进行范围规划工作,生成《项目范围管理计划》文档。
4.2 在RPM中完成范围定义过程
范围定义的主要目标是根据《项目章程》文档、《项目初步范围说明书》和《项目范围管理计划》,制定详细的《项目范围说明书》,作为将来项目决策的依据,它的编制状况关系到项目的成败。在RPM中,执行范围定义过程时,一方面通过重用范围定义流程模板获取《项目范围说明书》模板和指南,帮助项目范围定义人员根据给定的公司标准模板和指南,快速完成范围定义工作。另一方面,可以根据《项目初步范围说明书》内的主要可交付成果,使用产品分析、其它方案识别、利益关系人分析等项目范围定义技术,如图9所示生产需求定义和基于需求的工作分解结构。
图9 在"范围管理"窗口中定义项目需求
在项目范围定义过程中,项目团队最容易犯的错误是没有尽早的、充分的让关键利益关系人加入到范围定义的活动中,而是凭着项目团队的经验和理解确定的项目范围。然后,在项目范围核实过程中,当利益关系人执行验收时就会碰到各种各样的范围定义问题。在RPM中,通过在需求管理工作流中加入"利益关系人复审"任务,如图10所示,确保关键利益关系人在项目范围定义过程中,对需求进行有效复审,从而确保项目范围的正确定义。这也为项目团队使用"利益关系人分析"的方法进行项目范围定义,提供有力支持。
图10 使用"工作流"完成项目范围核实工作
RPM内置了强大的工作流引擎和通知(邮件)引擎,以实现项目团成员之间快速的、高效率的协作与沟通。同时,为了方便工作流的设计,RPM内置的工作流引擎包括可视化的状态流程图定义和工作流定义,如图10所示,工作流程是导致元素流过企业定义的状态流的一系列步骤,步骤具有一个或多个附件、参与者、表决定义和结果,步骤可能会也可能不会更改元素的状态。
图11 在需求的"描述"窗口中完成需求定义
此外,通过使用RPM中内置的Portlet技术,项目团队能够有效组织和统一管理需求的各种信息。使用这种组织方式,在需求的"描述"窗口中,如图11所示,用户既可以进行需求描述、成本估算、影响估计、人力资源估计、附加需求文档和需求记分卡等内容的输入和展现,又可以指定需求属性、优先级、需求提出人、批准人和关闭人等信息。
4.3 在RPM中实现制定工作分解结构过程
制作工作分解结构过程的主要目标是根据项目范围说明书,将项目大的可交付成果与项目工作,划分为较小和更易管理的组成部分。工作分解结构是以可交付成果为对象,由项目团队为创造必要的可交付成果并实现项目目标,而执行的工作分解之后得到的一种层次结构。属于工作分解结构底层组成部分的计划工作叫作"工作包",可以安排在进度表中,它是项目管理人员估算费用、监视和控制进度、分配资源的基本单位。在RPM中有两种表示"交付成果"的方法:
用来表示项目对外的可交付成果,
表示项目过程中产生的内部工作产品,它们也可以按层次嵌套表示"工作包"的概念。使用RPM制定工作分解结构时,首先可以使用RPM中流程模板的能力,建立典型的项目工作分解结构样板和典型的工作包模板,以便项目团队重用。
图12 工作分解结构样板及其重用
图13 在项目中直接建立工作分解结构
其次,在具体的项目制定工作分解结构过程中,项目经理和相关人员可以整个重用项目工作分解结构样板,或通过重用模板中定义的工作包,快速完成制定工作分解结构工作。
在具体使用RPM时,我们可以有两种方式完成"制定工作分解结构"的工作:一种是在"工作管理"窗口中的指定项目中,通过加入"可交付成果"和"工作产品"等工作包,如图13所示,直接根据项目范围说明书建立项目的工作分解结构。当然也可以如图12所示,使用预定义的工作分解结构模板,通过拖-拉的方式快速建立项目工作分解结构;另一种方式,是在指定项目的"范围管理"窗口中,如图14所示,在指定的"需求"下面,直接根据项目范围说明书建立工作分解结构,这种方法的好处是:由于建立起了从需求到工作包一目了然的追踪关系,方便了项目管理团队进行范围核实和范围控制。
图14 在项目的"范围管理"中的需求下面建立工作分解结构
通过范围定义和制定项目分解结构过程,项目团队成功实现了《项目范围说明书》与对应的《工作分解结构》和《工作分解结构词汇表》等工件,这些工件在经过正式的审核批准后,一同组成了项目的范围基准。此时,项目管理者可以通过RPM保存项目基线,形成正式完整的项目范围基准。
4.4 在RPM中实现范围核实过程
范围核实的主要目的是正式验收已经完成的项目可交付成果。它是取得利益关系人对已完成的项目范围与相应的可交付成果正式验收的过程。在RPM中执行范围核实过程时,首先通过重用项目管理模板,获取企业组织过程资产中的《软件项目验收规范》、项目范围核实工作指南模板,通过结合项目范围管理其它过程中定义的相关模板,包括《项目范围说明书》、工作分解结构和《项目管理计划》等工件,指导整个项目团队和相关利益关系人进行项目范围核实工作。一般情况下,组织的软件项目验收规范中会严格规定项目的验收原则、验收工件集、验收方法、验收标准和验收过程定义等内容,通过将范围核实过程中的主要活动以任务的形式加入到范围核实工作包,项目团队就可以根据组织预定义好的项目验收规范,按照标准化的项目验收过程,使用预先定义好的标准验收方法,针对确定的项目工件集,通过复审、检查、测试等验收手段,完成项目范围核实过程。其次,使用RPM中内置的工作流定制能力,定义工作包级别的范围核实工作流,在工作流中会具体给出推荐的参与范围核实的人员角色,领导检查列表等内容,确保项目核实过程的质量。
图15 使用"工作流"完成项目范围核实工作
4.5 在RPM中实现范围控制过程
范围控制的主要目标是控制项目范围的变更,它关心的是对造成项目范围变更的因素施加影响,并控制这些变更造成的后果。范围控制确保所有请求的变更与推荐的纠正,通过项目整体变更控制过程进行处理。使用RPM进行项目范围管理时,可以使用项目的"范围管理"窗口对项目范围元素进行统一控制,如图16所示,其中包括项目需求(Requirement)和项目执行过程中发生的意外(Exceptions),如变更请求(Change Request)、风险(Risk)、问题(Issue)、缺陷(Defect)、服务请求(Service Request)和行动(Action)等。
图16 在RPM中统一管理各种范围元素及其变更
通过它项目团队不但能够对整个项目的范围元素进行有效的定义、跟踪、流程控制,还能够在项目范围元素下直接建立工作分解结构,然后将定义好的工作分解结构直接拖动到项目管理计划中,成为项目计划的一部分。通过将项目的变更、缺陷和风险等范围元素和项目管理计划紧密关联,将大大提高项目管理团队对项目范围变更的控制和实现过程的追踪能力。
同时,基于公司的变更管理流程,利用RPM中可视化的流程建模能力,能够方便的建立变更管理工作流,如图17所示,其中不但包括变更管理生命周期状态模型的管理,也包括对变更管理工作流的可视化建模能力。通过统一的变更管理工作流的建立,可以保证所有针对项目范围的变更,都会经过一个已定义的、标准的变更管理流程统一管理,有效控制项目范围变更。
图17 在RPM中建立统一变更管理工作流
此外,RPM的全面、专业的项目范围管理能力还体现在以下几个方面:
1) 提供统一入口,全面控制项目需求和项目范围的各种变更要素,跟踪它们的状态、数量和处理情况;在RPM中的"我的快速入口"菜单下,项目团队可以对项目范围元素进行统一控制,如图18所示,其中"我的范围元素"统一显示由当前用户负责的范围元素的内容、数量;而"全部范围元素"则显示项目的全部范围元素的内容、数量。同时还可以通过分类图表,显示处于某一状态的某种范围元素的数量,例如:目前处于"打开"状态的需求数量,缺陷数量等。
图18 在RPM的"我的快速入口"中统一监控各种范围元素
同时,通过双击图中某一范围元素部分如图风险部分,RPM就会显示具体范围元素的具体信息。如下图19所示:
图19 各种范围元素图表代表的具体变更元素内容
2) 范围要素可以关联WBS任务。例如:为了对项目执行过程中发生的变更请求或缺陷进行跟踪处理时,我们需要创建相应的任务并安排人员负责相关任务。通过在"范围管理"窗口中的范围元素下,直接建立工作分解结构,创建相应任务,安排项目资源,并将结构拖放到项目管理计划中,成为项目计划的一部分,可以实现从范围元素的变更到具体实现工作计划的追踪。这种方法的好处是:由于需求或其它范围元素到工作包的追踪关系一目了然,项目管理者可以随时知道问题的处理情况信息,方便进行范围核实和范围控制。
3) RPM提供统一标准的管理技术。例如风险管理提供了专业的定性、定量分析方法;如图20所示。
图20 风险管理
4) 通过RPM提供的强大报表和图表分析能力,使项目管理人员对项目范围变更情况一目了然,轻松完成项目范围控制工作。
图21 RPM中的项目组合分析板范围管理分析和报告能力
图22 项目全部范围元素报表
5 小结
综上所述,使用IBM Rational的项目组合管理平台和流程工具,通过建立和重用RPM中的企业标准项目管理流程模板,能够保证项目管理团队在不知不觉中,遵循组织预定义的统一的项目范围管理流程。通过使用RPM中的范围管理功能、范围元素到任务的追踪功能,项目管理团队能够有效完成范围规划、范围定义、制定工作分解结构、范围核实和范围控制等范围管理流程,实现各种项目范围元素的定义,分解、跟踪、核实和变更管理,实现完整的项目范围管理。
版权所有:UML软件工程组织