UML小结——站在巨人肩膀上

写在前面的话

    这个博客也不算原创的,是从各方搜集来的资源,然后按照老师“精简”的原则,浓缩了一下(*^__^*) 

正文:

类图:

显示出类、接口以及它们之间的静态结构和关系,描述系统的结构化设计。最基本的元素是类或者接口。

例如:“宠物”和“你的宠物”就是类与对象的关系。类是共性的,是一种定义:对象是个体的,是一个实例。

类:

数据以及这些数据上的操作封装在一起。

对一组具有相同属性、相同操作、相同关系和相同语义的对象的抽象


对象图(Object Diagram)

对象某一时刻的状态。类图在某一时刻的实例。

描述系统中的类,以及各类间关系的静态视图。

描述用例要求所要进行的活动,以及活动间的约束关系,有利于识别并行活动

能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的商务需求。

对象名:

格式是“对象名:类名”

包含了类名,则必须加上“:”

加上下划线,属性的后面列其值。


流程图

状态图:

对象随时间变化的动态行为。

根据状态对不同的事件做出反应的

对象动态生命周期

活动图(activity diagram,动态图)

多线程应用

内部处理驱动流程

业务用例实现的工作流程

本质上是一种流程图。一个活动到另一个活动的控制流

 

用例图:

功能的静态视图

参与者Actor)、用例Use Case)以及它们之的关系

作用:

获取需求

指导测试

其它工作流指导

谁要使用系统,使用该系统可做


时序图:顺序图、序列图、行为图

怎么做,时间顺序是怎么着。

对象间发送消息的时间顺序显示对象间的动态协作

表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作或状态机引起转换的触发事件。

消息

(1)        同步消息——停止,等待

(2)        异步消息——继续活动,并发。

(3)        返回消息——就是指消息从过程调用返回。

同步消息=调用消息(Synchronous Message)
 

(4)自关联消息——自身调用;对象内的方法调用另一个方法


部署图:

具体应用软件和硬件的物理构架

系统是如何部署的;

如计算机和设备,以及它们间是如何连接。

使用者:是开发人员、系统集成人员和测试人员。

节点

包括:处理器和设备。                          

处理器

有计算能力且能执行各软件节点,如服务器。

处理能力,包含了调度进程

调度

处理器处理其进程中为实现目的而对共同使用的资源进行时间分配

调度方式

抢占,无优先级,循环,算法控制,手动执行。

进程

一个单独的控制纯种,是系统中一个重量级的并发和执行单元。

设备

指本身不具备处理能力的节点,如打印机。


构件图:

描述代码构件的物理结构以及各种构件间的依赖关系

用来建模软件的组件及其相互之间的关系,这些图由构件标记符和构件之间的关系构成。

构件

系统中遵从同一组接口提供其实现的物理的、可替换的部分

举例:对象库、可执行体、COM+

类型:

1.源代码构件:源代码文件

2.二进制构件:目标码文件、静态链接库、动态链接库

3.可执行构件:可执行程序

4.数据文件或文档

类和构件的区别:

1.表示逻辑抽象,而构件表示物理抽象。

2.类可以直接拥有属性和操作,而构件一般只拥有只能通过其接口访问的操作。


包图

文件夹

类按照标准划分,将具有相似功能的一组元素放在一个

功能:

使我们的程序结构上清晰,源码易读。

关系:

依赖、泛化


对象图

是更接近实际的系统行为。

目的是在一个特定的时刻捕捉到静态的系统视图。


状态图:

类的对象所有可能的状态,以及事件发生时状态的转移条件。

类所描述事物的补充说明:类所有对象可能具有的状态,以及引起状态变化的事物。

状态图侧重从行为的结果来描述(状态)

活动图侧重从行为的动作来描述(活动)


交互图

顺序图

强调时间和序列顺序选择

强调时间和顺序

协作图

强调上下级关系

强调对象之间的关系选择

对象间的动态合作关系

主要描述协作对象间的交互和链接

显示对象、对象间的链接以及对象间如何发送消息。

包含(include)

当两个或多个用例中共用一组相同的动作,这时可以将这组相同的动作抽出来作为一个独立的子用例,供多个基用例共享

基用例并非一个完整的用例基用例和子用例一起使用才够完整

解释:查询单个上机记录和查询单个卡上的余额用例并不能单独实现,必须结合输入卡号这个用例才能实现功能。

扩展(extend): 

对基用例的扩展,基用例是一个完整的用例

基用例中将存在一个扩展点,只有当扩展点被激活时,子用例才会被执行

            

几种图的区别:

一:这九种模型图各有侧重

1:用例图侧重描述用户需求,
2:类图侧重描述系统具体实现;

二:描述的方面都不相同

1:类图描述的是系统的结构
2:序列图描述的是系统的行为

三:抽象的层次也不同

1构件图描述系统的模块结构,抽象层次较高
2:类图是描述具体模块的结构,抽象层次一般
3:对象图描述了具体的模块实现,抽象层次较低
四:结构分类、动态行为和模型管理:
1:结构分类

用例图、类图、对象图、构件图和部署图,
2:动态行为

状态图、活动图、顺序图和协作图,
3:模型管理则

类图


关联关系(Association)

说明:类间;结构化关系;一类对象与另一类对象之间有联系。

聚合(可分割)

组合(不可分割)

依赖关系:

假设A类的变化引起B的变化,则说名B类依赖于A类。

依赖关系用带箭头的虚线表示,由依赖的一方指向被依赖的一方


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值