软件需求定义模板(软件需求定义模板)

软件需求规格说明(IEEE 830 标准),今天小编就来说说关于软件需求定义模板?下面更多详细答案一起来看看吧!

软件需求定义模板(软件需求定义模板)

软件需求定义模板

软件需求规格说明

(IEEE 830 标准)

目录

a. 引言

a. 1目的

a. 2文档约定

a. 3预期的读者和阅读建议

a. 4产品的范围

a. 5参考文献

b. 综合描述

b.1产品的前景

b.2产品的功能

b.3用户类和特征

b.4运行环境

b.5设计和实现上的限制

b.6假设和依赖

c. 外部接口需求

c. 1用户界面

c. 2硬件接口

c.3软件接口

c.4通信接口

d.系统特性

d.1说明和优先级

d.2激励/响应序列

d.3功能需求

e.其它非功能需求

e.1性能需求

e.2安全设施需求

e.3安全性需求

e.4软件质量标准属性

e.5业务规则

e.6用户文档

f.其它需求

附录A:词汇表

附录B:分析模型

附录C:待确定问题的列表

正文

a. 引言

引言提出了对软件需求规格说明的纵览,这有助于读者理解文档如何编写并且如何阅读和解释。

a. 1目的

对产品进行定义,在该文档中详尽说明了这个产品的软件需求,包括修正或发行版本号。如果这个软件需求规格说明只与整个系统的一部分有关系,那么只定义文档中说明的部分或子系统。

a. 2文档约定

描述编写文档时所采用的标准或排版约定,包括正文风格、提示区或重要符号。例如,说明了高层需求的优先级是否可以被其所有细化的需求继承,或者每个需求陈述是否都有其自身的优先级。

a. 3预期的读者和阅读建议

列举了软件需求规格说明所针对的不同读者,例如开发人员、项目经理、营销人员、用户、测试人员或文档的编写人员。描述了文档中剩余部分的内容及其组织结构。提出了最适合于每一类型读者阅读文档的建议。

a. 4产品的范围

提供了对指定的软件及其目的的简短描述,包括利益和目标。把软件与企业目标或业务策略相联系。

a. 5参考文献

列举了编写软件需求规格说明时所参考的资料或其它资源。这可能包括用户界面风格指导、合同、标准、系统需求规格说明、使用实例文档,或相关产品的软件需求规格说明。在这里应该给出详细的信息,包括标题名称、作者、版本号、日期、出版单位或资料来源,以方便读者查阅这些文献。

b. 综合描述

这一部分概述了正在定义的产品以及它所运行的环境、使用产品的用户和已制知的限制、假设和依赖。

b.1产品的前景

描述了软件需求规格说明中所定义的产品的背景和起源。说明了该产品是否是产品系列中的下一成员,是否是成熟产品所改进的下一产品、是否是现有应用程序的替代品,或者是否是一个新型的、自含型产品。如果软件需求规格说明定义了大系统的一个组成部分,那么就要说明这部分软件是怎样与整个系统相关的,并且要定义出两者之间的接口。

b.2产品的功能

概述了产品所具有的主要功能。其详细内容将在d中描述,所以在此只需要概略地总结,例如用列表的方法给出。很好地组织产品的功能,使每个读者都易于理解。用图形表示主要的需求分组以及它们之间的联系,例如数据流程图的顶层图或类图,都是有用的。

b.3用户类和特征

确定你觉得可能使用该产品的不同用户类并描述它们相关的特征。有一些需求可能只与特定的用户类相关。将该产品的重要用户类与那些不太重要的用户类区分开。

b.4运行环境

描述了软件的运行环境,包括硬件平台、操作系统和版本,还有其它的软件组件或与其共存的应用程序。

b.5设计和实现上的限制

确定影响开发人员自由选择的问题,并说明这些问题为什么成为一种限制。可能的限制包括如下内容:

  • 必须使用或者避免的特定技术、工具、编程语言和数据库。
  • 所需求的开发规范和标准(例如,如果由客户的公司负责软件维护,就必须定义转包者所使用的设计符号表示和编码标准)。
  • 企业策略、政府法规或工业标准。
  • 硬件限制,例如定时需求或存储器限制。
  • 数据转换格式标准。

b.6假设和依赖

列举出在对软件需求规格说明中影响需求陈述的假设因素(与已知因素相对立)。这可能包括你打算要用的商业组件或有关开发或运行环境的问题。你可能认为产品将符合一个特殊的用户界面设计约定,但是另一个SRS读者却可能不这样认为。如果这些假设不正确、不一致或被更改,就会使项目受到影响。

此外,确定项目对外部因素存在的依赖。例如,如果你打算把其它项目开发的组件集成到系统中,那么你就要依赖哪个项目按时提供正确的操作组件,如果这些依赖已经记录到其它文档(来历如项目计划)中了,那么在此就可以参考其它文档。

c. 外部接口需求

利用本节来确定可以保证新产品与外部组件正确连接的需求。关联图表示了高层抽象的外部接口。需要把对接口数据和控制组件的详细描述写入数据字典中。如果产品的不同部分有不同的外部接口,那么应把这些外部接口的详细需求并入到这一部分的实例中。

c. 1用户界面

陈述所需要的用户界面的软件组件。描述每个用户界面的逻辑特征。以下是可能要包括的一些特征:

  • 将要采用的图形用户界面(GUI)标准或产品系列的风格。
  • 屏幕布局或解决方案的限制。
  • 将出现在每个屏幕的标准按钮、功能或导航链接(例如一个帮助按钮)。
  • 快捷键。
  • 错误信息显示标准。

