1、需求评审的重要性
在软件项目中,需求分析是最开始的工作,同时也是最重要的工作。需求分析如果做得不够详细或者是偏离用户需求或者是存在缺陷的话,往往会给项目带来灭绝性的灾难,不重视需求过程的项目团队将自食其果。因此,如何保证需求分析的正确、准确性,成了决定软件项目成败的关键因素。在实际的项目过程中,需求阶段往往是由一两位需求分析人员与用户沟通用户需求,然后根据自己的理解输出软件需求说明书及软件原型。
接下来的项目计划、软件设计、编码、测试等各个环节都以此为基准。俗话说,当局者迷,旁观者清,经验再丰富的需求分析人员也可能犯错,所谓智者千虑,必有一失,这是永远不变的客观规律。另外,受需求分析人员的理解及用户的表达等因素的影响,需求在传递过程中往往存在很大偏差。
需求分析人员输出的需求分析说明书,到设计人员、编码人员、测试人员那里往往又会有不同的理解。因此,软件需求分析说明书的正确性必须得到彻底的验证,利益相关方必须彻底理解需求,并达成一致。要达成这一目标、降低需求风险,需求评审是一个行之有效的方法。
目前,很多小型软件企业在需求阶段,往往是需求人员写完需求后再跟用户沟通一下,就直接进入设计开发阶段了,设计、编码、测试人员前期没有参与进来,根本没有进行需求评审。也有不少企业的需求评审存在“走过场”的情况,其他人员根本不关心软件需求,认为软件需求就是需求分析人员的事情,他们怎么写大家怎么做就可以了,在提需求异常时简单找几个错别字提一下应付了事,没有提出有效的需求异常。也有的时候,在需求评审会议中,大家的关注点常常会不知不觉的转向设计,结果需求评审会议成了设计讨论会议,大家想得最多的是需求如何实现,而不是需求文档本身有无问题。
或者是因为没有做好前期准备工作,导致评审时间长、效率低,结果很多问题不了了之。这样的评审,最终效果可想而知。
2、需求评审的关键
下文根据笔者多年参与软件项目管理的切身体会及经验,从不同角度对需求评审方法进行论述。
2.1 充分准备评审
好的软件需求说明书,是进行有效需求评审的前提。
首先,需求人员在与用户确认需求的过程中,一定不要放过任