UML

统一建模语言(Unified Modeling Language, UML)是一种描述软件系统结构的图形化语言。

类图

类图用于描述类之间的关系,类图中主要的关系包括:

聚集

带空心菱形的实心线,菱形指向整体

是整体与部分的关系,且部分可以离开整体而单独存在

范化

带三角箭头的实线,箭头指向基类

即继承关系,表示派生类扩展了基类的功能

依赖

带箭头的虚线, 指向被依赖者

被依赖事物变化导致依赖事物变化

实现

带三角箭头的虚线,箭头指向接口

实现与接口之间的关系

关联

一个类可以访问另一个类的成员,关联可以是双向的,也可以是单向的.

双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头指向被拥有者

用例图

扩展/包含关系

带箭头的虚线, 并标注 <> / <>

用例图的聚集,范化与依赖关系与类图相同

数据流图

数据流

带箭头的虚线

加工

空心圆圈,表示对数据流的处理

存储

少一条边的矩形,表示数据存储如数据表等

外部实体

实心矩形,表示软件系统外的实体,如工作人员等

ER图

实体关系图(Entity Relationship Diagram)用来描述实体及其关系。

常用于关系型数据库设计和建模。

实体, 属性与联系集

实体型(Entity)

具有相同属性的实体具有相同的特征和性质,比如数据表:

customer(customer_id, customer_name, customer_street, customer_city)

loan(loan_number, amount)

在E-R图中用矩形表示,矩形框内写明实体名

属性(Attribute)

实体所具有的某一特性,如数据表中的一列:

customer_id

在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来

联系

反映实体之间的关系,如两个数据表之间的联系表:

borrower(customer_id, loan_number)

在E-R图中用菱形表示,菱形框内写明联系名

示例:

弱实体

一个实体的存在必须以另一实体的存在为前提。前者就称为“弱实体”,后者称为“强实体”

弱实体主键部分或整体依赖于强实体的主键。

弱实体用双线矩形框表示。与弱实体的联系用双线菱形框表示

弱实体参与联系时应该是“完全参与”,因此弱实体与联系间的联系也画成双线边

特殊化与范化

与UML中范化的含义相同

派生关系继承基关系的属性

UML与ER图的更多相关文章

  1. 毕业设计之感悟 —— UML 与 ER 图

    今天毕业设计答辩,虽然我第一个上场,但是不是特别紧张,因为整个系统都是我写的.我以为自己天衣无缝,能应付所有老师的所有问题.事实上,我被老师教育了一番. 老师说我,毕业论文中没有一个类.我一开始比较懵 ...

  2. 各种图(流程图,思维导图,UML,拓扑图,ER图)简介

    来源于:http://www.cnblogs.com/jiqing9006/p/3344221.html 流程图 1.定义:流程图是对过程.算法.流程的一种图像表示,在技术设计.交流及商业简报等领域有 ...

  3. 关于ER图和UML图之间的对比

    ER图与UML图 ER图:实体-联系图(Entity-Relation Diagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象).属性和联系的方法,用来 ...

  4. ER图与UML图

    ER图:实体-联系图(Entity-Relation Diagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象).属性和联系的方法,用来描述现实世界的概念 ...

  5. 【转】各种图(流程图,思维导图,UML,拓扑图,ER图)简介

    原文地址:各种图(流程图,思维导图,UML,拓扑图,ER图)简介 流程图 1.定义:流程图是对过程.算法.流程的一种图像表示,在技术设计.交流及商业简报等领域有广泛的应用. 2.案例 3.计算机语言只 ...

  6. powerdesign、navacat、ER图、uml、类图、时序图

    关于建表和生成实体以及ER图的简便方法 a:用navacat客户端生成简单的ER图,并生成建表sql,执行生成表. b:用powerdesign连接数据库,反向生成带有注释的ER图. c:用ideal ...

  7. 软件工程 #02# Entity Relationship Diagram VS. 用 UML 中的类图表示 E-R 图

    不同的老师叫我们画 E-R 图居然是不一样的,于是我仔细研究了一番.. 通常所说的 E-R 图(外文全称 Entity Relationship Diagram,简称 ERD)长这个样子: 而有时候它 ...

  8. uml类图和er图中主外键的表示区别

    在er图也就是数据库中,无论是mysql/oracle都是从表引用主表的pk作为外键. 而在uml类图表示法中,他们的顺序则刚好相反,从主对象导向到子对象,如下: 主体是资金借款方,征信信息和资金借款 ...

  9. 《GO Home Trash!》UML类图,ER图以及数据库设计

    <Go Home Trash!>UML类图 ER图以及数据库中数据表 分析: 这款软件经过我们前期的讨论以及需求分析,确定了用户,客服以及管理员三个实体.在设计UML类图时,对各个实体之间 ...

随机推荐

  1. linux系统编程之信号(四):alarm和可重入函数

    一,alarm() 在将可重入函数之前我们先来了解下alarm()函数使用: #include <unistd.h> unsigned int alarm(unsigned int sec ...

  2. linux系统编程之进程(一):进程与程序

    本节目标: 什么是程序 什么是进程 进程数据结构 进程与程序区别与联系 一,什么是程序? 程序是完成特定任务的一系列指令集合 二,什么是进程? 从用户的角度来看进程是程序的一次动态执行过程 从操作系统 ...

  3. 曲演杂坛--Update的小测试

    今天偶然想起一个UPDATE相关的小问题,正常情况下,如果我们将UPDATE改写成与之对应的SELECT语句,其SELECT查询结果应与UPDATE的目标表存在一对一的关系,例如: 对于UPDATE语 ...

  4. DBCC--CHECKIDENT

    检查活或重置自增键的标识值,可以使用NORESEED 来检查当前标识值和标识列在表中的最大值. 如果当前标识值与表中数据冲突或希望将标识值重置到一个较小的值时,可以只用RESEED 来设置 DBCC ...

  5. 关于C_Sharp集中处理异常

    1.写在前面 “异常意味着什么?”,想必不用对此做多余的解释,我们有理由相信在任何情况下任何应用程序都有可能出现异常,若在程序中没有对异常进行处理,则操作系统会以粗暴的方式处理掉它(弹出错误提示框), ...

  6. WebRequest请求被中止: 未能创建 SSL/TLS 安全通道

    使用System.Net.WebRequest.Create(url)抓取某网站信息时 ,出现“未能创建 SSL/TLS 安全通道”此条异常信息 解决方案 引用:using System.Net; 在 ...

  7. visual studio 2015 update 3 简体中文企业版下载地址

    文件名: cn_visual_studio_enterprise_2015_with_update_3_x86_x64_dvd_8923298.iso语言: Chinese - SimplifiedS ...

  8. Could not load file or assembly '$SharePoint.Project.AssemblyFullName$'

    The fix is simple, do the following: 1.  Open your project file in NotePad 2.  Find the PropertyGrou ...

  9. 第五章 HashMap源码解析

    5.1.对于HashMap需要掌握以下几点 Map的创建:HashMap() 往Map中添加键值对:即put(Object key, Object value)方法 获取Map中的单个对象:即get( ...

  10. JavaScript定时器作业

    JavaScript定时器作业 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta char ...