第五题:系统顺序图

重要概念:

1.对象:

  对象是特定行为与属性的集合。

  对象的表示方式有三种:

  a.包括对象名和类名

  b.只有类名。

  c.只有对象名

 

2.消息表示形式:

  消息用于描述对象间交互的方式及内容。

  消息分为四种:同步消息异步消息返回消息自关联消息

  a.同步消息:一个对象向另一个对象发出同步消息后,将处于阻塞状态,一直等到另一个对象的回应。

  表示方式:

  b.异步消息:一个对象向另一个对象发出异步消息后,这个对象可以进行其他的操作,不需要等到另一个对象的响应。

  表示方式:

  c.返回消息:同步消息的返回消息

  表示方式:

  注意:创建对象的表示法也是用虚线箭头表示!

  d.自关联消息:用来描述对象内部函数的互相调用。

  表示方式:

3.复合片段

  为了支持有条件和循环的构造(以区别于其他事物),UML使用了图框。图框是图的区域或片段,在图框中具有操作符或标签(例如loop)和保护信息(条件子句)。

  复合片段有多种,在此主要介绍一下几种:条件判断可选循环同步

  a.条件判断:用于描述代码中if…else…这种结构

  标记为“alt

  例如:

  

  b.可选:是一种特殊的“条件判断”,它只是一个if,没有else if或else

  可选的标记为:opt

  例如:

  

  c.循环:是指代码中的for、while之类的语句块。

  循环的标记为:loop

  例如:下图中[m,n]是指至少执行m次,最多执行n次

     

  d.同步:用于描述多线程的情况。

  同步的标记是:par

  例如:

  

   除此之外,顺序图中还包含一种特殊的形式,引用:

  在一个顺序图中,可以引用另一个顺序图,其引用方式类似于复合片段,

  标签为:ref

  例如:

  

4.系统顺序图:

  UML没有定义所谓的“系统顺序图”,而只是定义了“顺序图”。这一限定强调将系统的应用视为黑盒

  系统顺序图是为了阐述与讨论系统相关的输入和输出事件而快速、简单的创建新的制品。

  通常,软件系统主要对以下三种时间进行响应:

  1)来自参与者(人或计算机)的外部事件

  2)时间事件

  3)错误或异常(通常源于外部)

绘制要点:

  具体方法:http://www.cnblogs.com/ywqu/archive/2009/12/22/1629426.html

       http://blog.csdn.net/sunnylgz/article/details/8525287

  两篇文章,第一篇对主要内容进行简单介绍,第二篇更为详细。

  如果只为画出简图,第一篇就足够了。想要深入了解更详细的内容,推荐看第二篇。

注意事项:

  通常用系统顺序图来画一个用例场景(例如主场景或复杂的常用的场景)。

  1、首先要画一个system,前面要加个冒号,不写system,扣全部分,不写冒号扣1分,位置放错扣1分。

    因为要画的是系统事件,没有系统还画什么

  2、顺序:最左边是actor(前面也要加冒号),然后是system,然后就是用例的外部实体

  3、通常只要求描述一个场景(主场景)。主场景是按照最理想的情况把事情做完就可以了,不需要考虑细节

  4、系统顺序图通常只有3-5个事件,消息不应该超过5个!一定要仔细审题,如果某个事件操作很多,直接忽略后面那些细节,否则后面的很难做,越少越好

  5、后置条件:直接用注释写在后面

  6、后置条件只能写这3句话中的一句或几句:

     创建什么对象或删除什么对象修改什么属性生成什么关联

     这是整个画图考试唯一需要文字的地方

  7、操作契约:

     操作、交叉引用(用例)、前置条件、后置条件  

试题答案:

