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的状态机图 ...
随机推荐
- MySQL解压版配置步骤
mysql-5.7.14-winx64\bin配置到Path中 在解压路径下复制my-default.ini,修改名称为my.ini 在my.ini添加如下 [mysqld] basedir=C:\\ ...
- 【转】[fix] Wireshark error: There are no interfaces on which a capture can be done. on Mac OS X
I got the following error message when trying to open a network interface for capture using Wireshar ...
- 烂泥:ubuntu 14.04搭建OpenVPN服务器
本文由秀依林枫提供友情赞助,首发于烂泥行天下 公司分部需要连接公司内部的服务器,但是该服务器只允许公司内部的网络访问. 为了解决这个问题,打算使用VPN.对于VPN以前使用最多的是PPTP这个解决方案 ...
- 堆排序(python实现)
堆排序是利用最大最或最小堆,废话不多说: 先给出几个概念: 二叉树:二叉树是每个节点最多有两个子树的树结构.通常子树被称作“左子树”(left subtree)和“右子树” 完全二叉树:除最后一层外, ...
- Linux ——————用Secure传文件时直接拖了文件用的是AssIC导致linux那边直乱码
如下: 解决办法: 直接删除.
- NPOI操作EXCEL(五)——含合并单元格复杂表头的EXCEL解析
我们在第三篇文章中谈到了那些非常反人类的excel模板,博主为了养家糊口,也玩命做出了相应的解析方法... 我们先来看看第一类复杂表头: ...... 博主称这类excel模板为略复杂表头模板(蓝色部 ...
- javascript正则表达式(RegExp)简述
首先我们来思考以下两个个场景 我们使用window操作系统,有时候需要找一个文件,刚刚好这个文件我不知道放哪里去了,这个时候我们该怎么办呢? 我们使用word写论文的时候,不小心将"订价&q ...
- [板子]最小费用最大流(Dijkstra增广)
最小费用最大流板子,没有压行.利用重标号让边权非负,用Dijkstra进行增广,在理论和实际上都比SPFA增广快得多.教程略去.转载请随意. #include <cstdio> #incl ...
- python基础-面向对象进阶
一.什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的研究.它首先被 ...
- WinHttp
using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System. ...