通常软件开发工程师和软件测试工程师的工作是基于软件需求说明书的成型。 那么,软件需求说明书是怎么来的,软件需求分析是怎么做的? 今天就这个话题结合我自己的理解和经验进行整理。
需求分析的目标是组织和用通俗易懂的文字描述产品的需求功能,为开发人员和测试人员提供依据。 那么细分需求分析、文化转化的过程是需求分析师的主要工作内容。
需求一般分为原始需求、用户需求、产品需求、个性需求四种需求
原始需求:是最原始、未经加工的需求,可能是客户提出,也可能是行业共性(可能是监管机构提出)
用户需求:来自使用系统的人的需求可以按用户角色、用户类型进行分类。 提取用户群体需求的共性,找出用户需求的矛盾之处,进行综合分析处理。
产品需求:从产品层面出发,有益于产品未来发展方向的,有利于产品迭代的,有利于产品用户体验的,有利于提高市场认同和竞争力的。
个性需求:用户提出的个性需求并不一定适用于所有客户。
需求分析一般分为几个步骤。
1 .获得需求:了解所有用户类型,包括潜在用户类型,以确定总体目标和方向
a )对用户进行访谈和调查,汇总和分析各角色的需求;
b )模拟业务需求、业务场景,组织业务逻辑业务流程,整理业务需求
2 .需求分析:
a )根据业务逻辑和业务流程制定流程图,分析需求和业务方向(数据流图DFD:Data flow Define,实体关系图ERD,用户用例use case ) ) )。
b )挖掘每个需求点的产生原因(知道理由) () ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
c )挖掘各需求点的隐含需求
d )挖掘各项需求的必要性
3 .需求确认:整理分析阶段所有需求,确保需求一致
a )无法理顺的需求
b )分别与对应用户确认上述需求点,保证需求的一致性和清晰性
4 .建立需求文档:可以使用自然语言,表达简单易懂,增加图形提高阅读能力
a )应包括功能和非功能要求
B )将原始需求添加到需求文档中,最好单独各章