版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、20130206K,第5章软件需求规格说明,周立新博士,北京大学软件与微电子学院,20130206K,课程大纲,软件需求工程的基本理论和概念,过程软件需求获取,软件需求分析,软件需求规格说明,软件需求验证,软件需求管理,软件需求实现,软件需求工程新进展,软件需求开发和需求管理工具,20130206K,执行摘要,需求规格说明技术,基本方法需求规格说明模板数据字典实例分析,20130206K,软件需求规格说明,软件需求规格说明它精确地描述了软件系统必须提供的功能和性能以及它应该考虑的约束。软件需求规范不仅是系统测试和用户文档的基础,也是所有子系列项目的规划、设计和编码的基础。它应该尽可能完整地描述
2、系统的预期外部行为和用户视觉行为。除了设计和实现的限制,软件需求规范不应该包括设计、构建、测试或项目管理的细节。20130206K,编写软件需求规格说明的方法,有三种编写软件需求规格说明的方法:编写具有良好结构和自然语言的文本文档。建立图形模型,它可以描述转换过程、系统状态及其变化、数据关系、逻辑流或对象类及其关系。编写形式规范,它可以通过使用数学上精确的形式逻辑语言来定义需求。20130206K,为了使用软件需求规范,客户和营销部门依靠它来了解他们可以提供的产品。项目经理根据软件需求规范中描述的产品制定计划并预测进度、工作量和资源。软件开发团队依靠它来理解他们将要开发的产品。测试团队使用软件
3、需求规范中的产品行为描述来制定测试计划、测试用例和测试程序。软件维护和支持人员知道产品的一部分根据SRS做什么。20130206K,为了使用软件需求规范,产品发布团队根据SRS和用户界面设计准备客户文档,如用户手册和帮助屏幕。培训师根据员工代表制度和用户文件准备培训材料。如果任何期望的功能性或非功能性需求没有被写入软件需求规范,它将不会成为协议的一部分,也不会出现在产品中。所有参与者必须根据已通过评审的要求安排他们的工作,以避免不必要的返工和误解。20130206K,可读性建议,章节、小节和个别要求的编号必须一致。在右边留下一个文本注释区。允许无限制地使用空间。正确使用各种视觉强调标记(例如,
4、粗体、下划线、斜体和其他不同的字体)。创建目录表和索引表可以帮助读者找到他们需要的信息。给所有的图纸和表格分配编号和识别号,并用数字来表示。使用字处理程序中的交叉引用功能来查找文档中的其他项目或位置,而不是通过页码或章节号。20130206K,确定要求。为了满足软件需求规范中规定的可追溯性和可修改性的质量标准,每个软件需求必须被唯一地确定。这允许您在变更请求、修改历史、交叉引用或需求的可跟踪矩阵中查找特定需求。因为使用单个项目列表来实现这个目标是不够的,我们将描述几种不同的需求识别方法,并阐明它们的优缺点。你可以选择最适合你的方法。20130206K,识别需求,1)序列号,2)分级编码,3)分
5、级文本标签,20130206K,处理不完整,有时,您会觉得缺少一些关于特定需求的信息。在解决这种不确定性之前,可能有必要与客户进行讨论。检查与另一个系统的接口或定义另一个要求。使用“待定”(TBD)符号作为标准指标来强调通过这种方式,您可以找到软件需求规范中需要澄清的部分。记录谁将解决哪个问题,如何以及何时解决。给每个TBD编号,并创建一个TBD列表,这有助于轻松跟踪每个项目。20130206K,用户界面和软件要求的规范。将用户界面的设计结合到软件需求的规范中既有优点也有缺点。从负面来看,屏幕图像和用户界面机制是解决方案(设计)的描述,而不是需求。如果你能在完成用户界面的设计后确定软件需求的规
6、格,需求开发的过程将需要很长时间。从积极的一面来看,探索潜在的用户界面将帮助您细化您的需求,并使用户和开发人员的用户系统交互更加真实。用户界面的演示也有助于项目计划的制定和预测。20130206K,软件需求规格模板,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.1用户界面C.2硬件界面C.3软件界面C.4通信界面, d .系统特性d.1描述和优先级d.2激励响应序列d.3功能性要求e .其他非功能性要求e.1性能要求e.2安全设施要求e.
7、3安全要求e.4软件质量属性e.5业务规则e.6用户文档f .其他要求附录A:术语表附录B:分析模型附录C:待确定的问题列表,20130206K,需求规范模板-简介,简介提供了软件需求规范的概述,这有助于读者理解如何编写文档以及如何阅读和解释它们答:1目的为了定义本产品,本文档中详细描述了本产品的软件要求,包括版本号。如果此软件需求规格仅与整个系统的一部分相关,则仅定义文档中描述的部分或子系统。a2文档惯例描述了编写文档时采用的标准或排版惯例,包括文本样式、提示区域或重要符号。像这样的列指示高级需求的优先级是否可以被它的所有详细需求继承,或者每个需求语句是否有它自己的优先级。3预期读者和阅读建
8、议列出了软件需求规格所针对的不同读者,如开发人员、项目经理、营销人员、用户、测试人员或文档作者。描述文档其余部分的内容和组织结构。提出了最适合各类读者阅读的建议。A. 4产品范围提供了指定软件及其目的的简要描述,包括益处和目标。将软件与公司目标或商业战略联系起来。您可以参考项目视图和范围文档,而不是在这里复制它们的内容。a5参考文献列出了编译软件需求规范时的参考资料或其他资源。这可能包括用户界面风格指南、合同、标准、系统需求规范、用例文档或相关产品的软件需求规范。此处应提供详细信息,包括标题、作者、版本号、日期、出版公司或数据源,以便读者查阅这些文档。20130206K,需求规格模板-全面描述
9、,这部分总结了正在定义的产品、其运行环境、使用该产品的用户以及已知的限制、假设和依赖关系。B.1产品前景描述了软件需求规范中定义的产品的背景和来源。B.2产品功能:产品主要功能概述。它的细节将在D中描述,所以这里只需要简单总结一下,例如,它是在一个列表中给出的。20130206K,需求规格模板-全面描述,b.3用户类别和特性确定您认为可能使用产品的不同用户类别,并描述它们的相关特性。B.4操作环境描述软件的操作环境,包括硬件平台、操作系统和版本,以及与之共存的其他软件组件或应用程序。B.5设计和实现限制确定影响开发人员自由选择的问题,并解释为什么这些问题成为限制。B.6假设和依赖性列出了影响软
10、件需求规范中需求陈述的假设因素(相对于已知因素)。20130206K,需求规格模板-外部接口需求,接口数据和控制组件的详细描述需要写入数据字典。如果产品的不同部分有不同的外部接口,这些外部接口的详细要求应包含在本部分的示例中。C.1用户界面声明用户界面所需的软件组件。描述每个用户界面的逻辑特征。C.2硬件接口描述了系统中各个软硬件接口的特点。C.3软件接口描述了产品和其他外部组件(通过名称和版本标识)之间的连接,包括数据库、操作系统、工具和集成的商业组件。C.4通信接口描述了产品使用的通信功能,包括电子邮件、网络浏览器、网络通信标准或协议、电子表格等。20130206K,需求规范模板-系统特性
11、,d.1描述和优先级提出系统特性的简要描述,并指出特性的优先级是高、中还是低。或者,您也可以包括对特定优先级部分的评估,例如收益、损失、费用和风险,它们的相对优先级可以从1(低)到9(高)不等。D.2激励/响应序列列出了输入激励(用户动作、来自外部设备或其他触发器的信号)和定义该特征行为的系统响应序列。D.3功能要求列出了与该功能相关的详细功能。20130206K,需求规格模板-其他非功能性需求,列出所有非功能性需求,但不包括外部接口需求和限制。性能要求阐述了不同应用领域对产品性能的要求,并解释了它们的原理,以帮助开发人员做出合理的设计选择。E.2安全设施要求应详细说明与产品使用过程中可能发生
12、的损失、损坏或危险相关的要求。E.3安全要求详细说明与系统安全、完整性或个人问题相关的要求,这些要求将影响产品的使用以及对产品创建或使用的数据的保护。20130206K,需求规格模板-其他非功能性需求,e.4软件质量标准属性详细说明了对客户或开发人员非常重要的产品质量特征。E.5业务规则列出了所有与产品相关的操作规则,例如,谁可以在特定的环境中执行何种操作。E.6用户文档列出了将随软件发布的用户文档部分,如用户手册、在线帮助和教程。定义所有已知用户文档的交付格式和标准。20130206K,需求规范模板-其他需求,它定义了软件需求规范的其他部分没有出现的需求,例如国际需求或法律需求。您还可以添加
13、操作、管理和维护,以提高产品安装、配置、启动和关闭、修复和容错以及登录和监控操作的要求。将与项目相关的新零件添加到模板中。如果您不需要添加其他要求,请省略这一部分。20130206K,需求规范模板-附录,附录A:术语表定义了所有必要的术语,以便读者能够正确解释软件需求规范,包括前缀和缩写。您可能希望为整个公司创建一个跨多个项目的词汇表,并且只在软件需求规范中包含特定于单个项目的术语。附录B:分析模型的这一可选部分包括或涉及相关分析模型的位置,如数据流图、类图、状态转换图或实体关系图。附录C:待确定问题列表编辑软件要求规范中待确定问题的列表,其中每个表项都有编号,以便于遵循,20130206K,
14、数据字典(1/3),这是一种半形式化工具,用于描述结构化分析过程中定义的对象的内容。下面是这个重要建模工具的定义:数据字典是一个与系统相关的所有数据元素的组织列表,包含这些数据元素的精确和严格的定义,以便用户和系统分析师对输入、输出、存储的组件甚至中间计算结果有一个共同的理解。简而言之,数据字典是描述数据和系统中使用的所有数据元素的定义的信息的集合。20130206K,数据字典(2/3),目前,数据字典几乎总是作为“结构化分析和设计工具”(CASE工具)的一部分来实现。虽然不同工具中数据字典的形式不同,但大多数数据字典包含以下信息:名称数据、控制项、数据存储或外部实体的主名称。别名第一项中对象
15、的其他名称。使用数据或控制项的进程列表,以及如何使用这些对象(例如,作为输入、输出、数据存储和外部实体)。内容描述描述数据或控制项内容的符号。补充信息关于数据类型、预设值、限制等的其他信息。20130206K,数据字典(3/3),由数据元素组成的数据只有三种基本类型:顺序,即以确定的顺序连接两个或多个组件。选择就是从两个或多个可能的元素中选择一个。重复意味着零次或多次重复指定的组件。因此,数据字典中的任何条目都可以使用上述三个关系运算符来定义。20130206K,在需求改进前后的示例中,“产品必须在固定的时间间隔内提供状态消息,并且每个时间间隔不得少于60秒。”答:后台任务流程启动后,消息必须每60 (10)秒更新一次,并保持持续可见。如果后台任务流程处理正常,后台任务经理(BTM)必须显示后台任务流程的完成百分比。当后台任务完成时,后台任务经理(BTM)必须显示“已完成”消息。如果后台任务停止执行,后台任务管理器(BTM)必须显示一条错误消息。20130206K,需求示例改进前后,“产品必须即时在显示和隐藏非打印字符之间切换”“编辑文档时,用户可以通过激活特定的触发机制在显示和隐藏所有HTML标签之间切换”“如果可能,输入的商品编号应根据主商品编号列表在线确认。”“系统必须根据在线
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 班组安全检查标准培训课件
- 《机械制图》-10.1-1 装配图的作用和组成
- 安全室工作职责培训课件
- 2025年教育展会参展指南
- 培训课件:能源期货风险管理实践
- 2026年高考数学全国一卷模拟冲刺试卷试题(含答案详解)
- 安环技术科安全职责培训课件
- 货款分期协议书
- 货车外债协议书
- 2025年药品销售管理制度培训
- 2026云南楚雄州武定县事业单位选调37人备考题库及答案详解(真题汇编)
- 医疗机构防灾减灾课件
- 高中政治必修+选必核心答题术语(简化版)
- 经典酒店设计案例分析
- (2026春新版)北师大版二年级数学下册全册教学设计
- 2026年高中历史学业水平考试知识点归纳总结(复习必背)
- 家政培训婴幼儿早教课件
- 22G101 混凝土结构施工图 平面整体表示方法制图规则和构造详图(现浇混凝土框架、剪力墙、梁、板)
- 2026年高考作文备考训练之题目解析及范文:人们常说凡事要“尽我所能”也要“敬我不能”
- 七年级数学下册知识点(人教版)
- 九江市机械技工学校教师招聘考试题库及答案解析
评论
0/150
提交评论