UML期末复习题——2.5:System Sequence Diagram & Post-condition的更多相关文章

  1. UML期末复习题——2.6:Package Diagram

    第六题 包图 重要概念: 1.包图(package Diagram) 由若干个包以及包之间的关系组成.包是一种分组机制,其将一些相关的类集合为一个包,形成高内聚,低耦合的类集合,可以说,一个包相当于一 ...

  2. UML建模之时序图(Sequence Diagram)<转>

    UML建模之时序图(Sequence Diagram)   一.时序图简介(Brief introduction) 二.时序图元素(Sequence Diagram Elements) 角色(Acto ...

  3. UML建模之时序图(Sequence Diagram)

    一.时序图简介(Brief introduction) 二.时序图元素(Sequence Diagram Elements) 角色(Actor) 对象(Object) 生命线(Lifeline) 控制 ...

  4. UML期末复习题——2.7:UML Sequence Diagram

    第七题:顺序图 重要概念: 1. 顺序图的主要介绍,在之前对第5题“系统顺序图”的解析讲解里已经很详细了,在这里只是对部分不全面的内容进行补充. 第五题:系统顺序图&后置条件 http://w ...

  5. UML期末复习题——2.8:UML Design Class Diagram(DCD)

    第八题:设计类图 重要概念: 1. 类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系 ...

  6. UML期末复习题——2.9:UML Deployment Diagram

    附加题:部署图 重要概念: 1. 部署图 部署图表示的是,如何将具体的软件制品(例如可执行文件)分配到计算节点(具有处理服务的某种事物)上.部署图表示了软件元素在物理架构上的部署,以及物理元素之间的通 ...

  7. UML期末复习题——2.3:UML State Diagram

    第三题  状态图 重要概念: 1.定义:事件.状态和转换: 事件:指一件值得注意的事情的发生. 状态:指对象在事件发生之间某时刻所处的情形. 转换:两个状态之间的关系.它表明当某事件发生时,对象从先前 ...

  8. UML期末复习题——2.2:UML Activity Diagram.

    第二题:活动图 重要概念: 活动图:一种有助于使工作流和业务过程可视化的图. 绘制要点: 具体方法见:http://www.cnblogs.com/xiaolongbao-lzh/p/4591953. ...

  9. UML期末复习题——2.1:Use Case Diagram

    第一题:用例图 重要概念: 1.采用参与者和参与者目标的观点: 一组用例实例,每个实例是系统所执行的一系列活动,以此产生对特定参与者具有价值的客观结果. 短语“对特定参与者具有价值的客观结果”是细微而 ...

随机推荐

  1. spring-security2配置精讲(转载)

    本文转载自牛人downpour的帖子: http://www.iteye.com/topic/319965 Spring 论坛上看了不少Spring Security的相关文章.这些文章基本上都还是基 ...

  2. C#基础 结构体、枚举

    一 结构体 结构体(struct)指的是一种数据结构,一个变量组,是一个自定义的集合.通常使用结构体创造新的“属性”,封装一些属性来组成新的类型.   结构体一般定义在Mian函数上面,位于Class ...

  3. Image Processing and Analysis_15_Image Registration:Mutual-Information-Based Registration of Medical Survey——2003

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  4. Mybatis在xml文件中处理大于、小于、不等于号的方法

    在mapper.xml使用大于.小于等符号会和xml语法冲突,解决冲突有两种方式. 方法一: 使用转义字符: 字符名称 字符符号 转义字符 大于号 > > 小于号 < < 与 ...

  5. web开发原生开发混合开发的区别优势

    最近有人在讨论是原生开发好还是,混合开发好,以下是引用了数据来说: 最近原生应用.Web应用.混合应用的名字让我们听得比较熟悉了,现在我们就通过评析各种应用的优缺点来更进一步看看这三者的区别. 一.原 ...

  6. C#在代码中编写输出debug信息-类Debug的使用

    文章:C# 的两种debug 方法 文章:C#跟踪和调试程序-Debug类使用 很全面的文章,可以仔细学习使用下. 文章:C#调试类 没有仔细看. 关键字:Debug类和Trace类有什么区别? 微软 ...

  7. 从头至尾一点点实现自己的ViewPager效果

    对于ViewPager,应该没有人在项目中没使用过它,效果非常的赞,使用也非常简单,但是如果自己来实现这样的效果,我想并非三下五除二的事了,这里涉及到怎么自定义ViewGroup了,它相比自定义Vie ...

  8. linux的简单了解和使用

    一. Linux概述  1.1. 简介  Linux是一个自由的,免费的,源码开放的操作系统.也是开源软件中最著名的例子.其最主要的目的就是为了建立不受任何商品化软件版权制约的,全世界都能使用的类Un ...

  9. 关于tcp send的再次思考

    最近在用socket时,再次思考了一下如何确保对方收到消息的问题 下面是一些不错的回答 https://www.zhihu.com/question/25016042/answer/73785738 ...

  10. 开启树莓派自带的VNC功能

    前期准备 树莓派可以连接路由器或连上wifi,我用的是自己的小米路由器,目的是为了获取内网IP 工具准备 下载 vnc viewer https://www.realvnc.com/en/connec ...