需求管理(1)
1、 什么叫需求?
需求是指发起人、客户和其他干系人的已量化且记录下来的需要与期望。量化是指SMART原则;S 代表具体的(Specific);M 代表可度量的(Measurable);A 代表可实现的(Attainable);R 代表现实性的(Realistic);T 代表有时限的(Realistic)。
2、什么叫需求管理?
需求管理是确保各方对需求的一致理解;管理和控制需求的变更;从需求到最终产品的双向跟踪。
二层含义:
1)需求要被管理:一是需求要被确认,二是要控制需求变更。
2)需求要用来指导下游的工作产品,如:计划、设计、测试等
3、如何进行需求管理?
六个步骤:
1)制定需求管理计划:主要内容包括确定需求管理软硬件资源、需求跟踪性矩阵、需求变更请求表等。由项目经理审批该计划。制定需求管理计划,以便于需求管理人员按计划地开展需求管理工作,并保持需求管理工作的一致性。
2)求得对需求的理解:设法理解需求提供者提出的这些需求的含义,实际就是我们所说的“确认需求”活动。随着项目的成熟和各项需求的派生,为了避免这些需求漫无边际地外延或“遗漏”,要建立一些准则,以便指明接受需求的适当的渠道或正式来源。
3)求得对需求的承诺:实现从各个项目参加者处求得对需求的承诺。即使某个实践以前实现过与需求提供者对需求的共识,但是现在实施这个实践时,还是要在那些必须进行各项为实现这些需求所需的活动人员之间达成一致和建立承诺。
4)管理需求变更:它实现各项需求在项目推进期间发生演变的同时,对需求的变更进行管理。在项目推进期间,需求会由于各种各样原因而发生变更。随着原来的需要发生变化和工作的推进,将会产生一些附加的需求,因此必然要对现行的需求做出相应的变更。有效地管理这些需求和需求变更相当重要。有必要了解每个需求的来源,并且做出变更理由的文件。
5)维护对需求的双向跟踪性:它的目的在于维护对每个产品分解层的双向跟踪性。这种双向跟踪性有助于确定是否所有来源需求都完全得到处理,是否所有的低层需求都可以跟踪到有效的来源。
6)识别项目工作与需求之间的不一致:它的目的在于发现需求与项目计划和工作产品之间的不一致,并且启动纠正措施。
4、如何双向跟踪?(需求跟踪矩阵)
所谓双向跟踪,包括正向跟踪和反向跟踪,正向跟踪是指检查需求文件中的每个需求是否都能在后继工作产品(成果)中找到对应点;反向跟踪也称为逆向跟踪,是指检查设计文档、产品组件、测试文档等工作成果是否都能在需求文件中找到出处。具体来说,需求跟踪涉及五种类型。如下图:
图的左半部分表明,从用户原始需求可向前追溯到需求文件,这样就能区分出项目过程中或项目结束后由于变更受到影响的需求,也确保了需求文件中包括所有用户需求。同样,可以从需求文件回溯到相应的用户原始需求,确认每个需求的出处。
图的右半部分表明,由于在项目实施过程中,产品需求转变为设计和测试等实现元素,所以通过定义单个需求和特定的产品元素之间的联系链,可以从需求文件追溯到产品元素。这种联系链使项目团队成员知道每个需求对应的产品元素,从而确保产品元素满足每个需求。第四类联系链是从产品元素回溯到需求文件,使项目团队成员知道每个产品元素存在的原因。如果不能将设计元素或测试案例回溯到一个需求文件,就可能出现镀金行为。
第五类联系链是需求文件之间的跟踪,这种跟踪便于更好地处理各种需求之间的逻辑相关性,检查需求分解中可能出现的错误或遗漏。
需求跟踪矩阵样列:
用户原始需求到需求文件的跟踪矩阵示例
|
功能点 |
设计元素 |
组件 |
测试案例 |
UC-1 |
|
|
|
|
UC-2 |
|
|
|
|
UC-N |
|
|
|
|
需求文件到下游工作产品的跟踪矩阵示例
|
UC-1 |
UC-2 |
UC-3 |
UC-N |
FR-1 |
|
|
|
|
FR-2 |
|
|
|
|
FR-N |
|
|
|
|
|