浅谈UML——九种图(一)
前言
学UML将近两个星期了,对UML有了一定的了解,学过的没学过的都知道UML中最最最核心的部分要数那九个图了。浅谈UML九种图。
实例
1.用例图:
什么是用例?描绘一个系统外在可见的需求情况,是代表系统中各个项目相关人员(风险承担人)之间就系统的行为所达成的契约。
用例的基本元素:角色(用户对于系统而言所演的角色)这里的角色可以是人也可以是其他系统;硬件设备;时钟;
用例:用例就是在系统中执行一系列动作。
关系:泛化;依赖;关联;实现。
用例注意用点:应该清晰的定义系统的边界。防止用例过多(合并需求生成用例)从执行者的角度来命名用例。用例描述尽可能细化。避免执行者的名字不一致。避免执行者和用例之间的关系太复杂。注意用例的大小是否恰当。避免用例是否混乱。
用一张图来看:
举例说明:
2.类图:
如果某人在一条黑暗的胡同中走来,并说:“嗨,要不要看看一个UML图?”那个图就可能是一个类图。类图是使用最广泛的一种模型,用来表示系统中各个对象的类型以及其间存在的各种静态关系。什么是类?用来表述系统中各个对象的类型以及其间存在的各种静态关系,每个对象都扮演了一个角色,并为其他成员提供了特定的服务或执行特定的行为。类图的组成如图:
3.对象图:
面向对象软件开发中的“对象”是从现实世界的“对象”中获得灵感,并加以扩充的一个概念,下面是对鄙人对对象图的一些理解。
4.包图:
在面向对象软件开发中,类显然是构建整个系统的基本构造块。但是对于庞大的应用系统而言,其包含的类将是成百上千的再加上其间“阡陌交纵”的关联关系、多重性等,必然大大超过了人们可以处理的复杂度,因此必须引入一种新的构造块,一种能够解决这个问题的构造块——包。
注意问题:
a)避免循环依赖产生。
b)测试时可以以包为测试单位。
c)应该尽量把语义和概念上相同的元素放在同一个包中。
d)对于一个包,找出哪些包内的元素是可以在包外访问的,把这些元素定义为公共的,其他元素都定义为私有的或受保护的。
结语
到这里就给大家带来自己对九种图的小小理解,一张图胜过千言万语,本人菜鸟一枚,若有不恰当的地方,望大神斧正!
若安好,便是晴!
浅谈UML——九种图(一)的更多相关文章
- 浅谈UML——九种图(二)
前言 看我UML视频,对UML图有了一定的了解,终于明白了,为什么一幅图代表了千言万语.每一种图都有其特殊的存在,都在软件开发过程中起了至关重要的作用.那么如何阅读?如何绘制?请看下去: 1 行为图 ...
- 【转】浅谈UML的概念和模型之UML九种图
原文地址:浅谈UML的概念和模型之UML九种图 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...
- UML九种图-包图、类图
UML九种图-包图.类图 一.包 (一)相关概念: 1.包: 一个包=一层=一个命名空间=一个文件夹 2.包的命名: 简单名:王老二 路径名:中国.河北省.廊坊市.廊坊师范学院.信息技术提高班.九期班 ...
- [UML]转:浅谈UML的概念和模型之UML九种图
转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...
- [转]浅谈UML的概念和模型之UML九种图
目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的细节问题: 1.用例图(use case dia ...
- UML_2_浅谈UML的概念和模型之UML九种图
转载:https://my.oschina.net/zhumenzhongren/blog/667353 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...
- UML九种图作用简介
UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...
- UML 小结(6)- UML九种图的比较与学习
UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...
- UML九种图 之 包图和对象图
前言 对象图和包图依然是对系统的静态的描写叙述.UML九种图加上包图,事实上是十幅图. 包图 1.构成 2.包中的元素 类.接口.用例.构件.其他包等.( ...
随机推荐
- 分享知识-快乐自己:遍历Map集合
import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { pu ...
- Unity3D之Mesh(二)为三角形添加纹理
一.直接開始上步驟 首先繪製一個三角形 創建一個材質,以便後續使用: 1)材質使用的貼圖 2)上代碼 using UnityEngine; using System.Collections; /* = ...
- ngCookies都做了什么
根据官方的api文档,ngCookies的$cookieStore服务,提供了这样几个方法: 1.get(key); 2.put(key, value); 3.remove(key); 以上方法都是对 ...
- 景深(Depth of Field)
http://www.cnblogs.com/cxrs/archive/2013/03/22/DepthOfFeild.html 景深(Depth of Field) 什么是景深? 所谓景深,就是当焦 ...
- 标准模板库(STL)学习指南之List链表
本文转载自天极网,原文地址:http://www.yesky.com/255/1910755.shtml.转载请注明 什么是STL呢?STL就是Standard Template Library,标准 ...
- redis源码笔记 - redis-cli.c
这份代码是redis的client接口,其和server端的交互使用了deps目录下的hiredis c库,同时,在这部分代码中,应用了linenoise库完成类似history命令查询.自动补全等终 ...
- JAVAmap容器基本使用
import java.io.PrintWriter; import java.util.HashMap; import java.util.Map; import java.util.Scanner ...
- Python:os.walk()和os.path.walk()用法
转于:https://www.cnblogs.com/zmlctt/p/4222621.html 博主:zmlctt 一.os.walk() 函数声明:os.walk(top,topdown=True ...
- docker出现错误 could not read CA certificate
1. 问题描述 $ docker login # 无法正常使用 其他一堆命令,显示验证失败之类的问题 2. 解决方案 $ unset DOCKER_TLS_VERIFY $ unset DOCKER_ ...
- k8s基础 etcd参数
name 节点名称data-dir 指定节点的数据存储目录listen-peer-urls 监听URL,用于与其他节点通讯listen-client-urls 对外提供服务的地址:比如 http:// ...