2007年11月19日星期一

谁来提需求

今天收到问道项目经理的一个邮件,谈到一个扯皮事情:“离线帐号管理器的功能需求应该由谁来提出?(程序认为应该由使用者来提出需要,使用都认为应该由程序来提出需求,因为程序更清楚记录了哪些日志)目前 我还没有一个好的方案;”

我回复了邮件以后有些感慨,这是一个足够简单而又永恒的话题。多年以来,多少开发人员实际上做着提需求的事情呢?这些不专业的人提出需求,然后实现,能够制造出有效的工具吗?我们那些难用的专用系统,就是这么神奇的制造出来的。

我的回复:

显然需求应该由使用者来提出,实际上,需求的提出与分析是一个技术含量很高的工作,比实现需求要难上一个层次。之所以出现扯皮的情况,就是因为大家都 无法解决这个问题,所以都想规避它。离线帐号管理器最初是由我来完成的,那是我依据以往游戏的管理经验,提出的假想需求并进行了实现。后续开发,则应该由使用者承担提需求的责任,而程序负责分析、设计与开发。

我们必须知道的一点是:提需求不等同于设计,而实际操作中很多人经常混淆这一点。误以为提需求==设计方案。

首先,作为离线帐号管理器的使用者,应该指出:我们觉得日常中哪些工作无法完成,哪些工作过于消耗时间。
其次,需求就是:完成这些以前不能进行的工作,加快工作的速度。
然后,如何让使用者能够达到上述目的,就由开发者进行分析,并给出设计方案,最终实施。

为了让使用者能够提出需求,使用者有必要:记录日常的工作情况,包括输入(待处理的事务),输出(实际完成的情况),然后根据这些素材找到上述问题的答案。

为了使需求、开发不脱节,在完成设计以后,设计者应该和使用者沟通确认,如果觉得可以操作则进行开发。

复杂的事情都是由简单的环节组织起来的,把这些环节拆开,一个一个解决,这样才能让我们往前走。

没有评论:

发表评论