本文主要介绍在Visual Studio中设计时序图,内容如下:

  1. 何时使用时序图
  2. 时序图元素介绍
  3. 条件、循环在时序图中的使用
  4. 直接通过代码生成时序图

一、何时使用时序图

当要查看单个用例内若干对象的行为时,应该使用时序图,时序图用于展示对象之间的协作(Martin Fowler)。

二、时序图元素介绍

先上一个图

上图中展示了时序图的基本元素:参与者,生命线,消息,返回,自我调用。

有一点注意一下,参与者people:People,这个是用类来表示的,格式是name: Class.。 如果用类表示参与者 name可以省略,但是冒号必须保留。如果在看别人画的时序图时发现参与者包含冒号,说明这是一个类。其他可能是一个普通抽象参与者。

三、循环、条件在时序图中的使用

1、条件

业务场景,用户要查询自己银行卡的消费记录,先访问bankService,bankService在收到查询请求时会先访问SecurityService来验证用户身份,如果身份合法则直接查询消费记录,否则,直接返回。

通过在Query消息线条上右键-Surround With-》alt完成操作

2、循环

业务场景,用户可能有多张卡,需要访问多次DataService进行查询。

通过在Query消息线条上右键-Surround With-》Loop完成操作

四、直接通过代码生成时序图

示例代码

生成方式:在方法上右键。

生成的时序图

通过代码生成时序图很少用,还是蛮方便的。这种便于像外人解释自己的代码逻辑,但是前提是代码要要简介,封装的彻底才行。

以上是自己平时工作中对于时序图用的最多的地方。VS里面做起来还是非常方便的。

转载于:https://www.cnblogs.com/Brake/p/UML-Design-Via-Visual-Studio-Sequence-Diagram.html

UML Design Via Visual Studio-Sequence Diagram相关推荐

  1. 【转】【UML】使用Visual Studio 2010 Team System中的架构师工具(设计与建模)

    Lab 1: 应用程序建模 实验目标 这个实验的目的是展示如何在Visual Studio 2010旗舰版中进行应用程序建模.团队中的架构师会通过建模确定应用程序是否满足客户的需求. 你可以创建不同级 ...

  2. UML总结—时序图(Sequence Diagram)和协作图(Collaboration Diagram)

    一.时序图 时序图是一种强调时间顺序的交互图,在时序图中,首先把参与交互的对象放在图的上方,沿X轴方向排列.通常把发起交互的对象放在左边,较下级对象依次放在右边,然后把这些对象发送和接受的消息沿Y轴方 ...

  3. UML 顺序图(时序图) sequence diagram

    1. 什么是顺序图 是强调消息时间顺序的交互图.时序图描述类系统中类和类之间的交互,它将这些交互建模成消息交换.时序图是一个模型,用于描述对象间如何随着时间在某些行为方面进行协作.(强调的是消息的时间 ...

  4. 2017年最喜欢的Visual Studio代码扩展

    by Daniel Deutsch 由Daniel Deutsch 2017年最喜欢的Visual Studio代码扩展 (Favorite Visual Studio Code Extensions ...

  5. 【转】Visual Studio 2010 架构图之用例图(UML Use Case Diagram)

    这篇文章是来自园子的,我只是把自己觉得重要的地方,做了更鲜明的标记和解释. 使用Visual Studio 2010可以在项目中添加架构图,项目可以是ASP.NET.Windows Forms.... ...

  6. Visual Studio UML Use Case Diagram(1)

    前几天我们介绍了Visual Studio UML Activity Diagram,今天我们介绍Visual Studio UML Use Case Diagram的内容.通常RUP按照动态划分,分 ...

  7. Visual Studio UML Activity Diagram(2)

    昨天的图文介绍了Visual Studio UML Activity Diagram中所涉及的对象,今天图文我们来介绍这些对象的属性部分并给出UML关于Activity Diagram的元模型类图.通 ...

  8. Visual Studio UML Use Case Diagram(2)

    Use Case Model是捕获用户需求确定系统边界最流行的方法.Use Case Model由两部分组成Use Case Diagram和Use Case Specification,对于不方便描 ...

  9. Visual Studio 2010中的UML

    Visual Studio越来越丰满了,Visual Studio 2010没有MSDN,没有汉化包就2.18G了,可能有很多.net的程序员或初学人员在抱怨,这么大,都有什么用呀?我在刚学习.net ...

最新文章

  1. 施工管理在计算机上的应用论文,【计算机专业毕业论文】关于计算机应用技术在工程项目管理中的应用...
  2. Express应用配置端口
  3. 从大麦网架构学到的东西
  4. 浏览器执行Python脚本
  5. Eclipse+SprignBoot实现文件上传
  6. 精简JRE第一步 — 精简bin目录
  7. 都是宝宝:北京孩子3成不玩电子游戏睡眠状况最好 江苏孩子起得最早
  8. c++ datetime mysql_转:C++操作mysql方法总结(1)
  9. 把汉化的eclipse还原为英语版的小绝招
  10. 用.net中的SqlBulkCopy类批量复制数据 (转载)
  11. java中接口与抽象类的区别
  12. 阿里云与SUSE共同畅聊云原生
  13. 快速掌握粒子编辑器 —— onebyonedesign网页版
  14. gd公文文件转换成pdf格式
  15. 利用高德制作GIS热力图
  16. 分数加减乘除混合运算带答案_分数加减乘除混合运算专项训练
  17. 【统计学】数据描述方法(均值、中位数、众数、标准差、离差、四分位数)
  18. kafka reassign 限速_高速限速有了新规矩!公路限速标志设计规范即将施行
  19. JavaSE 8 离线API下载
  20. DDR5内存条容量计算

热门文章

  1. 对于bhuman中striker文件解析
  2. windows server 2008 R2系统安装教程
  3. linux ls mv,Linux基本命令总结一(ls,cp,rm,mv,mkdir,rmdir,cd)
  4. 柱状图添加数字标签_Python之利用Plotnine作图(一)——简单柱状图
  5. 说说Broker服务节点、Queue队列、Exchange交换器?
  6. java最长回文子序列_LeetCode[5] - 最长回文子串动态规划
  7. python自动化运维平台能用php开发吗_关于数据库自动化运维平台的设计及开发实现思路...
  8. mooc服务器返回数据为空,服务返回的json数据过大,nginx无法返回给client
  9. idea persistence生成_真厉害!竟然可以这样用IDEA通过数据库生成lombok版的POJO...
  10. Java语法基础-2