软件工程 第四章_第1页
软件工程 第四章_第2页
软件工程 第四章_第3页
软件工程 第四章_第4页
软件工程 第四章_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四章第四章 需求分析基础需求分析基础 o软件需求软件需求 用户对目标软件系统在用户对目标软件系统在功能、行为、性能、设计功能、行为、性能、设计约束等方面的期望。约束等方面的期望。o软件需求分析阶段的任务,软件需求分析阶段的任务,通过对问题及环境的理解、通过对问题及环境的理解、分析,将用户需求精确化、分析,将用户需求精确化、完全化,最终形成需求规完全化,最终形成需求规格说明,描述系统信息、格说明,描述系统信息、功能和行为。功能和行为。 需求分析基础需求分析基础 主要内容主要内容o三个主要阶段:问题分析、需求描述、需求评审三个主要阶段:问题分析、需求描述、需求评审o技术和方法技术和方法 初步需求

2、获取技术初步需求获取技术 需求建模技术需求建模技术 快速原型技术快速原型技术 问题抽问题抽象、问题分解与多视点分析象、问题分解与多视点分析o例例 “家庭保安系统家庭保安系统” 展示部分方法的使用过程。展示部分方法的使用过程。o需求建模方法和需求建模方法和CASE工具的进一步研究工具的进一步研究 面向数据流的分析面向数据流的分析 面向数据的分析面向数据的分析 面向对象的分析面向对象的分析第四章第四章 需求分析基础需求分析基础软件需求的产品和过程软件需求的产品和过程软件需求分析产品软件需求分析产品q用户需求用户需求q系统需求系统需求q软件需求规格说明(软件设计描述)软件需求规格说明(软件设计描述)

3、需求规格说明是软件设计、实现、测试、维护的基础。需求规格说明是软件设计、实现、测试、维护的基础。第四章第四章 需求分析基础需求分析基础第四章第四章 需求分析基础需求分析基础用户需求、系统需求和软件设计描述用户需求、系统需求和软件设计描述用户需求用户需求用自然语言和图表描述用自然语言和图表描述说明系统必须提供哪些服务、系统运行要受哪些约束说明系统必须提供哪些服务、系统运行要受哪些约束系统需求系统需求详细说明系统将要提供的服务以及系统受到的约束详细说明系统将要提供的服务以及系统受到的约束精确的描述软件的功能精确的描述软件的功能系统买方和软件开发者签订合同的重要内容系统买方和软件开发者签订合同的重要

4、内容软件设计描述软件设计描述 在系统需求的基础上,加入更详细的内容,构成软件在系统需求的基础上,加入更详细的内容,构成软件设计活动的概要描述,是软件设计和实现的基础设计活动的概要描述,是软件设计和实现的基础第四章第四章 需求分析基础需求分析基础4.1 分析的任务与原则分析的任务与原则需求分析分为需求分析分为3个阶段:个阶段: 问题分析问题分析 需求描述需求描述 需求评审需求评审第四章第四章 需求分析基础需求分析基础1 问题分析问题分析o分析人员应了解问题及环境,应与用户合作清除用分析人员应了解问题及环境,应与用户合作清除用户需求的模糊性、岐义性和不一致性,并对相互冲户需求的模糊性、岐义性和不一

5、致性,并对相互冲突的需求进行折衷。突的需求进行折衷。o分析人员与用户合作对问题进行分析、综合,结合分析人员与用户合作对问题进行分析、综合,结合软件的特点及开发经验,寻求软件需求。软件的特点及开发经验,寻求软件需求。4.1分析的任务与原则分析的任务与原则问题分析问题分析 系统模型系统模型 为用户的问题及准备开发的软件建立模型,从为用户的问题及准备开发的软件建立模型,从不同的角度、不同的抽象级别精确地说明对问题的不同的角度、不同的抽象级别精确地说明对问题的理解、对目标软件的需求。理解、对目标软件的需求。4.1分析的任务与原则分析的任务与原则问题分析问题分析 系统模型系统模型o模型应帮助用户和分析人

6、员发现、排除用户需求不模型应帮助用户和分析人员发现、排除用户需求不一致,不合理的部分,挖掘潜在的用户需求。一致,不合理的部分,挖掘潜在的用户需求。o模型是分析人员根据问题创建的软件系统结构,包模型是分析人员根据问题创建的软件系统结构,包括与问题和环境相关的信息流、处理功能、用户界括与问题和环境相关的信息流、处理功能、用户界面、行为及设计约束。面、行为及设计约束。o模型是形成需求规格说明、进行软件设计的基础。模型是形成需求规格说明、进行软件设计的基础。o需求建模方法需求建模方法 面向数据流的分析方法、面向数据的分析方法、面向数据流的分析方法、面向数据的分析方法、面向对象的分析方法。面向对象的分析

