UML之初识

背景

UML,全称为Unified Modeling Language,又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。面向对象的分析与设计(OOA&D,OOAD)方法的发展的产物之一就是UML。它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其作了进一步的发展,并最终统一为大众所接受的标准建模语言

UML之初识_第1张图片

构成

UML有三个要素构成:UML的基本构造块、支配这IE构造如何放置在一起的规则和运用于整个语言的公用机制。

UML3种基本的构造块:事物、关系和图

事物是对模型中最具有代表性的成分的抽象,包括结构事物,如类(Class)、接口(Interface)、协作(Collaboration)、用例(UseCase)、主动类(ActiveClass)、组件(Component)和节点(Node);行为事物,如交互(Interaction)、态机(Statemachine)、分组事物(包,Package)、注释事物(注解,Note)。

关系用来把事物结合在一起,包括依赖、关联、泛化和实现关系

UML规范用来描述建模的概念包含:类(对象的集合)、对象、关联、职责、行为、接口、用例、包、顺序、协作,以及状态,用来描述系统的细节

公用机制是由对UML的规范说明和图形构成。UML的图形表示法用来对系统进行可视化

规范

       对象是对客观事物的抽象。

则是对对象的抽象。(对象是类的实例,类是对象的模板。)

      关联Association)即指对象之间的联系。

职责指对象需要承担的任务和责任。

行为指对象做出的动作。

接口就是模块之间(或者对象之间)内外联系的沟通渠道。

用例UserCase是对一组动作序列的抽象描述,系统执行这些动作序列,产生相应的结果,这些结果要么反馈给参与者,要么作为其他用例的参数。

是在 UML中用类似于文件夹的符号表示的模型元素的集合,系统中的每个元素都只能为一个包所有,一个包可嵌套在另一个包中

顺序即某个事物(例如数据)经过的顺序。

协作指对象之间的协调与配合。

状态指系统中某一事物的存在状况。

图形

由于这些内容,故而UML定义了5类,10种模型图,有:

1.  用例图User Case diagram从用户角度描述系统功能,并指各功能的操作者。

2.静态图:包括类图,包图,对象图。

类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性信息。

对象图(Object Diagram)是显示了一组对象和他们之间的关系。使用对象图来说明数据结构,类图中的类或组件等的实例的静态快照。对象图和类图一样反映系统的静态过程,但它是从实际的或原型化的情景来表达的。对象图显示某时刻对象和对象之间的关系。一个对象图可看成一个类图的特殊用例,实例和类可在其中显示。对象也和合作图相联系,合作图显示处于语境中的对象原型(类元角色)

包图Package diagram:是包和类组成的,表示包与包之间的关系,包图描述系统的分层结构。

 

3.行为图:描述系统动态模型和对象组成的交换关系。包括状态图和活动图

状态图( Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应的。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。

活动图activity diagram,动态图)是阐明了业务用例实现的工作流程。业务工作流程说明了业务为向所服务的业务主角提供其所需的价值而必须完成的工作。业务用例由一系列活动组成,它们共同为业务主角生成某些工件。工作流程通常包括一个基本工作流程和一个或多个备选工作流程。工作流程的结构使用活动图来进行说明。

4.交互图:描述对象之间的交互关系

序列图(Sequence Diagram),又称顺序图,对象之间的动态合作关系,强调对象发送消息的顺序,同时显示对象之间的交互。

协作图Communication Diagram又作通信图或“合作图”,而协作作为一个结构事物用于表达静态结构和动态行为的概念组合,表达不同事物相互协作完成一个复杂功能。

5.实现图:

部署图(deployment diagram,配置图)定义系统中软硬件的物理体系结构。

构件图Component Diagram主要用于描述各种软件构件之间的依赖关系,从软件架构的角度来描述一个系统的主要功能,由一边有两个小矩形的一个长方形表示。

你可能感兴趣的:(面向对象,语言,UML,标准,UML图)