软件需求说明书的主要内容及写作要求 编写目的 软件需求说明书的编制是为了使用户和软件开发者双方对该软件的运行环境、功能和性能需求的初始规定有一个共同的理解,使之成为整个开发工作的基础,为概要设计提供需求说明。 主要内容及写作要求 软件需求说明书的主要内容及写作要求如下: 1 引言 1.1目的 A. 说明开发本软件的目的; B. 说明编写软件需求说明书的目的; C. 说明软件需求说明所预期的读者。 1.2 背景 A. 标识要开发的软件产品(名称、代码); B. 列出本项目的任务提出者、项目负责人、系统分析员、系统设计员、程序设计员、程序员、资料员以及与本项目开展工作直接有关的人员和用户。 C. 说明该软件产品与其它有关软件产品的相互关系。 1.3 参考资料 A. 列出该项目经核准的任务书或合同和上级机关的批文; B. 列出编写本软件需求说明书时参考的文件、资料、技术标准以及他们的作者、标题、编号、发布日期和出版单位等。 1.4术语 列出本软件需求说明书中专门属于的定义以及英语缩写词的原词组。 2 项目概述 2.1 被开发软件的一般描述 描述被开发软件的主要组成,相互联系和外部借口(可用系统流程图的层次结构描述)。 2.2 被开发软件的功能 简述被开发软件的功能(可采用系统流程图的层次结构描述)。 2.3 实现语言 列出所采用的编程语言。 2.4 用户特点 描述最终用户(包括操作员、维护人员和系统工作人员)具有的受教育水平、工作经验及技术专长。 2.5 一般约束 给出影响承办单位在设计软件时的约束条款和当需求发生变化时该软件对这些变化的适应能力即灵活性的需求,包括: A. 管理方针、如经费限制、开发期限等; B. 运行环境,包括硬件设备和支持软件; C. 其它应用接口; D. 并行操作的用户数; E. 实时功能:包括响应时间、更新处理时间、数据转换和传送时间、解题时间; F. 安全保密方面的考虑。 3 具体需求 3.1 功能需求 用文字、图表或数学公式详细描述被开发软件的输入处理、输出以及在上述过程中发生的基本操作(可采用系统流程图的层次结构描述)。对每一类功能(或每一功能),按下述四小节描述。 3.1.1 引言 A. 描述该软件功能及使用方法; B.列出与功能有关的背景材料。 3.1.2 输入要求 A. 输入数据的描述,包括输入源、数量、度量单位和精度; B. 操作员具体的操作控制需求(如输入格式、数据类型、精度、范围自动检验等); A. 指明引用的输入设备接口资料(包括设备型号、数量)。 3.1.3 处理要求 描述为获得期望的输出,对输入数据及中间参数进行的操作,包括: A. 输入数据有效性(如0不能取对数、流压大于静压等)检查手段; B. 操作顺序和处理过程; C. 非正常情况的响应。如溢出、通讯故障、错误处理; B. 输出数据有效性检查手段。 3.1.4 输出要求 A. 输出数据的描述,包括目的地(存储媒体和用途)、数量、度量和精度; B. 非法数据的处理; C. 指明引用的输出设备接口资料(包括设备型号、数量)。 3.2 外部接口需求 3.2.1 用户界面 A. 指出用户使用软件产品时的界面需求。若用户用过显示终端操作,则需指定如下需求: 对屏幕格式的要求; 报表或菜单的页面显示格式及内容; 用户命令的格式。 B. 列出输出错误信息的格式。 3.2. 2硬件接口 A. 软件产品与系统硬设备之间每一接口的逻辑特点; B. 硬件接口支持的设备; C. 软件与硬件接口之间以及硬件接口与支持设备之间的约定。 3.2.3 软件接口 描述该软件产品与其它有关软件的接口关系,并指出这些软件的名字、助记符及版本号。 3.2.4 通讯接口 说明各种通讯接口及协议。 3.3 性能需求 A. 输入输出数据精确度 B.时间特性[如响应时间、更新处理时间、数据转换与传输时间、运行时间等。] C.适应性[在操作方式、运行环境、与其它软件的接口以及开发计划等发生变化时,应具有的适应能力。] D. 正常情况下和峰值工作条件下,在一定时间内要处理的数据总量; 3.4 属性需求 A. 正确性(指程序运行所完成的功能与需求说明书规定的各种功能相一致的程度)需求; B. 健壮性需求(健壮性指在不合理的输入情况下,程序仍能运行的程度。如果在不合理的输入情况下,如打错命令、输入数据超界、提供参数不合理等;程序能够运行,或给出错误信息后转到预先规定的错误处理程序运行,则程序的健壮性好。反之,则不好); C. 安全保密性(指对程序进行以防止意外的或蓄意存取、使用、修改、损坏或泄密的程度和遭受意外损坏后的恢复能力)需求; D. 易使用性(指掌握、使用该软件的难易程度)需求; E. 可理解性(指程序使用那些使人们易读、易懂的编码规定、指南和规则,例如模块长度、标识符长度、注释、编写格式、常数定义等)需求; F. 可维护性(指对程序进行维护的难易程度)需求; G. 可测试性(指程序的功能和性能的可测试的难易程度)需求; H. 可移植性(指在规定的条件下,程序从一个环境转移到另一个环境进行运行的难易程度)需求; 3.4 数据需求(如果是较大规模的软件本节内容取消,由数据要求说明书详细描述)。 3.5.1 数据描述 A. 列出作为控制和引用而使用的静态数据元素; B. 列出动态输入数据元素; C. 列出动态输出数据元素; D. 列出软件内部生成的数据元素。 3.5.2数据获取 A. 列出提供输入数据的机构; B. 列出数据输入介质和设备; 列出数据输出介质和设备。 本文来源:https://www.wddqw.com/doc/10245513f18583d049645910.html