7、方法。4.1分析的任务与原则分析的任务与原则2 需求描述需求描述任务任务o以需求模型为基础,考虑到软件问题的可解性,生以需求模型为基础,考虑到软件问题的可解性,生成需求规格说明和初步的用户手册。成需求规格说明和初步的用户手册。o需求规格说明包含对目标软件系统的外部行为的完需求规格说明包含对目标软件系统的外部行为的完整描述、需求验证标准以及用户在性能、质量、可整描述、需求验证标准以及用户在性能、质量、可维护性等方面的要求。维护性等方面的要求。o用户手册包括用户界面描述以及有关目标软件使用用户手册包括用户界面描述以及有关目标软件使用方法的初步构想。方法的初步构想。4.1分析的任务与原则分析的任务与

8、原则需求描述需求描述文档文档 o遵循规范,内容全面、结构清晰、措辞准确、格式遵循规范,内容全面、结构清晰、措辞准确、格式严谨。严谨。o将初步用户手册作为分析文档将初步用户手册作为分析文档,有助于分析人员从有助于分析人员从用户角度考虑软件需求,并鼓励用户尽早参予软件用户角度考虑软件需求,并鼓励用户尽早参予软件开发活动。开发活动。4.1分析的任务与原则分析的任务与原则3 需求评审需求评审o分析人员在用户和软件设计人员的配合下分析人员在用户和软件设计人员的配合下,对自己对自己生成的需求规格说明和初步的用户手册进行评审,生成的需求规格说明和初步的用户手册进行评审,确保软件需求的完全性、精确性和一致性,

9、并使用确保软件需求的完全性、精确性和一致性,并使用户和软件设计人员对需求规格说明及用户手册的理户和软件设计人员对需求规格说明及用户手册的理解达成一致。解达成一致。o需求规格说明得到用户和软件开发方的确认后,应需求规格说明得到用户和软件开发方的确认后,应成为用户方与软件开发方合同的一部分。成为用户方与软件开发方合同的一部分。4.1分析的任务与原则分析的任务与原则需求评审需求评审分析活动分析活动 对于大型软件项目,分析人员可以先对问题的对于大型软件项目,分析人员可以先对问题的某些子系统进行需求分析、描述与评审,子系统完某些子系统进行需求分析、描述与评审,子系统完成后,再对其它子系统进行分析,进而构

10、筑整个系成后,再对其它子系统进行分析,进而构筑整个系统的需求模型。统的需求模型。4.1分析的任务与原则分析的任务与原则4.2 初步需求获取技术初步需求获取技术o 访谈与会议访谈与会议q 深入调查研究深入调查研究q 开发原型开发原型第四章第四章 需求分析基础需求分析基础4.2.1 访谈与会议访谈与会议个别访谈或小组会议个别访谈或小组会议 分析人员应精心准备问题,通过用户对问题的回答,逐分析人员应精心准备问题,通过用户对问题的回答,逐步理解用户对目标软件的要求。步理解用户对目标软件的要求。 (1) 循序渐进循序渐进 首先关心一般性、整体性问题,然后再讨论细节问题。首先关心一般性、整体性问题,然后再

11、讨论细节问题。 (2)客观、公正客观、公正 不应限制用户在回答问题过程中自由发挥。不应限制用户在回答问题过程中自由发挥。 (3) 总结总结 问题汇总后应能反映软件或其子系统的全貌,能覆盖用问题汇总后应能反映软件或其子系统的全貌,能覆盖用户对目标软件或其子系统在功能、行为、性能诸方面的要户对目标软件或其子系统在功能、行为、性能诸方面的要求。求。 细节问题留待以后解决。细节问题留待以后解决。 4.2初步需求获取技术初步需求获取技术4.2.2 考考察用户软件或其子系统业务流程察用户软件或其子系统业务流程 调查研究调查研究 学习用户的有关业务知识,在用户帮助下了解用学习用户的有关业务知识,在用户帮助下

