从一张图来自百度搜索的图,开始。如下如果我们希望给通过软件管理下图的的数据。我们会做什么?
- 做一个软件的第一步:识别系统边界
及给软件定义, 起名字,知道我们要做什么。这做软件就像写文章,一篇好的文章一定是中心思想明确的,一个好的软件一定是有明确的业务功能;
流程图&活动图
活动图/流程图,在这里开始发挥他的第一个功用:明确业务范围,帮助识别系统边界。
也就是说我们通过业务流程图,明确我们到底要做什么,不做什么。软件都是一个深挖的过程,小即是大;这个过程与写文章如此类似。
招投标流程图
同样是百度图片:
这是一个不标准的流程图,容我们在这里学习一下基本概念
名称 | 定义 | 图 |
---|---|---|
起止框(圆弧形框) | 表示流程开始或结束 | |
处理框(矩形框) | 表示一般的处理功能 | |
判断框(菱形框) | 表示对一个给定的条件进行判断,根据给定的条件是否成立决定如何执行其后的操作。它有一个入口,二个出口。 | |
输入输出框(平行四边形框) | ||
连接点(圆圈) | 用于将画在不同地方的流程线连接起来。 如果图中有两个以 1 标志的连接点(在连接点圈中写上“l”)则表示这两个点是连接在一起的,相当于一个点一样。 这种用法现在不多,一起用这个应为没有很好的软件绘制UML,总会发生纸不够大的问题。 现在可以用连接点,可以避免流程线的交叉或过长,使流程图更清晰。 |
|
流程线(指向线) | 表示流程的路径和方向。 | |
注释框 | 为了对流程图中某些框的操作做必要的补充说明,以帮助阅读流程图的人更好地理解流程图的作用。它不是流程图中必要的部分,不反映流程和操作。 |
以上是一个原始的流程图
流程图是面向过程的,用于描述一个算法,或者业务的过程。
这样的流程图是不好有的,所以我们在流程图上加了各种控件和操作,让他更适合表达现实情况,也适合面向过程的方式。泳道是其中的“重武器”
活动图
活动图的用法
用例活动图 (大部分)
描述用例之间的交互关系,及业务流程对象活动图 (小部分)
描述对象之间的交互关系,及程序流程
再百度个不标准的活动图:
泳道的意义
引入泳道是活动图变成一个面向对象图中最明显的一点。
泳道 --> 对象的职责。
泳道我们就可以知道某个事情是哪个角色做的。
现在还有在泳道图上再加一个维度的图:
- 纵向: 对象职责、角色
- 横向:时间、阶段
活动图控件
活动图(Activity Diagram) | |
---|---|
开始节点 (Initial Node) |
|
结束节点 (Final Node) |
|
动作 (Action) |
|
判断节点 (Decision) 和 合并节点 (Merge) |
注意:方块中不可以写条件,条件写在连接线(动作流)上 |
分叉节点(Fork)和回合节点(Join) | |
动作流(Control Flow) | |
泳道(Swimlane) | |
对象(Object) |
|