Page 2
目录
1. 什么是需求
2. 了解客户、最终用户、间接用户
3. 需求工程基本概念
4. 需求开发的主要困难与对策
5. 如何开展需求调查
6. 如何进行需求分析
7. 什么是好的需求规格说明书
8. 如何定义产品需求
9. 需求管理:确认、跟踪、变更控制
Page 3
1. 什么是需求
1.1 需求的基本概念
宽泛地讲,需求来源于用户的一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详
细地说明了产品“必须或应当”做什么。
所以如果只有一些零碎的对话、资料或邮件,你就以为自己已经掌握了需求,那是自欺欺人。
1.2 需求的重要性
Frederick Brooks 在他 1987 年经典文章“ No Silver Bullet” 中阐述了需求的重要性:
–
开发软件系统最困难的部分就是准确说明开发什么。最困难的概念性工作是编写出详细的
需求,包括所有面向用户、面向机器和其它软件系统的接口。此工作一旦做错,将会给系
统带来极大的损害,并且以后对它修改也极为困难。
需求是产品的根源,需求工作的优劣对产品影响最大。就像一条河流,如果源头被污染了,那么
整条河流也就被污染了。
国内软件业的痼疾:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。
Page 4
1. 什么是需求
1.3 需求开发失败的案例
上海贝尔某事业部一群高智商的开发人员集体犯需求观念错误的案例。
故事是这样的…
需求问题有时如同爱情问题,真是“当局者迷,旁观者清”啊。
Page 5
2. 了解客户、最终用户、间接用户
2.1 基本概念
“ 用户”( user )是一种泛称,它可细分为“客户”( customer “)、 最终用户”( the end user )和“间接用户”
(或称为关系人)。
掏钱买软件的用户称为客户,而真正操作软件的用户叫最终用户。客户与最终用户可能是同一个人也可能不是同
一个人。
2.2 客户是掏钱买软件的人,所以他是“上帝”
“ ”某饭店经理在解释 先有鸡还是先有蛋 这个哲学问题时,精辟地阐述了客户的地位:
–
如果顾客先点鸡,那么就先有鸡;如果顾客先点蛋,那么就先有蛋。
“ 现代营销学之父”菲利普•科特勒所著的《市场营销导论》是这样描述客户的:
–
客户永远是本公司的座上客。客户并不依赖我们,而我们却依赖客户。客户不是我们工作
的障碍,而是我们工作的目标。我们并不因为服务于他而对他有恩,他却因为给予我们服
务于他的机会而有恩于我们。客户不是我们要与之争辩和斗智的人。从未有人曾在与客户
的争辩中获胜。客户是把他的欲望带给我们的人,因此我们的工作就是满足这些欲望,从
而使客户和我们共同获益。
与客户打交道的主要目的是:一是获取需求,二是签合同。不要把钱仍到水里。