面向对象技术引论课件 第四章(华大)

上传人:wt****50 文档编号:50753996 上传时间:2018-08-10 格式:PPT 页数:45 大小:452KB
返回 下载 相关 举报
面向对象技术引论课件 第四章(华大)_第1页
第1页 / 共45页
面向对象技术引论课件 第四章(华大)_第2页
第2页 / 共45页
面向对象技术引论课件 第四章(华大)_第3页
第3页 / 共45页
面向对象技术引论课件 第四章(华大)_第4页
第4页 / 共45页
面向对象技术引论课件 第四章(华大)_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《面向对象技术引论课件 第四章(华大)》由会员分享,可在线阅读,更多相关《面向对象技术引论课件 第四章(华大)(45页珍藏版)》请在金锄头文库上搜索。

1、第四章 用况和用况图一个用况代表一个系统或系统的一部分的行为,一个用况代表一个系统或系统的一部分的行为, 它的主要用处是:它的主要用处是:捕获与描述系统需求捕获与描述系统需求,同时也,同时也驱动驱动 整个开发过程整个开发过程。用况图也称为用况模型,用于对系统的用况视图用况图也称为用况模型,用于对系统的用况视图 建模(用况视图是系统体系结构的五大视图之一),建模(用况视图是系统体系结构的五大视图之一), 也可以认为是对系统的外部行为建模。也可以认为是对系统的外部行为建模。多数情况下,包括对系统、子系统或类的语境建多数情况下,包括对系统、子系统或类的语境建 模,或对这些元素的行为需求建模。它对可视

2、化、详模,或对这些元素的行为需求建模。它对可视化、详 述和文档化一个元素的行为是非常重要的。述和文档化一个元素的行为是非常重要的。1. 用况(use case) (1)用况的定义在图形上,一个用况用一个椭圆表示。取款4.1 用况用况是对一组动作序列(业务过程)的描述,系用况是对一组动作序列(业务过程)的描述,系 统执行这些动作将产生一个对特定的参与者有价值而统执行这些动作将产生一个对特定的参与者有价值而 且可观察的结果。且可观察的结果。(2)用况的图形符号(3)用况的名称Place orderSensors: Calibrate locationValidate user简单名路径名每一个用况

3、都必须有一个区别于其他用况的名称每一个用况都必须有一个区别于其他用况的名称 。用况名称(。用况名称(namename)是一个字符串。在实际应用中,)是一个字符串。在实际应用中, 用况的名称是简短的主动语态的动词词组,用来描述用况的名称是简短的主动语态的动词词组,用来描述 被建模的系统的某些行为。被建模的系统的某些行为。单独的名称称为简单名,在用况名前加上它所属单独的名称称为简单名,在用况名前加上它所属 的包的名称,称为路径名。的包的名称,称为路径名。(4)用况与参与者例如:如果你在银行工作,你可能是一个贷款员, 如果你在该银行有存款,那么你同时也扮演一名顾 客的角色。所以,一个参与者的一个实例

4、代表以一 种特定的方式与系统进行单独的交互。注意:尽管在模型中使用参与者,但参与者实际上 并不是系统的一部分。一个参与者表示用况的使用者在与这些用况进行一个参与者表示用况的使用者在与这些用况进行 交互时所扮演的交互时所扮演的角色的一个紧密的集合角色的一个紧密的集合。参与者所代表的角色有:参与者所代表的角色有:人人、硬件设备硬件设备,或甚至,或甚至 是是另一个系统另一个系统。参与者的图形符号是人形图符Customer可以定义参与者的一般种类(比如Customer) 并通过泛化关系将其特殊化(比如Commercial Customer)。CustomerCommercial Customer(5)

