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中范化的含义相同
派生关系继承基关系的属性