UML 是统一建模语言的缩写,就像使用一组图表来可视化软件建模的蓝图(或设计计划)。它不仅可以让您彻底评估整个概念,还可以确保团队中的每个人都在同一页面上。

 

UML 图可以组织成两个不同的组。

结构图与行为图

结构图 (Structure Diagram) 描绘了系统的静态方面,它们代表了构成主要结构的图的那些部分,因此是稳定的。

行为图 (Behavioral Diagram) 显示了系统如何在“运动”中工作,即系统如何与外部实体和用户交互、如何响应输入或事件以及它在哪些约束下运行。

类图 (Class Diagram)

类图是用于软件应用程序开发的最重要的UML 图。类图描述了系统中对象的类型以及它们之间存在的不同类型的关系。

类图示例 1

从上图可以看出,UML 类图的基本元素是:

  1. 类名(应始终以粗体格式书写)
  2. 属性 (Attribute)
  3. 操作(Operation)
 

对象图——类图的一个实例

对象图可以被认为是类图的一个独特案例,它是系统在某个时间点的详细状态的快照。它可以在某个时间点包含结构内对象的数据值。因为它显示实例而不是类,所以它也被称为实例图。类图和对象图的区别在于目的,以及它们在特定时间显示的内容。

 

对象图示例 1

 

对象图示例 2

组件图——模型实现细节

组件图将系统的实现视图可视化。

 

组件图示例

有两种类型的组件接口:提供接口和必需接口。

提供的接口

从他人调用并提供服务的实体。

所需接口

调用和使用他人服务的实体。

接口

它可以用作“接入点”,将提供的接口和所需的接口连接在一起。

用例图——功能建模

作为行为 UML 类型中最著名的图类型,用例图从用户的角度描述系统的行为。用例图由四个对象组成。

  1. 参与者:与系统用例交互的人或物
  2. 用例:系统功能的特定部分
  3. System:定义系统中包含的功能
  4. 包:可选以表示用例的所有权
 

用例图示例

用例规范

用例就像一个故事,讲述当用户开始与系统互动时会发生什么情况。如果你不提前准备一些要点,你就无法分享正确的故事。这就是用例规范出现的原因!这是用于记录用例详细信息的标准用例模板。

 

用例规范。

扩展两个用例之间的关系

顾名思义,它扩展了基本用例并为系统添加了更多功能。

包括两个用例之间的关系

主要目的是在多个用例中重用通用操作。

活动图 - 建模流程

活动图以图形方式说明了任何组件的工作流程,并描述了执行用例而不是实现所涉及的步骤。

 

 

Unified Modeling Language (UML)

UML快速概述 - All you need to know about UML的更多相关文章

  1. uml视频系列(二)——uml的概述

    在与uml进行了第一次的接触后,就被uml的博学多才给迷住了,uml居然可以做这么多的东西.才思敏捷的uml是设计软件的好帮手. 你还在为自己的类图不会设计而感到无助吗?你还在为你的对象不好确定而感到 ...

  2. UML建模——概述

    轻松玩建模 统一建模语言UML快速入门 http://soft.yesky.com/lesson/281/2472281.shtml UML是一种定义良好.易于表达.功能强大且普遍适用的建模语言.它溶 ...

  3. Mego开发文档 - 快速概述

    Mego 快速概述 Mego 是一款轻量级,可扩展和跨平台的数据访问技术. Mego 是一个对象关系映射器(O / RM),它使.NET开发人员能够使用.NET对象处理数据库.它消除了开发人员通常需要 ...

  4. UML图概述

    UML图概述 UML是一种分析设计语言,即一种建模语言.UML是由图形符号表达的建模语言,其结构主要包括视图.图.模型元素和通用机制四部分. UML包括5种视图,分别是用户视图.结构视图.行为视图.实 ...

  5. 【UML】概述以及面向对象技术总结

    导读:结束了软工文档后,就开始了UML的学习,不管学习什么,都要先从整体上去把握,然后再从细节上去分析理解.在视频的开头,就对UML进行了概述.然后接着讲了面向对象技术,用例图,类图和包图等.看着软工 ...

  6. UML 2.5版本与UML分类概述

    UML 2.5版本与UML分类概述 转 http://www.umlstudy.com/uml-25-diagrams.html UML简述 UML图是设计.实现或已经存在的系统模型的部分图形表示(视 ...

  7. UML之概述

              UML,英文名曰:Unified  Modeling Language,她还有个中文名字叫统一建模语言,简单的来说,她就是一种绘制软件蓝图的标准语言.她的表达能力特别强,可以描述开 ...

  8. [转载]基于UML的需求分析和系统设计(完整案例和UML图形演示)

    小序: 从学生时代就接触到UML,几年的工作中也没少使用,各种图形的概念.图形的元素和属性,以及图形的画法都不能说不熟悉.但是怎样在实际中有效地使用UML使之发挥应有的作用,怎样捕捉用户心中的需求并转 ...

  9. UML类图简单学习 各种对象、关系UML表示法

    <大话设计模式>上面的UML类图: 类的UML表示 动物 的矩形框 表示是一个类. 类图分为三层,第一层显示类的名称,如果是抽象类,则用斜体表示:第二层是类的特性,通常就是类的字段和属性: ...