5、用况与事件流例:在ATM系统中,可以采用下面的主事件流和异常 事件流来描述用况Validate User的行为:可以通过足够清晰的、外部人员容易理解的文字可以通过足够清晰的、外部人员容易理解的文字 描述一个或一些事件流来说明一个用况的行为,也即描述一个或一些事件流来说明一个用况的行为,也即 通过事件流来通过事件流来详述用况详述用况。事件流中应该包含用况何时开始、何时结束,用事件流中应该包含用况何时开始、何时结束,用 况何时和参与者交互,什么对象被交换,以及该行为况何时和参与者交互,什么对象被交换,以及该行为 的基本流(主事件流)和可选择流(异常事件流)。的基本流(主事件流)和可选择流(异常事件

6、流)。异常事件流1:顾客可以在任何时间通过按“取消”按钮 取消一个事务,这样该用况重新开始。顾客的帐户未 发生改变。异常事件流2:顾客可以在确认之前的任何时刻消除 PIN号,并重新输入一个新的PIN号。异常事件流3:如果顾客输入一个无效的PIN号,用况 重新开始;如果连续3次输入无效的PIN号,系统将取 消整个事务,并在60秒内阻止该顾客与ATM交易。主事件流:在系统提示顾客输入PIN编号时用况开始。 顾客通过按键输入PIN编号;顾客按“输入”按钮确认 登录;系统校验该PIN号是否有效。如果有效,系统 承认这次登录,该用况结束。2. 用况之间的关系1) 用况之间的泛化关系例:ATM系统中的Va

7、lidate User用况,根据校验设备 的不同可以特例化为以下二个特殊用况: Check Password用况和Retinal Scan用况。用况之间存在用况之间存在泛化关系泛化关系、包含关系包含关系和和延伸关系延伸关系, 我们可以利用这些关系来组织用况。我们可以利用这些关系来组织用况。用况之间的泛化关系就像类之间的泛化关系,子用况之间的泛化关系就像类之间的泛化关系,子 (特殊)用况继承父(一般)用况的行为和含义;子(特殊)用况继承父(一般)用况的行为和含义;子 用况还可以增加或覆盖父用况的行为;子用况可以出用况还可以增加或覆盖父用况的行为;子用况可以出 现在父用况出现的任何位置。现在父用况

8、出现的任何位置。Validate UserCheck PasswordRetinal Scan这二个特殊用况都有Validate User的行为,并且 还添加了各自的行为: Check Password用况检查文本密码; Retinal Scan用况检查用户唯一的视网膜模式。2) 用况之间的包含关系例:Place Order(发出订单)用况和Track Order (获取和校验订单号)与Validate User用况存在包含 关系。用况之间的包含关系表示用况之间的包含关系表示基础用况基础用况在它内部说明在它内部说明 的某个位置上的某个位置上显式地显式地合并了合并了另一个用况另一个用况的行为。的

9、行为。被包含的用况从不孤立存在,仅作为某些包含它被包含的用况从不孤立存在,仅作为某些包含它 的更大的基础用况的一部分出现。可以想象为,它向的更大的基础用况的一部分出现。可以想象为,它向 基础用况提供行为。基础用况提供行为。可以将包含关系表示成一个构造型的可以将包含关系表示成一个构造型的includeinclude依赖依赖 关系(基础用况依赖于被包含的用况)。关系(基础用况依赖于被包含的用况)。Place OrderTrack OrderValidate User3) 用况之间的延伸关系基础用况可以单独存在,但在一定条件下,它 的行为可以被另一个用况的行为延伸。用况之间的延伸关系表示用况之间的延

10、伸关系表示基础用况基础用况在由延伸用况在由延伸用况 间接地说明的一个位置上间接地说明的一个位置上隐式地隐式地合并了合并了另一个用况另一个用况的的 行为。行为。该基础用况只是在一个被称为它的延伸点的确 定位置上被延伸。可以将延伸关系理解为延伸用况把行为放入基 础用况中。可以将延伸关系表示成一个构造型为extend的 依赖关系。例:Place Order(发出订单)用况和Place rushOrder(发出急需单号)用况之间存在延伸关系。延伸关系用于对可能被用户看作是可选系统行 为的用况的一部分建模(Place rush Order是可选 的)。Place Order Extension poin

11、t Set priorityPlace rush Order (set priority)延伸点通过这种方式,可以把可选行为从必须行为中 分离出来。实例应用:一个零售系统将与订货的顾客进行交互, 然后,系统将装运订货、并通告顾客付帐。可以通过将 这些元素的行为声明为用况来对系统的行为建模。所声明的用况包括:Place order、Track order、 Ship order和Bill customer。用况模型如下图所示:Place OrderTrack OrderValidate CustomerShip Order Extension point Materials readyBill

