软件需求文档格式的标准写法
1.引言
1.1编写目的
·阐明开发本软件的目的;
1.2项目背景
·标识待开发软件产品的名称、代码;
·列出本项目的任务提出者、项目负责人、系统分析员、系统设计员、程序设计员、程序员、资料员以及与本项目开展工作直接有关的人员和用户;
·说明该软件产品与其他有关软件产品的相互关系。
1.3术语说明
列出本文档中所用到的专门术语的定义和英文缩写词的原文。
1.4参考资料(可有可无)
列举编写软件需求规格说明时所参考的资料,包括项目经核准的计划任务书、合
同、引用的标准和规范、项目开发计划、需求规格说明、使用实例文档,以及相关产品
的软件需求规格说明。
在这里应该给出详细的信息,包括标题、作者、版本号、发表日期、出版单位或资
料来源。
2.项目概述
2.1待开发软件的一般描述
描述待开发软件的背景,所应达到的目标,以及市场前景等。
2.2待开发软件的功能
简述待开发软件所具有的主要功能。为了帮助每个读者易于理解,可以使用列表或
图形的方法进行描述。使用图形表示,可以采用:
·顶层数据流图;
·用例UseCase图;
·系统流程图;
·层次方框图。
2.3用户特征和水平(是哪类人使用)
描述最终用户应具有的受教育水平、工作经验及技术专长。
2.4运行环境
描述软件的运行环境,包括硬件平台、硬件要求、操作系统和版本,以及其他的软
件或与其共存的应用程序等。
2.5条件与限制
给出影响开发人员在设计软件时的约束条款,例如:
·必须使用或避免使用的特定技术、工具、编程语言和数据库;
·硬件限制;
·所要求的开发规范或标准。
3.功能需求
3.1功能划分
列举出所开发的软件能实现的全部功能,可采用文字、图表或数学公式等多种方法
进行描述。
3.2功能描述
对各个功能进行详细的描述。
4.外部接口需求
4.1用户界面
对用户希望该软件所具有的界面特征进行描述。以下是可能要包括的一些特征:
·将要采用的图形用户界面标准或产品系列的风格;
·屏幕布局;
·菜单布局;
·输入输出格式;
·错误信息显示格式;
建议采用RAD开发工具,比如Visio,构造用户界面。
4.2硬件接口
描述系统中软件产品和硬件设备每一接口的特征,以及硬件接口支持的设备、软件与硬件接口之间,以及硬件接口与支持设备之间的约定,包括交流的数据和控制信息的性质以及所使用的通信协议。
4.3软件接口
描述该软件产品与其有关软件的接口关系,并指出这些外部软件或组件的名字和版本号。比如运行在什么操作系统上,访问何种类型的数据库,使用什么数据库连接组件,和什么商业软件共享数据等。
4.4通信接口
描述和本软件产品相关的各种通信需求,包括电子邮件、Web浏览器、网络通信协议等。
4.5故障处理
对可能的软件、硬件故障以及对各项性能而言所产生的后果进行处理。
5.性能需求
5.1数据精确度
输出结果的精度。
5.2时间特性
时间特性可包括如下几方面
·响应时间;
·更新处理时间;
·数据转换与传输时间;
·运行时间等。
5.3适应性
在操作方式、运行环境、与其他软件的接口以及开发计划等发生变化时,软件的适应能力。
6.其他需求
列出在本文的其他部分未出现的需求。如果不需要增加其他需求,可省略这一部分。
7.数据描述
7.1静态数据
7.2动态数据
包括输入数据和输出数据。
7.3数据库描述
给出使用数据库的名称和类型。
7.4数据字典
对于数据流图、层次方框图中出现的所有图形元素在数据字典中都要作为一个词条加以定义,使得每一个图形元素都有唯一的一个清晰明确的解释。
数据字典中所有的定义必须是严密的、精确的,不可有二意性。
7.5数据采集
·列出提供输入数据的机构、设备和人员
·列出数据输入的手段、介质和设备;
·列出数据生成的方法、介质和设备。
8.附录
包括分析模型,待定问题图表等。