状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模。我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图主要用于建立对象类或对象的动态行为模型,描述系统中某一个对象所经历的各个状态、引起状态或活动转移的事件,以及因状态或活动转移而伴随的动作。但在以前的学习过程中,我们并没有学到过“伪状态”,后经查阅知:伪状态是指在一个状态机中具有状态的形式,同时具有特殊行为的顶点。它是一个瞬时状态,用于构造转换的细节。当伪状态处于活动时,状态机还没有完成从运行到完成的步骤,也不会处理事件。通常使用伪状态来连接转换段,到一个伪状态的转换意味着会自动转换到另一个状态而不需要事件来触发。

状态机图也可用于描述用例图,以及全系统的动态行为。在一个系统开发阶段,它可以对对象生命周期、反应型对象等进行建模。可以清楚地看出每一个对象在不同阶段的状态。

顺序图显示了个分类角色活动的时间顺序,但角色间的关系是隐式的。用一条生命线显示随时间安排的一系列消息,以二维图表来显示交互。纵向是时间轴,时间自上而下。横向显示了代表协作中单个对象的分类角色。消息显示为从一个角色生命线到另一个角色生命线的箭头,箭头用从上而下来的时间顺序来安排。UML顺序图的一个用途是显示用例的行为序列。当行为被实现时,每个顺序图中的消息同对象的操作或状态机中迁移上的事件触发相一致。

UML大战需求分析——阅读笔记06的更多相关文章

  1. <<UML大战需求分析>>阅读笔记(2)

    <<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...

  2. uml大战需求分析阅读笔记01

    <<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...

  3. UML大战需求分析--阅读笔记01

    本次阅读的书籍是<UML大战需求分析>,看了前两章的内容:1 大话UML,2绞尽脑汁的需求分析.这两章内容关联不大,分开描述. 第一章:大话UML 本章主要概述UML是什么,有什么内容.U ...

  4. UML大战需求分析——阅读笔记04

    读<UML大战需求分析>有感04 开发某系统的重要前提是: 这个系统有谁在用? 这些人通过这个系统能做什么事? 一般搞清楚这件事,再画个业务流程图,就能条例清楚的表达系统的需求了.作为一个 ...

  5. UML大战需求分析——阅读笔记03

    读<UML大战需求分析>有感03 状态机图和活动图在样子比较相似,但状态机图是用来为对象的状态及造成状态改变的事件建模.我们大二学习UML统一建模语言状态机图模块时了解到,UML的状态机图 ...

  6. UML大战需求分析阅读笔记2

    全面深入理解客户的业务,才能帮助我们准确的把握客户的需要.而在理解客户业务的同时,我们往往需要做业务流程再造(BPR:Business Process Reengineering)的工作.BPR简单说 ...

  7. UML大战需求分析阅读笔记1

    UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言.你可能会问:这明明是一种图形,为什么说是语言呢?伟大的汉字还不是 ...

  8. UML大战需求分析--阅读笔记02

    这次阅读了第三章--类图.本章主要讲解了类图的基本使用规则和一些使用的例子.类图是UML中非常重要的一部分,作用很大. 类图之间有五种关系:关联关系,聚合关系,组合关系,泛化关系,依赖关系.关联关系有 ...

  9. UML大战需求分析——阅读笔记02

    类图是理解面向对象思想的强有力工具,也是业务概念模型分析中最常用的一种UML图.对开发人员来说,并不是对每一个业务流程都很熟练,在客户那里传达过来的需求资料中,有很多术语会把思绪搞晕,他们之间错综复杂 ...

随机推荐

  1. CTP程序化系统开发(C++ && PHP)

    2016-12-13 11:03:52 借助CTP的DEMO(上海期货交易公司提供的), 需要自己在 http://www.simnow.com.cn  上注册账号, 再者,需要下载[博易大师]软件, ...

  2. Request —— 让 Node.js http请求变得超简单

    github地址: https://github.com/request/request 安装: npm install request --save-dev

  3. Apache的dbutils的架构图

  4. 安装jhipster

    基础软件安装 安装JDK,需要配置环境变量.暂时使用1.8版本 安装maven,需要配置环境变量.  http://maven.apache.org/ 安装Node.js ,https://nodej ...

  5. bootstrapvalidator+bootstrap-select select无法校验问题解决方法

    $("#form_user_input") .bootstrapValidator( { message : 'This value is not valid', excluded ...

  6. 深夜用git真是醉了

    t吐槽一下那些 感觉命令行高效的傻逼们 我只想吃个牛肉串  你让我先学会宰牛? 命令不是对底层代码的封装? 程序的终极奥义就是把很多复杂的东西,封装到一个按钮就能完成 .叫做简为美. 浪费别人的时间等 ...

  7. MVC重定向-自定义路由篇

    public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.Ignore ...

  8. 行列转置(Oracle)

    一.Oracle行列转置 1.行转列 (1)创建表格.插入测试数据 create table student( id number, name ), course ), score number ) ...

  9. 连接池的实现 redis例子

    # -*- encoding:utf-8 -*- # import pymysql # # conn = pymysql.connect(host="127.0.0.1", por ...

  10. C# 如何强制关闭WINWORD进程

    private void KillProcess(string processName) //调用方法,传参{try{ Process[] thisproc = Process.GetProcesse ...