UML通信图
- 格式:ppt
- 大小:466.01 KB
- 文档页数:24
UML科普⽂,⼀篇⽂章掌握14种UML图前⾔上⼀篇⽂章写了⼀篇建造者模式,其中有⼏个UML类图,有的读者反馈看不懂了,我们今天就来解决⼀哈。
什么是UML?UML是Unified Model Language的缩写,中⽂是统⼀建模语⾔,是由⼀整套图表组成的标准化建模语⾔。
为什么要⽤UML?通过使⽤UML使得在软件开发之前,对整个软件设计有更好的可读性,可理解性,从⽽降低开发风险。
同时,也能⽅便各个开发⼈员之间的交流。
UML提供了极富表达能⼒的建模语⾔,可以让软件开发过程中的不同⼈员分别得到⾃⼰感兴趣的信息。
Page-Jones 在《Fundamental Object-Oriented Design in UML》⼀书中总结了UML的主要⽬的,如下:1. 为⽤户提供现成的、有表现⼒的可视化建模语⾔,以便他们开发和交换有意义的模型。
2. 为核⼼概念提供可扩展性 (Extensibility) 和特殊化 (Specialization) 机制。
3. 独⽴于特定的编程语⾔和开发过程。
4. 为了解建模语⾔提供⼀个正式的基础。
5. ⿎励⾯向对象⼯具市场的发展。
6. ⽀持更⾼层次的开发概念,如协作,框架,模式和组件。
7. 整合最佳的⼯作⽅法 (Best Practices)。
UML图有哪些?UML图分为结构图和⾏为图。
结构图分为类图、轮廓图、组件图、组合结构图、对象图、部署图、包图。
⾏为图⼜分活动图、⽤例图、状态机图和交互图。
交互图⼜分为序列图、时序图、通讯图、交互概览图。
UML图概览什么是类图?【概念】类图是⼀切⾯向对象⽅法的核⼼建模⼯具。
类图描述了系统中对象的类型以及它们之间存在的各种静态关系。
【⽬的】⽤来表⽰类、接⼝以及它们之间的静态结构和关系。
在类图中,常见的有以下⼏种关系。
泛化(Generalization)【泛化关系】是⼀种继承关系,表⽰⼦类继承⽗类的所有特征和⾏为。
【箭头指向】带三⾓箭头的实线,箭头指向⽗类。
实验三顺序图和通信图
一、实验目的
1.学会用通信图实现用例
2.掌握顺序图的绘制方法以及顺序图和通信图的相互转换。
二、实验器材
1. 计算机一台;
2. Rational Rose 工具软件;
三、实验内容
画出ATM取款的顺序图,并转换为通信图。
四、实验步骤
1.分析
ATM取款的场景:
(1)通过读卡机,用户插入A TM卡;
(2)ATM系统从卡上读取银行ID、账号、加密密码、并用主银行系统验证银行ID和账号;
(3)用户输入密码,A TM系统根据上面读出的卡上加密密码,对密码进行验证;
(4)用户输入取款数量;
(5)ATM系统通知主银行系统,传递储户账号和取款数量,并接收返回的确认信息;
(6)ATM系统输出先进、A TM卡和显示账户余额的收据;
(7)ATM系统记录事务到日志文件。
寻找场景中的对象:ATM、客户和账户。
2.绘图步骤:
下面介绍在Rose中创建顺序图的过程:
(1)在“Logical View”中新建“Sequence Diagram“,双击图标,出现图1,为编辑顺序图做好准备。
UML通信图的绘制方法分析UML(Unified Modeling Language)通信图是一种用于描述系统中对象之间交互关系的图表工具。
它可以清晰地展示对象之间的消息传递和协作方式,帮助开发人员更好地理解系统的结构和行为。
在软件开发过程中,正确地绘制UML通信图对于设计和实现高质量的软件系统至关重要。
本文将分析UML通信图的绘制方法,以帮助读者更好地掌握这一技巧。
1. 选择适当的场景和参与者在绘制UML通信图之前,首先需要明确要描述的场景和参与者。
场景是指系统中发生的特定事件或操作,参与者是指与该场景相关的对象或角色。
选择适当的场景和参与者对于绘制准确的通信图至关重要。
例如,如果要描述一个电子商务系统中的购物流程,场景可以是用户浏览商品,参与者可以是用户、商品和购物车等。
2. 确定对象和消息确定参与者后,需要进一步确定参与者之间的交互方式。
在UML通信图中,对象表示参与者,消息表示参与者之间的交互。
对象可以是具体的类或实例,消息可以是方法调用或事件触发等。
确定对象和消息是绘制通信图的关键步骤,需要仔细分析系统的需求和设计,确保图表准确地反映系统的交互关系。
3. 绘制对象和消息一般来说,UML通信图是从左到右进行绘制的。
可以使用矩形表示对象,将对象的名称放在矩形内部。
每个对象之间使用实线箭头表示消息的传递方向。
箭头的起点表示消息的发送者,箭头的终点表示消息的接收者。
可以在箭头上方或下方标注消息的名称和参数等信息。
通过适当地调整对象和消息的位置,可以使通信图更加清晰易懂。
4. 添加细节和注释为了增加通信图的可读性和理解性,可以添加一些细节和注释。
例如,可以在对象旁边添加对象的属性和方法,以便更好地理解对象的行为。
可以使用注释框标注一些关键信息,如条件、循环和异常处理等。
通过添加细节和注释,可以使通信图更加完整和详细,帮助读者更好地理解系统的交互过程。
5. 不断迭代和优化绘制UML通信图是一个迭代的过程,需要不断地优化和改进。
uml交互图(顺序图、通信图、鲁棒图、定时图)交互与交互图交互的概念一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间进行交换的一组消息所表示的行为消息UML中的4种交互图顺序图:顺序图是一种强调消息时间顺序的交互图,为读者提供了控制流随着时间推移的清晰的可视化轨迹通信图:UML 2.0中的通信图实际上就是UML1中的协作图,它强调的是参加交互的对象的组织,为读者提供了在协作对象结构组织的语境中观察控制流的一个清晰的可视化轨迹定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序交互概述图:是交互图和活动图的混合物如何阅读交互图阅读顺序图顺序图的主要元素对象与角色:最顶上一排矩形框。
在交互图中,参与交互的对象既可以是具体的事物,又可以是原型化的事物。
作为具体的事物,一个对象代表现实世界中的某个东西。
例如,aOrder作为类Order的一个实例,可以代表一个特定的订单;而如果作为一个原型化的事件,则aOrder可以代表类Order 的任何一个实例。
生命线与控制焦点:每个对象都有自己的生命线,对象生命线是一条垂直的虚线,用来表示一个对象在一段时间内存在消息:用来描述对象之间所进行的通信的,该信息带有对将要发生的活动的期望。
当传送一个消息时,它所引起的动作是用一个通过对计算过程的抽象而得到的可执行语句(就是方法头)。
消息分为五种:调用、返回、发送、创建和销毁调用:表示调用某个对象一个操作顺序编号(第几步的编号):整个消息的传递过程就形成了一个完整的序列,因此通过在每个消息的前面加上一个用冒号隔开的顺序号来表示其顺序。
除了顺序编号之外,还可以采用嵌套方案:读图小结第1步在dispatchForm(分发窗体)中,对于某个已支付的Order进行分发时,就会调用该订单(一个Order类的实例对象aOrder)的dispatch()方法。
1.1 dispatch()方法将逐个调用[for each orderitem]该Order对应的所有OrderItem对象的getPeddleryId()方法获取供应商ID 1.2(PeddleryId),1.1.1而OrderItem对象则是通过其所对应的Product对象来的getPeddleryId()方法来获取供应商ID。
uml的基本构造块以UML的基本构造块为标题,我们将探讨UML(统一建模语言)中的不同构造块,并解释它们在软件开发中的作用。
UML是一种可视化建模语言,用于描述、设计和分析软件系统。
它提供了一套丰富的图形符号和标记,以帮助开发人员更好地理解和沟通软件系统的结构和行为。
1. 类图(Class Diagram):类图是UML中最常用的构造块之一,用于表示软件系统中的类、接口、关系和属性。
类图显示了各个类之间的关系,包括继承、关联、聚合和组合等。
它帮助开发人员理解系统的静态结构,并为代码编写提供了指导。
2. 对象图(Object Diagram):对象图是类图的实例化,它显示了系统中具体对象的状态和关系。
对象图可以用来验证类图的设计是否正确,也可用于调试和测试。
对象图有助于开发人员更好地理解系统的运行时行为。
3. 时序图(Sequence Diagram):时序图描述了系统中对象之间的交互顺序。
它展示了对象在一段时间内的消息传递和方法调用。
时序图帮助开发人员理解系统的动态行为,特别是在多个对象之间的协作和交互方面。
4. 用例图(Use Case Diagram):用例图用于描述系统的功能需求和行为。
它显示了系统的不同角色(用户)与系统之间的交互。
用例图帮助开发人员理解系统的用例(功能)以及这些用例之间的关系。
5. 组件图(Component Diagram):组件图描述了系统的物理组件和它们之间的关系。
组件可以是代码模块、库、外部系统或其他可重用的软件部件。
组件图有助于开发人员理解系统的软件架构,以及各个组件之间的依赖关系。
6. 部署图(Deployment Diagram):部署图显示了软件系统的物理部署结构。
它描述了软件组件和硬件设备之间的映射关系。
部署图有助于开发人员理解系统的部署环境,包括服务器、网络和设备等。
7. 状态图(State Diagram):状态图描述了对象在不同状态之间的转换。
它展示了对象的生命周期和状态转换的条件。
[转]UML之通信图⽬录原⽂链接:原⽂链接:原⽂链接:原⽂链接:概念通信图(协作图)是表现对象交互关系的图,它展现了多个对象在协同⼯作达成共同⽬标的过程中互相通信的情况,通过对象和对象之间的链、发送的消息来显⽰参与交互的对象。
⾸先通信图⼀样是⼀种交互图,它描述的是对象和对象之间的关系,即⼀个类操作的实现。
简⽽⾔之就是,对象和对象之间的调⽤关系,体现的是⼀种组织关系。
通信图中的元素主要有对象、消息和链三种。
对象和链分别作为通信图中的类元⾓⾊和关联⾓⾊出现,链上可以有消息在对象间传递。
从结构⽅⾯来看,通信图包含了⼀个对象的集合并且定义了它们之间的⾏为⽅⾯的关系,表达了⼀些系统的静态内容。
从⾏为⽅⾯来看,通信图包含了在各个对象之间进⾏传递交换的⼀系列的消息集合,以完成协作的⽬的。
在视频中的协作图collaboration diagram描述的是与对象结构相关的信息。
现在逐渐的被“通信图”这⼀种说法取代。
百度上说是:“UML2.0以后不再⽤协作图说法,⽽是明确定义为“通信图”,即Communication Diagram,⽽“协作”作为⼀个结构事物⽤于表达静态结构和动态⾏为的概念组合,表达不同事物相互协作完成⼀个复杂功能。
故UML 2.0以后通信图不再是协作图,没有专门的“协作图”,只有“协作”。
通信图是⼀种描述协作在某⼀语境下的空间组织结构的图形化⽅式,在使⽤其进⾏建模时,主要具有以下三个作⽤:通过描绘对象之间消息的传递情况来反映具体使⽤语境的逻辑表达。
显⽰对象及其交互关系的空间组织结构。
表达⼀个操作的实现。
组成元素通信图的组成元素包括对象、消息、链(连接器)。
消息表⽰了对象间的通信,对象通过链连接在⼀起。
对象通信图中的对象与顺序图中对象的概念相同,都是表⽰类的实例。
通信图只关注相互有交互作⽤的对象和对象关系,⽽忽略其他对象。
由于通信图中不表⽰对象的创建与销毁,因此,对象在通信图中的位置没有限制。
与顺序图中对象的表⽰法不同的是,通信图中的⽆法显⽰对象的⽣命线。