软件工程 第3章需求分析全解课件.ppt
《软件工程 第3章需求分析全解课件.ppt》由会员分享,可在线阅读,更多相关《软件工程 第3章需求分析全解课件.ppt(102页珍藏版)》请在三一办公上搜索。
1、软件工程与软件开发工具,第3章 需求分析,3.1需求分析概述3.2数据流图 3.3数据字典 3.4加工逻辑描述工具 3.5结构化分析方法3.6复审 3.7需求分析人员,3.1软件需求分析概述,3.1.1软件需求分析的任务通过对要解决的问题、用户的要求及其目标环境的研究、分析和综合,建立抽象级的分析模型准确地、完整地体现用户的功能和性能及其它要求,规范地通过“软件需求规格说明书” 表达出来。,3.1.2 需求类型,1. 按内容分类软件需求代表系统的综合要求,包括以下几种类型:(1) 系统功能需求系统功能需求指根据系统所能实现的功能要求,对于每一类功能或者有时对于每一个功能,需要弄清输入、加工和输
2、出等需求。(2) 系统性能需求按照系统的性能要求分类。例如联机系统的响应时间、系统需要的存储容量、后援存储器、重新启动、安全性和可靠性等方面的要求。,3.1.2 需求类型(2),(3) 系统运行需求这类要求集中表现为对系统运行时所处的环境、使用的资源、安全保密和用户界面的要求。如支持系统运行的硬件和软件是什么,采取哪种数据库管理系统,需要什么样的外存储器和数据通信接口。 (4) 未来可能出现的问题就是把不属于当前系统开发范围的问题都明确地列出来,因为将来很可能会提出这些问题。这些问题主要是为了系统将来的扩充和修改做准备,当以后需要时就可以很容易地进行扩展和修改了。,3.1.2 需求类型(3),
3、2. 按用户的期望分类(1) 正常需求用户陈述的针对系统的目标。(2) 期望需求隐式的需求,可能由于是非常基础的而用户没有显示的陈述,如人机交互的容易性、整体的操作正确性和可靠性,以及软件安装的容易性。(3) 兴奋需求在用户的期望范围之外,如果实现将令人愉快和出乎意料。,3.1.2 需求类型(4),3. 按必要性分类(1) 强制的需求是指除非软件与这些需求一致,则该软件是不可接受的 (2) 希望的需求是指这些需求将增进软件产品功能,但是如果缺乏的话也不是不可接受 (3) 任选的需求是指这个功能可有可无,3.1.3 需求特性,(1) 正确性需求规格说明书中的功能、行为、性能描述必须与用户对目标软
4、件产品的期望相吻合。(2) 无歧义性对于用户、分析人员、设计人员和测试人员而言,需求规格说明书中的任何语法单位只能有唯一的语义解释。确保无歧义性的一种有效措施是在需求规格说明书中使用标准化术语,并对术语的语义进行显式的、统一的解释。(3) 完整性需求规格说明书不能遗漏任何用户需求,具体地说,目标软件产品的所有功能、行为、行为约束以及它在所有可能情况下的预期行为,均应完整地包含在需求规格说明书中。(4) 可验证性对于规格说明书中的每一个需求,均应存在技术和经济上可行的手段进行验证和确认。,3.1.3 需求特性(2),(5) 一致性需求规格说明书的各部分之间不能相互矛盾。这些矛盾可以表现为术语使用
5、方面的冲突,功能和行为方面的冲突,以及时序方面的前后不一致。(6) 可理解性追求上述目标不应妨碍需求规格说明书对于用户、设计人员和测试人员的易理解性。特别是对于非计算机专业的用户而言,不宜在说明书中使用太多的专业化词汇。(7) 可修改性需求规格说明书的格式和组织方式应保证能够比较容易地接纳后续的增删和修改,并使修改后的说明书能够较好地保持其他各项属性。(8) 可追踪性需求规格说明书必须将分析后获得的每项需求与用户的原始需求项清晰地联系起来,并为后续开发和其他文档引用这些需求项提供便利。,关于需求分析,如何看待需求,理解需求和功能的区别 需求是需要分析的 需求一般不专一,是会变的 (要注意应变)
6、 (1)积极的沟通。及时了解变化,并进行变更控制管理。 (2)在系统的架构设计上,为变化做准备。面向对象也好、面向服务也好、三层也好、四层也好,我们为什么把代码分开层次,为什么提供那么多抽象的接口?都是为了应对变化,为了我们在这个需求像云彩一样变化的环境中能够适应。保持沟通渠道的畅通,需求分析的一般性技术,为了克服困难,更有效地开展需求分析工作,软件系统分析人员必须掌握一些基本的需求分析技术,主要包括: 初步需求获取技术; 需求建模技术; 快速原型技术; 问题的分解与抽象; 多视点分析技术等。,初步需求获取技术,原因:在分析阶段的初期,由于分析人员和用户的共同知识领域可能不多,致使分析人员对问
7、题往往知之不多,而用户对目标软件的要求及对要求的描述常常是零乱而模糊的,从而会造成相互交流和相互理解上的困难。为了克服困难,获取初步需求,可以采用如下的技术手段: 访谈与会议; 观察用户工作流程; 分析人员和用户组成联合小组。,1访谈与会议,分析人员采用个别访谈或小组会议的形式与用户进行初步交流。在访谈和会议之前,分析人员根据对问题的初步描述精心准备一系列问题,通过用户对问题的回答或互相商讨来逐步理解用户的需求。准备问题的原则有:首先应搞清一般性、整体性问题,然后再涉及细节问题。在组织问题时要尽量做到客观、公证,不应限制用户的自由发挥。所提问题汇总后应能反映应用问题及其子问题的全貌、并且不要过
8、分详细。,2观察用户工作流程,通过实际观察用户的手工操作过程来提取新系统的初步用户需求。,第一手资料软件开发和应用的经验,发现不合理的用户需求、提出用户还没有意识到的潜在的但却很有价值的用户需求,获得用户满意的分析结果,观察手工操作过程,3用户和开发人员共同组成联合小组,目的:为加强信息沟通、减少误解和避免产生遗漏、充分调动用户的积极性。方法:建立由开发方和用户方共同组成的联合小组。联合小组成员:双方的分析人员 专门的记录员 负责会议议程的人员 资料员 另外:制定小组的规章制度和计划,选定一种易于理解、简洁、精确的表示机制作为双方的共同语言,比如采用带文字说明的流程图等。,【例】这里以“家庭保
9、安系统”为例,简要说明初步需求的获取过程。假设用户的原始需求描述如下:,根据家庭保安市场的增长趋势,我们希望建立一种基于微处理器的家庭保安系统,它能够识别异常事件并采取相应的报警措施。这些异常事件有:非法进入、火灾、水淹,等等。当传感器一旦探测出相应的异常事件时,系统应自动用电话向监控中心报警。此外,系统应允许户主对其行为实施程序式控制。,【例】,为进行初步的需求分析,这里采用开发方和用户方组成联合小组的方法。为此,联合小组应制定工作制度:每次会议开始前必须有确定的议程,小组成员必须针对议程进行充分准备并应形成文字。联合小组会议首先应明确问题的范围、问题与环境的关系,并就开发软件产品的必要性达
10、成共识。小组负责人要求每位参加者根据负责的范围列出应用问题及环境中有关的对象、对象的操作及对象间的关系。 如:市场营销人员列出控制面板、电话机、监控中心等对象和用户编程控制、电话拨号、报警等操作; 负责传感器的用户可能列举烟雾传感器、门窗监视器、警报器等对象。,【例】,将对这些列举的对象和操作进行更详细的讨论和描述,比如,详细地描述接收传感器事件、用户编程控制、电话报警等操作等。用户可能提出一些约束条件。比如,造价不应超过3000元,对传感器事件的响应时间不得超过1秒,事件必须按优先级顺序进行处理等等。小组负责人应对这些信息加以整理并形成文档,该文档应能反映“家庭保安系统”的全貌。,【例】,根
11、据“家庭保安系统”的特点,将联合小组分成两个小组,并行处理用户编程控制和传感器检测两个子系统,以便使子问题的软件需求进一步细化,这时可能又会增加新对象、新操作、新约束条件。在子系统的需求基本明确并形成文档后,还应就子系统的整合及需求验证标准等进行初步的讨论。初步需求分析应形成结论性文档。比如,经过初步的需求分析,“家庭保安系统”的部分初步需求文档如下:,【例】,“家庭保安系统”的软件允许用户在安装时进行系统配置,实施对传感器的监控并通过控制面板与户主进行信息交互。 系统开机后,软件系统负责显示系统当前的工作状态,接收并处理户主的命令。 当系统处于配置状态,软件系统允许户主进行配置操作。配置操作
12、包括:指定每一传感器的种类和编号; 设置开、关机密码; 指定报警电话号码; 指定报警延迟和电话重拨延迟时间(以秒为单位)。 当系统处于监视状态时,软件系统即开始对所有传感器实施监控。当软件系统接收到传感器发出的数据后,判别是否出现异常事件,如果是,则经过指定的延迟时间即开始拨报警电话号码,拨号操作将按照重拨延迟反复进行,直至电话接通。此时软件系统负责向监控中心报告异常事件发生的地点、时间和性质。,【例】,以上文档没有包括约束条件、测试标准等方面的内容。初步需求文档将是后续详细需求分析的基础。在此基础上,就可以采用某种需求分析方法进行详细的需求分析。分别介绍几种详细的需求分析方法和其中最重要的需
13、求建模技术,它们是: “面向数据流的需求分析方法”; “面向数据的需求分析方法”; “面向对象的需求分析方法”。,需求建模技术,为了使用户需求逐步精细化、完全化、一致化,通常采用需求建模技术,即用建立目标软件系统模型的方法来刻画软件系统中的信息、处理功能和外部行为。通常,分析人员选定一种分析方法,并用该方法中的一些图形记号分别表示信息流、处理功能和系统行为,并利用受限制的自然语言给出用户需求的描述。这种模型的表示机制还应具有良好的结构化能力,以便处理大型问题的按层次分解的问题。软件需求分析的过程,实际上是软件模型的建造和不断完善的过程。,需求建模的步骤,在分析的初期,分析人员通过访谈、会议、实
14、际观 察、分析现有系统等方法获取初步的用户需求。分析人员根据选定的一种分析方法,在初步用户需 求的基础上构筑初步的模型作为开发方和用户相互 沟通的表示机制。分析人员在用户的密切配合下,利用选定的分析方 法不断地对模型进行精细化、一致化、完全化,直 至获得满意的用户需求为止。在分析阶段构筑的模型不应涉及软件实现的细节,以免分散分析人员的注意力、限制软件设计人员为提高软件质量和效率而选择实现方法的自由度。需求分析结束时确立的软件模型是生成需求规格说明的依据,也是软件设计和实现的基础。,快速原型技术,如果按照传统的软件开发方法,需要经过漫长的开发时间之后用户才能看到目标软件的最初版本。此时用户常常会
15、提出许多修改意见,有时甚至全盘否定,导致开发失败。为了降低开发风险,在需求分析阶段常常采用快速原型技术。 1快速原型技术的基本思想 在软件开发的早期,快速开发一个目标软件系统的原型,让用户对其进行评价并提出修改意见,然后开发人员根据用户的意见对原型进行改进。当原型几经改进最终确认后,它将直接进化成软件产品,或者由软件设计、编码人员按照模型所确立的外部特征去实现软件产品。,2采用快速原型技术的具体步骤,采用一种分析方法生成一个软件系统或其中所关心部分的简化需求规格说明。对该规格说明进行评审通过后,立即生成设计规格说明。为了快速生成原型,这种设计仅注重所关心的问题,如软件的总体结构、用户界面和数据
16、设计、或者某个复杂的算法等等,不注重过程内部的控制流设计。使用可重用软部件、用户界面自动生成器等工具快速生成可运行的软件原型并通过测试。将原型提交给用户进行评价,以便征求改进意见。上述过程反复迭代,直至用户完全满意。此时的原型已完全、准确地反映了目标软件在所关心方面的需求,可作为需求规格说明的一部分而成为软件设计的基础。,3快速原型技术的适用场合,该技术特别适合于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合,目前的绝大多数软件都适合于快速原型技术。除非由于问题相当复杂,致使开发快速原型可以获得的支持太少、所冒的风险太大时,就不易采用。但对于其中的某些子问题,尤其
17、是用户界面,还可采用快速原型技术进行部分分析。,问题分解与抽象、多视点分析技术,问题分解技术 分析人员常常采用一种问题分解的技术。即将一个大型复杂的问题分解为若干个子问题,然后对每一个子问题逐个进行分析,再自底向上综合成整个问题的分析结果。这种分解可以逐级进行,直至子问题的规模降到合适的程度。问题抽象技术 分析人员在分析过程中要善于从诸多的特殊问题中抽象出一般的问题,首先关注一般问题的解决途径,再用其指导特殊问题的求解。在抽象的过程中,还要注意用户的描述所处的抽象级别的不同,以便建立清晰的思路。,问题分解与抽象、多视点分析技术,比如,在“家庭保安系统”中,用户可能提出“系统状态显示”、“用户编
18、制程序时的系统外部行为”等的需求。分析人员则应在“用户界面”这一抽象级别上统一地规划软件系统与用户的交互行为。可见,在不同的抽象级别上去分析不同层次的问题,也是解决复杂问题的一个重要方法,它可以避免不一致性,减少分析的工作量。多视点分析技术: 为了获得全面的需求分析结果,防止遗漏,有必要从各个视点分别对问题进行理解与分析,然后综合成全面的理解。分析人员可以就系统视点与用户视点、信息视点、功能视点与行为视点等多个视点分别进行分析,以确保需求分析的完全性。,需求规格说明与评审,需求分析的主要阶段性产品是需求规格说明书。它必须通过需求评审后才能生效,这是一个重要的里程碑。4.3.1 需求规格说明书的
19、作用与内容1. 需求规格说明书的作用主要有:1)它是软件设计人员进行设计和编码的出发点和基础;2)它是对目标软件产品进行验收测试的依据。这就要求需求规格说明书中的各项需求都应该是可测试的;3)它起到软件开发方和客户(或用户)方之间的一份合同的作用。,需求规格说明书的作用与内容,2. 需求规格说明书中的内容应主要包括功能与行为的需求描述和非行为需求描述。功能与行为需求的分析与描述方法将在以后几章中根据不同的需求建模方法分别介绍。非行为需求是指目标软件系统在工作时应具备的属性,主要有运行效率、可靠性、安全性、可维护性、可移植性等等。在需求规格说明书中不应包括如人员需求、成本预算、进度计划、质量保证
20、计划等内容,以便使其简洁、目标明确。,需求规格说明书的基本格式框架,目录1 引言 1.1 本说明的编写目的 1.2 软件产品的作用范围 1.3 定义、同义词与缩写 1.4 参考文献2 概述 2.1 产品与其环境间的关系 2.2 功能概述 2.3 用户特征 2.4 约束条件 2.5 假设与前提条件,需求规格说明书的基本格式框架,3功能或行为需求 3.1 功能或行为需求1:1)引言 2)输入 3)处理过程描述 4)输出 3.2 功能或行为需求2:1)引言 2)输入 3)处理过程描述 4)输出 3.n 功能或行为需求n: 4)输出,需求规格说明书的基本格式框架,4外部界面需求 4.1 用户界面 4.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 第3章需求分析全解课件 需求 分析 课件
链接地址:https://www.31ppt.com/p-1596368.html