UML大战需求与分析--阅读笔记4
今天阅读了UML大战需求与分析第五、六章。
第五章,状态机图(State Machine Diagram),状态机图是通过描述某事物状态的改变来展现流程的。一般适用于流程围绕某个事物展开,例如请假的流程就围绕请假条的展开。语法,开始于结束符号,实心圆表示开始,空心圆加上圆心点表示结束。矩形框的四个角为弧形,叫做状态。状态与状态之间的箭头叫转换,转换一般都要加上文字进行说明,文字表明转换的条件,有时候也可以不加,如转换到结束状态。当出现分支情况时,转换的文字说明中,要加上一个中括号,括号中表明进入此分支的条件,中括号中的内容叫做监护。在绘制状态机图时,要根据流程的目的和当前存在的问题,思考该事物在流程的不同阶段有什么状态,状态为什么会发生变化。
第六章,顺序图(Sequence Diagram),顺序图是用来表示事物的发展顺序的。基本语法:角色,用小人表示,注明角色名称,也可以用矩形框表示,框内格式 【对象名】:类名;生命线:角色或者对象下面的那条虚线;激活框:激活框也叫会话,就是生命线中的细高矩形;消息:实线箭头加上文字说明,由一个角色指向另一个,也可以指向自己,文字表明做什么事;返回值:虚线加上文字,一般作为消息的反馈,文字表明返回的东西。顺序图加入了三种新的结构:循环【loop】、条件分支【alt】、可选分支【opt】,不过不推荐使用。
流程分析三剑客—活动图,状态机图,顺序图。
顺序图的特点:
- 强调角色之间的交互,信息传递很明确
- 强点按时间顺序分别发生了什么事
- 不太适合表达复杂的特殊流程(循环分支、条件分支、可选分支)
活动图的特点:
- 强调每个角色做了什么事,这些事情的先后关系
- 适合表达各种特殊流程,如分支、并发等
状态机图的特点:
- 事情围绕某东西展开
- 该东西有不同的状态,状态会因为发生了一些事情而改变
作者的使用建议:
- 如果事情是围绕某个东西展开的,可以考虑用状态机图
- 如果事情不是围绕某个东西展开的,状态机图可能不适合,可考虑用顺序图或活动图
- 如果没有复杂的特殊流程,可考虑顺序图
- 如果有复杂的特殊流程,可考虑活动图
- 不要限制自己只是用一种图,可同时使用两种或三中图,从多个角度来分析问题,稍后再适当取舍
通讯图(communication Diagram),语法:事物有关的角色,人用小人表示,系统或物品用矩形加上:文字表示,有直接交互的角色之间用实现连接,实线上有各种消息和返回值,实线箭头表示消息,虚线箭头表示返回值,消息与返回值都应用数字注明交互的先后顺序。通讯图强调相互之间的关系。
UML大战需求与分析--阅读笔记4的更多相关文章
- 阅读笔记 1 火球 UML大战需求分析
伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本 <火球 UML大战需求分析>,首先 ...
- <<UML大战需求分析>>阅读笔记(2)
<<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...
- uml大战需求分析阅读笔记01
<<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...
- 《uml大战需求分析》阅读笔记05
<uml大战需求分析>阅读笔记05 这次我主要阅读了这本书的第九十章,通过看这章的知识了解了不少的知识开发某系统的重要前提是:这个系统有谁在用?这些人通过这个系统能做什么事? 一般搞清楚这 ...
- 《UML大战需求分析》阅读笔记01
在刚学习软件开发的课程时,首先学习了UML设计,但只是学习了基本的语法,虽然在学期通过课堂练习进行了实践,但并没有真正理解其中作用.为了进一步的理解UML的用法,我阅读了<UML大战需求分析&g ...
- UML大战需求分析--阅读笔记01
本次阅读的书籍是<UML大战需求分析>,看了前两章的内容:1 大话UML,2绞尽脑汁的需求分析.这两章内容关联不大,分开描述. 第一章:大话UML 本章主要概述UML是什么,有什么内容.U ...
- UML大战需求分析——阅读笔记04
读<UML大战需求分析>有感04 开发某系统的重要前提是: 这个系统有谁在用? 这些人通过这个系统能做什么事? 一般搞清楚这件事,再画个业务流程图,就能条例清楚的表达系统的需求了.作为一个 ...
- 《UML大战需求分析》阅读笔记06
对<UML>撒站需求分析的阅读现在已到达尾声,虽然读这本书是应老师的要求,但是在后期的阅读中也逐渐喜欢上这本书,在阅读的过程中不断领会需求分析与UML之间的联系,让在软件需求分析阶段有了更 ...
- UML大战需求分析——阅读笔记03
读<UML大战需求分析>有感03 状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模.我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图 ...
随机推荐
- Eclipse for Java EE软件操作集锦(一)
以下是我在Java网站开发过程中,关于软件操作Eclipse中,遇到的一些问题并提供了解决方案.一.java web开发使用的集成开发工具是eclipse for Java EE 官方下载地址:htt ...
- JavaSe:Properties文件格式
Properties文件格式说明 Properties继承自Hashtable,是由一组key-value的集合. 在Java中,常用properties文件作为配置文件.它的格式是什么样的呢? 下图 ...
- JDWP Agent
JDWP Agent Implementation Description Revision History Disclaimer 1. About this Document 1.1 Purpose ...
- 15天玩转redis —— 第九篇 发布/订阅模式
本系列已经过半了,这一篇我们来看看redis好玩的发布订阅模式,其实在很多的MQ产品中都存在这样的一个模式,我们常听到的一个例子 就是邮件订阅的场景,什么意思呢,也就是说100个人订阅了你的博客,如果 ...
- css content之counter-reset、content-increment
万万没想到,写了快三年前端,有不会用的css,居然还有完全没听过.见过的css属性,而且还是CSS2的内容! 关于counter-reset.content-increment两个属性的详解可以参看张 ...
- easy_UI
引入js/css样式 <link rel="stylesheet" type="text/css" href="<%=path%>/ ...
- mybatis: 利用多数据源实现分库存储
之前写过一篇mybatis 使用经验小结 提到过多数据源的处理方式,虽然简单但是姿势不太优雅,今天介绍一些更美观的办法: spring中有一个AbstractRoutingDataSource的抽象类 ...
- [LeetCode] First Bad Version 第一个坏版本
You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...
- android studio 中移除module和恢复module
一.移除Android Studio中module 在Android Studio中想要删除某个module时,在Android Studio中选中module,右键发现没有delete,如图: An ...
- iOS开发中遇到的错误整理 - 集成第三方框架时,编译后XXX头文件找不到
iOS编译报错-XXX头文件找不到 错误出现的情况: 自己在继承第三方的SDK的时候,明明导入了头文件,但是系统报错,提示头文件找不到 解决方法 既然系统找不到,给他个具体路径,继续找去! 路径就填写 ...