12、了解用户的软件或子系统业务流程,结合软件开发和应用户的软件或子系统业务流程,结合软件开发和应用的经验提出新的用户需求。的经验提出新的用户需求。4.2初步需求获取技术初步需求获取技术4.2.3 联合小组联合小组o建立软件开发方和用户方共同组成的联合小组,小建立软件开发方和用户方共同组成的联合小组,小组成员对分析负有相同的责任。组成员对分析负有相同的责任。o联合小组要制定自己的工作制度和计划,确定专门联合小组要制定自己的工作制度和计划,确定专门的记录员,另设专人负责会议的议程和资料的综合、的记录员,另设专人负责会议的议程和资料的综合、整理。整理。o选择易于理解、比较简洁、精确的表示机制作为描选择易

13、于理解、比较简洁、精确的表示机制作为描述语言,如辅以文字说明的流程图。述语言,如辅以文字说明的流程图。4.2初步需求获取技术初步需求获取技术4.2.4 例例 家庭保安系统家庭保安系统 问题描述:问题描述: 家庭保安市场正以每年家庭保安市场正以每年40%的速度增长。希望的速度增长。希望建立一种基于微处理器的家庭保安系统,它能够识建立一种基于微处理器的家庭保安系统,它能够识别异常事件并采取相应的防护措施。这些异常事件别异常事件并采取相应的防护措施。这些异常事件包括:非法侵入、火灾、水淹等。一旦异常情况被包括:非法侵入、火灾、水淹等。一旦异常情况被传感器探测出来,系统应自动通过电话向监控中心传感器探

14、测出来,系统应自动通过电话向监控中心报警。此外,应允许户主对系统行为进行程序控报警。此外,应允许户主对系统行为进行程序控制。制。 4.2初步需求获取技术初步需求获取技术家庭保安系统家庭保安系统 分析初期联合小组的工作程序分析初期联合小组的工作程序 联合小组首先制定工作制度:每次会议开始前必联合小组首先制定工作制度:每次会议开始前必须有确定的议程,参加者必须针对各项议程进行充须有确定的议程,参加者必须针对各项议程进行充分的准备,并用文字表示。分的准备,并用文字表示。4.2初步需求获取技术初步需求获取技术例例 家庭保安系统家庭保安系统 o经过会议讨论,明确问题的范围、问题与环境的关经过会议讨论,明

15、确问题的范围、问题与环境的关系,并就开发软件产品的必要性达成共识。系,并就开发软件产品的必要性达成共识。o小组负责人要求每位参加者列出问题及环境中的有小组负责人要求每位参加者列出问题及环境中的有关对象,对这些对象施行的操作以及对象间的相互关对象,对这些对象施行的操作以及对象间的相互作用。列出的操作和对象尽可能完全,如,控制面作用。列出的操作和对象尽可能完全,如,控制面板、电话机、监控中心、烟雾传感器、门窗监视器、板、电话机、监控中心、烟雾传感器、门窗监视器、警报器等对象,以及用户编程控制、电话拔号、报警报器等对象,以及用户编程控制、电话拔号、报警等操作。警等操作。4.2初步需求获取技术初步需求

16、获取技术例例 家庭保安系统家庭保安系统 o负责人应要求小组成员对接收传感器事件、用户编负责人应要求小组成员对接收传感器事件、用户编程控制、电话报警等操作进行更详细的描述,必要程控制、电话报警等操作进行更详细的描述,必要时可用流程图表示。时可用流程图表示。o用户可能提出一些条件,如造价不能超过用户可能提出一些条件,如造价不能超过3,000元,元,对传感器事件必须在对传感器事件必须在1秒内作出响应,事件必须按秒内作出响应,事件必须按优先级进行处理等。会后小组负责人对这些信息进优先级进行处理等。会后小组负责人对这些信息进行综合、整理,形成文档,该文档应能反映行综合、整理,形成文档,该文档应能反映“家

17、庭家庭保安系统保安系统”的全貌。的全貌。4.2初步需求获取技术初步需求获取技术例例 家庭保安系统家庭保安系统 o联合小组分成两个小组,分别处理用户编程控制和传感器联合小组分成两个小组,分别处理用户编程控制和传感器监测两个子系统。目的是对子系统的软件需求进行细化。监测两个子系统。目的是对子系统的软件需求进行细化。对出现的新对象、新操作、新约束应及时添加到相应的子对出现的新对象、新操作、新约束应及时添加到相应的子系统。系统。o确定子系统需求并形成文档确定子系统需求并形成文档o联合小组讨论子系统的集成及需求验证标准。子系统集成联合小组讨论子系统的集成及需求验证标准。子系统集成包括子系统接口的一致性检

