需求分析人员工具箱-如何编写需求说明书
1
需求分析按照输出成果分为两个阶段,第一个阶段为产出需求方案服务,主要是梳理业务流程、初步分析角色及使用场景、结合系统分析功能要点形成分析框架,最终产出物为需求方案,第二阶段为产出详细的软件需求说明书服务,需要在一阶段上细化方案框架补充需求细节最终产出物为软件需求说明书。
2
需求方案主要内容包含:需求目标和定位、流程、角色、数据实体、功能要点、业务规则和约束、数据割接方案、非功能需求描述:
(1)需求目标和定位:将需求识别阶段明确的用户痛点、需要做的事情和需要达成的目标进行概述,解决WHAT和WHY的问题;
(2)流程:绘制跨部门流程图,流程图为系统流程图,需求人员在绘制流程时应严格按照流程图例要求进行绘制,方案中流程图不要粘贴图片;
(3)角色:明确系统角色名称,每个角色的职责范围、是否为新增角色;
(4)数据实体:说明数据实体的关联关系,具备条件的情况下初步说明数据实体详细字段信息。
5()功能要点:包含角色及使用场景分析(不需要具体到每个场景的执行步骤)及关联功能/接口关联影响析;
(6)业务规则和约束:说明流程级别的规范/约束和业务活动级别的规则/约束;
(7)数据割接方案:初步明确数据割接原则及方案要点;
(8)非功能需求描述:描述需求的可行性、健壮性、可扩展性等约束,非功能需求描述时注意尽量采用定量描述的方法(比如报表查询速度不超过10S)。
3
需求说明书主要内容包含:需求定位和目标、流程、角色、数据模板、功能说明、业务规则和约束、数据割接方案。
(1)需求目标和定位:按照需求方案描述内容要求填充;
(2)流程:按需求方案内容要求填充;
(3)角色:按需求方案内容要求填充;
(4)数据实体:在需求方案要求内容基础上进一步填充详细的数据实体详细字段信息,针对依赖导入的功能明确系统导入模板。
(5)功能描述:在需求方案内容要求基础上进一步填充角色及使用场景(细化到具体的执行步骤)、功能列表、系统交互原型、算法;
(6)业务规则和约束:在方案要求内容基础上进一步明确数据约束和界面约束;
(7)数据割接方案:在数据割接原则明确的基础上进一步细化数据割接方案,若割接方案复杂也可单独编制割接方案,并在需求说明书中引用方案文档。
(8)非功能需求描述:按需求方案内容要求填充。
4
需求说明书编制时需要注意:
(1)需求说明书编制应严格按照模板要求完成;
(2)需求描述语言要用肯定句而非否定句,只有肯定句才能表达用户真正想要什么,否定句只是表明了用户不想要的,但是没有说明用户想要的;
(3)需求人员在需求说明书中对于术语、简称等名称前后一致性的检查,不出现同一个术语或字段在不同地方名称不一致的情况。
5、
需求确认目的是对需求进行验证,保证需求的完整性、正确性、可行性、必要性、一致性、无二义性。
需求验证一般采用项目组内部评审和用户确认签字的方式进行。
项目组内部评审需求时根据需求复杂度不同可采用不同的方法,若复杂度为低可直接发邮件给项目组相关人员通过邮件的方式饭可以意见,若需求复杂度为中或高英采用需求评审会的方式对需求进行验证,召开需求评审会需求人员应注意如下几点:
(1)尽量提前一天将需要评审的需求文档上传SVN并发邮件通知项目组相关人员提前安排时间并阅读需求文档;
(2)评审过程需求人员应记录评审问题,评审结束前与评审人员逐一确认;
(3)评审结束后需求人员必须按照评审模板撰写需求评审纪要上传SVN并邮件给相关评审人员。
与用户需求确认时需求人员应注意以下几点:
(1)需要用户确认的需求说明书应至少提前一天发给用户,针对必须需要用户确认的问题需要提前梳理;
(2)若需求涉及多个用户建议通过开会的方式确认需求,需提至少提前一天通知信息化部门组织会议;
(3)若在需求确认时用户又提出新需求,需求人员应建议新需求放到下一阶段分析评估后实施,否则会影响实施进度;
(4)在需求确认时需求只针对需求问题进行应答,若涉及到工作量、上线计划相关问题不要马上答应用户,可回复用户回去沟通后答复。