UML的介绍
UML (Unified Modeling Language)是一种通用的可视化的建模语言,可以用来描述、可视化、构造和文档化软件密集型系统的各种工件。它不是一种程序设计语言。UML 是独立于过程的,它可以在软件生命周期的各个阶段运用,不过主要应用于软件开发的设计与分析阶段。
UML的分类以及用途
UML建模包含的图表共有十二种,本文将对其中比较常用的图表进行详细介绍。首先让我们来看看这些图表的介绍以及作用。
UML建模的图表按照种类可以分为结构型图表和行为型图表。结构型图表:从不同的抽象和实现程度上描述了一个系统和系统构建的静态结构,并且描述他们是如何直接关联到一起的。该类型的图表包括:类图(Class Diagram),对象图(Object Diagram),包图(Package Diagram),组件图(Component Diagram),部署图(Deployment Diagram),组合结构图(Composite Structure),协作图(Collaboration Diagrams)
行为型图表:展示系统中的对象的动态行为,它描述了一个系统中的对象如何随时间变化而变化。用例图(Use Case Diagram),活动图(Activity Diagrams),状态图(State Machine Diagram),序列图-时序图(Sequence Diagram),通信图(Communication Diagram)
UML的应用范围
如上图展示了UML在软件生命周期中的应用范围。
- 在需求分析阶段可以通过用例图来描述系统的使用者,以及系统有哪些功能
- 在分析与设计阶段经常需要使用到类图、包图、组件图几种静态视图,以及所有动态视图。静态视图用来描述系统的设计类,动态视图用来确定任一时刻某一对象或者实体需要执行的操作,或者应该处于的状态。
- 在开发阶段根据UML图表来编写代码,
- 在测试阶段根据UML图表来设计测试用例,使用活动图来辅助测试
- 在部署阶段根据部署图来部署项目。
四种关系
- 关联关系:描述不同实例之间的关系,比如用例图中的参与者与用例之间的关系
- 依赖关系:描述一对模型元素之间的内在联系,比如A元素的实现依赖于B元素
- 泛化关系:描述特殊到一般的一种归纳和分类关系,比如人与动物的关系是泛化关系
- 实现关系:描述规格说明和其实现的元素之间的连接的一种关系,比如类图中的实现类与接口就是实现关系