18、查、系统功能和行为的完整性包括子系统接口的一致性检查、系统功能和行为的完整性检查。需求验证标准应该是可测试的,以便开发人员在代检查。需求验证标准应该是可测试的,以便开发人员在代码生成后能够通过测试结果向用户表明软件系统已完整地码生成后能够通过测试结果向用户表明软件系统已完整地实现了用户需求。实现了用户需求。o初步分析活动应形成结论性文档,该文档将作为后续分析初步分析活动应形成结论性文档,该文档将作为后续分析活动的基础。活动的基础。4.2初步需求获取技术初步需求获取技术例例 家庭保安系统家庭保安系统 初步分析生成的初步分析生成的“家庭保安系统家庭保安系统”部分需求文档部分需求文档 (不包括约束条

19、件和测试标准不包括约束条件和测试标准) o“家庭保安系统家庭保安系统”的软件允许用户在安装时进行系统配置,的软件允许用户在安装时进行系统配置,实施对传感器的监控并通过控制面板与用户进行信息交互。实施对传感器的监控并通过控制面板与用户进行信息交互。o配置操作配置操作(1)指定每一传感器的种类和编号;指定每一传感器的种类和编号;(2)设置开、关机密码;设置开、关机密码;(3)指定报警电话号码;指定报警电话号码;(4)指定报警延迟和电话重拔延迟时间指定报警延迟和电话重拔延迟时间(以秒为单位以秒为单位)。4.2初步需求获取技术初步需求获取技术例例 家庭保安系统家庭保安系统 o当软件系统接收到传感器发出

20、的数据后,判别是否当软件系统接收到传感器发出的数据后,判别是否出现异常事件。如果是,则在指定的延迟时间内拔出现异常事件。如果是,则在指定的延迟时间内拔报警电话号码,拔号操作将按照重拔延迟反复进行,报警电话号码,拔号操作将按照重拔延迟反复进行,直至电话接通。然后软件系统负责报告时间、地点直至电话接通。然后软件系统负责报告时间、地点和异常事件的性质。和异常事件的性质。o开机后软件系统负责显示当前工作状态,接收并处开机后软件系统负责显示当前工作状态,接收并处理用户指令。理用户指令。4.2初步需求获取技术初步需求获取技术4.3 需求建模需求建模建立软件模型是分析活动的关键。建立软件模型是分析活动的关键

21、。o目标软件系统的模型用来刻划系统所涉及的信息、目标软件系统的模型用来刻划系统所涉及的信息、处理功能及系统运行时的外部行为。处理功能及系统运行时的外部行为。o模型不应涉及软件实现细节,这样会分散分析人员模型不应涉及软件实现细节,这样会分散分析人员的注意力,限制软件设计人员的聪明才智。的注意力,限制软件设计人员的聪明才智。o分析人员应以简洁、准确、清晰的方式,系统地描分析人员应以简洁、准确、清晰的方式,系统地描述软件需求模型,如,选择图形符号表示信息流、述软件需求模型,如,选择图形符号表示信息流、处理功能及系统行为,利用受限的自然语言给出用处理功能及系统行为,利用受限的自然语言给出用户需求描述。

22、户需求描述。o为了处理大型问题,模型表示机制应具备良好的结为了处理大型问题,模型表示机制应具备良好的结构化能力。构化能力。第四章第四章 需求分析基础需求分析基础4.4 问题的抽象、分解与多视点分析问题的抽象、分解与多视点分析抽象抽象 关注一般问题的解决途径,以此指导特殊问题关注一般问题的解决途径,以此指导特殊问题的求解。的求解。o分析人员应该注意用户描述的抽象级别,统一规划分析人员应该注意用户描述的抽象级别,统一规划系统行为系统行为o避免不一致性,减少分析的工作量。避免不一致性,减少分析的工作量。第四章第四章 需求分析基础需求分析基础问题的抽象、分解与多视点分析问题的抽象、分解与多视点分析分解

23、分解 o 根据问题的规模和复杂性进行分解,并对子问题根据问题的规模和复杂性进行分解,并对子问题展开进一步的分析。展开进一步的分析。o逐级分解,直至子问题的规模降至合适程度。逐级分解,直至子问题的规模降至合适程度。o在问题分解过程中,要建立子问题之间的相互联系。在问题分解过程中,要建立子问题之间的相互联系。o必须遵循子问题内部紧藕合,子问题之间松藕合的必须遵循子问题内部紧藕合,子问题之间松藕合的原则。原则。4.4问题抽象、问题分解与多视点分析问题抽象、问题分解与多视点分析问题的抽象、分解与多视点分析问题的抽象、分解与多视点分析视点分解法视点分解法 在分析的初期,整体地把握一个大型问题的软在分析的

