需求管理之前期规划
 

2009-09-08 来源:网络

 

需求管理是项目管理的重点之一 ---- 项目范围管理的重要组成部分,对于需求管理失败,一直是导致IT项目管理失败的主要原因之一。

项目管理思想中核心强调的预则立,不预则废,需求管理作为项目管理范围管理的一部分,也同样遵守本原则。

需求的详细工作包括了需求调研、需求分析与设计、需求确认、需求跟踪维护以及需求变更管理等方面的内容,在项目生命周期的任一阶段,都需要进行管理的管理。因此需求的生命周期贯穿于项目的整体生命周期过程中,在项目启动阶段,也应该对需求进行当贯穿需求的生命周期的管理规划,制订详细的需求管理的整体策略,选择适当的需求管理的方法、技术和工具,制订明确的流程以各方的职责,以指导项目的需求管理工作。

(1)整个项目的需求实现的整体策略

当启动一个项目时,需求管理作为项目范围管理,是项目启动工作的重要部分,对用户需求的满足程度,往往决定了项目质量,而如何控制项目的质量,提高用户的满意度,使项目顺利完成,在项目启动时,应该了解用户项目干系人对整体项目的总体需求,即是对整体项目的需求方面的要求。

比如:对既定的项目需求,建设的期望是什么,达到什么真正的可达成的目标?应用的期望是什么?

每一个项目的用户对项目的建设的期望与应用的期望都会有差异,甚至在一些涉及到范围比较广的项目中,同一个用户关键关系人对同一个项目中的建设子项的建设期望与应用期望都存在差异。对于这一点,往往我们从项目的招标书或者是合同书中并不能看出,但是,这种情况是实实在在存在的,有时候,用户自己本身也不了解,而是需要项目经理与用户的项目负责人进行进一步的沟通、抽丝剥茧后再加以引导才能明确。也就是说,这是整个项目的项目需求的需求。

很多时候,特别是一些涉及到信息管理等方面,用户的目标往往是不切实际,比较理想化,把前景想像得很美,特别是在信息化建设方面没有什么经验的用户,这一点尤其突出。如果我们的项目经理在这个时候,盲目的与用户的理想目标保持一致的话,就可能把项目引入到一个比较危险的环境。经验丰富的项目经理,会充分认识到同一个目标也是需要分层次的。需要进一步与用户的项目负责人明晰、分解项目的目标,确认可以达到的目标。

比如:对同一个业务的处理,可以是备案式的规则简单的、可以是备案式规则复杂的、可以是流程化规则简单的、也可以严格流程化规则复杂的等多种不同程度的实现,这对于达成项目目标方面却是一致的。

在项目中,有可能选择以上任何一种方式进行建设,但是,这每一种方式对项目成功建设的时间、成本、风险、资源要求、项目的成功率等方面的差异较大,明显第一种是最小的,而第四种则是最大的,那么是否全部进行一种的选择呢?这个问题,是项目经理在需求整体规划时应该考虑的问题,但却并不是项目经理可以决定。主要是原因,由用户的需求来决定,在这个过程中,项目经理可以影响和引导用户的需求。

项目经理应当与用户的项目负责人一起,分析项目背景、用户背景(特别是信息化方面的背景)、用户应用层次与背景、用户应用的环境等。

对于信息化背景不同程度的用户,用户负责人在处理不同的业务时,会有不同的态度。这个主要是由客观原因:用户的信息化背景与认识造成。对于信息化比较强的,用户采用较多的通过业务重整与流程重构来通过信息化提高业务处理水平以及数据处理水平;而对于信息化相对比较弱的,则希望通过引导与初步应用,达到引导信息化建设的初步目标。试想如果将不具有扎实功底的用户引入到一个严格、流程化管理的产品中,即使开发商可以根据需求生产出来产品,但是在应用时,会遇到很大的困难,从而造成项目的失败。也就是说,生产出一个复杂的产品,但是没有人或只有少数人愿意使用。

因此,我们项目经理在这个时候,应该对整体需求进行分析分解,与用户的负责人员进行协商,定下整个项目需求的策略,从而在整体项目需求调研的过程中,安排需求工程师进行引导。

(2)整个项目在需求过程的活动中采用的方法、技术与工具的选择

将用户的需求了解明白,清楚,需要各类的方法、技术与工具。

从需求调研计划开始,到完成多方签字确认的需求规格说明书,包括了一系列的需求活动。在各种活动中,每次所采用的方法、技术与工具差异也较大,而不同的方法、技术与工具所取得的效果也是不一样。项目经理在需求管理规则时,根据项目质量和进度要求、用户背景、项目组可以达到的程度来选择各种需求活动的方法、技术与工具。

需求方法包括了调研的方法、需求演示的方法、需求跟踪方法等,需求工具如各类模版;技术如原型制作技术等。这些的选择对于项目需求的定义非常重要,好的方法、工具与技术可以引导需求工程师定义出好的需求,并可以适当弥补因人员经验不足方面带来的缺陷。

以下,以需求规格说明书模版和用户需求评审为例来进行说明。

对于需求规格说明书的模版的选择,不同的项目是不同的。如下表,是在规格说明书中,这个表所消耗的工作量会比较大,但对项目需求的影响到底会有多大呢?这就需要项目经理进行分析:项目是一次性项目还是可持续的项目呢?用户对于需求要求的严格程度如何?系统设计时应该考虑到哪些问题?项目经理对整体项目进行分析后,权衡利弊,再决定在模版选择中是否需要裁剪。

用户需求评审是需求确认的一个方法是否采用,也是要根据项目的实际情况来选择。有用户需求评审这个环节,对于提高用户的满意度方面肯定有帮助,对后期的需求控制也有利。但是,用户是否具有需求评审的能力?对于初次合作的或者是复杂的需求,需求评审的确是有必要的,但是对于多次合作且双方合作良好的或者是比较简单的需求,则评审不一定有效果。

因此,在需求整体规划中,应形成一份需求管理的方法、工具与技术的清单。

(3)整个项目过程中需求活动的交互流程以及执行的严格程度

任何项目都是一个团队协作的过程。在项目管理中,清晰的流程与明确的职责是多方进行有效协作的基础。

需求过程是一个复杂的过程,与用户之间的交互频繁,在需求整体规划中,应对各方交互的流程、职责、执行的严格程度以及阀值处理方案进行明确,多方达成一致,形成文档作为项目的管理章程,指导项目需求管理工作的执行。

在需求管理过程中,需求计划过程、需求调研与需求分析过程、需求确认过程、合同内和合同外需求变更过程、需求评估过程、需求跟踪与完善过程几个较明显的过程。对于成熟的项目管理的公司,一般都有明确的流程与职责的定义,此时,项目经理只需要根据现有的过程进行裁剪,如果有的项目暂时还未形成正式的流程与过程以及明确的职责前,则项目经理需要根据项目情况进行定义。

定义好了需求流程后,对流程执行的严格程度影响整个需求的管理。比如,在需求调研计划中,用户是否指定了业务负责人把握整体需求?在需求调研阶段,用户现场的需求调研记录用户是否签字确认?补充的需求用户如何确认?如何确保用户已理解了需求?每一个需求细节的执行都将影响项目的执行,因此,在规划中对需求过程执行的严格程度决定了整个项目的需求的质量。

总结:

需求管理前期规划的结果应该包括以下三部分内容:

1、项目需求管理的总体指导思想;

2、项目需求管理的活动清单、每一个活动所采用的方法、使用的工具与技术;

3、项目需求活动的角色、流程说明,角色流程图、执行严格程度。


火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。
资源网站: UML软件工程组织