随机推荐

  1. java 线程基础篇,看这一篇就够了。

    前言: Java三大基础框架:集合,线程,io基本是开发必用,面试必问的核心内容,今天我们讲讲线程. 想要把线程理解透彻,这需要具备很多方面的知识和经验,本篇主要是关于线程基础包括线程状态和常用方法. ...

  2. K8S集群架构的组件组成

    1.Master--主控节点 (1)apiserver:集群统一入口,以restful的方式,交给etcd存储 (2)scheduler:节点调度,选择node节点应用部署 (3)controller ...

  3. 命令行解析函数:getopt_long、getopt

    一.前言 在学习一些项目代码时,尤其涉及到命令行传参的代码,经常遇到getopt相关的函数,对这一类函数可以说是既陌生又熟悉.陌生是因为不知道它是干啥的,熟悉呢,是因为经常遇到.于是乎在追踪了多天ip ...

  4. WEB漏洞——PHP反序列化

    序列化 首先说说什么是序列化 序列化给我们传递对象提供了一种简单的方法.serialize()将一个对象转换成一个字符串,并且在转换的过程中可以保存当前变量的值 而反序列化unserialize()将 ...

  5. Linux从头学12:读完这篇【特权级】文章,你就比别人更“精通”操作系统!

    作 者:道哥,10+年嵌入式开发老兵,专注于:C/C++.嵌入式.Linux. 关注下方公众号,回复[书籍],获取 Linux.嵌入式领域经典书籍:回复[PDF],获取所有原创文章( PDF 格式). ...

  6. Nginx rewrite跳转 location匹配

    目录: 一.常用的Nginx 正则表达式 二.location 三.rewrite 一.常用的Nginx 正则表达式 1 ^ :匹配输入字符串的起始位置 2 $ :匹配输入字符串的结束位置 3 * : ...

  7. golang接口类型判断 VS 接口类型查询

    接口类型判断:接口.(类型) 1.类型查询:查询接口数据对应的类型是否是指定的类型 2.类型转化:如果是指定类型,就将数据转化为接口类型查询: 1.reflect.TypeOf(接口) 2.接口.(T ...

  8. 数据结构逆向分析-List

    数据结构逆向分析-List 首先STL中的List就是一个链表,但是肯定C++用了很多封装,所以这里我们来一探究竟. 开始 首先先写一些简单的分析的源代码: #include<iostream& ...

  9. 【OI】竖式问题分析与解答

    题目:找出所有形如abc*de(三位数乘以两位数)的算式,使得在完整的竖式中,所有数字都属于一个特定的数字集合.输入数字集合(相邻数字之间没有空格),输出所有竖式.每个竖式前应有编号,之后应有一个空行 ...

  10. PHP方法参数的那点事儿

    在所有的编程语言中,方法或者函数,都可以传递一些参数进来进行业务逻辑的处理或者计算.这没什么可说的,但是在PHP中,方法的参数还有许多非常有意思的能力,下面我们就来说说这方面的内容. 引用参数 涉及到 ...