24、初期,整体地把握一个大型问题的软件需求是困难的。需要从各个角度分别对问题进行件需求是困难的。需要从各个角度分别对问题进行理解和分析,然后再综合,达到全面理解的目理解和分析,然后再综合,达到全面理解的目 的。的。需求分析视点需求分析视点 系统观点系统观点 用户观点用户观点 信息观点信息观点 功能观点功能观点 行为观点等。行为观点等。 整理、综合用户描述,应注意用户视点的变化,整理、综合用户描述,应注意用户视点的变化,避免遗漏。避免遗漏。4.4问题抽象、问题分解与多视点分析问题抽象、问题分解与多视点分析4 .5 支持需求分析的快速原型技术支持需求分析的快速原型技术o按照传统的软件开发方法,目标软件

25、要等到木已成舟才能按照传统的软件开发方法,目标软件要等到木已成舟才能交用户认可。交用户认可。o分析、设计及编码积累的各种问题,导致用户对目标软件分析、设计及编码积累的各种问题,导致用户对目标软件提出诸多修改,甚至全盘否决,造成人力、物力的巨大浪提出诸多修改,甚至全盘否决,造成人力、物力的巨大浪费。费。o软件开发早期,快速建立目标软件系统原型,让用户对原软件开发早期,快速建立目标软件系统原型,让用户对原型进行评估并提出意见。型进行评估并提出意见。o原型几经改进最终确定,它将进化成软件产品。原型几经改进最终确定,它将进化成软件产品。o设计和编码人员遵循原型确立的外部特征实现软件产品。设计和编码人员

26、遵循原型确立的外部特征实现软件产品。o如果软件产品含有大量人机交互、可视输出、或者涉及复如果软件产品含有大量人机交互、可视输出、或者涉及复杂的算法,应采用快速原型技术。杂的算法,应采用快速原型技术。第四章第四章 需求分析基础需求分析基础支持需求分析的快速原型技术支持需求分析的快速原型技术o分析阶段使用快速原型技术与问题本身的复杂度以分析阶段使用快速原型技术与问题本身的复杂度以及可用的开发工具、环境有关。及可用的开发工具、环境有关。o如果问题非常复杂,在当前工具、环境的支持下开如果问题非常复杂,在当前工具、环境的支持下开发可运行的原型需要投入太多人力或占用太多时间,发可运行的原型需要投入太多人力

27、或占用太多时间,那么可对某些子问题,尤其是用户界面,使用快速那么可对某些子问题,尤其是用户界面,使用快速原型技术进行部分分析。原型技术进行部分分析。o 某些软件项目,虽不能构造实际可运行的快速原某些软件项目,虽不能构造实际可运行的快速原型,但可以采用幻灯片演示等方法,向用户直观描型,但可以采用幻灯片演示等方法,向用户直观描述目标软件系统的外部行为。述目标软件系统的外部行为。4.5支持需求分析的快速原型技术支持需求分析的快速原型技术快速建造原型(步骤)快速建造原型(步骤)(1)利用需求分析技术、方法,生成简化的需求规格说明利用需求分析技术、方法,生成简化的需求规格说明(2)对简化的需求规格说明进

28、行检查、修订,生成设计规对简化的需求规格说明进行检查、修订,生成设计规格说明。为了快速生成原型格说明。为了快速生成原型,只关心软件的总体结构、只关心软件的总体结构、用户界面和数据设计,而不注重过程内部的控制流。用户界面和数据设计,而不注重过程内部的控制流。(3)在在快速原型工具或环境的帮助下,快速生成可运行的快速原型工具或环境的帮助下,快速生成可运行的软件原型并进行测试、改进。主要工具有:可重用软软件原型并进行测试、改进。主要工具有:可重用软部件库、用户界面自动生成器等。部件库、用户界面自动生成器等。4.5支持需求分析的快速原型技术支持需求分析的快速原型技术快速建造原型快速建造原型(4)将原型

