UML一统天下 ——统一的不是建模过程而是建模…
| UML(Unified Modeling Language)中的U有两个方面的含义:一是它有效地消除了原有建模语言间的差异;二是它统一了存在于不同类型系统中的需求分析、设计、实现,以及内部概念中的观点和认识。因此,UML是近年来推出的一种基于面向对象(OO)的可视化图形建模语言,用于对软件系统进行说明、构造和文档建立。
背 景 OO建模语言的发展始于20世纪70年代中和80年代末。从1989年到1994年,其数量由不到10种猛增加到50余种。但使用OO方法的用户却很难找到一种完全满意的语言。 90年代中期,出现了一批较好的方法。其中令人关注的有Booch 1993(适用于工业设计和构造);Rumbaugh的OMT-2(特别适用于以数据为中心的信息系统的分析和描述中的应用);Jacobson的OOSE,即use-case方法(支持商业工程和需求分析)。它们都是完整的方法,但各有其特色。 UML开始于1994年10月。先由Rational Software公司的G.Booch和J.Rumbaugh将Booch和OMT(这两种方法被公认为是世界OO方法的先驱)统一起来,并于1995年10月推出了UM(Unified Method)草案0.8版;1995年秋,Jacobson参加,把OOSE也合并进来,这才称为UML。 UML的主要目标是: 设计一种用于OO分析和设计的符号表示不同于设计一种程序设计语言,主要要求有: 经过Booch、Rumbaugh和Jacohson三人的努力,于1996年6月和10月分别推出了UML 0.9和UML 0.91版本,1997年1月公布了UML 1.0。 1996年,一些机构要将UML作为商业策略,于是成立了完善和加强UML定义的机构,即UML成员协会,成员包括DEC、HP、i-Logix、Itellicorp、IBM、ICON Computing、MCI Systemhouse、Microsoft、Oracle、Rational Software、TI以及Unisys等。它们为UML开发提供了大量的有价值的技术,结果于1997年9月推出了UML 1.1。1997年11月17日其被OMG(Object Management Group)接纳为标准。 特 点 UML的主要特点有: (1) UML最重要的是将Booch、OMT和OOSE的概念融合在一起。 (2) UML吸收了现有方法中能够提供的功能,特别是关于并发(concurrent)、分布式(distribution)系统描述元素。 (3) UML致力于一种标准的建模语言,而不是标准的建模过程。尽管UML必须应用于过程,但实践证明,不同的开发机构和不同的问题域,其建模过程不完全相同。因此,UML首先把重点放在通用的元模型(用带有文字说明的UML符号表示),用来统一语义;然后才是通用的符号表示,用以表示语义提供的表示方法。 元模型是用于定义对象模型的语言。元模型为UML的所有元素在语法上和语义上提供了单一的、通用的和确定的描述。元模型使开发者在语义上取得了一致,不仅消除了由于人为因素对语义表示所造成的影响,而且可使工具间的信息交换和复杂系统的设计在语义上保持了高度的一致。 (4) UML使用图形符号和正文语法为系统建模,用来描述用户的层次模型,在语义上是UML元模型的实例。 从应用的角度看,当采用OO技术设计系统时,首先是描述需求;其次是根据需求建立系统的静态模型,以构造系统的结构;第三步则是描述系统的行为。 其中,一、二步包括用例图、类图、对象图、包图、构件图和配置图,这些是UML的静态建模机制;第三步包括状态图、活动图、顺序图和合作图,是UML的动态建模机制,其所建立的模型有的是可执行的,有的是表示执行时的时序状态或交互关系。 由此可见,这些图形符号为系统分析、开发提供了多种图形表示,其有机的结合使得分析、构造一致的系统成为可能。 新概念 UML中增加了许多新概念,主要有: 新发展 由于开发过程和开发工具所关心的内容与UML不尽相同,所以UML 1.0没有给它们提供标准,然而UML是开发过程和开发工具的基础。 UML虽然没有把开发过程标准化,但却仍致力于以用例驱动、体系结构为中心,并且用可迭代的和易于增量的过程来完善。 尽管UML定义的是基于语义的元模型,而不是开发工具的元模型,但两者几乎没有什么区别,而且工具间的信息交换可由定义语义和符号表示的方法表示,从而保持了一致性的语义和符号表示。为了使工具与UML保持一致,UML成员协会已向OMG提交了一套遵循UML的工具接口定义。 由上可见,UML是在多种OO方法基础上发展起来的。UML一经推出,立即得到科技界、工业界和用户的广泛欢迎和接受,并被OMG接纳为标准。 任何一项新技术、新方法或新标准,都需要经过不断地改进和完善。因此在UML 1.1之后,又有UML 1.2、UML 1.3和UML 1.4版本,它们改进了UML 1.1版本中的一些遗留问题及此后发现的诸多问题。目前UML 2.0版本正在起草,相信今后还将看到ISO的UML版本。 |
- · 基于 Visio 的数据库建模:第一部分
- · 统一建模语言在大坝安全辅助决策系统中的应用
- · EA与Rose UML建模工具比较
- · Together for .NET建模入门
- · 基于UML柔性开发模型之Java设计
- · UML建模工具比较
- · 用UML统一开发团队
- · 建模动力
- · 基于ROSE的Web Service建模
- · UML中文教材
- · 驳“UML三大硬伤”
- · 复杂系统的层级原理与模型驱动软件体系结构
- · UML建模风格之顺序图
- · UML建模风格之状态图
- · UML三大硬伤
- · 使用模式集成UML视图
- · UML数据库建模讲义
- · Java开发为什么需要UML
- · 从Java类库看设计模式(Composite,Strategy,It…
- · UML的现状及未来发展
- · 建模的误区
- · 使用 UML 为 Web 应用程序构架建模
- · 关于Alexa工具条的解说与方法
- · Alexa排名数据更新时间研究
- · 如何正确看待ALEXA
- · 辩证地看Alexa:阿里巴巴是怎么做上"老大"的?
- · 瑞星中了Alexa排名病毒
- · 从Alexa网站排名,看IT门户走势
- · 搜狐的所谓“作弊”,正是源于Alexa的Reach权…
- · 我和一个Alexa排名推销员的聊天
- · Alexa作弊的相关问答
- · 详细查看Alexa近7天曲线的方法
- · 如何正确看待ALEXA排名
- · Alexa 世界网站排名研究
- · Alexa 世界排名推进工具--阿雷克斯
- · Alexa网站排名数据基本特征分析
- · Alexa作弊大解密
- · ALEXA作弊最厉害的个人网站
