如何写好需求分析

一、需求书的种类

需求实际上有两种,一种叫用户需求,一种叫开发需求,也叫需求规格说明书。用户需求一般是由用户提出,立足于用户的角度来思考需求,观众群体主要是用户群;而开发需求也就是我们普通意义上说的需求分析,一般是由项目经理或产品经理整理,面向开发人员的一种分析文件。

二、需求分析要解决以下几方面的问题

(1)我们的规划是什么,分阶段版本实现吗,每个版本要达到什么样的要求

(2)系统做出来的会是什么样的

(3)系统对软件、硬件、人文管理等有什么要求

(4)有哪些人员会使用这个系统,他们之间有什么区别

(5)需求如何与下一步的开发、测试衔接——可以通过对需求进行编号

(6)需求内容有没有分优先级,有没分版本,即哪些功能需要在哪个版本中实现,哪些功能是最优先开发

三、编写注意

(1)没有一次性写完就定论的需求分析

需求写出来后,需要进行讨论与修改,讨论时需要开发人员参与,需要用户的参与,这样才可以保证需求是有效的、可以实现的需求。另外写需求的人本身思考问题的方式也会决定其写出的需求分析文件的局限性,因此更有必要进行讨论与修正;

(2)无歧义,精确

如果写出来的是模凌两可的东西,说明你的需求还没写好,开发人员按照这个需求就会无所适从,不知该如何下手

(3)需求实现业务,但不一定要照搬业务

要明白软件是自动化的业务流程,很多现实环境的业务流程可能要好几道环节,在软件上可能只有一道环节,因为业务流程被自动化了,有些环节被自动化处理简化掉了

(4)少写废话

判断你写的内容是不是废话就看去掉你写的那些内容后,你的描述是不是还能反映你的真实意图。废话写多了容易引起误解的

(5)多画图

很多语言难以解释的东西用图示却可以很清晰的表达,这方面的工具很多,PS,PPT,MindManager,Visio,Auxre RP等,如可以借用如Auxre RP来画原型界面,有了原型界面,大家对需求的认识会更好统一。可以借用Visio来画业务流程图。

(6)用户至上,不是技术至上

需求要能符合用户的需求是最为关键的要求,其次才是系统带给用户的体验。写需求时,不能从技术人员的角度考虑,我要如何去省事省力来实现系统,当然省事省力可以降低开发成本是好事,但它不是我们的目的

四、编写内容结构示范

一、需求概述

整体描述需求内容

二、用户群体说明

说明系统用户有哪些类型,这些类型用户之间的权限区别、业务区别等

三、业务流程分析

有些系统涉及的业务流程较复杂,有必要单独说明一下

四、功能结构图

说明一下系统的整体功能有哪些

五、版本规划

六、功能需求分析

将各功能进行详细说明,可按以下部分进行:

(1)功能描述
(2)优先级与版本—优先级可分1,2,3,1级最优先,版本指的是这功能需要在哪个版本中实现是1.0版,还是2.0版
(2)业务规则说明
(3)数据要求说明—有些数据在存储上或表单输入上有要求与限制的要说明
(4)原型界面设计—原型界面
(5)前置条件–即使用本功能有没有特别要求

七、系统使用的软件与硬件环境说明

用户的投资、使用习惯等会影响系统要采用什么样的软件与硬件环境

五、编写需求分析的人员素质要求

写需求分析的人一般是项目经理或是产品经理,如果你有意向向这方面努力,那么要多学学如何写好需求分析。要写出一份好的需求分析并不容易,要求编写人员能站在用户的角度,去规划与分析好系统要实现的功能,如果有几年的开发经验对编写需求来说会更有帮助,因为有开发经验就能更好理解开发人员想要的是什么内容,关心的是什么内容。当然最重要的是用户的感觉,而不是开发人员的感觉


相关评论

暂无评论

我要评论