29、提交用户评估并征求改进意见。将原型提交用户评估并征求改进意见。(5)迭代迭代上述过程,直到用户满意。上述过程,直到用户满意。 通过评审的原型应全面、准确地反映用户对目通过评审的原型应全面、准确地反映用户对目标软件在外部行为方面的需求,可以作为需求规标软件在外部行为方面的需求,可以作为需求规格说明的一部分并成为软件设计和编码的基础。格说明的一部分并成为软件设计和编码的基础。4.5支持需求分析的快速原型技术支持需求分析的快速原型技术4.6 需求规格说明与评审需求规格说明与评审o产生需求规格说明并进行评审。产生需求规格说明并进行评审。o需求规格说明应成为开发过程必须遵循的指导原则。需求规格说明应成为

30、开发过程必须遵循的指导原则。第四章第四章 需求分析基础需求分析基础4.6.1 需求规格说明需求规格说明目标目标(1) 用户通过需求规格说明可初步判定目标软件能否满用户通过需求规格说明可初步判定目标软件能否满足需求,设计人员将需求规格说明作为软件设计的足需求,设计人员将需求规格说明作为软件设计的基础。基础。(2)支持目标软件系统的确认,需求规格说明的各项需支持目标软件系统的确认,需求规格说明的各项需求应该是可测试的。求应该是可测试的。(3)控制系统进化过程,需求分析完成后,如果用户追控制系统进化过程,需求分析完成后,如果用户追加需求,开发人员再次进行需求分析,扩充需求规加需求,开发人员再次进行需

31、求分析,扩充需求规格说明,进行软件设计等。格说明,进行软件设计等。4.6需求规格说明与评审需求规格说明与评审需求规格说明需求规格说明内容内容o功能、行为需求功能、行为需求 描述系统的输入、输出及相互关系描述系统的输入、输出及相互关系o非行为需求非行为需求 描述软件系统工作时应具备的各种属性,如效率、描述软件系统工作时应具备的各种属性,如效率、可靠性、安全性、可维护性、可移植性等。可靠性、安全性、可维护性、可移植性等。 为使需求规格说明更加简洁,其它内容不应写为使需求规格说明更加简洁,其它内容不应写入,如人员、成本、进度、设计方案、质量控制等。入,如人员、成本、进度、设计方案、质量控制等。这些内

32、容单独形成文档。这些内容单独形成文档。4.6需求规格说明与评审需求规格说明与评审需求规格说明需求规格说明1 引言引言 1.1需求规格说明的目的需求规格说明的目的 1.2软件产品的作用范围软件产品的作用范围 1.3定义、同义词与缩写定义、同义词与缩写 1.4参考文献参考文献 1.5需求规格说明概览需求规格说明概览2 一般性描述一般性描述 2.1产品与其环境之间的关产品与其环境之间的关 2.2产品功能产品功能 2.3用户特征用户特征 2.4限制与约束限制与约束 2.5假设与前提条件假设与前提条件3 特殊需求特殊需求附录附录索引索引4.6需求规格说明与评审需求规格说明与评审需求规格说明需求规格说明

33、特殊需求描述特殊需求描述3特殊需求特殊需求 3.1功能或行为需求功能或行为需求 3.1.1功能或行为需求功能或行为需求1 3.1.1.1引言引言 3.1.1.2输入输入 3.1.1.3处理过程描述处理过程描述 3.1.1.4输出输出 3.1.2功能或行为需求功能或行为需求2 3.1.n功能或行为需求功能或行为需求n 3.2外部界面需求外部界面需求 3.2.1用户界面用户界面 3.2.2硬件界面硬件界面 3.2.3软件界面软件界面 3.3性能需求性能需求 3.4设计约束设计约束 3.4.1标准化约束标准化约束 3.4.2硬件约束硬件约束 3.5属性属性 3.5.1可用性可用性 3.5.2安全性安

34、全性 3.5.3可维护性可维护性 3.5.4可移植性可移植性 3.6其它需求其它需求 3.6.1数据库需求数据库需求 3.6.2用户操作需求用户操作需求 3.6.3工作场地需求工作场地需求4.6需求规格说明与评审需求规格说明与评审4.6.2 需求评审需求评审o需求规格说明进入设计阶段之前,必须进行评审。需求规格说明进入设计阶段之前,必须进行评审。如果发现错误或缺陷,应及时纠正或更改需求分如果发现错误或缺陷,应及时纠正或更改需求分析、模型,需求规格说明,并重新评审。析、模型,需求规格说明,并重新评审。 o衡量需求规格说明的标准衡量需求规格说明的标准 正确性正确性 无歧义性无歧义性 完全性完全性