12、CustomerShip partial Order3. 识别用况识别用况也称为发现用况。 (1)基本方法概述每个能对用户增值的系统使用方式就是一个候选用况。对这些候选用况进行详细说明,改变、划分为更小的用 况或相反地结合成更加完整的用况。当以客户、用户和开发人员都能理解的方式正确地捕获 了全部的功能性需求,用况模型便基本完成了。pp 通过考察用户如何使用现有系统(可能是一个人工通过考察用户如何使用现有系统(可能是一个人工 系统)完成他们的工作来发现用况,也即通过捕获功系统)完成他们的工作来发现用况,也即通过捕获功 能性需求来发现用况。能性需求来发现用况。银行储户从指定取款数量到得到相应的货币

13、的响 应时间在所有用况实例的95%中应该小于30秒。例如:对于“取款”这一用况而言,应该附加 下面的性能要求:pp 从非功能性需求中发现用况的附加成分。从非功能性需求中发现用况的附加成分。用况除了描述功能需求之外,还可以说明某些非用况除了描述功能需求之外,还可以说明某些非 功能性需求,例如对某个用况特定的性能、可用性、功能性需求,例如对某个用况特定的性能、可用性、 准确度和安全性等的需求。这些都有必要作为用况的准确度和安全性等的需求。这些都有必要作为用况的 附加成分,附加到相应的用况中。附加成分,附加到相应的用况中。(2)实用的识别用况的方法和步骤比较实用的识别方法有以下两种:基于参与者的方法

14、基于事件的方法p 基于参与者的方法a.a. 识别出与系统或组织有关的参与者。识别出与系统或组织有关的参与者。b.b. 对每个参与者,识别出他们发起或参加的执行过对每个参与者,识别出他们发起或参加的执行过 程(业务过程),这些执行过程就是程(业务过程),这些执行过程就是候选用况候选用况。p 基于事件的方法a. 识别出系统必须响应的外部事件。b. 把事件与参与者及用况联系起来。例:找出销售点终端系统的可能的参与者及他们发起 或参加的活动。参与者发起或参加的活动 出纳员登录、用现金结算 顾客购买商品、退还商 品4.2 用况模型和用况图取款存款在不同帐户 间转帐银行储户参与者“银行储户” 使用ATM从

15、帐户中 取款,或存款到帐 户中,或在不同的 帐户之间转帐。上 述行为可以由三个 用况与“银行储户” 这个参与者之间的 交互来表示。1.用况模型系统的所有参与者和用况以及用况之间的关系(系统的所有参与者和用况以及用况之间的关系( 依赖、延伸、泛化等)构成用况模型。依赖、延伸、泛化等)构成用况模型。2. 用况图n n 用况模型是所有可能使用系统(用况)的方式的完用况模型是所有可能使用系统(用况)的方式的完 整的规格说明,它可以用作与客户签定合同的一部分整的规格说明,它可以用作与客户签定合同的一部分 。n n 用况模型用来与用户和客户在用况模型用来与用户和客户在“ “系统应该做什么系统应该做什么”

16、”方方 面达成共识。也即用况模型表示功能性需求。面达成共识。也即用况模型表示功能性需求。n n 用况模型用用况图来表示。用况模型用用况图来表示。术语:用况图(术语:用况图(use case diagramuse case diagram)是显示一组用况)是显示一组用况 、参与者以及它们之间关系的图。、参与者以及它们之间关系的图。1.用况模型(续)1)公共特性2)内容用况图通常包括: 用况 参与者 依赖(包含、延伸)、泛化及关联关系 注解和约束。用况图只是图的一种特殊类型,它具有与所有用况图只是图的一种特殊类型,它具有与所有 UMLUML图一样的公共特征,即一个名称以及投影到模型图一样的公共特征,即一个名称以及投影到模型 上的图形化的内容。上的图形化的内容。3)一般应用(1)对系统的语境建模用况图用于对系统的静态用况视图建模。该视图用况图用于对系统的静态用况视图建模。该视图 主要支持对系统行为的描述主要支持对系统行为的描述 ,即描述该系统在它的周,即描述该系统在它的周

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号