已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
动态建模 本章学习要点 活动图的功能及绘制状态图的功能及绘制顺序图的功能及绘制协作图的功能及绘制 动态建模概述 了解动态模型的基本功能和基本组成 任务目标 所有系统 包括软件系统 均可表示为两个方面 静态结构和动态行为 为了能够很好地描述软件系统中的动态特性 UML提供了状态图 活动图 顺序图和协作图来描述系统的结构和行为 通常情况下 系统中的对象的相互通信是通过相互发送消息来实现的 一组对象为了实现一些功能而进行通信称之为交互 可以通过状态图 活动图 顺序图和协作图来描述系统的动态行为 动态建模概述 活动图 掌握活动图的基本概念掌握活动图的图形表示熟悉活动图的应用任务根据图书管理系统开发进度 用活动图描述系统中已知用例的业务过程 1 描述新增读者用例2 描述删除读者用例 任务描述 新增读者活动图 新增读者 用例属于读者信息管理中的一个功能 主要用于在系统中增加新的读者信息 其具体的办理流程是 1 读者 填写申请表 并交给 图书管理员 2 图书管理员 将申请表中的信息通过录入界面 输入到图书管理系统 3 系统中的 业务逻辑 组件将判断输入的信息是否合法 4 如果不合法则转入步骤 5 否则转入步骤 6 5 显示 添加错误信息 转到 8 6 在数据库添加相信的用户信息 7 显示 添加成功信息 8 结束 活动图的基本概念 使用活动图主要目的 描述一个操作执行过程中 操作实现的实例化 所完成的工作 动作 描述对象内部的工作 显示如何执行一组相关的动作 以及这些动作如何影响它们周围的对象 显示用例的实例是如何执行动作以及如何改变对象状态 说明一次商务活动中的参与者 工作流 组织和对象是如何工作的 活动图概述 活动图 ActivityDiagram 显示活动动作及其结果 着重描述操作 方法 实现中所完成的工作以及用例实例或对象中的活动 活动图的主要目的是描述动作 执行的工作和活动 及对象状态改变的结果 活动图的基本要素 状态 转移 分支 分叉和汇合 泳道 对象流等 活动图的基本要素 状态 State 状态是指在对象的生命周期中满足某些条件 执行某些活动或等待某些事件时的一个条件或状况 活动图中的状态包括动作状态和活动状态 动作状态 动作状态 对象的动作状态是活动图中最小单位的构造块 表示原子动作 动作状态有三个特性 原子性 是构造活动图的最小单位 不可再分 不可中断性 一旦运行就不能中断 一直运行到结束 瞬时性 所占用时间极短 有时甚至可以忽略 动作状态使用带圆端的方框表示 活动状态 活动状态 表示的是可以分割的动作特点是 它可以被分解成其他子活动或动作状态 它能够被中断 占有有限的时间 活动状态可以理解为一个组合 它的控制流由其他活动状态或动作状态组成 图形表示同动作状态 活动图中的特殊状态 活动图中的特殊状态 活动图中还有一类特殊的状态 用于表示活动的开始和结束 分别称为起始状态 startstate 和终止状态 endstate 起始状态表示一个工作流程的开始 用实心圆点来表示终止状态表示了一个活动图的最后和终结状态 用实心圆点外加一个小圆圈来表示 转移 转移 transition 转移是两个状态间的一种关系 表示对象将在当前状态中执行动作 并在某个特定事件发生或某个特定的条件满足时进入后继状态 在UML中用一条简单的直线表示一个转移示例 打电话 分支 分支 Branch 分支用于描述基于某个条件的可选择路径 一个分支可以有一个进入转移和两个或多个输出转移 在每条输出转移上都有监护条件表达式保护 当且仅当监护条件表达式为真时 该输出路径才有效 在所有输出转移中 其监护条件不能重叠 而且它们应该覆盖所有的可能性 分支在图形表示上用菱形表示 活动图示例 示例 图书馆管理系统中需要提供对用户信息的修改功能 请使用活动图描述该用例 分叉和汇合 分叉 fork 和汇合 join 在UML中使用分叉和汇合表示并行发生的事件流分叉表示把一个单独的控制流分成两个或多个并发的控制流 一个分叉可以有一个进入转移和两个或多个输出转移 每一个转移表示一个独立的控制流 汇合表示两个或多个并发控制流的同步发生 一个汇合可以有两个或多个进入转移和一个输出转移 分叉和汇合应该是平衡的分叉和汇合在图形上都使用同步条来表示 同步条通常用一条粗的水平线表示 活动图示例 示例 描述打电话活动中的并发事件 泳道 泳道 swimlane 泳道 技术 是将一个活动图中的活动状态进行分组 每一组表示一个特定的类 人或部门 他们负责完成组内的活动 泳道 技术来描述每个活动是由哪个对象负责完成UML中 每个组被称为一个泳道 用一条垂直的实线与邻居分开每个活动都明确属于一个泳道 不可以跨越泳道 而转移则可以跨越泳道 对象流 包括依赖关系和对象的应用被称为对象流 对象流是动作和对象间的关联 对象流可用于对下列关系建模 动作状态对对象的使用动作状态对对象的影响 在UML中 使用矩形表示对象 对象和动作之间使用带箭头的虚线连接 带箭头的虚线表示对象流 示例 用活动图描述客户在商店中购买物品的过程 使用对象流技术描述购物这个动态过程中系统内对象的状态变化 活动图的建模技术 活动图的建模技术 活动图用于对系统的动态行为建模 在对一个系统建模时 通常有两种使用活动图的方式 为工作流建模 动作流指所有动作状态之间的转换 为对象的操作建模 活动图的建模步骤 使用活动图对系统建模的步骤 确定活动图所关注的业务流程 确定该业务流程中的业务对象 确定该工作流的起始状态和终止状态 从该工作流的起始状态开始 说明随着时间发生的动作和活动 并在活动图中把它们表示成活动状态或动作状态 将复杂的动作 或多次出现的动作集合归并到一个活动状态 并对每个这样的活动状态提供一个可展开的单独的活动图 找出连接这些活动和动作状态的转移 如果工作流中涉及重要的对象 则也把它们加入到活动图中 任务解决 新增读者 用例属于读者信息管理中的一个功能 主要用于在系统中增加新的读者信息 其具体的办理流程是 1 读者 填写申请表 并交给 图书管理员 2 图书管理员 将申请表中的信息通过录入界面 输入到图书管理系统 3 系统中的 业务逻辑 组件将判断输入的信息是否合法 4 如果不合法则转入步骤 5 否则转入步骤 6 5 显示 添加错误信息 转到 8 6 在数据库添加相信的用户信息 7 显示 添加成功信息 8 结束 任务解决 补充 绘制图书管理系统读者活动图 活动图VS流程图 流程图着重描述处理过程 它的主要控制结构是顺序 分支和循环 各个处理过程之间有严格的顺序和时间关系 而活动图描述的是对象活动的顺序关系所遵循的规则 它着重表现的是系统的行为 而非系统的处理过程 活动图能够表示并发活动的情形 而流程图不能 活动图是面向对象的 而流程图是面向过程的 小结 活动图是UML中用于对系统的动态方面建模的五种图中的一种 一张活动图从本质上说是一个流程图 显示从活动到活动的控制流多数情况下 活动图用于对业务过程中顺序和并发的工作流程进行建模 活动图中的基本要素包括状态 转移 分支 分叉和汇合 泳道 对象流 状态是指在对象的生命周期中满足某些条件 执行某些活动或等待某些事件时的一个条件或状况 活动图中的状态包括动作状态和活动状态 对象的动作状态是活动图中最小单位的构造块 表示原子动作 具有原子性 不可中断性和瞬时性 活动状态表示的是可以分割的动作 活动图中还有一类特殊的状态 用于表示活动的开始和结束 分别称为起始状态 startstate 和终止状态 endstate 小结 续 转移表示对象将在当前状态中执行动作 并在某个特定事件发生或某个特定的条件满足时进入后继状态 分支用于描述基于某个条件的可选择路径 分叉表示把一个单独的控制流分成两个或多个并发的控制流 汇合表示两个或多个并发控制流的同步发生 一个汇合可以有两个或多个进入转移和一个输出转移 泳道 技术 是将一个活动图中的活动状态进行分组 用活动图描述某个对象时 可以把所涉及的对象放置在活动图上 并用一个依赖将这些对象连接到对它们进行创建 撤销和修改的活动转移上 这种包括依赖关系和对象的应用被称为对象流 状态图 了解状态图的基本功能和绘制方法 并绘制图书管理系统的状态图 任务目标 状态图 是软件系统进行面向对象分析的一种常用工具 它通过建立对象的生存周期模型 状态 来描述对象随时间变化的动态行为 状态图概述 状态图组成 起点代表状态图的一个初始状态 此状态代表状态图的起始位置 终点代表状态图的最后状态 此状态代表状态图的终止位置 状态图组成 起点和终点 状态图组成 状态是对象操作的前一次活动的结果 通常情况下 状态由对象的属性值以及指向其它对象的链来决定的 SQLServer2005实例教程 图书对象 被借出 在借状态 软件测试实例教程 图书对象 在图书馆里 在库状态 小王 读者对象 在校 在校状态 小王的借书证 借书证对象 可以用 有效状态 小王的借书证 借书证对象 丢失 挂失状态 小王 读者对象 已毕业 毕业状态 小王的借书证 借书证对象 不可以用 无效状态 状态图组成 状态 状态图组成 状态图组成 状态 1 名称 name 是可以把该状态和其他状态区分开的字符串 状态也可能是匿名的 即没有名称 2 进入 退出动作 entry exitaction 分别指进入和退出这个状态时所执行的动作 3 内部转换 internaltransition 不会导致状态改变的转换 4 子状态 substate 主要是在状态的嵌套结构中 包括不相交 顺序活动 或并发 并发活动 子状态 5 延迟事件 deferredevent 是指在该状态下暂不处理 但将推迟到该对象的另一个状态下排队处理的事件列表 状态图组成 状态图组成 事件 事件 指的是发生的且引起某些动作执行的事情 即事件表示在某一特定的时间或空间出现的能够引发状态改变的运动变化 状态图组成 状态图组成 转换 转换表示当一个特定事件发生或者某些条件满足时 一个源状态下的对象完成一定的动作后将发生状态转变 转向另一个称之为目标状态的状态 绘制状态图 绘制图书管理系统图书状态图 1 打开工程book mdl 2 新建状态图 3 添加状态 4 设置状态转移事件 5 添加活动 6 调整大小和位置 状态图 活动图VS状态图 状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件 通常 状态图是对类图的补充 在实用上并不需要为所有的类画状态图 仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图 而活动图描述满足用例要求所要进行的活动以及活动间的约束关系 有利于识别并行活动 顺序图 了解顺序图的基本功能和绘制方法 并绘制图书管理系统的顺序图 任务目标 顺序图 描述了对象之间传送消息的时间顺序 它用来表示用例中的行为顺序 当执行一个用例行为时 顺序图中的每条消息对应了一个类操作中引起转换的触发事件 顺序图概述 顺序图 对象 顺序图中的对象的符号与对象图中的对象的符号是一样的 都是使用矩形将对象名称包含起来 并且在对象名称下加下划线 生命线 生命线是一条垂直的虚线 表示顺序图中的对象在一段时间内的存在 每个对象的底部都带有生命线 顺序图组成 对象 生命线 顺序图 消息是对象之间某种形式的通信 它可以激发某个操作 唤起信号或导致目标对象的创建或撤消 激活表示该对象被占用以完成某个任务 钝化表示对象处于空闲状态 在等待消息 顺序图组成 消息 激活 顺序图 1 打开工程book mdl 2 新建顺序图 3 选择类 创建对象 并指定对象名 4 添加对象间传递的消息 绘制 添加图书 顺序图 提示 教师演示顺序图的绘制过程 顺序图 协作图 了解协作图的基本功能和绘制方法 并绘制图书管理系统的协作图 任务目标 协作图 协作图 CollaborationDiagram 是顺序图之外的另一种表示交互的方法 主要描述协作对象间的交互和链接 强调的是对象结构相关的信息 顺序图和协作图都描述交互 但是顺序图强调的是时间 而协作图强调的是空间 协作图概述 典型协作图 协作图 对象 协作图中的对象与顺序图中的对象的概念是一样的 图形表示方法也是一样的 链接 一条链接是两个对象间的连接 消息 协作图中的消息与顺序图中的消息相同 协作图组成 协作图 1 打开工程book mdl 2 新建协作图 3 添加对象 绘制协作图 4 添加消息 5 添加数据流 6 完成绘制 协作图 顺序图强调按时间展开的消息的传递 清晰地显示了时间次序 对简单的迭代和分支的可视化要比协作图好 常用于场景显示 可以不要顺序号 协作图强调交互中实例之间的结构关系以及所传送的消息 清晰地显示了对象间关系 对复杂的迭代和分支的可视化以及对多并发控制流的可视化要比顺序图好 常用于显示过程设计细节 有路径和顺序号 协作图VS顺序图 打开要转换的顺序图或协作图 如 读者预订协作图 2 依次选择主菜单栏中的 Browse GoToSequenceDiagram 即可将当前的协作图转换成顺序图 协作图与顺序图的互换 协作图示例 任务5 1 打开工程book mdl 2 新建协作图 3 添加对象 绘制协作图 4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/BFIA 021.2-2023移动支付应用基础 第2部分:机构代码
- 山东曲阜市2025-2026学年七年级下学期期末道德与法治试卷(含答案)
- 2026年贵州省人教版七年级语文第5单元古诗文练习题
- 海尔间接采购订单系统用户手册
- 国际贸易和国际金融
- 陕西省西安市西电中学2025-2026学年高二下学期期末考试数学试卷(含答案)
- 辽宁省沈阳市第二十三中学2026-2027学年七年级上学期开学数学试卷(含答案)
- 2026年俄罗斯莲花商贸城销售篇
- 输血应急预案知识考试试题及答案
- 输血相关知识测试题及答案
- 2026新学期高三年级立德树人德育实践课件:诚信教育
- 2026年大学摄影(摄影理论基础)试题及答案
- 变形铝及铝合金制品组织检验方法第2部分:低倍组织检验方法
- 2026年贵州省初级注册安全工程师职业资格考试试题及答案安全生产实务·其他
- 人工智能原理及其应用(第5版)课件全套 第1-8章 概述-智能体应用
- 2026年6月浙江高考选考物理试卷试题真题(含答案详解)
- 环水保监理实施细则
- 江苏水利工程设计概(估)算编制规定2017年修订版
- 污水处理PLC控制系统方案设计指南
- 设施设备维护人员面试题及答案
- 公路施工项目安全风险评估报告范本
评论
0/150
提交评论