流程图:用于表示完成某件事情中的各个活动过程,其中最重要的部分是“处理 process”单元;

顺序图:用于表示程序执行时各个对象的交互过程(这些对象会按调用时间顺序排序);

状态图:描述一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态之间的转移,其最主要的就是程序目前的状态,每一个状态总结记录程序由开始到目前所有接到的输入。

这么描述可能还不够清晰,下面我将从流程图VS顺序图,以及流程图VS状态图,对这三者的优势和局限性作进一步解读:

流程图 VS 顺序图

这是push流程的一张顺序图:

它直观地反应了push程序执行的过程,各个对象之间的调用顺序是怎样的一目了然。

这还属于比较简单的顺序图。如果是下面这类复杂的,甚至一个方法里面有很多分支语句的,那用顺序图肯定是很不好画了。

因此,一般情况下分析程序中的方法用流程图更好,它可以很好的反应各种复杂的逻辑。

流程图 VS 状态图

这是表示电梯运行状态的一张状态图:

如果用流程图来表示上述状态图,就需要做的处理单元比较多,这种情况下状态图明显在结构上要比流程图要更简单。

流程图和状态图的差别在于,流程图更在意动作是如何完成的,状态图更重视动作的完成,相较不在意是哪一个程序完成的

因此,当状态图中某一个状态下少考虑了哪一个输入事件,我们可以很快地检查出来,但如果在流程图上,我们就无法分辨了。

因此,状态图比较适合对象导向的程序,流程图则比较适合描述程序导向或是数据处理的程序

以上图形均由亿图图示软件绘制而成,感兴趣的小伙伴可以收藏体验下[]~( ̄▽ ̄)~*

1分钟了解流程图、顺序图、状态图相关推荐

  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. ...

  2. 类图、用例图、时序图、状态图、活动图、流程图、顺序图(转)

    软件工程(软件工程中的各种图一般用于以下三个阶段): 需求分析阶段: 用例图:用例图是指由参与者(Actor).用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图.是系统的蓝 ...

  3. 流程图、顺序图、状态图他们三者分别解决什么样的问题?

    流程图:用于表示完成某件事情中的各个活动过程,其中最重要的部分是"处理 process"单元: 顺序图:用于表示程序执行时各个对象的交互过程(这些对象会按调用时间顺序排序): 状态 ...

  4. 【软件工程】看我火眼金睛——系统流程图、程序流程图、数据流图、活动图、状态图、顺序图辨析

    [前言] 在软件工程中我们学习了数据流图,程序流程图,UML中的活动图,状态图,顺序图,这些图貌似都是在描述软件的执行过程,那么它们到底有哪些相同点,又有哪些不同点呢?下面,我们一起来探索一下. [软 ...

  5. UML实践---用例图、顺序图、状态图、类图、包图、协作图

    转载:http://www.uml.org.cn/oobject/200901203.asp 面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UM ...

  6. UML实践----用例图、顺序图、状态图、类图、包图、协作图

    http://www.uml.org.cn/oobject/200901203.asp UML实践----用例图.顺序图.状态图.类图.包图.协作图 2009-01-20 作者:Randy Mille ...

  7. 类图 顺序图 活动图 状态图 用法和比较

    使用电梯仿真系统来解释下列各种图的关系 类图 为什么要使用用类图: 我们在开发系统的时候是不是经常采用 分而治之  的思想 即将其分解为较为简单的子系统. 而使用类图道理也是一样,目的就是为了简化逻辑 ...

  8. UML实践详细经典教程----用例图、顺序图、状态图、类图、包图、协作图

    2009-01-20 作者:Randy Miller 来源:网络 面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified M ...

  9. 【软件架构】软件的设计图纸(用例图,类图,状态图,活动图,顺序图)

    按图索骥---软件的设计图纸 序: 我一直以为,在软件设计中,各种图要比文档重要的多.图可以更加直接的反应软件的构造.尤其是在面向对象的软件设计中.图可以让我们直观的了解各个类和对象直接的交互和关系. ...

最新文章

  1. 黎曼曲面Riemann Surface
  2. 基于cropper和sweetalert的简单图片/头像裁剪上传
  3. 160 - 9 Andrnalin.2
  4. steam api接口 php,php – 将Steam API信息提取到页面
  5. panel中html怎么写,在Panel上绘制Html表?
  6. HDU1235 统计同成绩学生人数【水题+序列处理】
  7. UMl user guide读书笔记
  8. 【python】打造一款自动扫描全网漏洞的扫描器
  9. Nginx跨域配置 proxy_pass
  10. 公开信息查询的一些方法,查征信,查婚姻状况,查询公开个人信息
  11. Qt界面无法切换输入法的解决方法
  12. Excel vba 调用outlook发送邮件
  13. Qt Design Studio安装教程
  14. 9月24号面试总结(康拓普1面)
  15. 【学生毕业设计】基于web学生信息管理系统网站的设计与实现(13个页面)
  16. 从手动测试,到自动化测试老司机,只用了几个月,我的薪资翻了一倍
  17. php word 表格,word 表格
  18. 2021年苍南桥墩高中高考成绩查询,2021年温州各高中高考成绩排名及放榜最新消息...
  19. Zabbix 4.0 企业级自动化监控系统实战
  20. 20款电脑剪贴板软件良心推荐汇总

热门文章

  1. 小蚁摄像机存储卡异常解决方法
  2. Unity打字机效果
  3. ECU诊断软件设计(1)
  4. 爬取国家统计局最近10年年度数据
  5. python 今有物不知其数!
  6. 管理Windows Server 2008本地用户和组
  7. LoRa技术有哪些应用场景?
  8. php自动生成phpunit,[PHPUnit]自动生成PHPUnit测试骨架脚本
  9. 【收藏向】电路(上) 思维导图 3小时不挂科(邱关源教材)
  10. 中国剩余定理扩展中国剩余定理 入门详解