前言

学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. Application.messagebox对话框样式

    if Application.MessageBox('删除不能恢复,确认删除吗?', '删除提示', MB_OKCANCEL + MB_ICONQUESTION)=mrOk thenbegin Sho ...

  2. leetcode 204. Count Primes(线性筛素数)

    Description: Count the number of prime numbers less than a non-negative number, n. 题解:就是线性筛素数的模板题. c ...

  3. tensorflow训练过程中内存溢出

    罪魁祸首是训练过程中给模型传值时的如下语句:

  4. hdu 3537 Daizhenyang's Coin(博弈-翻硬币游戏)

    题意:每次可以翻动一个.二个或三个硬币.(Mock Turtles游戏) 初始编号从0开始. 当N==1时,硬币为:正,先手必胜,所以sg[0]=1. 当N==2时,硬币为:反正,先手必赢,先手操作后 ...

  5. OpenCV - Windows(win10)编译opencv + opencv_contrib

    在之前的几篇文章中,我提到了在Android.Linux中编译opencv + opencv_contrib,这篇文章主要讲在Windows中编译opencv + opencv_contrib. 首先 ...

  6. 【LeetCode】015 3Sum

    题目: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find al ...

  7. Maven 排除依赖jar包

    当我们引入第三方jar包的时候,难免会引入传递性依赖,有些时候这是好事,然而有些时候我们不需要其中的一些传递性依赖 比如我们不想引入传递性依赖commons-logging,我们可以使用exclusi ...

  8. poj 2390 Bank Interest(计算本利和)

    一.Description Farmer John made a profit last year! He would like to invest it well but wonders how m ...

  9. HDU1042(N!:设4为基数)

    N! Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Submi ...

  10. C++输入输出知识

    1.strtok将字符串中的单词用' '分割出来 #include<iostream> #include<cstdio> #include<cstdlib> #in ...