1分钟了解流程图、顺序图、状态图
流程图:用于表示完成某件事情中的各个活动过程,其中最重要的部分是“处理 process”单元;
顺序图:用于表示程序执行时各个对象的交互过程(这些对象会按调用时间顺序排序);
状态图:描述一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态之间的转移,其最主要的就是程序目前的状态,每一个状态总结记录程序由开始到目前所有接到的输入。
这么描述可能还不够清晰,下面我将从流程图VS顺序图,以及流程图VS状态图,对这三者的优势和局限性作进一步解读:
流程图 VS 顺序图
这是push流程的一张顺序图:
它直观地反应了push程序执行的过程,各个对象之间的调用顺序是怎样的一目了然。
这还属于比较简单的顺序图。如果是下面这类复杂的,甚至一个方法里面有很多分支语句的,那用顺序图肯定是很不好画了。
因此,一般情况下分析程序中的方法用流程图更好,它可以很好的反应各种复杂的逻辑。
流程图 VS 状态图
这是表示电梯运行状态的一张状态图:
如果用流程图来表示上述状态图,就需要做的处理单元比较多,这种情况下状态图明显在结构上要比流程图要更简单。
流程图和状态图的差别在于,流程图更在意动作是如何完成的,状态图更重视动作的完成,相较不在意是哪一个程序完成的。
因此,当状态图中某一个状态下少考虑了哪一个输入事件,我们可以很快地检查出来,但如果在流程图上,我们就无法分辨了。
因此,状态图比较适合对象导向的程序,流程图则比较适合描述程序导向或是数据处理的程序。
以上图形均由亿图图示软件绘制而成,感兴趣的小伙伴可以收藏体验下[]~( ̄▽ ̄)~*
1分钟了解流程图、顺序图、状态图相关推荐
- OOSE-5-用例图/顺序图/状态图/活动图
文章目录 1 用例图 1.1 参与者 1.2 用例 1.3 用例描述 1.4 一个示例 2 顺序图 2.1 基本概念 2.2 组成部分 2.2.1 对象 2.2.2 生命线 2.2.3 激活 2.2. ...
- 类图、用例图、时序图、状态图、活动图、流程图、顺序图(转)
软件工程(软件工程中的各种图一般用于以下三个阶段): 需求分析阶段: 用例图:用例图是指由参与者(Actor).用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图.是系统的蓝 ...
- 流程图、顺序图、状态图他们三者分别解决什么样的问题?
流程图:用于表示完成某件事情中的各个活动过程,其中最重要的部分是"处理 process"单元: 顺序图:用于表示程序执行时各个对象的交互过程(这些对象会按调用时间顺序排序): 状态 ...
- 【软件工程】看我火眼金睛——系统流程图、程序流程图、数据流图、活动图、状态图、顺序图辨析
[前言] 在软件工程中我们学习了数据流图,程序流程图,UML中的活动图,状态图,顺序图,这些图貌似都是在描述软件的执行过程,那么它们到底有哪些相同点,又有哪些不同点呢?下面,我们一起来探索一下. [软 ...
- UML实践---用例图、顺序图、状态图、类图、包图、协作图
转载:http://www.uml.org.cn/oobject/200901203.asp 面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UM ...
- UML实践----用例图、顺序图、状态图、类图、包图、协作图
http://www.uml.org.cn/oobject/200901203.asp UML实践----用例图.顺序图.状态图.类图.包图.协作图 2009-01-20 作者:Randy Mille ...
- 类图 顺序图 活动图 状态图 用法和比较
使用电梯仿真系统来解释下列各种图的关系 类图 为什么要使用用类图: 我们在开发系统的时候是不是经常采用 分而治之 的思想 即将其分解为较为简单的子系统. 而使用类图道理也是一样,目的就是为了简化逻辑 ...
- UML实践详细经典教程----用例图、顺序图、状态图、类图、包图、协作图
2009-01-20 作者:Randy Miller 来源:网络 面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified M ...
- 【软件架构】软件的设计图纸(用例图,类图,状态图,活动图,顺序图)
按图索骥---软件的设计图纸 序: 我一直以为,在软件设计中,各种图要比文档重要的多.图可以更加直接的反应软件的构造.尤其是在面向对象的软件设计中.图可以让我们直观的了解各个类和对象直接的交互和关系. ...
最新文章
- 黎曼曲面Riemann Surface
- 基于cropper和sweetalert的简单图片/头像裁剪上传
- 160 - 9 Andrnalin.2
- steam api接口 php,php – 将Steam API信息提取到页面
- panel中html怎么写,在Panel上绘制Html表?
- HDU1235 统计同成绩学生人数【水题+序列处理】
- UMl user guide读书笔记
- 【python】打造一款自动扫描全网漏洞的扫描器
- Nginx跨域配置 proxy_pass
- 公开信息查询的一些方法,查征信,查婚姻状况,查询公开个人信息
- Qt界面无法切换输入法的解决方法
- Excel vba 调用outlook发送邮件
- Qt Design Studio安装教程
- 9月24号面试总结(康拓普1面)
- 【学生毕业设计】基于web学生信息管理系统网站的设计与实现(13个页面)
- 从手动测试,到自动化测试老司机,只用了几个月,我的薪资翻了一倍
- php word 表格,word 表格
- 2021年苍南桥墩高中高考成绩查询,2021年温州各高中高考成绩排名及放榜最新消息...
- Zabbix 4.0 企业级自动化监控系统实战
- 20款电脑剪贴板软件良心推荐汇总