35、可验证性可验证性 一致性一致性 可理解性可理解性 可修改性可修改性 可追踪性可追踪性4.6需求规格说明与评审需求规格说明与评审需求评审需求评审(1)正确性。正确性。 需求规格说明书的功能、行为、性能描述必须与需求规格说明书的功能、行为、性能描述必须与用户对目标软件产品的期望相吻合。用户对目标软件产品的期望相吻合。(2)无歧义性。无歧义性。 需求规格说明的任何语法单位只能有唯一的语义需求规格说明的任何语法单位只能有唯一的语义解释。确保无歧义性的一种有效措施是在需求规格解释。确保无歧义性的一种有效措施是在需求规格说明中使用标准化术语,并对术语的语义进行显式说明中使用标准化术语,并对术语的语义进行显

36、式的、统一解释。的、统一解释。4.6需求规格说明与评审需求规格说明与评审需求评审需求评审(3)完全性。完全性。 需求规格说明书不能遗漏任何用户需求。具体需求规格说明书不能遗漏任何用户需求。具体地说,目标软件产品的所有功能、行为、性能约束,地说,目标软件产品的所有功能、行为、性能约束,以及它在所有可能情况下的预期行为均应完整地包以及它在所有可能情况下的预期行为均应完整地包含在需求规格说明。含在需求规格说明。(4)可验证性。可验证性。 对于规格说明书中的任意需求,均应存在技术对于规格说明书中的任意需求,均应存在技术和经济上可行的手段进行验证和确认。和经济上可行的手段进行验证和确认。4.6需求规格说

37、明与评审需求规格说明与评审需求评审需求评审(5)一致性。一致性。 需求规格说明书的各部分之间不能相互矛盾。需求规格说明书的各部分之间不能相互矛盾。这些矛盾可以表现为术语使用方面的冲突,功能和这些矛盾可以表现为术语使用方面的冲突,功能和行为特征方面的冲突以及时序方面的前后不一致。行为特征方面的冲突以及时序方面的前后不一致。(6)可理解性。可理解性。 追求上述目标不应妨碍需求规格说明书对于用追求上述目标不应妨碍需求规格说明书对于用户、设计人员和测试人员的易理解性。特别是对于户、设计人员和测试人员的易理解性。特别是对于非计算机专业的用户而言,不宜在说明书中使用太非计算机专业的用户而言,不宜在说明书中

38、使用太多的专业化多的专业化 词汇。词汇。4.6需求规格说明与评审需求规格说明与评审需求评审需求评审(7)可修改性。可修改性。 需求规格说明的格式和组织方式应支持内容的增、需求规格说明的格式和组织方式应支持内容的增、删和修改。删和修改。(8)可追踪性。可追踪性。 需求规格说明的每项需求必须与用户的原始需求相需求规格说明的每项需求必须与用户的原始需求相对应,为后续开发和其它文档引用这些需求提供方对应,为后续开发和其它文档引用这些需求提供方便。便。4.6需求规格说明与评审需求规格说明与评审需求评审需求评审o需求评审采用会议形式,用户、分析人员和系统设需求评审采用会议形式,用户、分析人员和系统设计人员

39、共同参加。计人员共同参加。o分析人员介绍软件产品的总体目标,包括产品的主分析人员介绍软件产品的总体目标,包括产品的主要功能、与环境的交互行为,以及其它性能指标。要功能、与环境的交互行为,以及其它性能指标。o评估需求模型,讨论需求模型及需求规格说明是否评估需求模型,讨论需求模型及需求规格说明是否具备良好的属性,能否构成良好的软件设计基础。具备良好的属性,能否构成良好的软件设计基础。4.6需求规格说明与评审需求规格说明与评审需求评审需求评审o讨论软件求解的其它途径,对影响软件设计和软件讨论软件求解的其它途径,对影响软件设计和软件质量的因素进行折衷,决定需求规格说明采用的方质量的因素进行折衷,决定需

40、求规格说明采用的方案是否合理。案是否合理。o讨论软件的质量确认方法,形成用户和开发人员均讨论软件的质量确认方法,形成用户和开发人员均能接受的各项测试指标。能接受的各项测试指标。4.6需求规格说明与评审需求规格说明与评审小结小结o需求分析的主要任务是实现用户需求的一致化、需求分析的主要任务是实现用户需求的一致化、精确化和完全化。精确化和完全化。o需求分析活动可按照问题分析、需求描述及需求需求分析活动可按照问题分析、需求描述及需求评审三个子阶段逐步进行。评审三个子阶段逐步进行。o初始需求可用访谈、会议、考察用户工作流程的初始需求可用访谈、会议、考察用户工作流程的方式导出。方式导出。o问题分析阶段的

