二. 需求管理中的问题
  需求管理是项目范围管理的核心,通经常使用户需求与项目计划组成项目管理三角形中重要的范围和时间管理这两个维度。在系统研发过程中,需求作为研发工作的源头发挥其重要作用,非常多研发过程中的问题都是因为需求不明白或需求管理不当所造成,需求管理中典型的问题有:
  1.      需求调研不充分
  需求调研也是一项流程性工作,在每一个项目启动之后、研发工作开展之前须要确保进行需求调研。在实际操作过程中,作为用户需求来源的一部分,项目经理团队都觉得需求调研是一项必要的工作,但往往缺乏足够的重视和投入导致调研不充分,从而为兴许的研发工作埋下隐患。需求调研不充分体如今缺少标准化的调研方案,缺少有效的调研信息保存和传递机制等。
  2.      没有区分用户需求和产品需求
  需求管理如同项目计划一样,须要在项目线和产品线之间形成信息过滤,过滤的结果是形成面向用户的用户需求和面向产品的产品需求。假设没有区分用户需求和产品需求,把用户需求直接抛给研发团队、或者把产品需求直接交与用户确认都是不合适的。同一时候,依据本文第一部分提到的产品线与项目线的关系,用户需求和产品需求的混淆会导致无法确立正确的产品线。
  3.      无法建立需求跟踪机制
  用户需求和产品需求进行区分之后,势必要建立完好的需求跟踪机制维护用户需求和产品需求之间的双向跟踪关系,从而确保用户需求信息和产品需求信息都能得到跟踪和反馈。缺少需求跟踪机制会导致需求信息失去透明性,并引起因为信息传递过程所导致的不必要沟通成本和不理想的沟通效果。
  4.      缺乏需求确认规范
  需求确认面向客户,须要建立正式统一的工作规范。项目管理中涉及客户?与的部分都是应该形成规范的,需求确认作为用户需求管理的组成部分,须要在客户和研发团队之间达成一致。假设缺乏需求确认规范,需求的范围和完毕情况无法得到客户的认可,导致客户对系统交付不惬意无疑会影响到整个研发团队的工作。
  5.      需求变更缺乏统程
  需求变更不可避免,也并不可怕,须要考虑的是一旦产生需求变更,怎样通过一个统程来应对需求变更,从而使客户、项目经理、研发团队都能对该需求变更达成统一认识并形成新的项目范围,确保兴许需求跟踪和系统验收的正确运行。假设各个项目没有形成统一的需求变更控制流程,则来自各方的需求变更势必导致项目线的各自为政以及产品线的工作混乱。
  三.需求管理的过程改进
  假设一旦形成工作模式,需求管理相比项目计划会简单一点,对需求管理过程改进的切入点包含:
  1.      关注需求生命周期
  需求本身是有其生命周期的,但依据不同的项目线和产品线的关系,可能会形成不同的表现形式。依据已有产品线功能作为一个起点,通过需求调研进一步明白用户需求,完毕需求确认并进行用户需求和产品需求的转化,进行需求跟踪是本文中提到的需求生命周期。关注需求生命周期是进行过程改进和裁剪的基础,假设团队的需求生命周期表现形式有所不同,自然其管理方式也应该有所不同。
  2.      关注需求信息传递
  个人觉得信息透明是研发管理的核心,需求管理也不例外。非常多项目上的问题和研发过程中的问题都是和信息传递的效果有直接关系。怎样使用一定的沟通媒介和模式确保信息透明相同是需求管理工作所须要关注的一个方面,通过使用电子化、高效的信息管理系统是需求管理的一个有效切入点。
  3.      关注客户?与
  需求管理具有对内、对外两面性,当中对外的需求调研、需求确认都与基于客户管理,毕竟我们的系统终于是要交付和客户的。怎样让客户可以尽量多的?与到需求管理的过程中,确保客户支持并积极配合需求调研等活动,须要项目经理和销售人员确保客户?与到需求管理过程中来,尽量保持客户的思路与我们保持一致。
  4.      关注流程规范化
  需求管理与兴许的需求开发不同,需求管理会很多其它的偏重于流程性工作,需求调研、需求变更、需求确认等都须要流程的支持和约束,不建议各个项目有自己的工作方式,而应该强调统一和规范。流程的规范化须要过程资产建设作为支持,也须要管理理念的转变和加强。
  针对上述切入点,我们梳理需求管理过程改进的模式和实践包含:
  1.      建立用户需求和产品需求同步机制
  用户需求面向客户和项目,但用户需求即是产品需求的输入也是产品需求的输出。结合本文中提到的项目线/产品线关系,产品线须要项目线作为输入,反过来产品线也为新的项目提供系统功能的基本范围,两者之间须要建立同步机制才干确保需求管理的高效性和时效性,建立产品核心工作小组和产品平台一般是一项好的实践。产品核心工作小组负责产品需求的设计和开发并依据产品平台版本号公布系统的产品需求,项目线依据产品需求和项目详细要求形成用户需求;还有一方面,项目线收集项目需求并提交给产品核心开发小组确保其可以依据产品平台的建设须要进行需求的梳理和过滤。用户需求和产品需求同步机制能非常大限度协助和完好需求管理工作。需求开发和产品平台属于产品管理范畴,关于产品管理我们将在兴许系列文章中进行阐述。
  2.      使用电子化信息管理平台
  确保使用电子化信息管理平台进行需求的跟踪。需求跟踪的表现形式能够是一张简单的需求跟踪表,但需求跟踪表中的内容来自于研发团队日常的研发成果,假设没有高效和透明的信息化管理工具,则统计这些研发成果将是一件成本非常高的工作。眼下业界主流的项目管理工具都一定程度上支持需求的管理和跟踪功能,这里个人推荐Redmine作为团队的电子化信息管理平台。关于Redmine可?考我的博客:《研发范围和时间的“信息透明化”之Redmine统一平台》。
  3.      确立配置管理理念和流程
  讲到需求管理离不开配置管理。需求管理,尤其是变更管理是配置管理中的一个重要组成部分。配置管理中的配置项、基线、版本号控制、状态报告等详细活动都应该引入到需求管理过程中来。通过建立粒度合适的基线,并运行变更控制的流程,确保版本号控制在需求开发和系统实现中的实现来确保项目各方干系人都能对需求有一致的认识,并可以进行系统更新日志等的管理从而支持需求追述和反馈。
  4.      使用Checklist
  Checklist是一种简单但非常有用的工具,在项目管理中非常多地方都能够使用Checklist进行非正式的评审或信息同步,在需求管理过程中也能用来进行需求的控制:需求的调研能够预设需求调研项作为调研方案的一部分;需求的确认相同能够使用Checklist为客户和项目经理自身提供简单的确认结果。Checklist通常表现为语义明白的选择项或是否项,也能够依据详细需求进行灵活调整其表现形式。