UML用户指南--全面认识UML建模

开发 架构
UML统一建模语言有很多值得学习的地方,本文就向大家简单介绍一下UML用户指南,相信通过本文的学习你对UML会有全面的认识。

本文和大家重点讨论一下UML用户指南,主要包括UML概述,UML的概念模型和UML体系结构等内容,希望通过本文的介绍你对UML用户指南有一定的了解。

UML用户指南

2.1UML概述

UML可以完成的工作:可视化、详述、构造和文档化。

2.2UML的概念模型

构造块

①事物

⑴结构事物(structuralthing)

⒈类(class):拾对一组具有相同属性、操作、关系和语义的对象的描述。
⒉接口(interface):描述一个类或者构件的一个服务的操作集合。
⒊协作(collaboration):定义了一个交互,他是由一组共同工作以提供某协作行为的角色和其他元素构成的一个群体。
⒋用例(usecase):是对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值而且可观察的结果。
⒌主动类(activeclass):主动类的对象至少拥有一个进程或线程,因此他能够启动控制活动。
⒍构件(component):是系统中物理的、可替代的部件,他遵循且提供一组接口的实现。
⒎节点(node):是在运行时存在的物理元素,他表示了一种可计算的资源,他通常至少有一些记忆能力和处理能力。

⑵行为事物(behavioralthing)

⒈交互(interaction):是这样一种行为,它由在特定语境中共同完成一定任务的一组对象之间交换的消息组成。
⒉状态机(statemachine):它描述了一个对象或者一个交互在生命周期内相应事件所经历的状态序列。

⑶分组事物(groupingthing)

⒈包(package):是把元素组织成组的机制,这种机制具有多种用途。

⑷注释事物(annotationalthing)

⒈注释(note):是一个依附于一个元素或者一组元素之上,对它进行约束或者解释的简单符号。

②关系

⑴关联(dependency):一种结构关系,它描述了一组链,链是对象之间的连接。聚合()是一种特殊类型的关联,它描述了整体和部分之间的结构关系。
⑵依赖(association):是两个事物之间的语义关系,其中一个独立事物发生变化会影响另外一个依赖事物的语义。
⑶泛化(generalization):是一种特殊/一般关系,特殊元素(即子元素)的对象可以替代一般元素(即父元素)的对象。
⑷实现(realization):是类之间的语义定义,其中一个类指定了由另外一个类保证执行的契约。在两种地方要用到实现:接口和实现他们的类或者构件之间;用例和实现他们的协作之间。

③图

⑴类图(classdiagram):

展现了一组对象、接口、协作和他们之间的关系。在面向对象系统的建模中所建立的最常见的图就是类图。UML用户指南中类图给出系统的静态设计视图。包含主动类的类图给出系统的静态进程视图。
Together名称:ClassDiagram。
Together对象:Package、Class、Interface、Enum、ClassByTemplate、AssociationClass、Generalization/ImplementationLink、AssociationLink、LinkByTemplate、DependencyLink、AssociationEnd、Object、Note、NoteLink。

⑵对象图(objectdiagram):

展现了一组对象以及他们之间的关系。UML用户指南中对象图描述了在类图中所建立的事物的实例的静态快照。和类图一样,这些图给出系统的静态设计视图或静态进程视图,但他们是从真实的或原型案例的角度建立的。
Together名称:无。
Together对象:无。

⑶用例图(usecasediagram):

展现了一组用例、参与者(一种特殊的类)以及他们之间的关系。用例图给出系统的静态用例视图。这些图对于系统的行为进行组织和建模是非常重要的。
Together名称:UseCaseDiagram。
Together对象:Actor、UseCase、GeneralizationLink、CommunicatesLink、ExtendLink,IncludeLink、SystemBoundary、Note、NoteLink。

⑷顺序图(sequencediagram):

是一种强调消息的时间顺序的交互图。
Together名称:SequenceDiagram。
Together对象:Actor、Object、Message、MessagewithDeliveryTime、Self-Message、Return、Note、NoteLink。

⑸协作图(collaborationdiagram):

强调收发消息的对象的结构组织的交互图。UML用户指南中顺序图和协作图是同构的,这意味着他们是可以互相转换的。
Together名称:CollaborationDiagram。
Together对象:Object、Actor、Message、AssociationLink、AggregationLink、Note、NoteLink。

⑹状态图(statechartdiagram):