对于用户界面的细节,例如特定对话的布局,应该写入一个独立的用户界面规格说明中,而不能写入软件需求规格说明中。

c. 2硬件接口

描述系统中软件和硬件每一接口的特征。这种描述可能包括支持的硬件类型、软硬件之间的交流的数据和控制信息的性质以及使用的通信协议。

c.3软件接口

描述该产品与其他外部组件(由名字和版本识别)的连接,包括数据库、操作系统、工具、库和集成的商业组件,明确并描述在软件组件之间交换数据或消息的目的,描述所需要的服务以及内部组件通令的性质,确定将在组件之间共享的数据,如果必须用一种特殊的方法来实现数据共享机制,例如在多任务操作系统中的一个全局数据区,那么就必须把它定义为一种实现上的限制。

c.4通信接口

描述与产品所使用的通信功能相关的,包括电子、Web浏览器、网络通信标准或协议及电子表格等等。定义了相关的消息格式。规定通信安全或加密问题、数据传输速率和同步通信机制。

d.系统特性

功能是根据系统特性即产品所提供的主要服务来组织的。你可能更喜欢通过使用实例、运行模式、用户类、对象类或功能等级来组织这部分内容(IEEE1998)。你还可以使用这些元素的组合。总而言之,你必须选择一种使读者易二理解预期产品的组织方案。

仅用简短的语句说明特性的名称,例如“4.1拼写检查和拼写字典管理”。无论你想说明何种特性,阐述每种特性时都将重述从d.1-d.3这三步系统特性。

d.1说明和优先级

提出了对该系统特性的简短说明并指出该特性的优先级是高、中,还是低。或者你还可以包括对特定优先级部分的评价,例如利益、损失、费用和风险,其相对优先等级可以从1(低)到9(高)。

d.2激励/响应序列

列出输入激励(用户动作、来自外部设备的信号或其它触发器)和定义这一特性行为的系统响应序列。就像在第8章讲座的那样,这些序列将与使用实例相关的对话元素相对应。

d.3功能需求

列出与该特性相关的详细功能。这些是必须提交给用户的软件功能,使用户可以使用所提供的特性服务或者使用所指定的使用实例招待任务。描述产品如何响应可预知的出错条件或者非法输入或动作。就像本章开头所描述的那样,你必须唯一的标识每个需求。

e.其它非功能需求

这部分列举出了所有非功能需求,而不是外部接口需求和限制。

e.1性能需求

阐述了不同的应用领域对产品性能的需求,并解释它们的原理以帮助开发人员做出合理的设计选择。确定相互合作的用户数或者所支持的操作、响应时间以及与实时系统的时间关系。你还可以在这里定义容量需求,例如存储器和磁盘容量的需求或者存储在数据库中表的最大行数。尽可能详细地确定性能需求。可能需要针对每个功能需求或特性分别陈述其性能需求,而不是把它们都集中在一起陈述。例如,“在运行微软Windows 2000的450MhzPentium II的计算机上,当系统至少有50%的空闲资源时,95%的目录数据库查询必须在两秒内完成”

e.2安全设施需求

详尽陈述与产品使用过程中可能发生的损失、破坏或危害相关的需求。定义必须采取的安全保护或动作,还有那些预防的潜在的危险动作。明确产品必须遵从的安全标准、策略或规则。一个安全设施需求的范例如下:“如果油箱的压力超过了规定的最大压力的95%,那么必须在1秒种内终止操作”。

e.3安全性需求

详尽陈述与系统安全性、完整性或与私人问题相关的需求,这些问题将会影响到产品的使用和产品所创建或使用的数据的保护。定义用户身份确认或授权需求。明确产品必须满足的安全性或保密性策略。你可能更喜欢通过称为完整性的质量属性来阐述这些需求。一个软件系统的安全需求的范例如下:“每个用户在第一次登录后,必须更改最初登录密码。最初的登录密码不能重用。”

e.4软件质量标准属性

详尽陈述与客户或开发人员至关重要的其产品质量特性。这些特性必须是确定、定量的并在可能时是可验证的。至少应指明不同属性的相对侧重点,例如易用程度优于易学程度,或者可移植优于有效性。

e.5业务规则

列举出有关产品的所有操作规则,例如什么人在特定环境下可以进行何种操作。这些本身不是功能需求,但它们可以暗示某些功能需求执行这些规则。一个业务规则的范例如下:“只有持有管理员密码的用户才能执行$100.00或更大额的退款操作。“

e.6用户文档

列举出将与软件一同发行的用户文档部分,例如,用户手册、在线帮助和教程。明确所有已知的用户文档的交付格式和标准。

f.其它需求

定义在软件需求规格说明的其它部分未出现的需求,例如国际化需求或法律上的需求。你还可以增加有关操作、管理和维护部分来完善产品安装、配置、启动和关闭、修复和容错,以及登录和监控操作等方面的需求。在模板中加入与你的项目相关的新部分。如果你不需要增加其它需求,就省略这一部分。

附录A:词汇表

定义所有必要的术语,以便读者可以正确地解释软件需求说明,包括词头和缩写。你可能希望为整个公司创建一张跨越多项项目的词汇表,并且只包括特定于单一项目的软件需求规格说明中的术语。

附录B:分析模型

这个可选部分包括或涉及到相关的分析模型的位置,例如数据流程图、类图、状态转换图或实体-关系图。

附录C:待确定问题的列表

编辑一张在软件需求规格说明中待确定问题的列表,其中每一表项都是编上号的,以便于跟踪调查。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页