41、核心技术是问题抽象、问题分解问题分析阶段的核心技术是问题抽象、问题分解及需求建模。及需求建模。o使用快速原型可以让用户更多、更早地参与需求使用快速原型可以让用户更多、更早地参与需求分析过程。分析过程。第四章第四章 需求分析基础需求分析基础小结小结o在需求描述阶段生成的需求规格说明应遵循标准在需求描述阶段生成的需求规格说明应遵循标准的格式。问题分析阶段生成的需求模型构成需求的格式。问题分析阶段生成的需求模型构成需求规格说明的主体。规格说明的主体。o需求评审阶段,分析人员审查需求规格说明的标需求评审阶段,分析人员审查需求规格说明的标准:准: 正确性、正确性、 无歧义性、无歧义性、 完全性、完全性、

42、 可验证性、可验证性、 一致性、一致性、 可理解性、可理解性、 可修改性、可修改性、 可追踪性。可追踪性。第四章第四章 需求分析基础需求分析基础问题问题A图书馆管理图书馆管理 R.A.Kemmerer一个小型图书馆管理系统,需完成以下工作:一个小型图书馆管理系统,需完成以下工作:1借书、还书;借书、还书;2在图书馆中增加在图书馆中增加/删除一本书;删除一本书;3按照作者名或专业领域检索一批书;按照作者名或专业领域检索一批书;4找出被某位读者借出的一批书;找出被某位读者借出的一批书;5找出最近借走某本图书的读者。找出最近借走某本图书的读者。该系统有两类用户:图书管理员与普通读者。该系统有两类用户

43、:图书管理员与普通读者。功能功能4供普通读者使用。功能供普通读者使用。功能1、2、5供图书管理员使用。供图书管理员使用。系统必须满足条件:系统必须满足条件:1馆中所有未借出的书籍能够供读者随时借阅。馆中所有未借出的书籍能够供读者随时借阅。2在同一时刻,一本书不能既被借出,又被借阅。在同一时刻,一本书不能既被借出,又被借阅。3一个读者一次借出的书籍数目不能超过预定值。一个读者一次借出的书籍数目不能超过预定值。第四章第四章 需求分析基础需求分析基础问题问题B保温系统保温系统 S.White 如果主开关置于如果主开关置于“加热加热”状态,保温系统的控制器负责开关锅炉,状态,保温系统的控制器负责开关锅

44、炉,监视锅炉系统的燃油流率和燃烧状态,进而调节进入房间的热量流。当监视锅炉系统的燃油流率和燃烧状态,进而调节进入房间的热量流。当室内温度降至室内温度降至Tr2度以下,控制器启动锅炉。这里度以下,控制器启动锅炉。这里Tr是用户设定的理是用户设定的理想室温。想室温。锅炉启动过程:锅炉启动过程:1 控制器向锅炉的马达发信号。控制器向锅炉的马达发信号。2 制器监视马达速度。马达达到正常操作速度时,启动点火并打开油阀。制器监视马达速度。马达达到正常操作速度时,启动点火并打开油阀。3 控制器监视水温,一旦水温达到预定值时,它发信号打开水流循环阀。热控制器监视水温,一旦水温达到预定值时,它发信号打开水流循环

45、阀。热水开始在室内循环。水开始在室内循环。4 如果发生异常情况,燃油流率指示器和光感器向控制器发信号。此时控制如果发生异常情况,燃油流率指示器和光感器向控制器发信号。此时控制器发信号关闭系统。器发信号关闭系统。5 一旦室内温度达到一旦室内温度达到Tr+2度,控制器首先关闭油阀,延迟度,控制器首先关闭油阀,延迟5秒后关闭锅炉马秒后关闭锅炉马达。达。系统须满足条件系统须满足条件:1 锅炉停机后重启必须延迟锅炉停机后重启必须延迟5分钟。分钟。2 在主开关关闭或油阀关闭在主开关关闭或油阀关闭5秒内应指示锅炉停机。秒内应指示锅炉停机。第四章第四章 需求分析基础需求分析基础问题问题C字符串格式化字符串格式化 A Mili给定非负整数给定非负整数MAXPOS和包含空格与换行作为分隔符的字符集。和包含空格与换行作为分隔符的字符集。对字符串对字符串S,称两分隔符之间或分隔符到称两分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论