需求分析与需求文档

什么是需求分析呢?需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求。在网页开发当中的“需求分析”就是确定要计算机做什么,所以必须要搞清楚需要什么数据,要得到什么结果,最后输出什么这三方面问题。

软件需求包括三个不同的层次:业务需求、用户需求和功能需求。

业务需求(Business requirement)表示企业或客户高层次的目标。业务需求描述了企业为什么要开发一个网站,也就是希望网站达到的目标,他们通常来自项目投资人、购买产品的客户、实际用户的管理者、市场营销部门或产品策划部门。使用前景和范围(vision and scope)文档来记录业务需求,这份文档有时也被称作项目轮廓图或市场需求(project charter 或 market requirement)文档.

用户需求(user requirement)表示的是用户的目标,或用户要求系统必须能完成的任务。用户需求是从不同的视角,站在用户的角度采集了用户的具体需求描述,加以整理,写出一份文档。也就是说用户需求描述了用户能使用系统来做些什么。

功能需求(functional requirement)规定开发人员必须在产品中实现的软件功能,用户利用这些功能来完成任务,满足业务需求。功能需求有时也被称作行为需求(behavīoral requirement),因为习惯上总是用“应该”对其进行描述:“系统应该发送电子邮件来通知用户已接受其预定”。功能需求描述是开发人员需要实现什么。

    那么需求分析是怎么样的一个过程呢?通过多年工作经验建议采用以下步骤形成网站开发需求:

获取用户需求→用户需求分析→编写需求文档→评审需求文档→管理需求。

下面我们逐步讨论上述做法。

原本获取用户的需求是一个简单的过程,只要客户提供一个完整的需求说明即可,但是事实却非如此,很多客户对自己的需求并不是很清楚,需要您不断引导和帮助分析。曾经有一次,我问客户:“您做网站的目的是什么?”他回答:“没有目的,只是因为别人都有,我没有!”。这样的客户就需要耐心说明,仔细分析,挖掘出他潜在的,真正的需求,配合客户写一份详细的,完整的需求说明会花很多时间,但这样做是值得的,而且一定要让客户满意,签字认可。把好这一关,可以杜绝很多因为需求不明或理解偏差造成的失误和项目失败。

得到用户的需求还要进行深入的分析和整理。分析用户的需求可以遵守下面几条常见的准则:

⑴对于用户提出的每个需求都要知道“为什么”,并判断用户提出的需求是否有充足的理由;

⑵将那种以“如何实现”的表述方式转换为“实现什么”的方式,因为需求分析阶段关注的目标是“做什么”,而不是“怎么做”;

⑶分析由用户需求衍生出的隐含需求,并识别用户没有明确提出来的隐含需求(有可能是实现用户需求的前提条件),这一点往往容易忽略掉,经常因为对隐含需求考虑得不够充分而引起需求变更。

通过对客户的需求分析要使需求说明书达到一下标准就可以了:

1.正确性:每个功能必须清楚描写交付的功能;

2.可行性:确保在当前的开发能力和系统环境下可以实现每个需求;

3.必要性:功能是否必须交付,是否可以推迟实现,是否可以在削减开支情况发生时"砍"掉;

4.简明性:不要使用专业的网络术语;

5.检测性:如果开发完毕,客户可以根据需求检测。

你可能感兴趣的:(项目经理处)