
0302软件需求规格说明书.doc
14页II软件需求规格说明书软件需求规格说明书模板版本:<1.0>文档编号:0304密 级:秘密编 写:编写日期: 年 月 日审 核:审核日期 年 月 日批 准:批准日期: 年 月 日Copyright @ Egao, All right reserved修订记录版本章节名称修订内容修订日期修订人批准人1.0第一版发布用户需求确认书重写用户确认承诺内容2.3标题有用户特点改为用户类和特征写作提示修改2.4原2.4一般约束改为2.4 运行环境,2.5设计和实现上的限制,并修改相应写作提示3.2.1标题用户接口改为用户界面,并修改相应写作提示3.4删除原3.4 设计约束3.4.2修改原3.5.2安全性的写作提示3.4.5删除原3.5.5 警告 3.3.3增加非功能需求标题调整原3.3.3 性能需求,3.4 属性,4 其他需求为非功能需求之下级章节3.3.3.53.3.33.3.4增加3.3.3.5软件质量属性3.3.3 业务规则3.3.4 用户文档3.5其他需求并为3.3.5,修改写作提示4删除原5 附录 写作提示增加4.1附录A词汇表,4.2附录B 分析模型,4.3附录C 待确定问题列表及相关写作提示。
<项目名称>软件需求规格说明书版本:< >文档编号:密 级:秘密编 写:编写日期:年 月 日审 核:审核日期年 月 日批 准:批准日期: 年 月 日Copyright @RongHui, All right reserved修订记录版本章节名称修订内容修订日期修订人批准人目录1 引言 11.1 编写目的 11.2 范围 11.3 定义 11.4 参考资料 12 项目概述 12.1 产品描述 12.2 产品功能 22.3 用户特点 22.4 运行环境 22.5 设计和实现上的限制 22.6 假设和依据 33 具体需求 33.1 功能需求 33.1.1 功能需求1 33.1.2 功能需求2 43.1.3 功能需求3 43.2 外部接口需求 43.2.1 用户接口 43.2.2 硬件接口 43.2.3 软件接口 53.2.4 通信接口 53.3 非功能性需求 53.3.1 性能需求 53.3.2 属性 53.3.3 业务规则 63.3.4 用户文档 63.3.5 其他需求 64 附录 74.1 附录A:词汇表 74.2 附录B:分析模型 84.3 附录C:待确定问题的列表 8用户需求确认书 本《软件需求规格说明书》建立在双方对需求的共同理解基础之上,我同意后续的开发工作根据该《软件需求规格说明书》开展。
如果需求发生变化,我们将按照“变更控制规程”执行我明白需求的变更将导致双方重新协商成本、资源和进度等用户职务用户签名签订日期8软件需求规格说明书1 引言1.1 编写目的 说明编写这份软件需求说明书的目的,指出预期的读者范围1.2 范围说明:a. 待开发的软件系统的名称;b. 说明软件将干什么,如果需要的话,还要说明软件产品不干什么;c. 描述所说明的软件的应用应当:1) 尽可能精确地描述所有相关的利益、目的、以及最终目标2) 如果有一个较高层次的说明存在,则应该使其和高层次说明中的类似的陈述相一致(例如,系统的需求规格说明)1.3 定义 列出本文件中用到的专门术语的定义和缩写词的原词组1.4 参考资料列出要用到的参考资料,如:a. 本项目的经核准的计划任务书或合同、上级机关的批文;b. 属于本项目的其他已发表的文件;c. 本文件中各处引用的文件、资料,包括所要用到的软件开发标准列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源2 项目概述2.1 产品描述叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料解释被开发软件与其他有关软件之间的关系。
如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口2.2 产品功能本条是为将要完成的软件功能提供一个摘要例如,对于一个记帐程序来说,需求说明可以用这部分来描述:客房帐目维护、客房财务报表和发票制作,而不必把功能所要求的大量的细节描写出来有时,如果存在较高层次的规格说明时,则功能摘要可从中取得,这个较高层次的规格说明为软件产品分配了特殊的功能,为了清晰起见,请注意:a. 编制功能的一种方法是制作功能表,以便客房或者第一次读这个文件的人都可以理解;b. 用方框图来表达不同的功能和它们的关系也是有帮助的但应牢记,这样的图不是产品设计时所需求的,而只是一种有效的解释性的工具2.3 用户特点确定你觉得可能使用该产品的不同用户类并描述它们相关的特征有一些需求可能只与特定的用户类相关将该产品的重要用户类与那些不太重要的用户类区分开2.4 运行环境描述了软件的运行环境,包括硬件平台、操作系统和版本,还有其它的软件组件或与其共存的应用程序2.5 设计和实现上的限制确定影响开发人员自由选择的问题,并说明这些问题为什么成为一种限制。
可能的限制包括如下内容:• 必须使用或者避免的特定技术、工具、编程语言和数据库• 所要求的开发规范或标准(例如,如果由客户的公司负责软件维护,就必须定义转包者所使用的设计符号表示和编码标准• 企业策略、政府法规或工业标准• 硬件限制,例如定时需求或存储器限制• 数据格式标准报表格式,数据命名等)• 与其他应用间的接口;• 并行操作;• 审查功能;• 控制功能;• 通信协议;• 应用的临界点;• 安全和保密方面的考虑2.6 假设和依据本条列出影响需求说明中陈述的需求的每一个因素这些因此不是软件的设计约束,但是它们的改变可能影响到需求说明中的需求例如:假定一个特定的操作系统是在被软件产品指定的硬件上使用的,然而,事实上这个操作系统是不可能使用的,于是,需求说明就要进行相应的改变3 具体需求3.1 功能需求3.1.1 功能需求1对于每一类功能或者有时对于每一个功能,需要具体描述其输入、加工和输出的需求由四个部分组成:a. 引言描述的是功能要达到的目标、所彩的方法和技术,还应清楚说明功能意图的由来和背景b. 输入1) 详细描述该功能的所有输入数据,如:输入源、数量、度量单位、时间设定、有效输入范围(包括精度和公差);2) 操作员控制细节的需求。
其中有名字、操作员活动的描述、控制台或操作员的位置例如:当打印检查时,要求操作员进行格式调整;3) 指明引用接口说明或接口控制文件的参考资料c. 加工定义输入数据、中间参数,以获得预期输出结果的全部操作它包括如下的说明:1) 输入数据的有效性检查;2) 操作的顺序,包括事件的时间设定;3) 响应,例如,溢出、通信故障、错误处理等;4) 受操作影响的参数;5) 降级运行的要求;6) 用于把系统输入变换成相应输出的任何方法(方程式、数学算法、逻辑操作等);7) 输出数据的有效性检查d. 输出1) 详细描述该功能所有输出数据,例如:输出目的地、数量、度量单位、时间关系、有效输出的范围(包括精度和公差)、非法值的处理、出错信息;2) 有关接口说明或接口控制文件的参考资料此外,对着重于输入输出行为的系统来说,需求说明应指定所有有意义的输入、输出对及其序列当一个系统要求记忆它的状态时,需要这个序列,使得它可以根据本次输入和以前的状态作出响应也就是说,这种情况犹如有限状态机3.1.2 功能需求2......3.1.3 功能需求3......3.2 外部接口需求3.2.1 用户接口陈述所需要的用户界面的软件组件。
描述每个用户界面的逻辑特征以下是可能要包括的一些特征:• 将要采用的图形用户界面( G U I)标准或产品系列的风格• 报表或菜单的页面打印格式和内容;• 输入输出的相对时间;• 屏幕布局或解决方案的限制• 将出现在每个屏幕的标准按钮、功能或导航链接(例如一个帮助按钮)• 快捷键• 错误信息显示标准对于用户界面的细节,例如特定对话框的布局,应该写入一个独立的用户界面规格说明中,而不能写入软件需求规格说明中3.2.2 硬件接口要指出软件产品和系统硬部件之间每一个接口的逻辑特点还可能包括如下事宜:支撑什么样的设备,如何支撑这些设备,有何约定3.2.3 软件接口在此要指定需使用的其他软件产品(例如,数据管理系统、操作系统或数学软件包),以及同其他应用系统之间的接口对每一个所需的软件产品,要提供如下内容:a. 名字;b. 助记符;c. 规格说明号;d. 版本号;e. 来源 对于每一个接口,这部分应说明与软件产品。
