统一过程建模语言UML

统一过程建模语言UML是一种标准的可视化建模语言,使用在:

    •  业务建模和类似的过程
    • 居于软件系统的分析、设计、和实现

UML 是一门通用语言,提供给业务分析员,软件架构师和开发人员来描述、说明、设计现有的文档或者新的业务处理,软件系统的结构和行为的构件。

UML 可以广泛运用到多种应用领域(比如:银行,金融,互联网,航空,健康服务等), UML 被用于各种对象和软件开放方法的组件以及各类实现平台(如J2EE, .NET).

UML 是一种标准化建模语言,而非软件开放过程。  UML1.4.2 说明规范解释过程:

  • 作为团队活动顺序提供指导
  • 说明应该开发出什么样的产品
  • 执导单个开放人员和团队作为一个整体
  • 提供监控和管理一个项目的产品和活动的标准

UML 专门处理独立并且被应用与不同处理的背景下。 而且,最适合于以用例(Use Case)来驱动,迭代和递增式发展过程, 统一软件开发过程RUP(Rational Unified Process) 就是这个处理的一个例子。

UML并不完全,而且也不是完全可视化。以一些UML图来说,我们不能单独从图上来理解系统部分和行为,有些信息是特意从图上忽略,有些图上的信息有不同的解释,并且有些UML概念根本没有图形化标识,所以没有办法将他们在图上标识。

UML 并不完全,而且也并不是完全可视化。  以一些UML图为例,我们并不能确信单纯从图上理解系统的描述部分和行为。 一些信息被故意从图上忽略,一些图形上的信息可以做不同的理解,一些UML概念完全没有图形标识。

例如:用例图中,语义上的多重用户和多重用例并没有在UML中准确描述,可能意味着并发和持续使用用例。

抽象类可以用斜体字来表示,而常量类没有任何图形标识,所以从图形上无法区分一个类是否为常量类。

Version  of  UML:

The current version of UML is UML 2.4.1, released in August 2011 [UML 2.4.1 Specification]. The first versions of UML were created by Three Amigos - Grady Booch (creator of Booch method), Ivar Jacobson (Object-Oriented Software Engineering, OOSE), and Jim Rumbaugh (Object-Modeling Technique, OMT). UML® specification (standard) is updated and managed by the Object Management Group (OMG™) OMG UML.

Version Date Description
1.1 11-1997 UML 1.1 proposal is adopted by the OMG.
1.3 03-2000 Contains a number of changes to the UML metamodel, semantics, and notation, but should be considered a minor upgrade to the original proposal.
1.4 09-2001 Mostly "tuning" release but not completely upward compatible with the UML 1.3. Addition of profiles as UML extensions grouped together. Updated visibility of features. Stick arrowhead in interaction diagrams now denotes asynchronous call. Model element may now have multiple stereotypes. Clarified collaborations. Refined definitions of components and related concepts. Artifact was added to represent physical representations of components.
1.5 03-2003 Added actions (see Part 5 of spec) - executable actions and procedures, including their run-time semantics, defined the concept of a data flow to carry data between actions, etc.
1.4.2 01-2005 This version was accepted as ISO specification (standard) ISO/IEC 19501. UML 1.5 was released 2 years before.
2.0 08-2005

New diagrams: object diagrams, package diagrams, composite structure diagrams, interaction overview diagrams, timing diagrams, profile diagrams. Collaboration diagrams were renamed to communication diagrams.

Activity diagrams and sequence diagrams were enhanced. Activities were redesigned to use a Petri-like semantics. Edges can now be contained in partitions. Partitions can be hierarchical and multidimensional. Explicitly modeled object flows are new.

Classes have been extended with internal structures and ports (composite structures). Information flows were added. A collaboration now is a kind of classifier, and can have any kind of behavioral descriptions associated. Interactions are now contained within classifiers and not only within collaborations. It is now possible for use cases to be owned by classifiers in general and not just packages.

New notation for concurrency and branching using combined fragments. Notation and/or semantics were updated for components, realization, deployments of artifacts. Components can no longer be directly deployed to nodes. Artifacts should be deployed instead. Implementation has been replaced by «manifest». Artifacts can now manifest any packageable element (not just components, as before). It is now possible to deploy to nodes with an internal structure.

New metaclasses were added: connector, collaboration use, connector end, device, deployment specification, execution environment, accept event action, send object action, structural feature action, value pin, activity final, central buffer node, data stores, flow final, interruptible regions, loop nodes, parameter, port, behavior, behaviored classifier, duration, interval, time constraint, combined fragment, creation event, destruction event, execution event, interaction fragment, interaction use, receive signal event, send signal event, extension, etc.

Many stereotypes were eliminated from the Standard UML Profile, e.g. «destroy», «facade», «friend», «profile», «requirement», «table», «thread».

Integration between structural and behavioral models was improved with better support for executable models.

2.1 04-2006 Minor revision to UML 2.0 - corrections and consistency improvements.
2.1.1 02-2007 Minor revision to the UML 2.1
2.1.2 11-2007 Minor revision to the UML 2.1.1
2.2 02-2009 Fixed numerous minor consistency problems and added clarifications to UML 2.1.2
2.3 05-2010 Minor revision to the UML 2.2, clarified associations and association classes, added final classifier, updated component diagrams, composite structures, actions, etc.
2.4.1 08-2011 Current version of UML, a minor revision to the UML 2.3, with few fixes and updates to classes, packages - added URI package attribute; updated actions; removed creation event, execution event, send and receive operation events, send and receive signal events, renamed destruction event to destruction occurrence specification; profiles - changed stereotypes and applied stereotypes to have upper-case first letter - «Metaclass» and stereotype application.
2.5 FTF - Beta 1 11-2012

From the UML language perspective, 2.5 will be a minor revision to the UML 2.4.1, while they spent a lot of efforts simplifying and reorganizing specification document. It seems that this time "professors" took over researchers and industry practitioners, and instead of fixing actual UML issues waiting to be resolved for several years they re-written UML specification "to make it easier to read". For example, they tried "to reduce forward references as much as possible" which is an obvious requirement for textbooks but not for specifications.

There will be no separate UML 2.5 Infrastructure document, so that the UML 2.5 specification will be a single document. Package merge will no longer be used within the specification itself.

Four UML compliance levels (L0, L1, L2, and L3) are to be eliminated, as they were not useful in practice. UML 2.5 tools will have to support complete UML specification. Information flows, models, and templates will no longer be auxiliary UML constructs. At the same time, use cases, deployments, and the information flows to become UML supplementary concepts!

Default for generalization sets changed from {incomplete, disjoint} to {incomplete, overlapping}.

2.5 RTF - Beta 2 09-2013

Work in progress - some fixes, clarifications, and explanations added to UML 2.5 FTF – Beta 1. Updated description for multiplicity and multiplicity element. Clarified definitions of aggregation and composition. Finally fixed wrong «instantiate» dependency example for Car Factory. Introduced notation for inherited members with a caret ’^’ symbol. Clarified feature redefinition and overloading. Moved and rephrased definition of qualifiers.

Few clarifications and fixes for stereotypes, state machines, activities. Protocol state machines are now denoted using «protocol» instead of {protocol}. Use cases are no longer required to express some needs of actors and to be initiated by an actor.

UML 2.5 图

关于UML图,先看UML 图概要, 以及稍后呈现的一些事例。

The Unified Modeling Language(UML)的更多相关文章

  1. UML(Unified Modeling Language)统一建模语言

    什么是模型 模型是对现实的简化 模型是提供系统的蓝图,模型可是包括详细计划.也可是是从更高程度考虑系统的总体计划,每个系统可以从不同的方面用不通过的模型来描述.因而每个模型都是在语义上闭合的抽象系统. ...

  2. UML类图(Unified Modeling Language Class Diagrams)

    统一建模语言(UML) |  类图 什么是UML? UML是一种用于可视化描述系统,具有广泛用途的建模语言.作为一种标准化的图形语言,在软件工业中被用于软件系统部件的具体化,可视化,结构化描述以及撰写 ...

  3. 学习笔记之UML ( Unified Modeling Language )

    Unified Modeling Language - Wikipedia https://en.wikipedia.org/wiki/Unified_Modeling_Language The Un ...

  4. 统一建模语言(UML,Unified Modeling Language)

    Something about UML: 统一建模语言(UML,英语:Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建 ...

  5. UML(Unified Modeling Language)同一建模语言

    wiki定义: UML is a general-purpose, developmental, modeling language in the field of software engineer ...

  6. 公用技术——面向对象领域——UML图——《The Unified Modeling Language User Guide》V2读书笔记——第一章节(建模的意义)

    第一章节到第三章节介绍UML的基本概念.第一章节主要介绍了UML语言的历史,介绍了建模的重要性(狗窝,房子,大厦),介绍了UML要实现哪些目标,在最后介绍了在使用UML语言时应该遵循的一些原则或者是规 ...

  7. UMLUnified Modeling Language (UML)又称统一建模语言或标准建模语言

    1.用例图(use case diagram) 2.活动图(activity diagram) 3.静态结构图 4.顺序图(Sequence Diagram):时序图 5.交互纵览图(Interact ...

  8. Unified Modeling Language

    https://en.wikipedia.org/wiki/Unified_Modeling_Language

  9. UML(Unified Model Language)统一建模语言

    一.九种图 二.类间关系 一.UML中的九种图 1.用例图(use case diagrams) [概念]描述用户需求,从用户的角度描述系统的功能 [描述方式]椭圆表示某个用例:人形符号表示角色 [目 ...

随机推荐

  1. C#泛型比较大小

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. iOS之AVPlayer的简单应用

    1.引入系统框架 2.创建视频的url 3.创建播放项目 4.初始化播放器 5.设置播放页面 //引入系统文件 #import <AVFoundation/AVFoundation.h> ...

  3. CentOS7下用jdk1.7编译hadoop-2.7.1全过程详解

    说实话,本人编译hadoop的过程比较曲折,但收获也很多,下面系统介绍一下CentOS7下编译hadoop-2.7.1的全过程吧. 先说明,32位Linux操作系统可以直接下载编译好的hadoop使用 ...

  4. (转)CSS字体大小: em与px、pt、百分比之间的对比

    CSS样式最混乱的一个方面是应用程序中文本扩展的font-size属性.在CSS中,你可以用四个不同的单位度量来显示在web浏览器中的文本 大小.这四个单位哪一种最适合Web? 这个问题引起了广泛的争 ...

  5. 关于ContentProvider的批量操作

    今天看公司代码,发现在批量插入通话记录和联系人的时候,用了一个 ArrayList<ContentProviderOperation> ops = new ArrayList<Con ...

  6. nyoj89 汉诺塔(二)

    题目网址 :http://acm.nyist.net/JudgeOnline/problem.php?pid=89 汉诺塔问题的经典结论: 把i个盘子从一个柱子整体移到另一个柱子最少需要步数是 2的i ...

  7. JavaScript之call()&apply()

    场景一:定义了一个类A,给它一个getName的方法:定义了一个类B,给它一个setName的方法:之前A只需要获取它的Name,B也只需要设置它的Name,但现在有新的需求,A和B都需要设置和获取他 ...

  8. 快速排序算法(C#实现)

    想到了快速排序,于是自己就用C#实现了快速排序的算法: 快速排序的基本思想:分治法,即,分解,求解,组合 . 分解:在 无序区R[low..high]中任选一个记录作为基准(通常选第一个记录,并记为k ...

  9. Codevs 5056 潜水员

    5056 潜水员 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 潜水员为了潜水要使用特殊装备.他有一个带两种气体的气缸:一个为氮气 ...

  10. mod_wsgi

    配置: WSGIScriptAlias /var/www/wsgi-scripts/simple.wsgi def application(environ, start_response): outp ...