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) 要求和范围
按数据元的逻辑分组来说明数据采集的要求和范围,指明数据的采集方法,说明数据采集工作的承担者是用户还是开发者。具体的内容包括:
① 输入数据的来源:例如是单个 *** 作员、数据输入站,专业的数据输入公司或它们的一个分组。
② 数据输入(指把数据输入处理系统内部)所用的媒体和硬件设备。如果只有指定的输入点的输入才是合法的,则必须对此加以说明。
③ 接受者:说明输出数据的接受者。
④ 输出数据的形式和设备列出输出数据的形式和硬设备。无论接受者将接收到的数据是打印输出,还是CRT上的一组字符、一帧图形,或一声警铃,或向开关线圈提供的一个电脉冲,或常用介质如磁盘、磁带、穿孔卡片等,均应具体说明。
⑤ 数据值的范围:给出每一个数据元的合法值的范围。
⑥ 量纲:给出数字的度量单位、增量的步长、零点的定标等。在数据是非数字量的情况下,要给出每一种合法值的形式和含意。
⑦ 更新和处理的频度:给出预定的对输入数据的更新和处理的频度。如果数据的输入是随机的,应给出更新处理的频度的平均值,或变化情况的某种其他度量。
(2) 输入的承担者
说明预定的对数据输入工作的承担者。如果输入数据同某一接口软件有关,还应说明该接口软件的来源。
(3) 预处理
对数据的采集和预处理过程提出专门的规定,包括适合应用的数据格式、预定的数据通信媒体和对输入的时间要求等。对于需经模拟转换或数字转换处理的数据量,要给出转换方法和转换因子等有关信息,以便软件系统使用这些数据。
(4) 影响
说明这些数据要求对于设备、软件、用户、开发单位所可能产生的影响,例如要求用户单位增设某个机构等。
需求工程过程中可能产生的文档有:
A、前景和范围文档
B、用例使用说明文档
C、需求规格说明文档
大部分场景下需求提出方和需求袜型承接方都存在不小的信息差,需求提出方常用的语句是“我需要做成这样”、“越快越好”肢漏、“怎么用你不用管,给我就行”、“这不是我想要的”、“我想要的其实是那样”。
一百种需求有一千种提法,但需求中的事项相差却无几。这里给出了一份需求文档模板,大家可以将其用在工作当中,作为不同人员之间的信息传递媒介。
要注意的是,需求和执行是双生相伴的,因此这里的下面这份参照文档与其说是需求文档,不如说是任务执行记录,因为它记录着这个任务从产生到执告饥猜行完毕的完整生命周期。
需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段包括:
业务需求——反映了组织机构或客户对系统、产品高层次的目标要求,通常在项目定义与范围文档中予以说明。
用户需求——描述了用户使用产品必须要完成的任务,这在使用实例或方案脚本中予以说明。
功态简神能需求——定义了开发人员必须实现的软件功能,帆亏使用咐纤户利用系统能够完成他们的任务,从而满足了业务需求。
非功能性的需求——描述了系统展现给用户的行为和执行的 *** 作等,它包括产品必须遵从的标准、规范和约束, *** 作界面的具体细节和构造上的限制。
需求分析报告——报告所说明的功能需求充分描述了软件系统所应具有的外部行为。“需求分析报告”在开发、测试、质量保证、项目管理以及相关项目功能中起着重要作用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)