UML的介绍

来源:互联网 发布:python 书籍 知乎 2016 编辑:程序博客网 时间:2024/06/15 12:32

UML (Unified Modeling Language)统一建模语言

面向对象软件开发分为三个步骤:面向对象分析(OOA)、面向对象设计 (OOD)以及面向对象编程 (OOP)。OOA和OOD的分析和设计结果需要统一的符号来表示,UML就是这种用于描述、记录OOA和OOD结果的符号表示。

UML 2.0组成

(画图工具 推荐 Google自带的扩展程序 Gliffy)

1.用例图:

这里写图片描述

2.类图

这里写图片描述

-表示private类型,+表示public类型,#表示protected类型类图除了可以表示实体的静态内部结构之外,还可以表示实体间的相互关系:

这里写图片描述

类之间的三种基本关系:关联(聚合、组合)、泛化、依赖。聚合和组合的区别:他们都是部分与整体的关系,组合比聚合更严格,比如学生可以是篮球俱乐部的,也可以是手记俱乐部的,因此他们之间是聚合关系。组合关系是指只能属于某一个实体。泛化:就是继承的关系。依赖:一个类的改动会导致另一个类的改动,则称这两个实体有依赖关系。

3.组件图
这里写图片描述
对于现代的大型应用程序而言,通常不只是单独一个类或者一组类所能完成,通常会由多个可部署的组件组成。对Java程序而言,可复用的组件通常会打包成一个JAR包或者WAR包或者DLL文件。
组件图由三部分组成:组件、接口、Port.

4.部署图
现代的软件工程早超出早期的单机程序,整个软件系统可能是跨国家、跨地区的分布式软件,软件的不同部分可能需要部署在不同的地方。
部署图就是用于描述软件系统如何部署在硬件环境中,显示软件不同的组件将在何处物理运行,以及它将如何彼此通信。

5.顺序图
描述对象之间的相互,重点在于描述消息以及其时间的顺序。

6.活动图
用于描述用例内部的活动或方法的流程,如果出去活动图中的并行活动描述,它就成为了流程图。

7.状态机图
通常对有多个状态的对象使用状态机图描绘它在整个周期中的状态变化。

0 0