《04-00-需求管理》由会员分享,可在线阅读,更多相关《04-00-需求管理(9页珍藏版)》请在金锄头文库上搜索。
1、需求管理21.1 介绍21.2 需求确认31.2.1 目的31.2.2 角色与职责31.2.3 启动准则31.2.4 输入31.2.5 主要步骤4Step1 非正式需求评审4Step2 正式需求评审4Step3 获取需求承诺41.2.6 输出41.2.7 结束准则41.2.1 度量41.3 需求跟踪51.3.1 目的53.3.2 角色与职责53.3.3 启动准则53.3.4 输入53.3.5 主要步骤5Step1 建立与维护需求跟踪矩阵5Step2 查找不一致6Step3 消除不一致61.3.6 输出61.3.7 结束准则61.3.1 度量61.4 需求变更控制71.4.1 目的71.4.2
2、角色与职责71.4.3 启动准则71.4.4 输入71.4.5 主要步骤7Step1 需求变更申请7Step2 审批需求变更申请7Step3 更改需求文档7Step4 重新进行需求确认11.4.6 输出11.4.7 结束准则11.4.1 度量11.5 实施建议1需求管理需求管理(Requirement Management, RM)的目的在客户与开发方之间建立对需求的共同理解,维护需求与其他工作成果的一致性,并控制需求的变更。需求管理过程域是SPP模型的重要组成部分。本规范阐述了需求管理过程域的三个主要规程: 需求确认 SPP-PROC-RM-VALIDATE 需求跟踪 SPP-PROC-RM
3、-TRACKING 需求变更控制 SPP-PROC-RM-CHANGE上述每个规程的“目标”、“角色与职责”、“启动准则”、“输入”、“主要步骤”、“输出”、“完成准则”和“度量”均已定义。1.1 介绍我们把所有与需求相关的活动通称为需求工程。需求工程中的活动可分为两大类,一类属于需求开发,另一类属于需求管理。图1-1为需求工程的结构图(流程见图9-1)。需求确认需求管理需求分析需求定义需求调查需求开发需求工程需求变更控制需求跟踪图1-1 需求工程结构图需求管理过程域主要有3个规程:需求确认、需求跟踪与需求变更控制。一、需求确认需求确认是指开发方和客户共同对需求文档进行评审,双方对需求达成共识
4、后作出书面承诺,使需求文档具有商业合同效果。二、需求跟踪需求跟踪是指通过比较需求文档与后续工作成果之间的对应关系,建立与维护“需求跟踪矩阵”,确保产品依据需求文档进行开发。三、需求变更控制需求变更控制是指依据“变更申请审批更改重新确认”的流程处理需求的变更,确保需求的变更不会失去控制而导致项目发生混乱。需求管理过程域产生的主要文档有: 需求评审报告,同技术评审报告的模板 SPP-TEMP-TR-REPORT。 需求跟踪报告,模板见 SPP-TEMP-RM-TRACKING。 需求变更控制报告,模板见 SPP-TEMP-RM-CHANGE。1.2 需求确认1.2.1 目的l 开发方和客户对需求文
5、档如用户需求说明书和产品需求规格说明书进行评审,并作书面承诺。补充说明:用户需求说明书和产品需求规格说明书可以分开也可以放在一起进行需求确认,视项目的具体情况而定。1.2.2 角色与职责l 开发方和客户共同组织人员对需求文档如用户需求说明书和产品需求规格说明书进行评审。l 开发方负责人(项目经理)和客户对需求文档作书面承诺,使之具有商业合同效果。1.2.3 启动准则l 需求文档如用户需求说明书和产品需求规格说明书已经完成。1.2.4 输入l 需求文档如用户需求说明书和产品需求规格说明书。1.2.5 主要步骤Step1 非正式需求评审l 项目经理先在项目内部组织人员进行非正式的需求评审,以消除明
6、显的错误和分歧。非正式的需求评审方式请参考技术评审过程域的对应规程SPP-PROC-TR-ITR。Step2 正式需求评审l 项目经理邀请同行专家和用户(包括客户和最终用户)一起评审需求文档,尽最大努力使需求文档能够正确无误地反映用户的真实意愿。正式需求评审方式请参考技术评审过程域的对应规程SPP-PROC-TR-FTR。Step3 获取需求承诺当需求文档通过正式的评审之后,开发方负责人(项目经理)和客户对需求文档作书面承诺,使之具有商业合同效果。示例如下:本需求文档建立在双方对需求的共同理解基础之上,我同意后续的开发工作根据该需求文档开展。如果需求发生变化,我们将按照“需求变更控制规程”执行
7、。我明白需求的变更将导致双方重新协商成本、资源和进度等。甲方负责人签字乙方负责人签字1.2.6 输出l 需求评审报告l 书面的需求承诺1.2.7 结束准则l 需求文档通过了正式评审,并且获得开发方和客户的书面承诺。1.2.1 度量l 项目经理统计工作量和上述文档的规模1.3 需求跟踪1.3.1 目的l 将系统设计、编程、测试等阶段的工作成果与需求文档进行比较,建立与维护“需求文档设计文档代码测试用例”之间的一致性,确保产品依据需求文档进行开发。3.3.2 角色与职责l 项目经理跟踪需求。3.3.3 启动准则l 需求文档已经通过正式评审并获得了承诺。l 系统设计、编程、测试等阶段的工作成果如设计
8、文档、代码、测试用例已经产生。3.3.4 输入l 需求文档l 设计文档、代码、测试用例等3.3.5 主要步骤Step1 建立与维护需求跟踪矩阵l 正向跟踪。检查需求文档中的每个需求是否都能在后续工作成果中找到对应点。l 逆向跟踪。检查设计文档、代码、测试用例等工作成果是否都能在需求文档中找到出处。l 正向跟踪和逆向跟踪合称为“双向跟踪”。不论采用何种跟踪方式,都要建立与维护需求跟踪矩阵(即表格)。需求跟踪矩阵保存了需求与后续工作成果的对应关系。矩阵单元之间的可能存在“一对一”、“一对多”或“多对多”的关系。由于对应关系比较复杂,最好在表格中加必要的文字解释。表1-1为简单的需求跟踪矩阵格式。l
9、 当需求文档或后续工作成果发生变更时,要及时更新需求跟踪矩阵。需求文档(版本,日期)设计文档(版本,日期)代码(版本,日期)测试用例(版本,日期)1标题或标识符,说明标题或标识符,说明代码名称,说明测试用例名称,说明2表1-1 简单的需求跟踪矩阵格式Step2 查找不一致l 使用需求跟踪矩阵的优点是很容易发现需求文档与后续工作成果之间的不一致之处,例如: 后续工作成果没有实现需求文档中的某些需求; 后续工作成果实现了需求文档中的不存在的需求; 后续工作成果没有正确实现需求文档中的的需求; l 项目经理将发现的“不一致性”记录在需求跟踪报告之中,并通报给相关责任人(工作成果的开发者)。Step3
10、 消除不一致l 相关责任人给出消除“不一致”的措施和计划,项目经理将该措施和计划记录到需求跟踪报告之中。l 相关责任人消除“不一致性”之后,项目经理更新“需求跟踪矩阵”。1.3.6 输出l 需求跟踪报告1.3.7 结束准则l 每个开发阶段的“需求跟踪矩阵”都已经建立。l 已经消除了需求文档与后续工作成果之间的不一致性。1.3.1 度量l 项目经理统计工作量和上述文档的规模。1.4 需求变更控制1.4.1 目的l 修改“原需求文档”中不正确的内容,产生新的需求文档。l 控制需求文档的变更,防止发生混乱。补充说明:本规程中的“原需求文档”是指已经通过了评审并获得书面承诺的需求文档。1.4.2 角色
11、与职责l 开发方负责人(项目经理)和客户共同控制需求变更。1.4.3 启动准则l 某人(来自开发方或客户方)提出变更“原需求文档”的申请。1.4.4 输入l “原需求文档”1.4.5 主要步骤Step1 需求变更申请l 需求变更申请人撰写“需求变更申请书”,递交给项目经理或客户方负责人。l “需求变更申请书”必须阐述:(1)变更原因;(2)变更的内容;(3)此变更对项目造成的影响。Step2 审批需求变更申请开发方负责人(项目经理)和客户共同审批“需求变更申请书”:l 如果任何一方不同意变更,则退回变更请求,项目按照“原需求文档”执行。l 如果双方都同意变更,转向 Step3。Step3 更改需求文档l 需求分析员根据 Step1 和 Step2 更改“原需求文档”,产生新的需求文档。Step4 重新进行需求确认l 重新进行需求评审,参见需求确认规程中的 Step2。l 重新获取书面的需求承诺,参见需求确认规程中的 Step3。1.4.6 输出l 需求变更控制报告1.4.7 结束准则l 新的需求文档已经被确认。1.4.1 度量l 项目经理统计工作量。1.5 实施建议l 先对项目经理和客户进行培训,让他们掌握必要的需求管理知识。l 对需求管理过程域产生的所有有价值的文档进行配置管理。l 对于非合同项目,本规范中有关客户的活动可以被裁减掉。8