|
《需求管理》系列之三需求评审
需求评审是RM的重要过程。
需求评审就是评审人员审核用户需求的过程,这个用户需求是经过需求分析人员整理后的。
为什么要评审
换句话说,就是评审很重要,其重要性体现在如下几个方面:
1、评审过程本身也是一个知识传递过程,评审人员与需求分析人员一起讨论用户需求,这有助与评审人员获得用户需求的前期认识
这样的过程多来几遍,或许设计、开发时都不需要需求文档了
2、评审过程中可能发现不明确的或者遗漏的需求,这需要需求分析人员向用户确认
3、评审过程中可能发现某些特殊需求,这时需求分析人员和评审人员可以群策群力共同思考解决问题的方式,需求分析人员从业务的可能性上思考,评审人员从实现角度思考,这两种不同甚至可以说是对立的思维方式交织在一起,往往能产生火花;这也就是哲学中所阐述的一个规律:矛盾是事物发展的源动力;事实上,如果没有这个过程,就一堆程序员用同一种思维方式考虑问题,其结果可能与原始需求产生较大偏差,当实现的难度比较大或者有项目时间、资金等约束时,这些聪明人会很巧妙的通过变通的方式实现这个需求;实现倒是实现了,用户能不能认可,或许上帝知道
4、当局者迷、旁观者清。再powerful的需求分析人员也可能犯错,所谓智者千虑,必有一失,这是人的大脑机能决定了。这个时候,评审人员可以提出更合理或者更有建设性的想法供需求分析人员参考
如何评审
评审人员有用户代表(这是最理想化的)、系统设计人员、项目负责人(通常是项目经理)、开发人员代表、测试人员代表。
评审过程和普通的开会没什么区别,需求分析人员陈述需求,评审人员思考或者提问,以取得对需求有一致的理解,这是一个互动的过程,可以适当的营造轻松的氛围,有助于大家充分思考
评审是一个迭代过程,很多情况下不能一步到位,事实上,这不是什么坏事,我们都知道,需求失真发现的越早,系统修复成本越低。评审人员在多次迭代的过程中,或许能够发现解决现实问题更好的方案,而且他们对每次评审中出现的情况也比较清楚,知道哪些需求导致评审不通过,哪些需求可能还会有进一步变更、等等;这对系统设计人员、开发人员是不无裨益的
参考历史可以把握现在,立足现在可以前瞻未来,这个对需求分析、软件开发也同样适用。 |
|