前言

学UML将近两个星期了,对UML有了一定的了解,学过的没学过的都知道UML中最最最核心的部分要数那九个图了。浅谈UML九种图。

实例

1.用例图:

什么是用例?描绘一个系统外在可见的需求情况,是代表系统中各个项目相关人员(风险承担人)之间就系统的行为所达成的契约。

用例的基本元素:角色(用户对于系统而言所演的角色)这里的角色可以是人也可以是其他系统;硬件设备;时钟;

用例:用例就是在系统中执行一系列动作。

关系:泛化;依赖;关联;实现。

用例注意用点:应该清晰的定义系统的边界。防止用例过多(合并需求生成用例)从执行者的角度来命名用例。用例描述尽可能细化。避免执行者的名字不一致。避免执行者和用例之间的关系太复杂。注意用例的大小是否恰当。避免用例是否混乱。

用一张图来看:

举例说明:

2.类图:

如果某人在一条黑暗的胡同中走来,并说:“嗨,要不要看看一个UML图?”那个图就可能是一个类图。类图是使用最广泛的一种模型,用来表示系统中各个对象的类型以及其间存在的各种静态关系。什么是类?用来表述系统中各个对象的类型以及其间存在的各种静态关系,每个对象都扮演了一个角色,并为其他成员提供了特定的服务或执行特定的行为。类图的组成如图:

3.对象图:

面向对象软件开发中的“对象”是从现实世界的“对象”中获得灵感,并加以扩充的一个概念,下面是对鄙人对对象图的一些理解。

4.包图:

在面向对象软件开发中,类显然是构建整个系统的基本构造块。但是对于庞大的应用系统而言,其包含的类将是成百上千的再加上其间“阡陌交纵”的关联关系、多重性等,必然大大超过了人们可以处理的复杂度,因此必须引入一种新的构造块,一种能够解决这个问题的构造块——包。

注意问题:

a)避免循环依赖产生。

b)测试时可以以包为测试单位。

c)应该尽量把语义和概念上相同的元素放在同一个包中。

d)对于一个包,找出哪些包内的元素是可以在包外访问的,把这些元素定义为公共的,其他元素都定义为私有的或受保护的。

结语

到这里就给大家带来自己对九种图的小小理解,一张图胜过千言万语,本人菜鸟一枚,若有不恰当的地方,望大神斧正!

若安好,便是晴!

浅谈UML——九种图(一)的更多相关文章

  1. 浅谈UML——九种图(二)

    前言 看我UML视频,对UML图有了一定的了解,终于明白了,为什么一幅图代表了千言万语.每一种图都有其特殊的存在,都在软件开发过程中起了至关重要的作用.那么如何阅读?如何绘制?请看下去: 1 行为图 ...

  2. 【转】浅谈UML的概念和模型之UML九种图

    原文地址:浅谈UML的概念和模型之UML九种图 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...

  3. UML九种图-包图、类图

    UML九种图-包图.类图 一.包 (一)相关概念: 1.包: 一个包=一层=一个命名空间=一个文件夹 2.包的命名: 简单名:王老二 路径名:中国.河北省.廊坊市.廊坊师范学院.信息技术提高班.九期班 ...

  4. [UML]转:浅谈UML的概念和模型之UML九种图

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...

  5. [转]浅谈UML的概念和模型之UML九种图

    目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的细节问题: 1.用例图(use case dia ...

  6. UML_2_浅谈UML的概念和模型之UML九种图

    转载:https://my.oschina.net/zhumenzhongren/blog/667353 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...

  7. UML九种图作用简介

    UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...

  8. UML 小结(6)- UML九种图的比较与学习

    UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...

  9. UML九种图 之 包图和对象图

    前言     对象图和包图依然是对系统的静态的描写叙述.UML九种图加上包图,事实上是十幅图. 包图     1.构成           2.包中的元素      类.接口.用例.构件.其他包等.( ...

随机推荐

  1. 分享知识-快乐自己:遍历Map集合

    import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { pu ...

  2. Unity3D之Mesh(二)为三角形添加纹理

    一.直接開始上步驟 首先繪製一個三角形 創建一個材質,以便後續使用: 1)材質使用的貼圖 2)上代碼 using UnityEngine; using System.Collections; /* = ...

  3. ngCookies都做了什么

    根据官方的api文档,ngCookies的$cookieStore服务,提供了这样几个方法: 1.get(key); 2.put(key, value); 3.remove(key); 以上方法都是对 ...

  4. 景深(Depth of Field)

    http://www.cnblogs.com/cxrs/archive/2013/03/22/DepthOfFeild.html 景深(Depth of Field) 什么是景深? 所谓景深,就是当焦 ...

  5. 标准模板库(STL)学习指南之List链表

    本文转载自天极网,原文地址:http://www.yesky.com/255/1910755.shtml.转载请注明 什么是STL呢?STL就是Standard Template Library,标准 ...

  6. redis源码笔记 - redis-cli.c

    这份代码是redis的client接口,其和server端的交互使用了deps目录下的hiredis c库,同时,在这部分代码中,应用了linenoise库完成类似history命令查询.自动补全等终 ...

  7. JAVAmap容器基本使用

    import java.io.PrintWriter; import java.util.HashMap; import java.util.Map; import java.util.Scanner ...

  8. Python:os.walk()和os.path.walk()用法

    转于:https://www.cnblogs.com/zmlctt/p/4222621.html 博主:zmlctt 一.os.walk() 函数声明:os.walk(top,topdown=True ...

  9. docker出现错误 could not read CA certificate

    1. 问题描述 $ docker login # 无法正常使用 其他一堆命令,显示验证失败之类的问题 2. 解决方案 $ unset DOCKER_TLS_VERIFY $ unset DOCKER_ ...

  10. k8s基础 etcd参数

    name 节点名称data-dir 指定节点的数据存储目录listen-peer-urls 监听URL,用于与其他节点通讯listen-client-urls 对外提供服务的地址:比如 http:// ...