温州职业技术学院计算机系
软件需求规格书模板-V1.0
前 言
软件需求规格说明书主要描述、界定软件的范围,同时给出软件必须解决的问题的详细描述。每个问题可以认为是软件产品的一个“功能”,需要对每个功能提供一个处理叙述、设计约束、性能特征以及与其他元素间的相互影响的说明。
软件需求规格说明书另外一个重要的作用是提供一个软件产品的确认验收标准,进行功能实现的识别和性能、约束的条件等的设定。
温州职业技术学院计算机系
软件需求规格书模板-V1.0
目 录
概述 ........................................................................................................................................................................................................................... 1 编写目的 ............................................................................................................................................................................................................... 1 文档范围 ............................................................................................................................................................................................................... 1 术语定义 ............................................................................................................................................................................................................... 2 参考资料 ............................................................................................................................................................................................................... 2 系统说明 ................................................................................................................................................................................................................... 4 产品的背景 ........................................................................................................................................................................................................... 4 产品的功能 ........................................................................................................................................................................................................... 4 用户类和特征 ....................................................................................................................................................................................................... 4 运行环境 ............................................................................................................................................................................................................... 4 设计和实现上的限制 ........................................................................................................................................................................................... 5 假设和依赖 ........................................................................................................................................................................................................... 6 其他条件与限制 ................................................................................................................................................................................................... 6 业务流程 ................................................................................................................................................................................................................... 7 功能描述 ................................................................................................................................................................................................................. 17 数据描述 ................................................................................................................................................................................................................. 18 数据来源和数据流图 ......................................................................................................................................................................................... 18 数据库描述 ......................................................................................................................................................................................................... 18 性能描述 ................................................................................................................................................................................................................. 19 数据精确度 ......................................................................................................................................................................................................... 19 时间特性 ............................................................................................................................................................................................................. 19 适应性 ................................................................................................................................................................................................................. 19 安全性 ..................................................................................................................................................................................................................... 20 安全设施需求 ..................................................................................................................................................................................................... 20 安全性需求 ......................................................................................................................................................................................................... 20 运行接口需求 ......................................................................................................................................................................................................... 21 用户界面 ............................................................................................................................................................................................................. 21 硬件接口 ............................................................................................................................................................................................................. 21 软件接口 ............................................................................................................................................................................................................. 22 通信接口 ............................................................................................................................................................................................................. 22 其他需求 ................................................................................................................................................................................................................. 23 验收标准 ................................................................................................................................................................................................................. 24 软件质量 ............................................................................................................................................................................................................. 24 用户文档 ............................................................................................................................................................................................................. 24
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第一章 概述
1.1 编写目的
[阐明编写需求说明书的目的,指明读者对象。可以用如下的列举方式进行描述。]
例如:
本文档是[项目名称] [系统属性]系统需求分析说明书供设计人员使用,作为系统设计的依据。
作为项目验收标准之一。
软件维护的参考资料。
……
1.2 文档范围
本文档是项目的软件需求规格说明书,是技术文档。
本文档使用对象为:
项目需求人员
项目经理
温州职业技术学院计算机系
软件需求规格书模板-V1.0
高层经理
软件工程组
软件相关组成员
用户
未经项目负责人书面许可,该文档不得提供给上述规定对象以外的人员阅读或使用。
1.3 术语定义
[列出文档中所用到的专门术语的定义和缩写词的原文。可以用列举方式进行描述]
1. [术语名称或缩略语]
[术语解释]
[术语名称或缩略语]
[术语解释]
1.4 参考资料
[应包括:a.项目任务书、合同;b.项目开发计划;c.文档所引用的资料、标准和规范。列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第二章 系统说明
2.1 产品的背景
[描述软件需求规格说明中所定义的产品的背景和起源。说明该产品是否是产品系列中的下一成员,是否是成熟产品所改进的下一产品、是否是现有应用程序的替代品,或者是否是一个新型的、自含型产品。如果软件需求规格说明定义了大系统的一个组成部分,那么就要说明这部分软件是怎样与整个系统相关的,并且要定义出两者之间的接口。]
2.2 产品的功能
[概述了产品所具有的主要功能。其详细内容将在下面几章中描述,所以在此只需要概略地总结,例如用列表的方法给出。很好地组织产品的功能,使每个读者都易于理解。用图形表示主要的需求分组以及它们之间的联系,例如数据流程图的顶层图或类图,都是有用的。]
2.3 用户类和特征
[确定可能使用该产品的不同用户类并描述它们相关的特征。有一些需求可能只与特定的用户类相关。将该产品的重要用户类与那些不太重要的用户类区分开。]
[如果目标用户很明确,或者为项目产品可以对目标用户或项目用户进行描述。]
2.4 运行环境
[描述软件的运行环境,包括硬件平台、操作系统和版本,还有其它的软件组件或与其共存的应
温州职业技术学院计算机系
软件需求规格书模板-V1.0
用程序。]
[可以分别对服务器端和客户端的运行环境进行描述,如下所示:]
2. 服务器端
3. 客户端
[进行软件系统需求和软件用户需求进行可选]
2.5 设计和实现上的限制
[确定影响开发人员自由选择的问题,并说明这些问题为什么成为一种限制。可能的限制包括如下内容:
必须使用或者避免的特定技术、工具、编程语言和数据库。
所需求的开发规范和标准(例如,如果由客户的公司负责软件维护,就必须定义转包者所使用的设计符号表示和编码标准)。
企业策略、政府法规或工业标准。
硬件限制,例如定时需求或存储器限制。
数据转换格式标准。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
2.6 假设和依赖
[列举出在对软件需求规格说明中影响需求陈述的假设因素(与已知因素相对立),可能包括打算使用的商业组件或有关开发或运行环境的问题。你可能认为产品将符合一个特殊的用户界面设计约定,但是另一个读者却可能不这样认为。如果这些假设不正确、不一致或被更改,就会使项目受到影响。
确定项目对外部因素存在的依赖。例如,如果你打算把其它项目开发的组件集成到系统中,那么你就要依赖哪个项目按时提供正确的操作组件,如果这些依赖已经记录到其它文档(例如项目计划)中了,那么在此就可以参考其它文档。]
2.7 其他条件与限制
[尽量列出开展本项目的假定和约束,例如:经费限制,开发期限,设备条件,用户现场环境准备、安全保密等]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第三章 业务流程
[可以运用流程图、文字说明等方式来描述业务流程]
系统顺序图:
温州职业技术学院计算机系
软件需求规格书模板-V1.0
温州职业技术学院计算机系
软件需求规格书模板-V1.0
温州职业技术学院计算机系
软件需求规格书模板-V1.0
温州职业技术学院计算机系
软件需求规格书模板-V1.0
契约:
名称: login(num:number,password:varchar(20))
职责: 用户登录
类型: 系统
交差引用: 用户登录
用况: 用况:登录
温州职业技术学院计算机系
软件需求规格书模板-V1.0
注释:
异常: 输出: 前置条件: 后置条件: 名称: 职责: 类型: 交差引用: 用况: 注释: 异常: 输出: 如果帐号密码错误,那么系统提示错误信息
系统已经有相印的用户
Adduser ()
用户注册
系统
用况:注册
如果用户已经存在,那么系统提示错误信息
温州职业技术学院计算机系
软件需求规格书模板-V1.0
前置条件: 后置条件: 名称: 职责: 类型: 交差引用: 用况: 注释: 异常: 输出: 前置条件: 后置条件: 名称:
如果注册成功,一个生成一个新的用户
Addbaom ()
用户报名
系统
登录
用况:报名
如果用户已经报名过该课程或者该课程不在报名时间,那么系统提示错误信息
系统已经存在该课程
如果报名成功,生成新的报名(实列被创建),与用户发生关联(形成关联)
Addkec ()
温州职业技术学院计算机系
软件需求规格书模板-V1.0
职责: 类型: 交差引用: 用况: 注释: 异常: 输出: 前置条件: 后置条件: 名称: 职责: 类型: 交差引用: 管理员添加课程
系统
用况:添加
如果课程已经存在,那么系统提示错误信息
管理员已经登录
如果添加成功,生成新的课程(实列被创建),与泳池发生关联(形成关联)updatekec ()
管理员更新课程
系统
温州职业技术学院计算机系
软件需求规格书模板-V1.0
用况: 注释: 异常: 输出: 前置条件: 后置条件: 名称: 职责: 类型: 交差引用: 用况: 注释: 异常: 用况:更新
如果课程填写信息不合理,那么系统提示错误信息
管理员已经登录
如果修改成功,修改课程属性(属性修改),与泳池发生关联(形成关联)deletekec ()
管理员删除课程
系统
用况:删除
如果课程还存在学生正在学习,那么系统提示错误信息
温州职业技术学院计算机系
软件需求规格书模板-V1.0
输出:
前置条件: 管理员已经登录
后置条件: 如果删除成功,与泳池发生关联(形成关联)
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第四章 功能描述
[可以运用功能清单、格式表单、界面说明、文字说明等方式来描述业务流程]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第五章 数据描述
5.1 数据来源和数据流图
[描述输入数据和输出数据,系统使用的数据字典等]
5.2 数据库描述
[包括使用数据库的名称和类型。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第六章 性能描述
6.1 数据精确度
[数据内部显示精度,外部显示精度]
6.2 时间特性
[系统响应时间、界面更新处理时间、数据转换与传输时间等]
6.3 适应性
[在操作方式、运行环境、与其他软件的接口以及开发计划等发生变化时,应具有的适应能力。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第七章 安全性
7.1 安全设施需求
[详尽陈述与产品使用过程中可能发生的损失、破坏或危害相关的需求。定义必须采取的安全保护或动作,还有那些预防的潜在的危险动作。明确产品必须遵从的安全标准、策略或规则。一个安全设施需求的范例如下:“如果油箱的压力超过了规定的最大压力的95%,那么必须在1秒种内终止操作”。]
7.2 安全性需求
[详尽陈述与系统安全性、完整性或与私人问题相关的需求,这些问题将会影响到产品的使用和产品所创建或使用的数据的保护。定义用户身份确认或授权需求。明确产品必须满足的安全性或保密性策略。一个软件系统的安全需求的范例如下:“每个用户在第一次登录后,必须更改最初登录密码。最初的登录密码不能重用。”]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第八章 运行接口需求
8.1 用户界面
[陈述所需要的用户界面的软件组件。描述每个用户界面的逻辑特征。以下是可能要包括的一些特征:
将要采用的图形用户界面(GUI)标准或产品系列的风格。
屏幕布局或解决方案的限制。
将出现在每个屏幕的标准按钮、功能或导航链接(例如一个帮助按钮)。
快捷键。
报表输出定义。
错误信息显示标准。
对于用户界面的细节,例如特定对话的布局,应该写入一个独立的用户界面规格说明中,而不能写入软件需求规格说明中。]
8.2 硬件接口
[描述系统中软件和硬件每一接口的特征,这种描述可能包括支持的硬件类型、软硬之间交流的
温州职业技术学院计算机系
软件需求规格书模板-V1.0
数据和控制信息的性质以及所使用的通信协议]
例如网络图等
8.3 软件接口
[包括数据库、操作系统、工具、库和集成的商业组件,明确并描述在软件组件之间交换数据或消息的目的]
8.4 通信接口
[描述与产品所使用的通信功能相关的,包括电子、Web浏览器、网络通信标准或协议及电子表格等等。定义了相关的消息格式。规定通信安全或加密问题、数据传输速率和同步通信机制。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第九章 其他需求
[定义在软件需求规格说明的其它部分未出现的需求,例如国际化需求或法律上的需求。还可以增加有关操作、管理和维护部分来完善产品安装、配置、启动和关闭、修复和容错,以及登录和监控操作等方面的需求。如果不需要增加其它需求,可省略这一部分。]
温州职业技术学院计算机系
软件需求规格书模板-V1.0
第十章 验收标准
[明确规定产品验收依据的各种标准或条件的具体内容]
10.1 软件质量
[详尽陈述与客户或开发人员至关重要的产品质量特性。这些特性必须是确定的、定量的并在可能时是可验证的。]
10.2 用户文档
[列举出将与软件一同发行的用户文档部分,例如,操作手册、安装手册、维护手册、在线帮助和教程。明确所有已知的用户文档的交付格式和标准。]
注: 文档中[ ]里面的内容是对相应部分的说明,在写具体项目的需求说明书时,应去掉或更改为适当的内容。
温州职业技术学院计算机系
因篇幅问题不能全部显示,请点此查看更多更全内容