展现了一个状态机,他由状态、转换、事件和活动组成。状态图专注于系统的动态视图。他对于接口、类或者协作的行为建模尤为重要,而且他强调对象行为的事件顺序,这非常有助于对反应式系统建模。
Together名称:StateDiagram。
Together对象:State、StartState、EndState、History、Object、HorizontalFork/Join、VerticalFork/Join、Transition、Note、NoteLink。

⑺活动图(activitydiagram):

是一种特殊的状态图,他展现了在系统内从一个活动到另一个活动的流程。活动图专注于系统的动态视图。他对于系统的功能建模特别重要,并强调对象间的控制流程。
Together名称:ActivityDiagram。
Together对象:Activity、Decision/Merge、SignalReceipt、SignalSending、State、History、Object、StartState、EndState、HorizontalFork/Join、VerticalFork/Join、Swimlane、Transition、ObjectFlow、Note、NoteLink。

⑻构件图(componentdiagram):

展现了一组构件之间的组织和依赖。专注于静态视图,与类图相关,通常把构件图映射成一个或多个类、接口或者协作。
Together名称:ComponentDiagram。
Together对象:Subsystem、Component、Interface、SupportsLink、DependencyLink、Note、NoteLink。

⑼实施图(deploymentdiagram):

展现了对运行时处理节点以及其中的构件的配置。他给出了系统的静态实施视图。与构件图相关,通常一个节点包含一个或多个构件。
Together名称:DeploymentDiagram。
Together对象:Node、Component、Interface、SupportsLink、AssociationLink、AggregationLink、Object、DependencyLink、Note、NoteLink。#p#

UML用户指南中UML规则

①命名为事物、关系和图命名
②范围给一个名称以特定含义的语境
③可见性怎样让其他人使用或者看见名称
④完整性事物如何正确、一致地相互联系
⑤执行运行或模拟动态模型的含义是什么
⑥省略隐藏某些元素以简化视图
⑦不完全性可以遗漏某些的元素
⑧不一致性不保证模型的完整性

UML用户指南中的公共机制

①规格说明
②修饰
③通用划分
⑴对类和对象的划分。也就是抽象和实例的划分,比如类和对象、用例和用例实例;
⑵接口和实现的划分。例如用例和实现他们的协作、操作和实现他们的方法等。
④扩展机制,主要包括:
⑴构造型(stereotype)
⑵标记值(taggedvalue)
⑶约束(constraint)

2.3体系结构

UML用户指南中UML体系结构是一组有关下述内容的重要决策:
①软件系统的组织;
②对组成系统的结构元素及其接口的选择;
③如元素间的协作中说描述的那样的行为;
④将这些结构和行为元素组合到逐步增大的子系统;
⑤知道这种组织的体系结构风格:静态和动态元素及其他们的接口、协作和组成;
⑥用法、功能、性能、弹性、复用、可理解性、经济技术约束及其折衷、审美。

描述软件体系结构最佳实践,最好由以下五个视图组成:
①系统的用例视图(usecaseview)
②系统的设计视图(designview)
③系统的进程视图(processview)
④系统的实现视图(implementationview)
⑤系统的实施视图(deploymentview)

【编辑推荐】

  1. UML用户指南--UML公共机制简介
  2. Eclipse UML插件及其安装步骤简明介绍
  3. UML用户指南--解析三大UML关系
  4. UML用户指南 UML的体系结构及其组成
  5. 把Eclipse UML插件集成至Eclipse如何实现 
责任编辑:佚名 来源: csdn.net
相关推荐

2010-06-30 13:53:28

UML建模过程

2010-07-07 10:35:40

UML软件建模

2010-06-09 15:53:30

UML建模

2010-07-12 15:25:05

UML建模工具

2010-07-12 14:47:53

UML建模

2010-07-09 15:19:58

UML类图建模

2010-07-02 14:16:42

UML

2010-07-07 14:43:19

UML协作图

2010-07-01 17:43:23

UML包图

2010-07-02 12:39:38

UML对象图

2010-07-12 13:47:09

UML部署图

2010-07-01 15:12:34

UML时序图

2010-07-01 16:02:48

UML组件图

2010-06-13 16:26:10

UML图

2010-06-28 16:27:03

UML类图元素

2010-07-01 12:53:34

UML用例图

2010-07-05 09:19:35

UML动态模型图

2010-07-09 13:09:48

UML静态建模

2010-06-09 13:06:22

UML业务建模实例

2010-06-13 16:43:37

UML公共机制
点赞
收藏

51CTO技术栈公众号