
用户需求说明书模板
软件开发项目xx组
二О一六年八月二十七日文件修订记录
| 变更版本 | 修订日期 | 原因与修改情况描述 | 位置(页/段落/章节号 | 修订人 | 审核人 |
为了使用户与开发人员之间相互了解,对用户需求进行明确定义,使之成为整个开发工作的基础,并提供一个软件系统度量和遵循的基准。该文件可作为用于确认软件产品是否满足给定需求的验收标准。
1.2 用户简介
在本章节中要将用户的基本情况描述清楚,以便于分析人员划定系统范围,进行关于功能与进度、成本、性能等方面的平衡决策。
基本情况举例:
企业性质
规模(员工数量、经营业绩等)
业态
地理位置与布局
产品或服务的种类
管理模式
用户使用计算机系统的经历
…...
1.3 项目的目的与目标
项目目的是开发本系统的意图的总概括,目标是将目的细化后的具体的描述,项目目标应是明确的、可度量的、可以达到的,项目的范围应能确保项目的目标可以达到。
对于项目的目标可以逐步细化,以便与系统的需求建立对应关系,检查系统的功能是否覆盖了系统的目标。
在本章节的描述忌使用“开发一套让用户满意的系统”等字句,“让用户满意”的系统是难以度量的,是项目风险的主要来源。
项目的目标举例:
人力与设备费用的减少
处理速度的提高
管理信息服务的改进
人员利用率的改进
控制业务中的薄弱环节
解决人力难以解决的计算问题
…...
1.4 术语定义
将该用户需求说明书中的术语、缩写进行定义,包括用户应用领域与计算机领域的术语与缩写等。 如:
系统缩写
专有名词
…...
1.5 参考资料
说明该用户需求说明书使用的参考资料,如:
用户领域的资料
参照的标准
…...
每一个文件、文献要有标题、索引号或文件号,发布或发表日期以及出版单位。
1.6 设计与实现的
可能的包括如下内容:
必须使用或避免的特定技术、工具、编程语言和数据库;
用户虽然没有明示,但规定的用途或已知的预期用途所必需的;
所要求的开发规范或标准(如,由客户的公司负责软件维护,就必须定义转包者所使用的设计符号表示和编码标准);
硬件,如定时需求或存储器;
数据转换格式标准。
2. 现有系统的描述
2.1 组织机构与职责
将用户的组织结构逐层详细描述,建议采用树状的组织结构图进行表达,每个部门的职责也应进行简单的描述。组织结构是用户企业业务流程与信息的载体,对分析人员理解企业的业务、确定系统范围具有很好的帮助。取得用户的组织机构,是需求获取步骤中的基础工作之一。
2.2 岗位定义
用户环境中的企业岗位或角色,和组织机构一样,也是分析人员理解企业业务的基础,是需求获取的基础工作,同时也是分析人员提取对象的基础。每个岗位的职责可以进行详细的描述,建议采用表格的形式:
| 岗位 | 所在部门 | 职责 | 相关的业务 |
对用户角色的识别也包括使用了计算机系统后的系统管理和维护人员。
2.3 作业流程
企业的作业流程首先要有一个总的业务流程图,将企业中各种业务之间的关系描述出来,然后对每种业务进行详细的描述,使业务流程与部门职责结合起来。详细业务流程图可以采用直式业务流程图形式。
图形可以将流程描述的很清楚,但是还要附加以一些文字说明,如关于业务发生的频率、意外事故的处理、高峰期的业务频率等,不能在流程图中描述出的内容,需要用文字进行详细描述。
2.4 报表
现行系统中用户正在使用的正式的或非正式报表等可以收集起来,在此章节中进行穷举、分类、归纳。报表是用户系统中信息的载体,是进行系统需求分析的基础,无论采用哪种分析方法,这都是必不可少的信息源。
可以将报表的格式画在这里,也可以将原始的材料作为本文档的附件。特别需要对这些信息源中的每个具体的信息项进行详细说明,如:
类型
长度
小数精度
来源
信息项之间的计算关系
计算时的取舍规则(如四舍五入、取整等)
报表发生的频度、高峰期的频度
......
2.5 存在的问题
在现行的系统中,从决策层、管理层、操作层各存在哪些方面的问题需要计算机来解决,尤其是决策层、管理层这些问题中包含了用户的需求与期望,有些问题是新系统可以解决的,有些问题则不是。系统中的问题举例:
业务量太大,处理速度太慢
存在漏洞,给恶意者以可乘之机
对帐太麻烦,查找速度太慢
月底报表工作量太大
操作烦琐
......
2.6 可能的变化
对于现行的系统,将来可能会有哪些变化,需要在此章节中描述。企业中的变化是永恒的,系统分析员需要描述哪些可能引起系统范围变更的变化。变化举例:
某部门撤销、合并、新增
业务流程改变
处理方法改变
管理的细度加强,增加了信息
.......
本章的裁剪问题:
如果对于所开发系统不适合,可以进行裁剪。本章节最简单的描述形式为为:
系统的客户
系统的用户
使用场景
当前系统存在的问题
可能的变化。
3 功能需求
在本章节中描述用户的功能需求。主要的要求:
(1)功能需求是用户的最主要的需求,对用户需求的描述可以采用文字描述也可以采用语言+图形的描述方式,只要能够将用户的需求描述地完整、准确、易于理解即可。描述方式举例:
自然语言
use case图(推荐)
.......
(2)对功能需求比较复杂的系统(如超过10个功能项),可以先描述一个概要,对简单的系统可以直接进行详细描述。
(3)对于用户的功能需求要进行分类,分类的方法应便于用户理解,如按照用户的部门设置情况,进行描述每个部门的需求,这样也便于组织用户进行评审。以下是分类方法的举例:
按部门分类:如计算机中心、市场部、计划建设部、客户服务中心、
财务部、总经理等;
按功能类型分类:如采集计费、综合统计、结算、营收等;
........
对功能需求的分类在不同的层次可以采用不同的方法。
(4)对每一项功能应有一个功能编号,以便于与产品需求规格说明书中的章节进行对应。
(5)对每一项功能的描述,应指明用户的输入(input)、处理方法(process)、 系统的输出(output)及对此项功能的其他要求。
(6)功能需求应注明使用此功能的岗位。对系统管理员要求的特殊功能可以在此注明,非特殊要求可以在产品需求规格说明书中详细论述。如用户权限可分级,要有操作日志等。
(7)在功能需求的描述中,对于类似的、统一的功能可以单独地进行详细描述,其他地方进行引用,或作为术语进行定义,以简化文档,减少重复。如;
录入功能
打印功能
条件查询功能
排序功能
.......
4 界面与接口需求
4.1 用户的界面需求
置界面于用户的控制之下,减少用户的记忆负担、保持界面的一致性,界面的简洁是要让用户便于使用,便于了解,并能减少用户发生错误选择的可能性.界面中要使用能反应用户本身的语言,而不是用户界面设计者的语言,即“用户至上”原则。想他们所想,做他们所做。用户总是按照他们自己的方法理解和使用。在界面设计中采用以用户为中心的设计方法。让用户真正参与到界面设计当中来。用户能自由的对界面上的每一项做出选择,且所有选择都是可逆的。
显示风格:图形界面、字符界面、IE界面 FireFox界面 360安全浏览器界面;
显示方式:1024*768、0*480 1920*1080; 输出格式:显示布局、打印格式等。
4.2 外部的接口
1. TCP/IP通信协议接口
2. GSM/CDMA无线通信协议接口
3. SMS短消息通信协议接口
4. 联通网关通信协议接口
5. 防火墙通信接口
6. 路由器通信接口
7. 交换机通信接口
5 性能需求
5.1 时间要求
响应时间,如查询的最长等待时间。
更新处理时间,如出账的最长时间。
数据的转换和传送时间,如远程数据传输的时间要求。
.......
5.2 空间与数值性能
如:
支持的终端数;
支持的并行操作的使用者数;
处理的文件和记录数;
表和文件的大小规模(要按可预见的增长对数据及其分量的存储要求做出估算);
处理和任务的数量;
在正常情况下和峰值工作条件下,在一定时间周期中要处理的数据总数;
对输入和输出数据的精度要求;
对处理和传输过程中的精度要求;
……
6 其他需求
6.1 系统的安全性
指保护软件的要素,以防止各种非法的访问、使用、修改、破坏或者泄密。个别领域的具体需求必须包括:
要求利用的密码技术;
要求对特定的记录或历史数据集的保护方法;
对某些特定的功能的访问权限的限定;
对某些数据的加密传输要求。
6.2 系统的可靠性
指定一些因素,如检查点、恢复和再启动等,以保证整个系统可用性。
6.3 系统的灵活性
说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如操作方式上的变化,运行环境上的变化,同其他软件的接口变化,精度和有效时限的变化,计划的变化或改进。对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。
6.4 其他
如:
进度需求:系统的阶段进度要求;
运行环境需求:平台、体系结构、设备要求;
培训需求:用户对培训的需求,如是否提供多媒体教学光盘;
推广需求:推广的要求,如在上百个远程的部门推广该系统,是否要有推广的支持软件。
7 非功能需求
7.1 用户特点
描述影响具体需求的产品的最终用户的一般特点。
许多人在软件生存周期的操作和维护阶段与系统相关。而这些人中有用户、操作员、维护人员和系统工作人员。这些人的某些特点,如教育水平、经验、技术、专长等,都是施加于系统操作环境的重要约束。
7.2 法律法规、版权
描述将要开发系统可能涉及到的法律法规方面的要求,以及用户版权方面的要求。
7.3 兼容性
描述将要开发系统与用户已有应用系统的兼容性、接口、数据格式的要求。
7.4 联机帮助信息
描述用户对将要开发系统联机提供文档、帮助信息的要求。
7.5 购买组件
描述用户要求将要开发系统与任何购买组件一起使用的要求。
8 系统约束
主要包括以下几个方面需考虑的问题,可进一步分节描述。
与其他应用间的接口。如:ATM、POS等,这些设施在选择需考虑与本软件系统的搭配,并定义其应用接口的规则,使其较易连接。
随机耗时功能。如:随机轧帐,执行时将对系统产生的性能影响等。
随机打印功能。如:随机打印报表,执行时无法保证帐表数据一致性等。
硬件、软件、运行环境和开发环境方面的条件和。
可利用的信息和资源。
系统投入使用的最晚时间。
另外其他一些对系统设计将带来的约束。
9用户验收标准
9.1 验收标准:
包括符合技术需求及非技术需求的要求、运行稳定性/安全性/故障率及恢复能力/业务处理能力(峰值/日均)等的要求。
9.2 功能验收标准可依据以下方面制定:
| 验收项目(示例) | 验收标准(示例) |
| 软件产品整体运行 | 稳定,无死机、程序中断性错误 |
| 软件产品数据流 | 计算正确、报表打印、数据查询正确 |
| 与其它软件产品数据接口 | 接口正确,与其它系统的连接正常 |
| 与用户给定需求一致性 | 与用户给定需求一致,完全实现给定需求规定的功能和性能 |
| …….. | …….. |
1.余量测试
在以上测试过程中随时检验系统负荷,系统负荷指标满足以下条件:
计算机的CPU负荷率:正常状态下/突发任务时
LAN负荷率:正常状态下/突发任务时
2.性能验收(含基准测试)
(1)易用性测试
| 验收项目(示例) | 验收标准(示例) |
| 产品打包集合程度 | 完整的安装盘 |
| 安装的自动化程度 | 自动安装 |
| 安装过程中的提示丰富程度 | 有提示 |
| 对操作者的要求 | 熟悉一种汉字输入法和相关系统业务 |
| 学习过程的难易程度 | 熟悉相关业务的人很容易掌握 |
| 界面层次与操作流程 | 符合业务处理流程 |
| 菜单方式与快捷方式 | 既有菜单方式,也有快捷方式 |
| 减少键盘输入措施 | 充分利用了代码输入方式 |
| 运行过程中的提示丰富程度 | 提示丰富、帮助功能完善 |
| 对维护者的要求 | 初步熟悉UNIX和Windows2000或XP即可 |
| 维护工具集合程度 | 集合在菜单里,方便使用 |
| 维护操作自动化程度 | 自动日结与备份 |
| 验收项目(示例) | 验收标准(示例) |
| 操作系统适应性 | 数据库与操作系统安装、使用正常 |
| 中文平台适应性 | 适用中文之星、richwin、五笔等多种中文平台 |
| 外设支持 | 支持具有多种标准接口的外设 |
| 验收项目(示例) | 验收标准(示例) | 说明 |
| 界面生成与更新速度 | <1秒 | |
| 查询速度 | <3秒 | |
| 报表统计 | <5秒 | |
| 打印速度 | <3秒 | |
| 数据传输速度 | 0.3秒 | |
| 批处理速度 | <100秒 |
(1)网络及主机故障下:系统应能保证故障处理/恢复能力。
(2)所有写数据库的操作,均采用事务处理,在主机网络故障、应用程序中断的情况下,保证数据的完整性、一致性。
(3)双机切换测试:
稳定性测试:稳定运行1周以上,观测系统状态
主从机负载不均衡,测试对双机软件的影响
破坏性测试,测试双机接管情况、接管时间:
拔插串口线、拔插磁盘阵列柜电缆、拔插网线、拔插备用网线、两块网卡的网线全部拔掉、强行关主机、主机掉电测试、主从机强制转换
5.系统可靠性测试
(1)系统可靠性和检错能力测试
(2)异常情况处理能力
测试中断网络、关闭主机、双机切换、中断应用程序、停止数据库服务器等情况下,系统的容错处理能力。
6.安全保密功能的测试
(1)C2级安全标准
操作系统符合美国国防部C2安全标准。通过口令、用户权限等的设置,对主机系统进行安全保护,防止非法用户进入
(2)安全可靠性结果
| 测试项目(示例) | 测试标准(示例) |
| 操作员权限 | 操作员权限、菜单权限控制到菜单最底层,可灵活设置 |
| 数据存取属性控制 | 通过用户权限可方便控制 |
| 数据的互锁 | 有互锁功能 |
| 数据的备份与恢复 | 有相应的工具及功能模块,日终自动备份 |
| 数据加密措施 | 用户密码加密,数据不加密 |
| 操作员重要数据操作日志跟踪与留痕功能 | 有日志,可方便查询 |
| 对操作员错误操作的屏蔽 | 可屏蔽并有提示 |
| 唯一性数据自动检查 | 自动检查 |
| 删除或覆盖数据时的提示 | 有提示 |
| 数据越界处理 | 处理规范 |
| 通讯故障处理 | 有提示,可自动检测、连接 |
A.1×××
A.2×××
附录B ×××
B.1×××
B.2×××
模板修订历史信息
*A – 增加 M – 修改 D – 删节
| 变更版本 | 日期 | 图表、表格、段落号 | A/M/D | 原因与修改情况描述 | 修订人 | 审核人 |
