什么是需求分析
在百度百科中对需求分析的定义如下:
需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。 简单来说就是搞清楚问题,问题就是用户的需求,软件为用户解决什么问题,实习哪些业务功能,满足什么样的性能要求。
如何作需求分析?
第一:首先确认用户需求
用户需求即用户的根本需求。
通过用户访谈、问卷调查、开会讨论、查阅资料等调研手段梳理用户的根本需求。
产品人员根据用户需求绘制界面原型,通过界面原型再和用户确认需求。
第二:确认关键问题
用户的需求可能是含糊不清的,需求分析要从繁杂的问题中梳理出关键问题。
比如:用户想发布一个视频,这是原始需求,根据这个用户的需求进行拓展分析,拓展出以下几点:
- 视频发布需要哪些信息
- 发布了不良信息如何处理
- 视频发布后用户如何查看
根据以上几点继续拓展延伸
拿1举例,课程发布需要发布哪些信息?
视频名称、视频介绍、视频封面、视频内容、视频标签等等
继续延伸分析,这么多视频进行归类,方便用户编辑,分为更细致的信息,由用户进行具体编辑和分类
按照这样的思路对用户需求逐项分析,梳理出若干问题,再从中找到关键问题。
找到了关键问题,下一步就可以进行数据建模,即table(表结构)创建,并设计其中字段
第三:梳理业务流程
业务流程是由一个或多个用户参与,为了完成一个目标所进行的一系列业务操作,不论是整个系统还是一个模块,通常首先分析核心的业务流程,比如:视频管理模块的核心业务流程是视频发布
第四:数据建模
数据建模要根据分析的关键问题将其相关信息全部建模。
第五:编写需求规格说明书
需求分析阶段的成果物是需求分析规格说明书,针对每一个问题编写需求用例,需求用例包括:功能名称、功能描述、参与者、基本事件流程、可选事件流、数据描述、前置条件、后置条件等内容。
这里给出一个简单的视频发布需求用例,仅供参考
项目 | 视频发布 |
---|---|
功能名称 | 视频发布 |
功能描述 | 发布视频及基本信息 |
参与者 | 普通用户 |
前置条件 | 登陆后 |
基本事件流程 | 1、登录平台 2、进入视频列表 3、点击发布视频 4、填写视频基本信息 5、点击发布 |
可选事件流程 | 成功:提示发布成功,跳转到视频页面 失败:提示具体失败信息,用户根据失败信息修改 |
数据描述 | xxxxx |
后置条件 | 向视频基本信息表插入一条信息 |
补充说明 | xxxxx |