RationalRose用例图及其应用.ppt

上传人:w****2 文档编号:16566443 上传时间:2020-10-13 格式:PPT 页数:52 大小:838.50KB
返回 下载 相关 举报
RationalRose用例图及其应用.ppt_第1页
第1页 / 共52页
RationalRose用例图及其应用.ppt_第2页
第2页 / 共52页
RationalRose用例图及其应用.ppt_第3页
第3页 / 共52页
点击查看更多>>
资源描述
用例图及其应用 1 内 容 基本概念 关系及其应用 参与者规范及应用 用例规范及应用 用例视图 2 画好用例图( Use Case Diagrams) 是由软 件需求到最终实现的第一步,在 UML中用例 图用于对系统、子系统或类的行为的可视化, 以便使系统的用户更容易理解这些元素的用 途,也便利了软件开发人员最终实现这些元 素。 用例 是能够帮助分析员和用户确定系统使用 情况的 UML组件。 一组用例 就是从用户的角 度出发对如何使用系统的描述。 一、用例图概述 3 UML中的用例图描述了一组用例 、 参与 者以及它们之间的关系 。 用例图包括以 下 3方面内容 。 ( 1) 用例 ( Use Case) ( 2) 参与者 ( Actor) ( 3) 依赖 、 泛化以及关联关系 4 1 基本概念 1.1 参与者 定义 是直接与系统相互作用的系统、子系统或类的外 部实体的抽象。它是用户所扮演的角色,是系统 的用户。每个参与者定义了一个角色集合。通常, 一个参与者可以代表一个人、一个计算机子系统、 硬件设备或者时间等角色。典型的参与者如销售 部经理、销售员和结帐系统。 图形表示 用小人图符表示 1 基本概念 5 1.1 参与者 参与者的识别 谁将使用系统的主要功能? 谁将需要系统的支持来完成他们的日常任务? 谁必须维护、管理和确保系统正常工作? 谁将给系统提供信息、使用信息和删除信息? 系统需要处理哪些硬件设备? 系统使用了外部资源吗? 系统需要与其他什么系统交互吗? 谁或者什么对系统产生的结果感兴趣? 一个人同时使用几种不同的规则吗? 几个人使用相同的规则吗? 系统使用遗留下来的应用吗? 1 基本概念 6 1 基本概念 1.2 用例 定义 对一组动作序列的描述,系统通过执行这一组动作序 列为参与者产生一个可观察的结果 用例特征 说明了系统具有的一种行为模式 说明了一个参与者与系统执行的一个相关的事务序列 提供了一种获取系统需求的方法 提供了一种与最终的用户和领域专家进行沟通的方法 提供了一种测试系统的方法 图形表示 用椭圆形表示,用例的名字显示在图标的下面 P u r ch ase T i cke t7 1.2 用例 用例识别 参与者要向系统请求什么功能? 每个参与者的特定任务是什么? 参与者需要读取、创建、撤消、修改、或存储系统的某些 信息吗? 是否任何一个参与者都要向系统通知有关突发性的、外部 的改变?或者必须通知参与者关于系统中的发生的事件? 这些事件代表了哪些功能? 系统需要哪些输入 /输出? 这些输入输出来自哪里或者到哪里去? 哪些用例支持或维护系统? 是否所有功能需求都被用例使用了? 系统当前实现的主要问题是什么? 1 基本概念 8 1.3 事件流 事件流是用例完成需求行为的事件描述。 事件流的目的是建立用例中逻辑流程的文档, 详细描述系统用户的工作和系统本身的工作, 既包括正常状态下系统完成需求行为的事件, 也包括在其他状态下不能完成需求行为的事 件。 事件流通常包括: 简要说明 前置条件 事件流 后置条件 1 基本概念 9 1.4 用例模型 一个用例模型由一个或者多个用例图和 所有的支持文件(诸如用例规范和参与 者定义等)所构成。用例规范是大多数 用例模型的产物,而用例图充当将需求 模型综合在一起的粘胶剂。用例模型应 当从项目投资者的角度进行开发,而不 是从开发者的(通常是技术)观点去开 发。 1 基本概念 10 关系反应了参与者和用例之间、用 例和用例之间以及参与者和参与者之间 的相互作用。 在一个用例图中,可能会出现关联 关系、依赖关系、泛化关系以及这三种 关系的扩展形式:扩展关系、包含关系 和精化关系。 2 关系及其应用 11 2.1 关联关系 关联关系表示一种通信路径,它存在于参 与者和用例之间,提供用例和参与者之间的通 信途径。建立通信之后,信息可以双向流动。 关系方向显示的不是信息的流动方向,而 是谁启动信息。 2 关系及其应用 12 2 关系及其应用 2.1 关联关系 表示 工具箱中:一个直角直线 模型图中:一条直线或者 一条带箭头的直线 关联命名 一个动词或者一个动词短 语,用于指明关系的类型 或者目的。 关联关系表示通信途径 13 2.1 关联关系 在用例图中,通常存在两种类型的关联: 单向关联 双向关联 Actor1 与 UseCase1 Actor2 与 UseCase1 2 关系及其应用 14 2.2 依赖关系 定义 存在于两个模型要素之间的一种关系,其中一个 模型要素的改变将影响另一个模型要素 表示方法 工具箱和模型图中均表示为一个带箭头的虚线 画图时,拖动鼠标从客户到提供者画出关联关系 2 关系及其应用 15 2.3 泛化关系 定义 在一个更一般的模型要素和另一个较具体的模型 要素之间存在的一种关系,通常用于表示类(包 括用例、参与者等)之间的继承关系 表示方法 工具箱中: 模型图中:一条带空心三角形箭头的实线(箭头 方向从具体用例指向一般用例) 2 关系及其应用 16 2.3 泛化关系 用例之间的泛化关系 参与者之间的泛化关系 2 关系及其应用 17 泛化: 在用例继承中,子用例可以从父用例 继承行为和含义,还可以增加自己的行 为。 任何父用例出现的地方子用例也可 以出现。 18 如果一台饮料销售机建模,这台销售机允许顾 客选择买一罐饮料或者买一杯饮料。 Buy Soda 就是一个父用例 Buy a can of Soda 和 Buy a cup of Soda就是子用例。用例间的泛化关系 和类间的泛化关系表示方法相同。 19 参与者之间也像用例一样可能存在泛化关系。 供应代理( supplier agent)供货代表 ( Restocker)收款人( Collector) 20 2 关系及其应用 2.4 关系的扩展 1)扩展关系 扩展关系可以放置在所有的关系上,大多数扩展构造型 都放置在依赖关系和关联关系上 扩展关系用带箭头的虚线表示,沿线上加一个用双尖括 号括起来的 “ extend” 21 2 关系及其应用 2.4 关系的扩展 包含关系 是一种构造型关系,它将一个基用例连接到一个包含用 例 UML1.1中为使用关系,在 1.3中改为包含关系 包含关系在一个用例中重用另一个用例中的步骤 包含关系用带箭头的虚线表示,沿线上加一个用双尖括 号括起来的 “ include” 22 包含关系: 用例间的包含关系使用虚线 +箭头表 示,并加入构造型 include 23 2.4 关系的扩展 使用包含关系的三种情况: a.如果有多个用例,并且这些用例包含大量类似 的行为,应该考虑将这些类似的行为通过包含关 系包含到用例中 b.对两个或多个互相独立的用例建模时做了重复 的工作,可以通过包含关系包含这些重复的工作 c.如果某个行为可能会引入冗余,或者,当行为 发生变化时可能导致不一致性,这时,应该对这 种行为进行孤立建模并将它包含到用例中 2 关系及其应用 24 2.4 关系的扩展 包含关系举例 2 关系及其应用 25 26 2.4 关系的扩展 精化关系 精化关系在不同的语义层或者开发阶段连接两个 或者多个模型要素。它表示了某些在一个特定的 细节层次上规定的东西的更加全面的规格说明。 例如,一个设计类就是一个分析类的一种精化。 在一个精化关系中,源模型要素是一般的,在定 义上更加概括;而目标模型要素更加具体并得到 了进一步的精化。 2 关系及其应用 27 28 总结:用例模型的表示法 用例是参与者发起的,参与者(也许是发起者, 但不是必须的)能够从用例的执行中获得有价 值的事物。 用例分析的优点在于它能够展现出系统和外部 世界之间的边界。参与者是典型的系统外部实 体,而用例是典型地属于系统内部。 参与者,用例和互连线共同组成了用例模型 ( use case model) 29 每个用例是一组场景的集合,而每个场 景又是一个步骤序列。 用例图的场景的文档,每个用例中的场 景描述通常要描述下列的内容: 发起用例的参与者,用例的假设条 件,用例中的前置条件,场景中的步骤, 场景完成后的后置条件,从用例中获益 的参与者。 30 分组: 在一些用例中,用例的数目可能非 常多,这个就需要组织这些用例。这种 情况在一个系统包含很多个子系统时就 会出现。 还可以把相关的用例放在一个包中 31 在建模参与者过程中,注意: 1、参与者对于系统而言总是外部的,因此它们在你的 控制之外。 2、参与者直接同系统交互,这可以帮助定义系统边界 3、参与者表示人和事物与系统发生交互时所扮演的角 色,而不是特定的人或者特定的事物。 4、一个人或者事物在与系统发生交互的时候,可以同 时或者不同时扮演多个角色。 5、每一个参与者需要有一个具有业务一样的名字。 6、每个参与者必须有简短的描述,从业务角度描述参 与者是什么。 7、像类一样,参与者可以具有分栏,表示参与者属性 和他可以接受的事件。 32 识别用例 识别用例最好的办法就是从分析系统的参与者开 始 , 考虑每个参与者是怎样使用系统 。 使用这种 策略的过程中可能会找出一个新的参与者 , 这对 完善整个系统建模很有帮助 。 在识别用例的过程中 , 通过以下的几个问题可以 帮助识别用例: ( 1) 特定参与者希望系统提供什么功能 ? ( 2) 系统是否存储和检索信息 ? 如果是 , 这个行 为由哪个参与者触发 ? ( 3) 当系统改变状态时 , 通知参与者吗 ? ( 4) 存在影响系统的外部事件吗 ? ( 5) 是哪个参与者通知系统这些事件 ? 33 用例与事件流 用例分析是处于系统的需求分析阶段 , 这个阶段 应该尽量的避免去考虑系统实现的细节问题 。 也 就是说 , 用例描述的是一个系统做什么 , 而不是 怎么做 。 可以通过一个清晰的 , 易被用户理解的事件流来 说明一个用例的行为 。 这个事件流包括用例何时 开始和结束 , 用例何时和参与者交互 , 什么对象 被交互以及该行为的基本流和可选流 。 34 四、用例图建模技术 对语境建模 对系统语境建模可以参考如下方法 。 ( 1) 得出需要从系统中得到帮助的组;执行系统 功能必须的组;与外界进行交互的组;执某些辅助 功能的组 , 并由此来识别系统外部的参与者 。 ( 2) 将类似的参与者组织成泛化的关系中 。 ( 3) 如需加深理解 , 可以为参与者提供构造型 。 ( 4) 说明用例图中参与者和用例间的通信路径 。 35 对需求建模 软件需求就是根据用户对产品的功能的期望 , 提出产品外部功 能的描述 。 需求分析师的工作是获取系统的需求 , 归纳系统所 要实现的功能 , 使最终的软件产品最大限度的贴近用户的要求 。 对系统功能建模可以参考如下方法: ( 1) 识别系统外部的参与者 , 从而建立系统的语境 。 ( 2) 考虑每一个参与者期望的行为或需要系统提供的行为 。 ( 3) 把公共行为命名为用例 。 ( 4) 确定供其他用例使用的用例和扩展其他用例的用例 。 ( 5) 在用例图中对这些用例 、 参与者和它们间的关系建模 。 ( 6) 用描述非功能需求的注释修饰用例图 。 36 37 3.1 参与者规范 Rose在实现中对参与者和类使用相同的规 范窗口,包括如下一些标签: General Detail Operations Attributes Relations Components Nested Files 3 参与者规范及应用 38 3 参与者规范及应用 3.1 参与者规范 General标签 Name Stereotype Documentation 39 3 参与者规范及应用 3.1 参与者规范 Detail标签 Multiplicity (参与者基数) Abstract(抽象参与者) 基数 含义 0.0 0 0.1 0或者 1 0.n 0或者多 1.1 1 1.n 1或者多 n 许多 40 3 参与者规范及应用 3.1 参与者规范 Relations标签 列出了参与者参与的所 有关系。包括参与者与 用例、参与者与其他参 与者的一切关系 41 3.2 参与者的操作 1)增加参与者 2)删除参与者 3 参与者规范及应用 42 4.1 用例规范 General标签 Diagrams标签 Relations标签 Files标签 4 用例规范及应用 43 4 用例规范及应用 4.1 用例规范 General标签 Name Package Stereotype Rank Abstract Documentation 44 4.1 用例规范 Diagrams标签 用例所拥有的模型图的信 息,其中第一列(没有标 题)显示模型图的图标, 第二列( Title)显示图的 名称 4 用例规范及应用 45 4 用例规范及应用 4.1 用例规范 Relations标签 用例与其他用例或参 与者之间存在的所有 关联关系 46 4 用例规范及应用 4.1 用例规范 Files标签 47 4.2 用例的操作 增加用例 将新的用例加入用例图 将现有的用例加入用例图 删除用例 仅仅从一个用例图中删除一个用例 从整个模型中删除用例 添加文件和链接 URL 4 用例规范及应用 48 5 用例视图 用例图包含的内容 用例 参与者 用例与参与者之间的通信关系 用例之间的包含和扩展关系 参与者的泛化关系 用例图 用例实现 顺序图 协作图 49 5.1 用例图操作 创建新的用例图 打开已有的用例图 删除用例图 链接用例图 重命名用例图 5 用例视图 50 5.1 用例图工作箱 常用工具 10个按钮 定制工具箱 5 用例视图 51 练习与作业 练习:学习教材的实例 作业:阅读 教学管理系统的系统需求 说明 文档,然后绘制相关的 Use case 图 提交: testing_ 52
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!