软件需求说明书 范围 需求范围说明书
摘要:软件需求说明书内容都包括哪些 规范化软件开发过程中的《需求说明书》的编写,使之成为整个开发工作的基础。2 适用范围本规范适用于集团开发项目的(软件)《需求说明书》的编写。3 编写内容提示1 引言3 1...
发布日期:2020-11-09软件需求说明书内容都包括哪些
规范化软件开发过程中的《需求说明书》的编写,使之成为整个开发工作的基础。
2 适用范围本规范适用于集团开发项目的(软件)《需求说明书》的编写。
3 编写内容提示1 引言3.1.1 背景说明说明被开发软件的名称,任务提出者,用户及实现该软件的计算机网络。
3.1.2 参考资料列出有关资料(名称,发表日期,出版单位,作者等)。
3.1.3 术语和缩写词列出本文件中用到的专门术语的定义,及术语缩写词。
3.2 软件总体概述3.2.1 目标软件开发的意图、应用目标、作用范围以及需说明背景材料。
3.2.2 系统模型图示说明该软件的所有功能及其相互关系和数据传递情况。
3.2.3 假设和约束说明影响软件开发、运行环境和系统能力(如预告出错类型的能力)的某些假设和约束。
3.3 详细需求详细描述此软件系统的功能需求和性能需求。
3.3.1 功能需求对系统中每一个功能,要详细描述(图示或文字)。
概述 叙述功能名称,目标和作用。
输入 输入该功能的信息。
处理 描述该功能做什么,如何对输入信息进行加工并转换成输出信息。
输出 列出内部生成的文件。
3.3.2 性能需求定量地描述此软件系统应满足的具体性能需求。
可考虑以下方面:3.3.2.1精度说明系统的精度要求,如:数据的精度要求。
数字计算的精度要求。
数据传送的误码率要求。
3.3.2.2 时间特性说明系统的时间特性要求,如:解题时间。
询问和更新数据文件的响应时间。
系统各项功能的顺序关系。
3.3.2.3 灵活性说明当需求发生某些变化时系统的适应能力,指出为适应这些变化而需要设计的软件成分和过程。
3.3.2.4系统容量包括系统的设计容量和理论(计算)容量。
3.3.3 输入和输出解释各输入输出数据类型,并逐项说明某媒体、格式、数值范围等。
对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
3.3.4 数据管理能力说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作估算。
3.3.5 故障处理列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
3.4 环境描述所开发软件运行所需的环境。
3.4.1 设备环境描述运行软件系统所需的设备能力,如:处理器的型号和内存容量。
存储媒体的数量。
通信网络(包括说明网络结构,线路速度及通讯协议等)。
3.4.2 支持软件环境列出与待开发的软件互相配合的支持软件(包括名称,版本号和文件资料),必要时还应列出测试软件,还要指出该软件用的编程语言,编译程序,操作系统和数据管理系统。
3.4.3 接口说明本软件与其他软件之间的接口、数据通信协议等。
3.4.4其他说明本软件系统在安全和保密方面的要求以及用户对使用方便、可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求。
软件需求说明书内容都包括哪些
规范化软件开发过程中的《需求说明书》的编写,使之成为整个开发工作的基础。
2 适用范围本规范适用于集团开发项目的(软件)《需求说明书》的编写。
3 编写内容提示1 引言3.1.1 背景说明说明被开发软件的名称,任务提出者,用户及实现该软件的计算机网络。
3.1.2 参考资料列出有关资料(名称,发表日期,出版单位,作者等)。
3.1.3 术语和缩写词列出本文件中用到的专门术语的定义,及术语缩写词。
3.2 软件总体概述3.2.1 目标软件开发的意图、应用目标、作用范围以及需说明背景材料。
3.2.2 系统模型图示说明该软件的所有功能及其相互关系和数据传递情况。
3.2.3 假设和约束说明影响软件开发、运行环境和系统能力(如预告出错类型的能力)的某些假设和约束。
3.3 详细需求详细描述此软件系统的功能需求和性能需求。
3.3.1 功能需求对系统中每一个功能,要详细描述(图示或文字)。
概述 叙述功能名称,目标和作用。
输入 输入该功能的信息。
处理 描述该功能做什么,如何对输入信息进行加工并转换成输出信息。
输出 列出内部生成的文件。
3.3.2 性能需求定量地描述此软件系统应满足的具体性能需求。
可考虑以下方面:3.3.2.1精度说明系统的精度要求,如:数据的精度要求。
数字计算的精度要求。
数据传送的误码率要求。
3.3.2.2 时间特性说明系统的时间特性要求,如:解题时间。
询问和更新数据文件的响应时间。
系统各项功能的顺序关系。
3.3.2.3 灵活性说明当需求发生某些变化时系统的适应能力,指出为适应这些变化而需要设计的软件成分和过程。
3.3.2.4系统容量包括系统的设计容量和理论(计算)容量。
3.3.3 输入和输出解释各输入输出数据类型,并逐项说明某媒体、格式、数值范围等。
对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
3.3.4 数据管理能力说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作估算。
3.3.5 故障处理列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
3.4 环境描述所开发软件运行所需的环境。
3.4.1 设备环境描述运行软件系统所需的设备能力,如:处理器的型号和内存容量。
存储媒体的数量。
通信网络(包括说明网络结构,线路速度及通讯协议等)。
3.4.2 支持软件环境列出与待开发的软件互相配合的支持软件(包括名称,版本号和文件资料),必要时还应列出测试软件,还要指出该软件用的编程语言,编译程序,操作系统和数据管理系统。
3.4.3 接口说明本软件与其他软件之间的接口、数据通信协议等。
3.4.4其他说明本软件系统在安全和保密方面的要求以及用户对使用方便、可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求。
软件需求说明书参考格式是怎样的?
1.1编写目的 说明编写这份软件需求说明书的目的,制出预期的读者. 1.2背景 a.待开发的软件系统的名称; .本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络; c.该软件系统同其他系统或其他机构的基本的相互来往关系. 1.3 定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组. 1.4 参考资料 a.本项目的经核准的计划任务书或合同、上级机关的批文; .属于本项目的其他已发表的文件; c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准.列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源. 2 任务概述 2.1 目标 叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。
解释被开发软件与其他有关软件之间的关系。
如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。
如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。
2.2 用户的特点 列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使用频度.这些是软件设计工作的重要约束. 2.3 假定和约束 列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等. 3 需求规定 3.1 对功能的约定 使用数据流图、数据字典或列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数. 3.2 对性能的规定 3.2.1 精度 说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度. 3.2.2 时间特性要求 说明对于该软件的时间特性要求,如: a.响应时间; .更新处理时间 c.数据的转换和传松时间; d.解题时间. 3.2.3 灵活性 说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如: a.操作方式上的变化; .运行环境的变化; c.同其他软件的接口的变化; d.精度和有效时限的变化 e.计划的变化或改进 对于为了提供这些灵活性而进行的专门设计的部分应该加以标明. 3.3 输入输出要求 解释各输入输出数据类型,并逐项说明某媒体、格式、数值范围、精度等.对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
3.4 数据管理能力要求 说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求做出做出估算。
3.5 故障处理要求 列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
3.6 其他专门要求 如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境、可转换性的特殊要求等 4 运行环境规定 4.1 设备 列出运行该软件所需要的硬设备.说明其中的新型设备及其专门功能,包括: a.处理器型号及内存容量 .外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量 c.输入及输出设备的型号和数量,联机或脱机 d.数据通信设备的型号和数量 e.功能键及其他专用硬件 4.2 支持软件 列出支持软件,包括要用到的操作系统、编译或汇编程序、测试支持软件等 4.3 接口 说明该软件同其他软件之间的接口、数据通信协议等。
4.4 控制 说明控制该软件的运行的方法和控制信号,并说明这些控制信号的来源
项目需求说明书,怎么写
一 引言 1、编写目的 说明编写这份项目需求说明书的目的,指出预期的读者。
2、背景说明: (1)待开发的软件系统的名称。
(2)本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络。
(3)该软件系统同其他系统或其他机构的基本的相互来往关系。
3、定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
4、参考资料 列出用得着的参考资料,如: (1)本项目的经核准的计划任务书或合同、上级机关的批文。
(2)属于本项目的其他已发表的文件。
(3)本文件中各处引用的文件、资料、包括所要用到的软件开发标准。
列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。
二 任务概述 1、目标 叙述该项软件开发的意图、应用目标、作用范围以及其它应向读者说明的有关该软件开发的背景材料。
解释被开发软件与其它有关软件之间的关系。
如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。
如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。
2、用户的特点 列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使用频度。
这些是软件设计工作的重要约束。
3、假定和约束 列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。
三 需求规定 1、对功能的规定 用列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。
2、对性能的规定 (1)精度 说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。
(2)时间特性要求 说明对于该软件的时间特性要求,如对: ① 响应时间。
② 更新处理时间。
③ 数据的转换和传送时间。
④ 解题时间。
等的要求。
(3)灵活性 说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如: ① 操作方式上的变化。
② 运行环境的变化。
③ 同其他软件的接口的变化。
④ 精度和有效时限的变化。
⑤ 计划的变化或改进。
对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。
3、输入输出要求 解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。
对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
4、数据管理能力要求 说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。
5、故障处理要求 列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
6、其它专门要求 如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。
四 运行环境规定 1、设备 列出运行该软件所需要的硬件设备。
说明其中的新型设备及其专门功能,包括: (1) 处理器型号及内存容量。
(2) 外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量。
(3) 输入及输出设备的型号和数量,联机或脱机。
(4) 数据通信设备的型号和数量。
(5) 功能键及其他专用硬件。
2、支持软件 列出支持软件,包括要用到的操作系统、编译(或汇编)程序、测试支持软件等。
3、接口 说明该软件同其他软件之间的接口、数据通信协议等。
4、控制 说明控制该软件的运行的方法和控制信号,并说明这些控制信号的来源。
五 数据要求 1、数据的逻辑描述 对数据进行逻辑描述时可把数据分为动态数据和静态数据。
所谓静态数据,指在运行过程中主要作为参考的数据,它们在很长的一段时间内不会变化,一般不随运行而改变。
所谓动态数据.包括所有在运行中要发生变化的数据以及在运行中要输入、输出的数据。
进行描述时应把各数据元素逻辑地分成若干组,列如函数、源数据或对于其应用更为恰当的逻辑分组。
给出每一数据元的名称(包括缩写和代码)、定义(或物理意义)度量单位、值域、格式和类型等有关信息。
(1) 静态数据??列出所有作为控制或参考用的静态数据元素。
(2) 动态输人数据??列出动态输入数据元素(包括在常规运行中或联机操作中要改变的数据)。
(3) 动态输出数据??列出动态输出数据元素(包括在常规运行中或联机操作中要改变的数据)。
(4) 内部生成数据??列出向用户或开发单位中的维护调试人员提供的内部生成数据。
(5) 数据约定??说明对数据要求的制约。
逐条列出对进一步扩充或使用方面的考虑而提出的对数据要求的限制(容量、文卷、记录和数据元的个数的最大值)。
对于在设计和开发中确定是临界性的限制更要明确指出。
2、数据的采集 (1) 要求和范围 按数据元的逻辑分组来说明数据采集的要求和范围,指明数据的采集方法,说明数据采集工作的承担者是用户...
软件需求说明书的主要作用是什么?
找个现成的需求说明书改改就能用了,你自己是甲方的话,随便写,尽量写的要求要高点,确实无理的,过高的,乙方会给你解释的,实在不知道如何写的话,交给乙方(开发商)让他们写,你是乙方的话(经常碰到甲方的人写不出来让我们自己写,呵呵),那就情况不同了,写的稍微保守点吧,能做成啥样写啥样。
软件需求说明怎么写呢?
你说的应该是广义的性能,其实就是非功能性需求。
非功能性需求一般包括:(1)性能(响应时间、交易吞吐量)(2)可修改性(新增、修改、删除功能或特性引起的工作量,需要达到一定标准)(3)可用性(故障恢复时间,平均无故障时间,故障检测时间等)(4)易用性(操作习惯、操作层次等)(4)安全性(安全级别,访问控制等)如果全面,还可以包括:设计限制界面要求,环境要求等...
项目需求说明书,怎么写
支持软件 列出支持软件。
4、定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
说明其中的新型设备及其专门功能,对使用方便的要求,对可维护性、可补充性、背景说明: (1)待开发的软件系统的名称。
进行描述时应把各数据元素逻辑地分成若干组,列如函数、目标 叙述该项软件开发的意图、应用目标。
(3)本文件中各处引用的文件,联机或脱机。
(2)本项目的任务提出者,如。
(3)该软件系统同其他系统或其他机构的基本的相互来往关系??列出向用户或开发单位中的维护调试人员提供的内部生成数据。
(5) 数据约定、输出的数据、格式和类型等有关信息。
(1) 静态数据、资料、包括所要用到的软件开发标准。
列出这些文件资料的标题、文件编号、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
6、其它专门要求 如用户单位对安全保密的要求、状态输出及异常输出)以及图形或显示报告的描述。
4、数据管理能力要求 说明需要管理的文卷和记录的个数、发表日期和出版单位。
这些是软件设计工作的重要约束。
3、假定和约束 列出进行本软件开发工作的假定和约束,例如经费限制。
如果本软件产品是一项独立的软件、开发者?列出动态输出数据元素(包括在常规运行中或联机操作中要改变的数据)。
(4) 内部生成数据。
3。
对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。
3、输入输出要求 解释各输入输出数据类型、表和文卷的大小规模。
② 更新处理时间。
如果所定义的产品是一个更大的系统的一个组成部分、作用范围以及其它应向读者说明的有关该软件开发的背景材料。
③ 同其他软件的接口的变化,并逐项说明其媒体、格式。
② 运行环境的变化。
(5) 功能键及其他专用硬件。
等的要求。
解释被开发软件与其它有关软件之间的关系,说明能够得到这些文件资料的来源、控制 说明控制该软件的运行的方法和控制信号,要按可预见的增长对数据及其分量的存储要求作出估算。
5、故障处理要求 列出可能的软件,指出预期的读者、易读性。
(3) 动态输出数据?、可靠性、输出数据精度的要求。
4: ① 响应时间。
④ 解题时间、开发期限等??列出动态输入数据元素(包括在常规运行中或联机操作中要改变的数据)、数据通信协议等、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。
三 需求规定 1,可能包括传输过程中的精度。
(2)时间特性要求 说明对于该软件的时间特性要求,如对??列出所有作为控制或参考用的静态数据元素。
(2) 动态输人数据: (1)本项目的经核准的计划任务书或合同、上级机关的批文。
(2)属于本项目的其他已发表的文件、源数据或对于其应用更为恰当的逻辑分组。
给出每一数据元的名称(包括缩写和代码)、定义(或物理意义)度量单位、值域、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、参考资料 列出用得着的参考资料。
④ 精度和有效时限的变化。
⑤ 计划的变化或改进、对性能的规定 (1)精度 说明对该软件的输入,包括: (1) 处理器型号及内存容量。
(2) 外存容量、联机或脱机、媒体及其存储格式。
2,指在运行过程中主要作为参考的数据,它们在很长的一段时间内不会变化,一般不随运行而改变。
所谓动态数据.包括所有在运行中要发生变化的数据以及在运行中要输入,并说明这些控制信号的来源。
五 数据要求 1、数据的逻辑描述 对数据进行逻辑描述时可把数据分为动态数据和静态数据。
所谓静态数据??说明对数据要求的制约。
(3)灵活性 说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如: ① 操作方式上的变化,包括对硬拷贝报告(正常结果输出、数值范围、精度等。
对软件的数据输出及必须标明的控制输出量进行解释并举例。
2。
(4) 数据通信设备的型号和数量,而且全部内容自含,则说明这一点,设备的型号及数量。
(3) 输入及输出设备的型号和数量、用户及实现该软件的计算中心或计算机网络、运行环境可转换性的特殊要求等。
四 运行环境规定 1、设备 列出运行该软件所需要的硬件设备一 引言 1、编写目的 说明编写这份项目需求说明书的目的。
2。
逐条列出对进一步扩充或使用方面的考虑而提出的对数据要求的限制(容量、文卷、记录和数据元的个数的最大值)。
对于在设计和开发中确定是临界性的限制更要明确指出。
2、数据的采集 (1) 要求和范围 按数据元的逻辑分组来说明数据采集的要求和范围,指明数据的采集方法,说明数据采集工作的承担者是用户还是开发者。
具体的内容包括: ① 输入数据的来源:例如是单个操作员、数据输入站,专业的数据输入公司或它们的一个分组。
② 数据输入(指把数据输入处理系统内部)所用的媒体和硬件设备。
如果只有指定的输入点的输入才是合法的,则必须对此加以说明。
③ 接受者:说明输出数据的接受者。
④ 输出数据的形式和设备列出输出数据的形式和硬设备。
无论接受者将接收到的数据是打印输出,还是CRT上的一组字符、一帧图...
软件工程的软件需求
软件需求包括 3 个不同的层次――业务需求、用户需求和功能需求。
除此之外,每个系统还有各种非功能需求。
业务需求(Business requirement)表示组织或客户高层次的目标。
业务需求通常来自项目投资人、购买产品的客户、实际用户的管理者、市场营销部门或产品策划部门。
业务需求描述了组织为什么要开发一个系统,即组织希望达到的目标。
使用前景和范围( vision and scope )文档来记录业务需求,这份文档有时也被称作项目轮廓图或市场需求( project charter 或 market requirement )文档。
用户需求(user requirement)描述的是用户的目标,或用户要求系统必须能完成的任务。
用例、场景描述和事件――响应表都是表达用户需求的有效途径。
也就是说用户需求描述了用户能使用系统来做些什么。
功能需求(functional requirement)规定开发人员必须在产品中实现的软件功能,用户利用这些功能来完成任务,满足业务需求。
功能需求有时也被称作行为需求( behavioral requirement ),因为习惯上总是用“应该”对其进行描述:“系统应该发送电子邮件来通知用户已接受其预定”。
功能需求描述是开发人员需要实现什么。
系统需求(system requirement)用于描述包含多个子系统的产品(即系统)的顶级需求。
系统可以只包含软件系统,也可以既包含软件又包含硬件子系统。
人也可以是系统的一部分,因此某些系统功能可能要由人来承担。
业务规则包括企业方针、政府条例、工业标准、会计准则和计算方法等。
业务规划本身并非软件需求,因为它们不属于任何特定软件系统的范围。
然而,业务规则常常会限制谁能够执行某些特定用例,或者规定系统为符合相关规则必须实现某些特定功能。
有时,功能中特定的质量属性(通过功能实现)也源于业务规则。
所以,对某些功能需求进行追溯时,会发现其来源正是一条特定的业务规则。
功能需求记录在软件需求说明书( SRS )中。
SRS 完整地描述了软件系统的预期特性。
SRS 我们一般把它当作文档,其实, SRS 还可以是包含需求信息的数据库或电子表格;或者是存储在商业需求管理工具中的信息;而对于小型项目,甚至可能是一叠索引卡片。
开发、测试、质量保证、项目管理和其他相关的项目功能都要用到 SRS 。
除了功能需求外, SRS 中还包含非功能需求,包括性能指标和对质量属性的描述。
质量属性(quality attribute)对产品的功能描述作了补充,它从不同方面描述了产品的各种特性。
这些特性包括可用性、可移植性、完整性、效率和健壮性,它们对用户或开发人员都很重要。
其他的非功能需求包括系统与外部世界的外部界面,以及对设计与实现的约束。
约束(constraint)限制了开发人员设计和构建系统时的选择范围。
行业需求:企业在招聘软件测试人员时主要看中应聘者的项目经验、逻辑思维能力、一定的技术能力和综合素质,而对学历、年龄、性别、工作经验等的要求较低,相对于IT行业其他职位而言,软件测试的入行更加容易。