当希望描述某个流程的时候,用活动图表示。

在项目中添加一个名称为"Shopping"的文件夹。

把"Orders Model"这个UML类图拖放到Shopping文件夹中。

先创建一个有关购物的活动图。

在Shopping文件夹下创建一个名称为"Browse Toys"的UML活动图。

把一个初始节点拖动到主界面,这个点表示活动开始的地方。

拖动若干个操作到界面上。

拖动结束节点到界面上。

在起始点、操作、结束点之间添加连接。

如果在"把玩具放入购物车"和"结账"操作之间多了一种可能,即有可能是去结账,有可能是返回"选择类别"操作,该如何做呢?

需要在这两者之间加一个决策节点。

在操作和决策节点之间添加连接线。

如果想给连结线一个备注名称,就在Guard属性里设置。

再把粒度放得更小,有关结账的活动图。

添加一个名称为"Checkout"的活动图。

现在,我们希望在"Browse Toys"这个活动图中,点击"结账"就能链接到"Checkout"这个活动图来。

把"Browse Toys"活动图中的"结账"操作删除掉,取而代之添加一个"调用行为的操作",并在其Behavior属性中设置"Checkout"属性值,重新添加连接线。

备注:

● 当设计处理流程的时候可以考虑使用活动图
● 活动图可以理解为是对用例的一种有顺序的串联
● 活动图尽量只描述一种活动
● 活动图可以根据粒度的不同,比如上面,当涉及购物,那结账操作就是购物活动图中的一部分,当涉及结账,就可以把购物活动图中的结账操作展开说,并且给两个活动图添加链接

参考资料:https://channel9.msdn.com/Blogs/clinted

在Visual Studio中使用活动图描述业务流程的更多相关文章

  1. 在Visual Studio中使用组件图描述项目组件依赖关系

    如果想描述项目组件的关系,可以考虑使用UML组建图. 在建模项目下添加一个名称为"Applicaiton Component Structure"的UML组建图. 添加各个组件,并 ...

  2. 在Visual Studio中使用类图描述领域模型

    右键解决方案,添加一个名称为"Domain Model"的UML类图. 首先站在整体的角度添加类,先不要任何属性. 添加Customer对Wishlist的关联,把"属性 ...

  3. 在Visual Studio中使用序列图描述对象之间的互动

    当需要描述多个对象之间的互动,可以考虑使用序列图. 在建模项目下添加一个名称为"Basic Flow"的序列图. 比如描述客户是如何在MVC下获取到视图信息的. 备注: ● 通常是 ...

  4. 在Visual Studio中使用用例图描述参与者与用例的关系

    在"在Visual Studio中使用用例图描述系统与参与者间的关系"中,使用用例图表示参与者与系统的关系,本篇体验参与者与用例(参与者要做的事情)的关系. 首先创建有关Custo ...

  5. 在Visual Studio中使用用例图描述系统与参与者间的关系

    "用例图"用来描述谁用系统,用系统做什么.用例图不涉及使用细节,只用来描述使用人员和系统的关系,也不涉及行动的顺序.一起来体验. 使用Visual Studio 2012创建解决方 ...

  6. Visual Studio中开发

    如何在Visual Studio中开发自己的代码生成器插件    Visual Studio是美国微软公司开发的一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代 ...

  7. 在Visual Studio 中使用git——分支管理-下(九)

    在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...

  8. Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本

    title: Visual Studio中使用Macros插件给代码添加注释.时间和以及自动脚本 date: 2020-09-11 sidebarDepth: 2 tags: 代码 Visual st ...

  9. (15)Visual Studio中使用PCL项目加入WCF WebService参考

    原文 Visual Studio中使用PCL项目加入WCF WebService参考 Visual Studio中使用PCL项目加入WCF WebService参考 作者:Steven Chang 2 ...

随机推荐

  1. Linux本地解析文件/etc/hosts说明【原创】

    windows的域名本地解析文件hosts是可以一个域名对多个IP,如果有一个IP有问题,可以去解析到其他IP Linux的本地解析文件/etc/hosts,是否也可以这样呢.下面做了个测试 先看一下 ...

  2. python的map/reduce区别

    直接上列子 map: 把f(x)作用在list的每一个元素并把结果生成一个新的list” # coding=utf-8def f(x): return x * x r = map(f, [1, 2, ...

  3. springboot自定义SpringApplication启动类

    如果默认的SpringApplication不符合你的口味,你可以创建一个本地的实例并自定义它.例如,关闭banner你可以这样写: public static void main(String[] ...

  4. python里面的引用

    1 对象及其引用 python中,引用是用命名空间来实现的,命名空间维护了变量和对象之间的引用关系. myInt = 27 yourInt = myInt #change the value of y ...

  5. mybatis,genarate自动生成代码

    ---恢复内容开始--- generatorConfig.xml配置文件: <?xml version="1.0" encoding="UTF-8"?&g ...

  6. 为什么尽量别用 setInterval

    为什么尽量别用setInterval   在开发一个在线聊天工具时,经常会有过多少毫秒就重复执行一次某操作的需求.“没问题”,大家都说,“用setInterval好了.”我觉得这个点子很糟糕. 原因之 ...

  7. android短信验证

    短信验证demo http://download.csdn.net/detail/crazy1235/8315279#comment 使用MOB平台开发,用法详见: http://blog.csdn. ...

  8. Python 驱动 MongoDB 示例(PyMongo)

    Python 的MongoDB驱动 pymongo ,使用pip Install pymongo安装即可 最近发现网上的很多实例已经过时了,在此自我探究记录下来. 编写一个接口类来支持MongoDB的 ...

  9. 系统管理员常用的Linux命令

    整理Linux的一些基本系统管理命令作为备忘 ========================================================================= 查看文 ...

  10. css基础之line-height

    什么是line-height(行高)?line-height设置1.5和150%有什么区别?这是一个比较常见的css面试题,带着这个问题往下看.所谓行高是指一段文字中某一行的高度吗?具体来说不是.w3 ...