UML笔记 -- UML入门

                         UML入门

1.     定义

UML(Unified Modeling Language) 统一建模语言, 是一种绘制软件蓝图的标准语言. UML是一种可视化语言, UML表示法拥有一组图形符号来表示软件开发中的复杂构造.

2. UML 概述

1.1     建模的三要素

1)    基本构造块

2)    支配构造块的规则

3)    UML的公共机制

1.2     UML的构造块

UML包含三种构造块

1)    事物

2)    关系

3)   

事物是模型中代表性成分的抽象, 关系描述事物之间的结合规则, 图则聚集相关事物.

1.2.1     UML事物

分为结构事物, 行为事物, 分组事物, 注释事物

1.2.1.1     结构事物 structural thing

结构事物一般是UML模型的静态部分, L逻辑事物, P物理事物

1)    (class):                                        矩形 L

2)    接口(interface):                 带名称的圆 L

3)    协作(collaboration)               虚线椭圆 L

4)    用况(use case)                       实线椭圆 L

5)    主动类(active class)              粗线矩形 L

6)    构件(component)                   带小方框的矩形 P

7)    节点(node)                        立方体 P

1.2.1.2     行为事物 behavioral thing

行为事物一般是UML模型的动态部分.

1)    交互(interaction) 消息:带箭头的有向直线

2)    状态机(state machine) 状态:圆角矩形

1.2.1.3     分组事物 grouping thing

分组事物是UML模型的组织部分.

1) (package) 左上角带有一个小矩形的大矩形

1.2.1.4     注释事物 annotational thing

注释事物是UML模型的解释部分.

1) 注解(note): 右上角是折角的矩形

1.2.2     UML关系

分为依赖(dependency), 关联(association), 泛化(generalization), 实现(realization).

1.2.2.1     依赖 dependency

两个事物中, 其中一个事物(独立事物)A发生变化会影响另一个事物B. B依赖于A, AB所依赖. 表现为一条可能带有方向箭头的虚线.

1.2.2.2     关联 association

关联指明一个事物的对象和另一个事物的对象之间的联系.

表现为一条可能带有方向箭头的实线. 如果没有方向, 说明双方事物彼此都知道对方, 实际是省略了双向箭头. 若只有单向箭头, 说明被指向的一方不知道另一方的存在.

它可能还具备:

1)    多重性: 指明对象间的结构关系.

1, 0, (0..1), (0..*), (1..*), 甚至可以组合使用.

2)    名称

3)    角色

1.2.2.3     泛化 generalization

泛化是一种特殊/一般关系, 特殊元素(子元素)的对象可以替代一般元素(父元素)的对象.

表示为一条带有空心箭头的实线.
 

1.2.2.4     实现 realization

实现是类元之间的语义关系, 其中一个类指定了由另外一个类元保证执行的契约.

一条带有空心箭头的虚线表示, 是泛化和依赖两种关系的结合.

一般两种地方用到:

1)    在接口和实现它们的类/构件之间

2)    在用况和实现它们的协作之间

1.2.3     UML

UML中有9种图, 分别是类图, 对象图, 用况图, 顺序图, 协作图, 状态图, 活动图, 构件图, 实施图.


顺序图和协作图都是交互图”.

交互图由一组对象和它们之间的关系, 以及它们之间可能发送的消息所组成.

顺序图强调消息的时间顺序, 协作图强调发送消息的对象的组织结构.

顺序图和协作图是同构的,也就是说, 它们之间是可以相互转化的.

活动图是一种特殊的状态图.

1.2.3.1     类图 class diagram

展现了一组对象, 接口, 协作和它们之间的关系. 静态视图.

1.2.3.2     对象图 object diagram

对象视图展现了一组对象以及它们之间的关系. 对象视图描述了在类图中所建立的事物的实例的静态快照.

1.2.3.3     用况图 use case diagram

用况图展现了一组用况, 参与者及其它们之间关系. 对系统的行为进行组织和建模尤为重要.

1.2.3.4     顺序图 sequence diagram

顺序图是一种强调消息时间顺序的交互图.

1.2.3.5     协作图 collaboration diagram

协作图是一种强调发送消息的对象的组织结构的交互图.

1.2.3.6     状态图 statechart diagram

状态图展现了一个状态机, 它由状态, 转换, 事件和活动组成. 有助于对反应式系统建模.

1.2.3.7     活动图 activity diagram

活动图是一种特殊的状态图, 它展现了在系统内从一个活动到另一个活动的流程.

对于系统的功能建模特别重要, 并强调对象间的控制流程.

1.2.3.8     构件图 component diagram

构件图展现了一组构件之间的组织和依赖. 系统实现的静态视图.

1.2.3.9     实施图 deployment diagram

实施图展现了对运行时处理节点以及其中构件的配置. 体系结构静态视图.

1.3     UML规则

1.4     UML中的公共机制

规格说明 修饰 通用划分 扩展机制

1.4.1     规格说明

1.4.2     修饰

+(公有), -(私有), #(保护), 类的实例对象带下划线

1.4.3     通用划分

1.4.4     扩展机制

1.5     软件开发周期

为了从UML中取得最大收益, 应该考虑如下过程 :
1)   
以用况驱动的        use case driven
2)   
以体系结构为中心的           architecture-centric
3)   
迭代的和增量的              iterative process

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值