UML Design Via Visual Studio-Sequence Diagram
本文主要介绍在Visual Studio中设计时序图,内容如下:
- 何时使用时序图
- 时序图元素介绍
- 条件、循环在时序图中的使用
- 直接通过代码生成时序图
一、何时使用时序图
当要查看单个用例内若干对象的行为时,应该使用时序图,时序图用于展示对象之间的协作(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相关推荐
- 【转】【UML】使用Visual Studio 2010 Team System中的架构师工具(设计与建模)
Lab 1: 应用程序建模 实验目标 这个实验的目的是展示如何在Visual Studio 2010旗舰版中进行应用程序建模.团队中的架构师会通过建模确定应用程序是否满足客户的需求. 你可以创建不同级 ...
- UML总结—时序图(Sequence Diagram)和协作图(Collaboration Diagram)
一.时序图 时序图是一种强调时间顺序的交互图,在时序图中,首先把参与交互的对象放在图的上方,沿X轴方向排列.通常把发起交互的对象放在左边,较下级对象依次放在右边,然后把这些对象发送和接受的消息沿Y轴方 ...
- UML 顺序图(时序图) sequence diagram
1. 什么是顺序图 是强调消息时间顺序的交互图.时序图描述类系统中类和类之间的交互,它将这些交互建模成消息交换.时序图是一个模型,用于描述对象间如何随着时间在某些行为方面进行协作.(强调的是消息的时间 ...
- 2017年最喜欢的Visual Studio代码扩展
by Daniel Deutsch 由Daniel Deutsch 2017年最喜欢的Visual Studio代码扩展 (Favorite Visual Studio Code Extensions ...
- 【转】Visual Studio 2010 架构图之用例图(UML Use Case Diagram)
这篇文章是来自园子的,我只是把自己觉得重要的地方,做了更鲜明的标记和解释. 使用Visual Studio 2010可以在项目中添加架构图,项目可以是ASP.NET.Windows Forms.... ...
- Visual Studio UML Use Case Diagram(1)
前几天我们介绍了Visual Studio UML Activity Diagram,今天我们介绍Visual Studio UML Use Case Diagram的内容.通常RUP按照动态划分,分 ...
- Visual Studio UML Activity Diagram(2)
昨天的图文介绍了Visual Studio UML Activity Diagram中所涉及的对象,今天图文我们来介绍这些对象的属性部分并给出UML关于Activity Diagram的元模型类图.通 ...
- Visual Studio UML Use Case Diagram(2)
Use Case Model是捕获用户需求确定系统边界最流行的方法.Use Case Model由两部分组成Use Case Diagram和Use Case Specification,对于不方便描 ...
- Visual Studio 2010中的UML
Visual Studio越来越丰满了,Visual Studio 2010没有MSDN,没有汉化包就2.18G了,可能有很多.net的程序员或初学人员在抱怨,这么大,都有什么用呀?我在刚学习.net ...
最新文章
- 施工管理在计算机上的应用论文,【计算机专业毕业论文】关于计算机应用技术在工程项目管理中的应用...
- Express应用配置端口
- 从大麦网架构学到的东西
- 浏览器执行Python脚本
- Eclipse+SprignBoot实现文件上传
- 精简JRE第一步 — 精简bin目录
- 都是宝宝:北京孩子3成不玩电子游戏睡眠状况最好 江苏孩子起得最早
- c++ datetime mysql_转:C++操作mysql方法总结(1)
- 把汉化的eclipse还原为英语版的小绝招
- 用.net中的SqlBulkCopy类批量复制数据 (转载)
- java中接口与抽象类的区别
- 阿里云与SUSE共同畅聊云原生
- 快速掌握粒子编辑器 —— onebyonedesign网页版
- gd公文文件转换成pdf格式
- 利用高德制作GIS热力图
- 分数加减乘除混合运算带答案_分数加减乘除混合运算专项训练
- 【统计学】数据描述方法(均值、中位数、众数、标准差、离差、四分位数)
- kafka reassign 限速_高速限速有了新规矩!公路限速标志设计规范即将施行
- JavaSE 8 离线API下载
- DDR5内存条容量计算
热门文章
- 对于bhuman中striker文件解析
- windows server 2008 R2系统安装教程
- linux ls mv,Linux基本命令总结一(ls,cp,rm,mv,mkdir,rmdir,cd)
- 柱状图添加数字标签_Python之利用Plotnine作图(一)——简单柱状图
- 说说Broker服务节点、Queue队列、Exchange交换器?
- java最长回文子序列_LeetCode[5] - 最长回文子串动态规划
- python自动化运维平台能用php开发吗_关于数据库自动化运维平台的设计及开发实现思路...
- mooc服务器返回数据为空,服务返回的json数据过大,nginx无法返回给client
- idea persistence生成_真厉害!竟然可以这样用IDEA通过数据库生成lombok版的POJO...
- Java语法基础-2