一、UML
UML是统一建模语言(Unified Modeling Language),综合了很多种已经存在的面向对象的建模语言、方法和过程。
对一个软件系统而言,UML语言具有以下几个重要的功能:
- 可视化功能:可以促进对问题的理解和解决
- 说明功能:对一个系统的说明应当通过一种通用的、精确的、没有歧义的通信机制进行
- 建造功能:大大加快建模和系统设计的过程
- 建文档功能:设计同时会产生系统设计文档,便于修改和维护
二、UML图
在所有的图中,大体上划分为结构型图和行为型图,其中,案例图、类图和序列图是最为有用的。
结构型图:
描述了系统的静态结构,在显示一个系统已有的类及它们之间的静态关系时最为有用。
- 类图(Class Diagram):描述一些类、包的静态结构和它们之间的静态关系
- 对象图(Object Diagram):给出一个系统中的对象的快照
- 构件图 (Component Diagram):描述可以部署的软件构件(比如jar文件,EJB等)之间的静态关系
- 部署图(Deployment Diagram):描述一个系统的拓扑结构
行为型图:
描述一个系统的动态性质,在显示系统的元素如何协作产生满足要求的系统行为方面最为有用。
- 案例图(Use Case Diagram):描述一系列的角色和使用案例及它们之间的关系。可以用来对一个系统的最基本的行为进行建模
- 活动图(Activity Diagram):描述不同过程之间的动态接触。是案例图所描述的行为的具体化
- 状态图(State Diagram):描述一系列对象的内部状态及状态的变化和转移。注意:一个类不能有两个不同的状态图
- 时序图(Sequence Diagram):是一种相互作用图,描述不同对象之间信息传递的时序
- 合作图(Collaboration Diagram):是一种相互作用图,描述发出信息、接收信息的一系列对象的组织结构