面向对象动态建模,用于建立行为的实体间行为交互的四种图,状态图(Stage Diagram),时序图(Sequence
Diagram)
,活动图(Activity Diagram)前面的博客中,我们已经学习完,今天我们来一起学习一下协作图(Sequence Diagram)。协作图和我们前面学习过的时序图都是一种交互图,协作图强调的是收发消息的对象的组织结构。

在系统体系结构的语境中,协作既包括静态方面也包括动态方面的概念组块命名,协作为一个类、接口和其她元素组成的群体命名,他们共同工作,提供了比各个部分的总和更强的合作行为。接着,我们来看一下这一知识点的总体概览:

首先,我们需要明确的就是协作图的基本概念以及协作图有哪些作用:

了解了这些基础知识,有助于加强我们对协作图的理解,搞清楚协作图到底具有怎么样的本领,可以在UML这个大家族中利于不败之地,接下来我们来了解一下协作图的组成元素以及创建协作图的步骤:

通过前面的学习我们知道,序列图和协作图统称为交互图,其中,序列图用来描述对象之间消息发送的先后次序,阐明对象之间的交互过程以及在系统执行过程中的某一具体时刻将会发生的事件;协作图强调收发消息的对象的组织结构。那么当序列图与协作图不期而遇,会擦出怎样的火花:

接下来,我们需要做的,就是把这些理论知识运用到实践中去,接下来,我们就用协作图来描述一下就餐者,服务生和厨师他们之间的关系:

接着,以我们的机房收费系统为例,了解一下协作图在机房中是如何应用的,看看一般用户查询的序列图:

操作员信息维护的序列图:

管理员日结和周结的序列图:

协作图在我们的生活中,也有着广泛的应用,想一想巴黎圣母院,天安门,这两座建筑物展示出的特质都非言语所能形容,在很多方面,这两座剑祖屋在结构上都是简单的,但是意境深远,在她们身上,我们能够看到一致的对称美,仔细研究,发现许多细节,,她们每一部分本身就很美,而这些部分合起来产生的整体效果比各个部分更美而且功能更强。

从巴黎圣母院和天安门我们能感受到,质量好的建筑设计得很协调,同样的道理,我们的软件也是这样,一个质量好的软件密集型系统不仅功能合理,而且也应该体现设计的和谐与平衡,以使得她易于修改,所有结构良好的面向对象系统都充满了模式,一些元素以共同的方式一起工作,提供了比其所有组成部分的总和更强的合作行为。UML之旅,未完待续......

   

UML之协作图的更多相关文章

  1. [UML]UML系列——协作图(通信图)collaboration diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  2. 【UML】协作图Collaboration diagram(交互图)(转)

    http://blog.csdn.net/sds15732622190/article/details/49402269 前言         学完UML时序图,就要看一下UML协作图,因为两张图是相 ...

  3. UML: 协作图

    摘自http://www.umlonline.org/school/thread-38-1-1.html UML1.1时,协作图英文名字叫:Collaboration Diagram,UML2.0时, ...

  4. (五)UML之协作图

    一.什么是协作图? 顾名思义协作图就是合作图,有合作就涉及到多个对象. 协作图(Collaboration Diagram /Communication Diagram,也叫合作图)是一种交互图(in ...

  5. UML简介

    Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型 ...

  6. [UML]UML系列——状态机图statechart diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  7. UML(统一建模语言)

    最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...

  8. 设计模式-UML类图基础

    设计模式之序-UML类图那点事儿 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐的书 ...

  9. 设计模式之序章-UML类图那点事儿

    设计模式之序-UML类图那点事儿 序 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐 ...

随机推荐

  1. 2016年年终CSDN博客总结

    2015年12月1日,结束了4个月的尚观嵌入式培训生涯,经过了几轮重重面试,最终来到了伟易达集团.经过了长达3个月的试用期,正式成为了伟易达集团的助理工程师. 回顾一年来的学习,工作,生活.各种酸甜苦 ...

  2. 用Codility测试你的编码能力

    没有宏观的架构设计,没有特定的框架语言.在Codility提出的一些小问题上,用最纯粹的方式测试你最基本的编码能力. Codility第一课:算法复杂度 各种算法书的开篇大多是算法分析,而复杂度(co ...

  3. 供应商导入的API补充(详解EBS接口开发之供应商导入)

    --供应商 --创建 AP_VENDOR_PUB_PKG.Create_Vendor ( p_api_version IN NUMBER, p_init_msg_list IN VARCHAR2 := ...

  4. Java进阶(四十二)Java中多线程使用匿名内部类的方式进行创建3种方式

    Java中多线程使用匿名内部类的方式进行创建3种方式 package cn.edu.ujn.demo; // 匿名内部类的格式: public class ThreadDemo { public st ...

  5. EJB3基本概念、运行环境、下载安装与运行jboss

    EJB3基本概念 什么是EJB: EJB(EnterpriceJavaBeans)是一个用于分布式业务应用的标准服务端组件模型.采用EJB架构编写的应用是可伸的.事务性的.多用户安全的.采用EJB编写 ...

  6. Android之EditText imeOptions属性解析

    在我们的手机中,虽然通常输入法软键盘右下角会是回车按键,但我们经常会看到点击不同的编辑框,输入法软键盘右下角会有不同的图标.例如:  点击浏览器网址栏的时候,输入法软键盘右下角会变成"GO& ...

  7. [ExtJS5学习笔记]第八节 Extjs5的Ext.toolbar.Toolbar工具条组件及其应用

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/38515499 本文作者:sushengmiyan ------------------ ...

  8. 随机采样和随机模拟:吉布斯采样Gibbs Sampling实现文档分类

    http://blog.csdn.net/pipisorry/article/details/51525308 吉布斯采样的实现问题 本文主要说明如何通过吉布斯采样进行文档分类(聚类),当然更复杂的实 ...

  9. 【一天一道LeetCode】#374. Guess Number Higher or Lower

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 We are ...

  10. android开发之broadcast学习笔记

    android中的广播用的太多了,今天稍微总结一下. 按注册方式分为两种: 1.静态注册广播: 静态注册广播就是在androidManifest.xml文件中注册广播,假设我们要实现这样一个效果,在一 ...