http://blog.csdn.net/sds15732622190/article/details/49404169

用例图

        用例图是在需求文档中使用的,但一定要配合用例一同使用。写用例和画用例图的目的是为了与用户确认需求,而实际上很多用户看不懂用例图。因此,可以理解为写用例是必须的,画用例图是次要的。

类图

        使用类图的目的就是为了简化逻辑,让我们的思维可以站在类级别的去考虑问题,从而避免一开始就陷入细节。而需要画类图的类有实体类,控制类,边界类。

对象图

        对象图是类图的实例化。当我们画出类图后,只需要将类图中的类实例化,就可以画出对象图。

时序图

用法:箭头开始处是调用该方法的对象,箭头指向处是拥有该方法的对象。
为什么要用时序图:因为时序图可以直观的反应程序执行的过程,特别在表示各个对象间的调用顺序,那么时序图是一个很好的选择。时序图只表示正常的情况,如果要表示不正常的情况用状态图。

协作图

        可以通过时序图转化。用来分析该系统中有哪些类。

活动图

用法:每一个圆角框表示一个活动。
为什么要用活动图:活动图可以清楚的表示完成某件事情中的各个活动过程,让我们可以站在人的思维去考虑代码而不是站在实现代码的角度去考虑程序。当我们不需要代码,只需要了解活动运行过程时需要用到活动图。

状态图

        用来描述一个对象所有可能的状态。状态图有最重要的一点,当类中的状态比较多时才需要用到状态图。将类的各个状态分别表示出来。
作用:
1、分析页面流程。
2、对象状态。
3、需求分析和设计。

构件图

        构件图从软件架构的角度来描述一个系统的主要功能,如子系统、类、包、构建等。使用构件最重要的是复用。

部署图

        当该系统所需要的硬件过多时使用部署图。

总结

一般情况下程序设计对于的分析设计顺序

        类图-->时序图-->活动图

类图和序列图的关系

        一般情况下在分析程序的总体流程时用序列图比较好:因为总体分析是站在类的角度去考虑的。类的关系一般都比较简单(高内聚低耦合)序列图适用于简单的过程。

序列图和活动图的关系

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

综合

        站在类的角度分析用时序图较好,站在函数级别的用活动图比较合适。

【UML】使用环境(转)的更多相关文章

  1. 软件设计之UML—UML的构成[上]

      UML是一种通用的建模语言,其表达能力相当的强,不仅可以用于软件系统的建模,而且可用于业务建模以及其它非软件系统建模.UML综合了各种面向对象方法与表示法的优点,至提出之日起就受到了广泛的重视并得 ...

  2. 使用Visio进行UML建模

    http://www.qdgw.edu.cn/zhuantiweb/jpkc/2009/rjkf/xmwd/Visio_UmlModel.htm#_Toc80417837 内容提纲: 1.VISIO中 ...

  3. 软件设计之UML—UML的构成[上]

    UML是一种通用的建模语言,其表达能力相当的强,不仅可以用于软件系统的建模,而且可用于业务建模以及其它非软件系统建模.UML综合了各种面向对象方法与表示法的优点,至提出之日起就受到了广泛的重视并得到了 ...

  4. UMl概述(转)

    1. UML的组成 UML由视图(View).图(Diagram).模型元素(Model Element)和通用机制(General Mechanism)等几个部分组成. a) 视图(View): 是 ...

  5. java - 策略模式、状态模式、卫语句,避免多重if-else(转)

    前言 当代码中出现多重if-else语句或者switch语句时.弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处 ...

  6. Java重构-策略模式、状态模式、卫语句

    前言 当代码中出现多重if-else语句或者switch语句时.弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处 ...

  7. 【转】Java重构-策略模式、状态模式、卫语句

    前言 当代码中出现多重if-else语句或者switch语句时.弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处 ...

  8. webpack环境搭建开发环境,JavaScript面向对象的详解,UML类图的使用

    PS:因为所有的设计模式都是基于面向对象来完成的,所以在讲解设计模式之前先来过一下面向对象都有哪些知识点 搭建开发环境 初始化npm环境 下载安装nodejs安装即可,nodejs自带npm管理包,然 ...

  9. 设计模式实战研磨 ——第1篇 UML环境搭建

    starUML是开源的基于统一模式语言与模式驱动开发的平台,前身是Plastic,从1996年开始开发.1998年开始,Plastic转变为UML建模工具.2005年改名为StarUML,最新版本St ...

随机推荐

  1. CodeForces - 828C String Reconstruction 并查集(next跳)

    String Reconstruction Ivan had string s consisting of small English letters. However, his friend Jul ...

  2. 在 WinForm/WPF 下制作 Google Material Design 风格程序

    国内社区没有,顺手转.WinForm: https://github.com/IgnaceMaes/MaterialSkin演示:https://www.youtube.com/watch?v=A8o ...

  3. codevs1553 互斥的数

    1553 互斥的数    

  4. 消息中间件之ActiveMQ(非原创)

    文章大纲 一.消息中间件基础知识二.ActiveMQ介绍三.ActiveMQ下载安装(Windows版本)四.Java操作ActiveMQ代码实战五.Spring整合ActiveMQ代码实战六.项目源 ...

  5. 设置eclipse的Maven插件引入依赖jar包后自动下载并关联相应的源码(转)

    好多用 Maven 的时候会遇到这样一个棘手的问题: 就是添加依赖后由于没有下载并关联源码,导致自动提示无法出现正确的方法名,而且不安装反编译器的情况下不能进入方法内部看具体实现 . 其实 eclip ...

  6. 桥接设计模式(Bridge)

    Bridge??? Bridge的意思是"桥梁".就像在现实世界中,桥梁的功能是将河流的两侧连接起来一样,Bridge模式的作用也是将两样东西连接起来,它们分别是类的功能层次结构和 ...

  7. .net C#实现 中文转Unicode、Unicode转中文 及与js对应关系

    中文转Unicode:HttpUtility.UrlEncodeUnicode(string str); 转换后中文格式:"%uxxxx"  举例:"柳_abc123&q ...

  8. Tensorflow版Faster RCNN源码解析(TFFRCNN) (1) VGGnet_test.py

    本blog为github上CharlesShang/TFFRCNN版源码解析系列代码笔记第1篇   VGGnet_test.py ----作者:Jiang Wu(吴疆),未经允许,禁止转载--- -- ...

  9. CentOS7.2配置本地yum源

    1.检查是否有本地yum源 1)检查是否能连网 ping www.baidu.com 2)检查是否有本地yum源 yum list 2.挂载镜像文件 以上检查,说明确实是内网,也确实没有本地yum源, ...

  10. 【转】LINQ to SQL语句(1)之Where

    Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句. Where操作包括3种形式,分别为简单形 ...