版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、重庆大学软件工程学院重庆大学本科课程Object-Oriented Technique and UML教材目录 面向对象技术UML教程第 1 章面向对象技术概述 第 2 章UML概述 第 3 章用例和用例图 第 4 章顺序图和协作图 第 5 章类图和对象图 第 6 章数据建模 第 7 章包 第 8 章状态图和活动图 第 9 章构件图 第 10 章部署图 第 11 章对象约束语言 第 12 章业务建模 第 13 章Web建模 第 14 章UML与设计模式 第 15 章面向对象实现技术第 16 章RUP 软件开发工程 第 17 章UML开发工具 第 18 章实例应用分析 2022-5-292教材目
2、录 UML基础、案例与应用(第三版)第 1 章UML简介第 2 章理解面向对象 第 3 章运用面向对象 第 4 章关系 第 5 章聚集、组成、接口和实现 第 6 章介绍用例 第 7 章用例图 第 8 章状态图 第 9 章顺序图第 10 章协作图第 11 章活动图第 12 章构件图第 13 章部署图第 14 章理解包和UML语言基础第 15 章在开发过程中运用UML 第 16 章学习案例介绍第 17 章领域分析 第 18 章收集系统需要 第 19 章开发用例 第 20 章交互 第 21 章设计外观、感觉和部署 第 22 章理解设计模式 第 23 章嵌入式系统建模 第 24 章描述UML的未来第三
3、部分 高级应用第一部分 基础知识第二部分 学习案例2022-5-293UML1.x中各种图的关系Use caseSequenceClass(Simple)ActivityCollaborationClass(Complex)ObjectStateRequirementRequirement阶段Analysis阶段Design阶段2022-5-294第9章 顺序图9.1 什么是顺序图9.2汽车和车钥匙9.3 饮料销售机9.4 顺序图:一般顺序图9.5 在消息序列中创建对象实例9.6 帧化顺序图:UML2.0中的顺序图9.7 UML“大图”本章小节和习题什么是顺序图 如何应用顺序图 如何对一个对象
4、创建建模 如何使用UML2.0中新添加的有关顺序图的内容 顺序图在UML大图中应该处于什么位置 2022-5-295顺序图 什么是顺序图(每个用例的背后都有一张顺序图) 关键思想 对象之间的交互是按照特定的顺序发生的,这些按特定顺序发生的交互序列从开始到结束需要一定的时间。 当建立一个系统时,必须要指明这种交互序列,顺序图就是用来完成这项工作的UML组件。 符号特征 对象用矩形表示,其中是带下划线的对象名 时间用垂直虚线表示 消息用带箭头的直线表示 激活用窄矩形条表示 顺序图(sequence diagram) 由采用通常方式表示的对象组成。2022-5-296顺序图 什么是顺序图 对象 从左
5、到右布置在顺序图的顶部 匿名对象 生命线(lifeline) 激活(activation)控制焦点(focus of control,FOC)2022-5-297顺序图 什么是顺序图 消息 一个对象到另一个对象的消息用跨越对象生命线的消息线表示 调用消息(call message):消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息接收者放弃或返回控制。一般地,调用消息的接收者必须是一个被动对象,即它是一个需要通过消息驱动才能执行动作的对象。 返回消息(return message):调用消息必有一个配对的返回消息,为了图的简洁和清晰,与调用消息配对的返回消息可以不用画出。如果为非过
6、程调用,如果有返回消息,则必须明确表示出来。 同步消息(synchronous message):调用消息 异步消息(asynchronous message):发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接收者返回消息或控制。异步消息的接收者和发送者是并发工作的。 其它:阻止消息,超时消息,反身消息2022-5-298顺序图 什么是顺序图 时间 顺序图中垂直方向代表时间维,时间流逝的方向为自顶而下。 建立顺序图的步骤 1. 确定交互过程的上下文(context) 2. 识别参与交互过程的对象 3. 为每个对象设置生命线,即确定哪些对象存在于整个交互过程中,哪些对象在交互
7、过程中被创建和撤销 4. 从引发这个交互过程的初始消息开始,在生命线之间从顶到下依次画出随后的各个消息 5. 如果需要表示消息的嵌套,或/和表示消息发生时的时间点,则采用激活 6. 如果需要说明时间约束,则在消息旁边加上约束说明 7. 如果需要,可以为每个消息附上前置条件和后置条件2022-5-299顺序图 汽车和车钥匙(举例) 类图2022-5-2910顺序图 汽车和车钥匙(举例) 顺序图保护条件,UML中表示“if”条件的方式2022-5-2911顺序图 饮料销售机(举例)2022-5-2912顺序图 饮料销售机(举例) 类图前端(前端(Front):): 接受顾客的选购和现钞;接受顾客的
8、选购和现钞; 输出一些提示消息;输出一些提示消息; 从记录仪接受找回的零钱并返还从记录仪接受找回的零钱并返还 给顾客;给顾客; 交易不成功,返还现钞交易不成功,返还现钞 交易成功,把饮料展示给顾客。交易成功,把饮料展示给顾客。钱币记录仪(钱币记录仪(Register): 从前端获取顾客输入信息;从前端获取顾客输入信息; 更新现钞储存;更新现钞储存; 找零钱找零钱分配器分配器(Dispenser): 检查选购的饮料是否还有货;检查选购的饮料是否还有货; 分发一罐饮料分发一罐饮料2022-5-2913顺序图 饮料销售机(举例) 顺序图买饮料的顺序:买饮料的顺序: 顾客从机器前端的钱币顾客从机器前端
9、的钱币口塞入钱币,然后选择口塞入钱币,然后选择想要的饮料;想要的饮料; 钱币到达钱币记录仪,钱币到达钱币记录仪,记录仪更新自己的存储;记录仪更新自己的存储;这是最理想的场景,饮这是最理想的场景,饮料还有存货,记录仪通料还有存货,记录仪通知分配器分发一罐饮料知分配器分发一罐饮料到机器前端。到机器前端。2022-5-2914顺序图 饮料销售机(举例) 顺序图2022-5-2915顺序图 一般顺序图 一般顺序图(generic sequence diagram)每个场景的最终消息前边加上Transaction over2022-5-2916顺序图 在消息序列中创建对象实例2022-5-2917顺序图
10、 帧化顺序图:UML2.0中的顺序图 操作符 顺序图操作符为sd(sequence diagram)帧化顺序图的必要性:1)如果你为一个用例的多个场景创建实例顺序图,你会注意到图与图之间相当的一部分内容是重复的。2)帧化的方法使你能够在一张顺序图上快速容易复用另一种顺序图的部分内容2022-5-2918顺序图 帧化顺序图:UML2.0中的顺序图 交互事件(interaction occurrence) 操作符为ref(reference)2022-5-2919顺序图 帧化顺序图:UML2.0中的顺序图 交互片断(interaction fragment)的组合 操作符有alt(alternat
11、ion)和par(parallel)2022-5-2920UML- 21 -1 指出左图中的参与者?A B C D2 哪些是对象?A B C D3 Server类调用了CreditService类中的什么操作?A B C D练习题1. A 2. B 3. B 第10章 协作图10.1 什么是协作图10.2 汽车和车钥匙10.3 饮料销售机10.4 创建对象10.5 编号的一点注意事项10.6 其他概念10.7 UML“大图”本章小节和习题什么是协作图 如何运用协作图 如何对主动对象、并发和同步建模 协作图在UML大图中处于什么位置 2022-5-2922协作图 什么是协作图2022-5-292
12、3协作图 什么是协作图 协作图的作用协作图的作用 对象图展示的是对象之间的静态关系。 协作图是对象图的扩展。协作图除了展示出对象之间的关联,还显示出对象之间的消息传递。 对象图是一个快照;而协作图是一部电影。 协作图与顺序图两者之间是语意等价的(协作图与顺序图两者之间是语意等价的(semantically equivalent) 两种图表达的同一种信息,两者之间可以相互转换。 两者联系与区别两者联系与区别协作图和顺序图都表示出了对象间的交互作用,但是它们侧重点不同。 顺序图清楚地表示了交互作用中的时间顺序(强调时间),但没有明确表示对象间的关系。 协作图清楚地表示了对象间的关系(强调空间),但
13、时间顺序必须从顺序号获得。 协作图和顺序图可以相互转化。2022-5-2924协作图 什么是协作图 符号特征 关联线附近的箭头线表示对象之间的传递的消息,箭头指向消息接收对象 消息名称和消息序号附在箭头线附近。消息的一般含义是触发接收消息的对象执行它的一个操作2022-5-2925协作图 汽车和车钥匙 对象图是协作图的基础2022-5-2926协作图 汽车和车钥匙2022-5-2927协作图 汽车和车钥匙 表现状态的变化和消息的嵌套(用数字系统表示消息之间的某些关系)2022-5-2928协作图 饮料销售机2022-5-2929协作图 饮料销售机2022-5-2930协作图 创建对象2022-
14、5-2931协作图 其他概念 发送给多对象的消息 返回结果 主动对象 同步2022-5-2932练习题练习题请指出下面的消息标签各部分的内容。1:display( ) A. 序列表达式:消息名 B.返回值:消息名 C.序列表达式:消息名mode=display 1.2.3.7: redraw( ) A.序列表达式 返回值 消息名 B.保护条件 序列表达式 消息名:button:Elevator Control:Queue:Elevator:Ordernew : Actor1 : GetElevator(floorid)1.1 *all queues : len:=Length()1.3: In
15、voke(job)1.2: Create( )2: nextjob:=Get.job( )Push( )图中存在的事物有: 参与者 按钮对象 电梯控制对象 命令对象 工作队列 电梯对象图中存在的关系有: 链接 参与者需要乘坐电梯,他从系统外部按下按钮,让电梯到达他想去的楼层。此时,电梯系统的操作被启动,电梯控制对象以循环的方式检查所有的电梯,从中选择一个工作队列长度最短的。然后,它创建一个作业命令,并将该命令放入对应电梯的工作队列,接着激活队列。电梯对象并发运行,从它的队列中选择一个作业并执行。电梯是一个活动对象,它与它的控制线程并发执行。:button:Elevator Control:Queue:Elevator:Ordernew : Actor1 : GetElevator(floorid)1.1 *all queues : len:=Length()2: nextjob:=Get.job(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2021年小学教师教学工作总结十篇
- 有关高中叙事作文600字七篇
- 小学数学教师研修心得体会(集合9篇)
- 辽宁省营口市大石桥市大石桥市第二初级中学2024-2025学年九年级上学期12月月考道德与法治试卷
- 国际乡村自驾车旅游休闲度假总体规划
- 冀教版三年级数学吨的认识说课获奖课件
- 典型压力管道失效模式介绍
- 关于中药材的分类和储存
- 六年级数学上册数学活动《确定起跑线》课件
- 《生物高考考纲解读》课件
- 大学生心理健康与发展学习通超星期末考试答案章节答案2024年
- 《人工智能基础》课件-AI的前世今生:她从哪里来
- 内部创业基础智慧树知到期末考试答案章节答案2024年湖南大学
- 穿井得一人(优秀课件)课件
- 《钻井工程理论与技术》配套教学课件
- 足球运动员登记表
- 铁路装卸搬运管理制度
- 隐蔽型无追索权国内保理合同模板范本
- 精选四川省2023年普通高中学业水平考试物理学科实验操作考查试题
- 数字孪生技术在智慧工厂中的应用解决方案
- 《卵巢肿瘤》ppt课件(PPT 101页)
评论
0/150
提交评论