软件产品需求规格说明书
1. 引言
1.1. 目的
本节描述软件产品需求规格说明书(SRS)的目的,如:
a. 定义软件总体要求,作为用户和软件开发人员之间相互了解的基础;
b. 提供性能要求、初步设计和对用户影响的信息,作为软件人员进行软件结构设计和编码的基础;
c. 作为软件总体测试的依据。
1.2. 定义
本节列出SRS中用到的全部需求的术语、定义和缩略语清单。这些信息可以由SRS的附录提供,也可以参考其他的文件,如果有,本节必须指明。
1.3. 参考资料
本节列出下列资料:
a. 经核准的用户合同、《项目开发意向书》、《项目开发委托合同书》、《技术可行性报告》等文件;
b. 本项目的较高层次的开发文档,如:《项目开发计划》、《系统需求规格说明书》等;
c. SRS中各处引用的资料、标准和规范。列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源。
2. 软件总体概述
2.1. 软件标识
本节列出软件的标识:软件全名称、软件缩称、版本号等。软件标识必须具有唯一性。
2.2. 软件描述
2.2.1. 系统属性
本节描述被开发软件与其他相关产品之间的关系。
a. 如果该软件是独立的,应在本节说明;
b. 如果该软件是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系。如果这部分内容已包含在较高层次的说明(如《系统需求规格说明书》)中,应在本节指明。
本节无须描述设计方案和设计约束。
2.2.2. 开发背景
本节说明软件的开发目的、应用目标和使用范围等背景材料。
2.3. 软件功能
本节为软件功能提供一个摘要,无须描述功能的细节。应为每一软件功能的需求分配一个唯一性的标识,以利于需求的跟踪和测试。应说明功能的优先级定义,和每一功能的优先级(从用户角度而言)。优先级定义可采用以下方法(QFD对功能需求的分类方法):
a. 高——软件必须实现的功能,用户有明确的功能定义和要求;
b. 中——软件应该实现的功能,用户的功能定义和要求可能是模糊的、不具体的、或低约束的,但是这类功能的缺少会导致用户的不满意,因此这类功能的具体需求应当由需求分析人员诱导用户产生并明确;
c. 低——软件尽量实现的功能,并可根据开发进度进行取舍,但这类功能的实现将会增加用户的满意度。
可用以下表格来说明软件功能:
也可用软件的功能结构图加以说明。
2.4. 用户的特点
本节描述影响具体软件需求的最终用户的特点,充分说明用户方操作人员、维护人员的教育水平和技术专长,这是对软件开发工作的重要约束。
2.5. 限制与约束
本节描述软件开发工作的某些限制,例如经费限制、开发期限、硬件限制、编程语言、通信协议、安全和保密要求、开发过程中须遵守的某些标准或规则。
本节内容不是陈述具体需求或设计约束,而是为具体需求以及设计约束的描述提供依据。
3. 具体需求
本章应包括在进行软件结构设计时所需的全部细节。
3.1. 功能需求
本节描述2.3.节所述的每一功能需求。本节可以划分为若干小节,每一小节逐一说明每一功能需求。
本节将该功能需求具体描述为输入、处理和输出的需求。本节可用自然语言描述;也可用形式化的方法描述,如数据流图(DFD)、IDEF0方法等。本节由以下内容组成:
a. 输入:详细描述该功能的所有输入数据,包括:输入源、类型、长度、数值范围、精度、量纲、数量、更新和处理频度等;
b. 处理:定义对输入数据的全部操作,以获得预期的输出数据,包括:输入数据的有效性检验、操作时序或优先级、异常情况处理、输出数据的有效性检验等;
c. 输出:详细描述该功能的所有输出数据,包括:接受者、类型、长度、数值范围、精度、量纲、数量、出错信息等。
3.2. 性能需求
本节说明软件数据处理能力和时间特性的需求。
数据处理能力可能包括:支持的终端数、支持并行操作的用户数、处理的文件和记录数、表和文件的大小。
时间特性可能包括:响应时间、更新处理时间、数据的转换和传送时间、运行时间等。
3.3. 数据库需求
本节说明对软件所应用的数据库的需求,如:数据项、记录、文件标识、静态和动态的组织、存取能力等。
3.4. 设计约束
3.4.1. 其他标准的约束
本节描述由现有的标准或规则派生的要求,如:
a. 报表格式;
b. 数据命名;
c. 会计准则;
d. 审计追踪,等等。
3.4.2. 硬件约束
本节包括各种软件运行的硬件约束,如:
a. 硬件配置的特点;
b. 内存储器和辅助存储器的容量。
3.5. 属性
本节定义用户对软件的其他属性的要求,可能的内容如下所列。如果SRS包括了下列属性,但在SRS的其他章节进行说明,须在相应小节指明。
3.5.1. 可用性
定义某些需求(如:检查点、恢复方法和重启动性等),以保证软件的可用性。
3.5.2. 可靠性
定义软件在规定的时间内和规定的条件下,满足规定功能的能力。
3.5.3. 效率
定义软件在规定的条件下,功能和性能水平与所使用资源量(如软件产品、硬件设施、耗材、操作人员、维护人员)之间的关系。
3.5.4. 安全性
说明如何保护软件,以防止偶然或恶意的访问、使用、修改或泄密。
3.5.5. 可维护性
规定需求以保证软件是可维护的。
3.5.6. 可移植性
说明软件对软、硬件环境的兼容,它从一个环境移植到另一个环境的约束等。
...
3.6. 外部接口需求
3.6.1. 用户接口
本节说明为方便用户使用而提出的软件与用户界面的需求。如:屏幕格式、报表格式、菜单格式、输入输出时间、功能键的使用。
3.6.2. 硬件接口
本节说明软件与硬件间各接口,可使用接口框图进行说明。说明内容包括:
a. 接口标识;
b. 功能描述;
c. 信号方向、格式、传输协议;
d. 优先级;
e. 响应时间;
f. 异常处理。
对每一硬件,需提供名称、缩写、型号、数量,并说明其功能。
3.6.3. 软件接口
本节指定需使用的其他软件产品(如:数据管理系统、操作系统、数学软件包),以及同其他应用系统之间的接口。如果已有完整的接口文件,需在本节指明。说明内容包括:
a. 接口标识;
b. 功能描述;
c. 数据流程和控制流程的方向;
d. 数据格式、容量;
e. 接口类型(如手动或自动);
f. 接口数据中断的优先级别;
g. 中断响应时间;
h. 异常处理等。
对每一个所需的软件产品,需提供名称、缩写、规格说明、版本号、来源等内容。
3.6.4. 通信接口
本节指定各种通信接口,如局域网的协议等。
4. 数据字典
列出数据字典,如果数据字典在设计阶段完成或进一步完善,在此节说明。
5. 附录
附录中可能包括的内容有:
a. 原有系统的组织机构图、业务流程图、信息流程图;
b. 输入、输出格式样本;
c. 交叉索引等;
d. 《软件产品需求规格说明书》确认协议。
《软件产品需求规格说明书》确认协议
甲方:XX事业部
乙方:XX开发室
在甲方的大力配合与支持下,乙方制作了该《软件产品需求规格说明书》;甲方对该《软件产品需求规格说明书》经过详细审核,已确认该《软件产品需求规格说明书》中的各项内容翔实全面,该《软件产品需求规格说明书》中的内容已完全包括了《项目开发委托合同》中的《项目开发需求说明书》部分中关于软件产品的需求。经过甲乙双方友好协商,达成如下协议:
1.该《软件产品需求规格说明书》是《项目开发委托合同》的补充文件,与《项目开发委托合同》具有同等的法律效力;
2.该《软件产品需求规格说明书》是《项目开发委托合同》中_____条__________款软件产品最终验收的唯一标准;
3.甲方在《项目开发委托合同》中_____条__________款软件产品最终验收前可提出对该《软件产品需求规格说明书》中的内容进行变更(包括增加、修改、删除),双方应就此签署《软件产品需求更改备忘录》或补充协议;
4.甲方同意乙方根据该《软件产品需求规格说明书》进行《项目开发委托合同》中_____条__________款软件产品的开发;
5.本协议一式二份,甲乙双方各执一份;
6.本协议自甲乙双方签字之日起生效。
甲方委托人(签字): 乙方委托人(签字):
甲方单位(盖章): 乙方单位(盖章):
年 月 日 年 月 日
注:此页为范文,可修改
北京易华录信息技术股份有限公司 文件编号:Q/EHL-CX06-JL04-2008 软件产品需求规格说明书
编号:
1 概述
1.1 本文档的编写目的
本文档的适用对象是:XXXXXXXXXXXX系列之XXXXXXXX软件。
编写本文档的目的是说明:
a) 软件的总体要求,以作为交办单位、用户与软件开发人员之间进行交流的基础。
b) 性能要求、初步设计和对交办单位、协作单位或用户有影响的信息,并作为软件开发人员进行概要设计,详细设计乃至编码的基础。
c) 软件组装和确认测试的依据。
本文档是:
a) 编制XXXXXXXX软件开发过程中需求分析以后各阶段文档的依据之一。
b) 实施XXXXXXXX软件开发过程中需求分析以后各阶段活动的依据之一。
1.2 标识
1.2.1 文档标识
文档被批准的标识号为:
“S-XXXX-SA-YYYY-V1.0/ZZZZ”
文档的正式标题为:
XXXXXXXXXXXX
XXXXXXXX - 软件需求规格说明
1.2.2 缩略语和术语
文档中的缩略语和术语有:
1.3 与其它文档的关系
本文档依据了以下文档:
《XXXXXXXXXXXX-项目管理计划》,
《XXXXXXXXXXXX-项目开发计划》,
《XXXXXXXXXXXX-XXXXXXXX-软件开发计划》,
本文档是以下文档的编制依据:
《XXXXXXXXXXXX-XXXXXXXX-软件设计说明》,
《XXXXXXXXXXXX-XXXXXXXX-软件测试计划》,
1.4 参考资料
2 软件总体概述
2.1 软件功能概要
2.1.1系统结构或拓扑
如有系统结构或拓扑,要给出图示。
2.1.2软件用例清单
软件用例清单(每个用例都应在第3章中做出详细的描述),本清单将作为概要设计、测试用例编写的依据。
优先权表明需求是必须的,但是如果需要可以推迟到晚一些的产品版本中,“低”优先权表明有它很好,但我们必须认识到如果没有充足的时间或资源,它可以被放弃掉。
2.2 软件的性能需求
2.2.1 精度
要处理的问题一般不涉及数学计算,故没有明确的精度要求。
2.2.2 时间特性
XXXXXXXX应支持:可同时处理ZZZZ个请求……..
对单个请求,XXXXXXXX响应时间不少于YYYY秒………
2.3 软件的现状
全新项目/产品的开发
核心模块和平台软件
现有软件产品化
现有项目/产品二次开发
现有项目/产品重大升级
2.4 软件实现的方法
2.4.1 软件的安装和升级模式
2.4.2 软件的开发模式
2.4.3 系统的管理和使用模式
本软件通过 软件(版本CCCC)在浏览器中对系统进行管理…….
可以通过DDDD软件使用本软件提供的系统服务……
也可通过本软件提供的HHHH模块在本地/远程使用本软件提供系统服务…….
2.4.4 软件实现的特殊处理
在软件实现上,对以下方面进行特殊分析:性能、安全、日志、认证、用户规模、存储 ……
2.5 软件实现的环境
2.5.1 硬件与外设
2.5.2 软件环境
2.5.3 接口
2.6 软件的可扩展性
本软件目前不支持的功能/性能特性包括:….
通过以下方案可以实现MMMM方面的扩展:….
3 软件用例说明
3.1 软件的一级用例模型
在本软件一级用例模型
用例文字说明(输入、过程、输出)
3.2 软件的二级用例模型
在本软件一级用例模型
用例文字说明(输入、过程、输出)
注:用例模型分析一直分解到操作级,建立一个操作的完整用例分析。因此可能出现3.3、3.4等章节
4 数据要求说明
4.1 整体数据要求、数据结构
本软件涉及的数据结构
4.2 最下层用例的数据要求
数据项、数据类型(以表格形式表现)
5 故障处理与风险对策
5.1 硬件故障处理
5.2 软件的故障处理
5.3 风险对策
产品需求说明书模板项目名称XXXXXXX项目负责人XXXXXXX批准人日期XXXXXXX20xx0428注以下提供的模板内容给写作…
项目名称需求股文档版本号V1XXXX有限公司XXXX年XX月修订历史目录1综述错误未定义书签11文档说明错误未定义书签12编写目的…
Windows语音助手软件规格说明书SRS青岛大学FirstDreamTeam小组青岛大学Windows语音助手软件需求说明书1W…
需求分析说明书实例1引言11编写目的在完成了针对档案管理系统软件市场的前期调查同时与多位软件使用者进行了全面深入地探讨和分析的基础…
修订历史记录1引言1.1目的该文档首先给出了整个系统的整体网络结构和功能结构的概貌,试图从总体架构上给出整个系统的轮廓,然后又对功…
客户商机信息管理系统使用说明书北京阳光伟业科技发展有限公司20xx年5月文档控制修改记录1修改类型分为AAddedMModifie…
客户商机信息管理系统使用说明书北京阳光伟业科技发展有限公司20xx年5月文档控制修改记录1修改类型分为AAddedMModifie…
Windows语音助手软件规格说明书SRS青岛大学FirstDreamTeam小组青岛大学Windows语音助手软件需求说明书1W…
修订历史版本说明编制批准批准日期11初次编写SEPG目录1引言111背景112参考资料113假定和约束114用户的特点12功能需求…