随笔-55  评论-208  文章-0  trackbacks-0

周五开需求讨论会,当讨论到其中一个需求功能点的时候我提出了这样一个问题:
这个需求在文档之中只表明了what,而没有说明who和why,所以我希望能够说明另外两个基本要素
在我开来,一般一个需求都包含三个基本要素what who why
what  是指这个需求的内容是什么
who   是指这个需求是由谁提出的
why   是指这个需求提出的目的是什么

当时我的老大在听完我的提问后,略为的思索(估计是认为我的问题是指这个需求是由哪个客户提出来的,为什么而提)了一下回答说:"我们做的是产品而不是项目,希望你能够明白产品与项目之间的区别".当时由于在讨论会上,我们没有再这个问题上再过多久就缠下去。

会后老大找到我,并给我解释了一下项目和产品之间的区别:
项目:由客户提出具体的需求来,开发人员只需要根据客户的具体需求来实现就可以了,而且当开发过程遇到需求不明确的情况时可以直接询问客户得到具体的需求回复。
产品:客户提出一个模糊的需求,甚至是市场部或产品部自己挖据出一个模糊的需求,然后探索性的进行开发,在产品发布后给客户试用并让客户提出意见,客户通常的意见是他觉得哪块不好。而开发者就要自行寻找不好之处的解决方案,并且在下一个发布版本中实现出来,如果客户说好,那么意味解决方案是成功的,如果客户说不好,那么需要再次改进相关功能。总而言之,就是开发者需要替用户去揣摩他们想要什么,用户只会说好或者不好(就好像大家都说不好的windows,呵呵)。

这样看起来这样比较的话项目和产品在需求分析上的差别很大,甚至产品的需求都无法找到who和why了。其实不然,狭义的理解需求当然who和why这两个要素实际上是出于用户角度,但是从我们要实现的软件来说,一个具体实现的功能必然具备3w要素,不然是不可能被实现出来的。就拿上面的例子来说,那个需求功能点的提出者就是我们的老大,至于他提出的目的就是为了让用户使用起来更加方便顺手。

回到项目还是产品的标题上来,其实无论项目还是产品都是为了给最终用户提供一个可以工作的具体功能,那么只要是一个具体功能,它就必然满足需求的3W要素,只不过有些需求的提出者是最终用户,而有些需求的提出者有可能是市场人员、产品人员、甚至是开发人员。

最后加一点点小小的体会,曾经有一段时间,我为了做好开发,去察看了各种各样如何作何需求的资料,写过大大小小各种各样的需求文档,但是到了最后实现的过程中,总是能发现需求文档当中的种种不足。最终这种困惑是在接触agile之后给我解决的,其实需求文档的目的是为了通过沟通把具体的需求让开发人员知晓,不要出现我需要汽车你给我造出火车这样的问题出来。这里最重要的问题不是文档,而是让开发人员知道他具体要开发什么东西,至于文档只能当作再沟通当中为了辅助记忆的一个附加产物。而在现实过程中,我们往往使用文档进行沟通,因此在现实中我们往往能够感觉到文档的种种不足。结果为了解决这种不足,我们采取的方式是增加文档项,让需求文档变得越来越庞大,也越来越在难以维护,甚至需要各种各样的链接索引,甚至当需求发生变化时,我们发现维护文档的成本已经远远高于实现本身了。。。

所以我现在在讨论需求的时候以3w问题做为基础,弄清楚实现出的功能最终是什么样子(当然还有优先级啊之类的功能点属性),然后把一些难于记忆的要点做一些记录,这个记录甚至是没有格式的。然后做成卡片。。。。呵呵,也许你知道我要说什么了,你想的没错,就是它——Story Card


链客中国,写文章也可以赚钱哦
posted on 2007-09-09 22:33 rocket 阅读(1667) 评论(5)  编辑  收藏

评论:
# re: 项目还是产品——需求之争引发的思考 2007-09-09 23:52 | sai
据我所知,
产品是适用于某个行业,某个领域的,并且是通过可配置的方式来满足不同公司的需要,或者提供一些可扩展接口,可以方便客户进行升级..比如mingle,rational,QQ.这些是产品.
而项目只是针对某个具体业务的,比如说只是适合某个行业的某个公司,而并不适合这个行业的另一家公司.
所以,我觉得你老大说的还只是项目而已.  回复  更多评论
  
# re: 项目还是产品——需求之争引发的思考 2007-09-10 09:30 | 惊鸿逝水
非常同意你说的,一个需求,必然有一个User Story,也可以说对应一个用例,不然开发出来都不知道是什么样子!  回复  更多评论
  
# re: 项目还是产品——需求之争引发的思考[未登录] 2007-09-10 18:47 | jack
赞同 rocket 观点。
不管项目还是产品,针对于需求,总会有个来源。项目多半来源于用户而产品多半来源于市场。做为一个项目经理人,每个 story 都要问这个 3w。这是必须的。很高兴你能有这样的观点,支持你!  回复  更多评论
  
# re: 项目还是产品——需求之争引发的思考 2007-09-17 22:21 | wind1214
非常同意你的说法,学习中.....  回复  更多评论
  
# re: 项目还是产品——需求之争引发的思考[未登录] 2008-05-20 10:14 | 大牛
对项目和产品的争论我暂时不错评价,但是对你指需求文档的评价是非常认同的。其实需求文档就是一种工具,有2方面的原因。1为了程序人员更好的开发,理解需求提出人的意见。2为了留下历史档案,以备其他人员查询。
综上所述,我建议针对需求文档尽量采用图文和一些用例来描述,过多的索引和大量的case会增加彼此的工作量。记住文档永远是为了理解产品而不是为了拼命的研究其中的逻辑关系。  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: