UML介绍

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

UML规范用来描述建模的概念有,类(对象的)、对象、关联、职责、行为、接口、用例、包、顺序、协作,以及状态。

统一建模语言(UML,UnifiedModelingLanguage)是面向对象软件的标准化建模语言。UML因其简单、统一的特点,而且能表达软件设计中的动态和静态信息,目前已成为可视化建模语言的工业标准。在软件无线电系统的开发过程中,统一建模语言可以在整个设计周期中使用,帮助设计者缩短设计时间,减少改进的成本,使软硬件分割最优。

UML的演化可以分为几个阶段[1]:第一阶段是3位面向对象(OO,Object-Oriented)方法学家Booch、Rumbaugh和Jacobson共同努力,形成了UML0.9;第二阶段是公司的联合行动,由十几家公司(DEC、HP、I-Logix、IBM、Microsoft、Oracle、TI、RationalSoftware等)组成了UML成员协会,将各自意见加入UML,以完善和促进UML的定义工作,形成了UML1.0和1.1,并向对象管理组织(OMG,ObjectManagementGroup)申请成为建模语言规范的提案;第三阶段是在OMG控制下对版本的不断修订和改进,其中UML1.3是较为重要的修订版。

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

UML有3种基本的构造块:事物、关系和图。

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

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

UML定义了5类,10种模型图

五种类图定义:

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

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

类图:描述系统中类的静态结构

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

对象图:是类图的实例

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

活动图:描述了业务实现用例的工作流程

状态图:是描述状态到状态控制流,常用于动态特性建模

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

顺序图:对象之间的动态合作关系,强调对象发送消息的顺序,同时显示对象之间的交互

合作图:描述对象之间的协助关系

5.实现图:

配置图:定义系统中软硬件的物理体系结构

图聚集了相关的事物及其关系的组合,是软件系统在不同角度的投影。图由代表事物的顶点和代表关系的连通图表示。下面对常用的几类图[2-12]进行简单介绍。

(1)类图(ClassDiagram)。展现了一组对象、接口、协作和它们之间的关系。类图描述的是一种静态关系,在系统的整个生命周期都是有效的,是面向对象系统的建模中最常见的图。

(2)对象图(ObjectDiagram)。展现了一组对象以及它们之间的关系。对象图是类图的实例,几乎使用与类图完全相同的标示。

(3)用例图(UseCaseDiagram)。展现了一组用例、参与者(actor)以及它们之间的关系。用例图从用户角度描述系统的静态使用情况,用于建立需求模型。

(4)交互图。用于描述对象间的交互关系,由一组对象和它们之间的关系组成,包含它们之间可能传递的消息。交互图又分为序列图和协作图,其中序列图描述了以时间顺序组织的对象之间的交互活动;协作图强调收发消息的对象的结构组织。

(5)状态图(StateDiagram)。由状态、转换、事件和活动组成,描述类的对象所有可能的状态以及事件发生时的转移条件。通常状态图是对类图的补充,仅需为那些有多个状态的、行为随外界环境而改变的类画状态图。

(6)活动图(ActiveDiagram)。一种特殊的状态图,展现了系统内一个活动到另一个活动的流程。活动图有利于识别并行活动。

(7)组件图(ComponentDiagram)。展现了一组组件的物理结构和组件之间的依赖关系。部件图有助于分析和理解组件之间的相互影响程度。

(8)部署图(DeploymentDiagram)。展现了运行处理节点以及其中的组件的配置。部署图给出了系统的体系结构和静态实施视图。它与组件图相关,通常一个节点包含一个或多个构建。

需要指出的是,UML并不限定仅使用这9种图,开发工具可以采用UML来提供其他种类的图,但到目前为止,这9种图在实际应用中最常用的。综合建模类型、模型图种类、建模机制,UML的建模体系见表1。

特点

(1)UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。它实际上是一种通用的建模语言,可以为许多面向对象建模方法的用户广泛使用。

(2)UML建模能力比其它面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜。

(3)UML是一种建模语言,而不是一个开发过程。

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值