UML
UML
-
UML (Unified Modeling Language–统一建模语言) 是面向对象分析与设计时的行业标准,全称为,其主要内容是针对面向对象的分析和设计。
-
UML是由OMG(Object Management Group)于1997年发表的图标式软件设计语言,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,从需求规格描述到系统完成后的测试和维护。是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
UML的特点
-
统一的标准;
-
面向对象。UML是支持面向对象软件开发的建模语言。
-
可视化、表现能力强。
-
独立于过程,UML不依赖于特定的软件开发过程。
-
概念明确,建模表示法简洁,图形结构清晰,容易掌握和使用。
事物
UML中有四种事物
-
1、结构事物:结构事物是UML模型中的名词。是模型中的静态部分,用来描述概念或实体。分为以下7种:
-
类(Class):指具有相同属性、方法、关系和语义的对象的集合。
-
接口(Interface):指类或组件所提供的的服务,描述了类或组件对外可见的动作。
-
协作(Collaboration):描述合作完成某个特定任务的一组类及其关联的集合,用于对使用情形的实现建模。
-
用例(Use Case):定义了执行者和被考虑的系统之间的交互来实现一个业务目标。
-
活动类(Active Class):活动类的对象有一个或多个进程或线程。活动类和类很像,只是它的对象所代表的元素的行为和其他的元素是同时存在的。
-
组件(Component):是物理的、可替换的部分,包含接口的集合。
-
结点(Node):是系统在运行时存在的物理元素代表一个可计算的资源,通常占用一些内存和具有处理能力。
-
-
2、行为事物:行为事物是UML模型中的动态部分。它是模型中的“动词”,描述了跨越时间和空间的行为,包括如下两类:
-
交互(Ineraction):交互是由一组对象之间在特定上、下文中,为了达到特定的目的而进行的一系列交换的信息组成。
-
状态机(State Machine):状态机由一系列对象的状态组成。
-
-
3、分组事物:分组事物是UML模型的组织部分,可以看作是一些由模型分解成的盒子。在所有的分组事物中,最主要的分组事物是包。包是把分组事物组织成组的机制,这种机制具有多种用途。结构事物,行为事物甚至其他分组事物都可以放进包内。
-
4、 注释事物:注释事物是UML模型的解释部分。
关系
UML中有四种关系:依赖、关联、泛化、实现;
-
1、依赖dependency:依赖是两个事物间的语义关系,其中一个事物(独立事物)发生 变化会影响另一个事物(依赖事物)的语义;依赖用虚线表示
-
2、关联association:关联是一种结构关系,它描述了一组链,链是对象之间的一种连接。聚集aggregation是一种特殊类型的关联,他描述了整体合部分间的结构关系。
-
3、泛化generaliztion:泛化是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。
-
4、实现:实现是类元之间的语义关系,其中一个元素指定了另一个类元保证执行的契约
在两种关系下使用实现关系: 1、在接口和实现他们的类或构件之间 2、用例和实现他们的协作之间
UML中的图
图是事物集合的分类,主要包含以下几种:
-
类图(Class Diagram):展现了一组对象、接口、协作和他们之间的关系。
-
对象图(Object Diagram):展现了某一时刻一组对象以及他们之间的关系,描述了在类图中所建立的事物的实例的静态快照;
-
组件图(Compoment Diagram):描述代码部件的物理结构以及各部件之间的依赖关系。
-
部署图(Deployment Diagram):定义系统中软、硬件的物理体系结构。
-
用例图(Usecase Diagram):从用户的角度出发描述系统的功能、需求,展示系统外部的各类角色与系统内部的各种用例之间的关系。
-
时序图(Sequence Diagram):表示对象之间动态合作的关系。
-
协作图(Collaboration Diagram):描述对象之间的协作关系。
-
状态图(Statechart Diagram):描述一类对象的所有可能的状态及事件发生时状态的转移条件。
-
活动图(Activity Diagram):描述系统中各种活动的执行顺序。
静态图:类图、对象图 行为图:状态图、活动图 用例图:用例图 交互图:顺序图、协作图 实现图:组件图、部署图