博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UML与ER图
阅读量:5300 次
发布时间:2019-06-14

本文共 1058 字,大约阅读时间需要 3 分钟。

UML

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

类图

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

聚集

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

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

JXSNv3E.png

范化

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

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

ay6oy1M.png

依赖

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

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

rvqvqTa.png

实现

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

实现与接口之间的关系

f9NqCqF.png

关联

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

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

oWvXZFd.png

用例图

扩展/包含关系

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

NCIIMhy.png

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

数据流图

数据流

带箭头的虚线

b5baxDP.png

加工

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

P8eQVq0.png

存储

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

JC44jjp.png

外部实体

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

KWQXHJE.png

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图中用菱形表示,菱形框内写明联系名

示例:

Bt9QSRu.png

弱实体

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

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

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

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

ULJgcgG.png

特殊化与范化

与UML中范化的含义相同

SlqrcKN.png

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

kOqp3jA.png

转载于:https://www.cnblogs.com/Finley/p/5508897.html

你可能感兴趣的文章
meep php,麻省理工时域差分软件 MEEP windows 下编译开发(一)——准备工作
查看>>
matlab的清除0,matlab中的平均值clear %清除变量dx=0.01*2*pi; %间隔x=0:dx:2*pi; %自变量向量y=...
查看>>
php 循环套 重复,php 循环套循环 出现重复数据
查看>>
mysql distince,MySQL学习(未完待续)
查看>>
php libevent 定时器,PHP 使用pcntl和libevent实现Timer功能
查看>>
对数字进行 混淆 php,解密混淆的PHP程序
查看>>
zencart不支持php7的原因,Zen Cart1.3.8产品页报错提示:Deprecated: Function ereg_replace() is deprecated...
查看>>
php仿阿里巴巴,php实现的仿阿里巴巴实现同类产品翻页
查看>>
matlab fis编辑器在哪,基本FIS编辑器
查看>>
linux的串口子系统,TTY子系统
查看>>
修改linux远程22端口,linux修改ssh远程端口22
查看>>
Linux系统的创始者,组图:Linux之父的办公室首度曝光
查看>>
关于linux的环境变量设置,linux环境变量设置
查看>>
pLC中C语言的运算符是什么,c语言中的“?:”是什么运算符
查看>>
android 耳机检测,检测耳机是否已插入Android设备。
查看>>
android开发常用app有哪些,android 开发之app都可以进行哪些优化
查看>>
android按钮显示文字,android 按钮的文字显示不全
查看>>
c语言有较强的网络操作功能,《C语言程序设计》第1章 C语言概述练习题答案
查看>>
android开发影片类型选择,如何选择要在网路,Android和iOS上播放的影片格式?
查看>>
socket模块,简单的套接字,加循环
查看>>