软件系统需求分析文档-模板
一、引言
1 编写目的
对产品或项目进行定义,包括修正或发行版本号。如果这个软件需求规格说明只与整个系统的一部分有关系,那么只定义文档中要说明的部分或子系统。
2 背景说明
说明项目或模块开发背景。
3 预期读者和阅读建议
列举软件需求规格说明书所针对的不同读者,如用户、设计人员、编程人员、测试人员、项目经理、市场人员等。指出最适合于每一类型读者阅读文档的建议。
4 术语定义
解释需求说明书中的术语、名词、简称及缩写等等。
5 参考文献
列出所有参考资料、参照的软件名称,包括标题名称、作者、版本号、日期、出版单位或资料来源,以方便读者查阅这些文献。
二、任务概述
1 目标
描述项目或业务模块要达到的目标。
2 用户特点
描述主要的用户及其特点(教育水平、经验、计算机水平等)。确定可能使用该产品的不同用户类别并描述它们的特征。有些需求可能只与特定的用户类相关。将该产品的重要用户类与那些不太重要的用户类区分开。
3 假定和约束
一般约束和限制条件、假设及对用户的要求。
三、业务功能概要描述
1 现有系统分析
对现有系统(包括自动或人工的)进行简要分析。
2 业务描述
描述实际业务的逻辑和实现过程和特点,即业务建模。
3 系统角色
列举出系统中的相关的角色信息,并用文字描述进行详细的说明。
4 主题描述(或:系统用例视图)
画出主题图,描述主题内的业务和主题间的业务。
或用 UML 语言描绘系统总的用例视图。
5 业务流程图
用 UML 的活动图描绘系统总的业务流程。
6 业务接口
6.1 外部业务接口
描述与其它项目或业务模块的功能接口。例如:工资模块与考勤、考核、任免、职称等模块的功能接口描述。
6.2 内部业务接口
描述各个主题之间的业务接口。
四、业务功能详细描述
用语言和图对每个子系统、主题或业务模块要完成的功能进行完整详细的描述。即功能建模。
1 子系统(模块一)
1.1 业务功能描述
用文字语言描述子系统、主题或业务模块要完成的功能。
1.2 业务流程图
用 UML 的活动图描绘子系统或业务模块的业务流程,在活动图中标注用到的或输入输出的表格、资料。注意,这里的活动图描述的是该子模块的业务流程。
1.3 主题描述及用例视图
若主题下面还含有子主题,则画出主题图,描述主题内的业务和主题间的业务;并且接着画出子系统或业务模块的详细用例视图。
若主题下面不含子主题,则直接画出子系统或业务模块的详细用例视图。
1.4 用例描述
对全部用例或主要的用例用文字进行详细描述。
1.4.1 用例名称一
【用例功能说明】
用文字详细描述该用例的目的、功能。
【操作描述】
用文字描述子系统或业务模块中主要用例的操作流程和要求。
【活动图、顺序图或协同图】(可选内容)
用 UML 的顺序图或协同图描述该用例的操作流程。
【界面原型】(可选内容)
描绘用户所希望的图形用户界面标准或风格,包括大致的屏幕布局、功能菜单、标准按钮、快捷键、出错信息显示标准等。
1.4.2 用例名称二
【用例功能说明】
用文字详细描述该用例的目的、功能。
【操作描述】
用文字描述子系统或业务模块中主要用例的操作流程和要求。
【活动图、顺序图或协同图】(可选内容)
用 UML 的顺序图或协同图描述该用例的操作流程。
【界面原型】(可选内容)
描绘用户所希望的图形用户界面标准或风格,包括大致的屏幕布局、功能菜单、标准按钮、快捷键、出错信息显示标准等。
1.4.3 用例名称三
... ...
1.5 信息项描述
采集子系统或业务模块中用到的信息项,对于非国标、部标的指标项要给予具体解释和规范建议。
推荐描述形式如下:
信息集名称:********
2 子系统(模块二)
3 子系统(模块三)
五、性能要求
1 用户数要求
2 业务方面的并发要求
3 正常和极端情况下的时间要求
4 容错要求
5 权限要求
6 灵活性要求:当需求发生变化时的适应能力要求。
7 使用频度要求:日常使用或定期使用等的描述。
六、其它需求
详细描述本产品/项目必需满足的法令法规、行业规范、合同/标书中的其它要求、以往类似设计中的适用信息以及本公司对此项目附加的其它需求等。
七、附录
对本需求有说明意义的资料:文档、数据、表格、样张等等。
附注:
用例视图、活动图(业务流程图)、主题图、对象图、状态图采用 UML 标准符号绘制。推荐使用 CASE 工具如:Ritional Rose 画好后再粘贴到 Word 文档中。
如果时间充裕的话,应在辅助工具中进行业务建模,将非功能需求以及资料部分做为单独文档连接到模型中。