作者:empty 页数:123 出版社:empty |
译者序统一建模语言1UML》是一种直观化、明确化、构建和文化软件系统产物的通用可视化建模语言、UML由面向对象领域的三位大师:Grady Booch.Jim Rumbaugh和IvarJacobson于1996年发布、并提交给OMG.UML于11月为OMG所采用、现已成为业界标准.本文讲述了UML基本概念, 为UML的深入理解提供一个起点.全文共分为十四个章节,UML概述对UML语言、目标以及概念作了简略的介绍、第二章至第十章展示了UML的各种视图, 同时显示了各种结构如何配合工作.UML一览中, 以一个简单的例子开始:对UML的视图.概念作了简单的介绍、然后、在后续的章节中(静态视图,用视图.状态机视图,活动视图,交互视图,物理视图,模型管理视图,扩展机制/对各个视图进行详细的讨论,它们分别从静态建模机制、动态建模机制、模型管理机制以及扩展机制对UML进行探讨,UML标准元素讨论了一些与核心概念的区别较小或者重要性不足以被包括至UML核心概念的元素、原文中仅有标准元素表, 为了便于大家的理解、它们以UML的相关核心元素组织起来.并提供了对应核心元素的解释.OMG建模词汇表引自UML规范:原文中未有相关内容, 英语原文可参见www.raional.com的UMLSpecifcation1.3、中英文词汇对服提供了所有文中术语的词汇对照.详细、精确的解释可以参见UML规范相应的内容.最后, UML标记一览展现了UML各种概念的标记符号.
UML简述统一建模语言i UML) 是一种直观化、明确化, 构建和文档化软件系统产物的通用可视化建模语言,它捕捉了被构建系统的有关决策和理解.用来理解,设计、浏览,配置.维护以及控制系统的信息, UML可以与所有的开发方法、生命阶段、应用领域和媒介一同使用, 它意图统一过去建模技术的经验, 将当前软件最佳实践合并至标准的方法、UML包括语义概念、标记符号和指南、具有静态、动态、环境上的和组织性的部分,它可以被具有代码产生和报表生成的交互式可视建模工具所支持, UML规范没有定义标准过程:但可用于选代的开发过程,并支持现有的大多数面向对象的开发过程、UML捕捉系统静态结构和动态行为的信息、系统建模成独立对象的集合, 它们互相交互以实现功能,从而最终使外部使用者萩益、静态结构定义了对系统具有重要意义的各种对象和实现,以及它们之间的关系,动态行为定义了对象时间上的历史和为达成目标对象间的通讯、从不同但是相关的视角来对系统建模:允许了多种角度对系统的理解,UML还包括用包来分解模型的组织性结构, 它允许软件团队将系统分解为可工作的单元,对包之间的依赖进行理解和在复杂的开发环境中管理模型单元的版本,它包含了表达实现上的决策和用构件来组织运行时元素的结构,UML不是编程语言, 工具可以提供UML至各种编程语言的代码生成:以及可以从现有的程序逆向构筑模型, UML不是用于定理证明的高度正式的语言.实际上有很多正式的语言, 但它们不易理解或不适用于多种用途、UML是通用性的建模语言、对于特定的领域、如GUI设计.VLSI电路设计或基于规则的人工智能, 更特定的语言和工具可能更加合适、UML是离散的建模语言.它不打算对如工程和物理的连续系统建模.UML是对诸如软件,硬件或数字逻辑的离散系统建模的通用语言.
UML目标在UML开发的背后, 有许多目标、第一个且最重要的国标:UML是所有建模人员可以使用的通用建模语言, 它基于许多计算机团体的共识.是一种非私有的语言, UML特意包含了主流建模方法的概念, 从而可以作为它们的建模语言、它至少可以替代OMT.Booch、Objector y·以及那些规范参与者的模型, 在UML中.OMT、Booch、Objector y和其它方法的标记尽可能的被使用,从而尽可能的为人们所熟悉、这同时意味着对良好设计实践如封装、问题划分,目标捕获的支持.它特意针对了许多当前软件开发的问题.如大规模、分布,并发、模式和团队开发等等UML不是完整的开发方法, 它不包括逐步的开发流程.我们相信对于软件开发而言、好的开发过程是非常关键的.认识到UML和使用UML的过程的不同是很重要的现代透代过程是基于建造强壮结构来解决用例驱动的需求:UML包括了所有的必要概念最后一个UML目标是在能对众多系统建模的同时, 尽可能的简洁, UML具有足够的表UML参考指南UML概述达能力来处理现代系统中的所有概念:如封装和构件.它必须是一种普遍性的语言,如同许多通用编程语言、不幸的是,这意味着如果我们想处理不仅仅是实验系统的事物、它的规模会较大、例如,现代语言和现代操作系统较40年前复杂了许多,因为我们对它们的要求也越来越高、UML具有多种模型; 它不是一朝一夕就可以被掌握的, 因为它设计为更加全面的语言, 所以较一些先行者更为复杂、然而:UML也不必一次性的被掌握、如同我们在使用编程语言、操作系统或复杂的应用系统时情形一样.
UML概念范围UML概念和模型可以被划分为以下的范围、静态结构,精确的模型必须首先定义讨论的各种事物.即应用中的关键概念.它们的内部特征和相互之间的关系,该一系列构造是静态视图.应用概念建模成共,英描述了一系列拥有信息和相互通讯以实现行为的离散对象,对象所拥有的信息建模成属性:它们执行的行为建模成操作、多个类可以使用板插共享通用的结构,孩子类将新添的结构和行为增加至通过继承得到的结构和行为,对象还可以拥有与其它对象的运行时连接.上述对象对象关系建模成类之间的关联,元素之间的一些关系用依来分组、包括抽层次的转移、模板参数的绑定,许可的投子和元素对其它元素的使用.其它关系包括用例和流的合开.静态视图显示为类图, 静态视图可以用于产生大多数程序中的数据结构声明、UML类图中有许多种元素:如接、数据类型、用例和信号、它们合在一起被称为分典.它们的举止如同具有某种限制的类,动态行为,有两种方式来建模行为、一种是通过与外界交互的对象的生命史;另一种是使用一系列对象的通信模式,这些相互连接的对象交互实现行为.状态机是被离的对象视图视图中、对象依照当前状态对事件响应、执行动作:迁移至新状态,状态机在状态图中显示,相互交互对象的系统视图是一种也作,即依赖上下文的对象和互相之间链的视图,连同对象间数据链上的消息流、该视点在单张视图中统一了数据结构、控制流和数据流,协作和交互在顺序图和协作图中表达.指导所有行为视图的是一系列用例,用例展示了活动者实现构造, UML模型对逻辑分析和物理实现均可以表达.一定的构造代表了实现单元, 构件是与一系列接一致和为其提供实现的物理,可替换的系统组成部分,它可以作为满足相同说明的其它构件替代品,结点是定义了位置的运行时段的运算资源、它可以客纳构件和对象.配置视图描述了运行系统中结点的配置,构件和对象在结点中的分布,及包括结点内容的可能迁移,模型组织,计算机可以处理大型的模型,但人不可以、大型系统中,建模信息必须划分成条理分明的单元,以使开发团队可以并发的工作在不同的部分,即使在小型系统中.人类的理解能力需要模型内容被组织到适度大小的包中, 包是UML模型中通用的层次组织结构.它们可用于储存,访问控制、配置管理和构造包含复用模型块的库.包上的依总结了包内容的依赖关系,包之间的依赖可以被整体系统的体系结构来强制,从而包内容必须同包依赖和系统体系结构强制相一致,扩展机制、无论语言的设施多么完备.人们总是需要对其进行扩展, 我们对UML提供了有限的扩展能力,无需对基本语言进行修改,我们相信它可以客纳日常的大多数扩展需要、UML扩展机制包括版型、约束和标签值.版型是与现有元素结构相同的新元素.它具有附
UML概述加的约束、不同的解释和图标,并被代码生成和后端工具不同的对待,标签值是可以附加在任何模型元素,容纳任意信息的任意标签值的文字串对、如项目管理信息,代码产生指导和版型所需的值、标签和值用文字串来表达、约束是使用某些约来语言一―如编程语言.特殊的约来语言和自然语言、用文字串表达的条件.UML包括称为OCL的约束语言,同任何扩展机制一样,它们必须小心的使用:因为它对于其它人可能是本地化、难以理解的.然而,它们可以避免某些根本的更改.
本章用一个简单的例子来浏览UML概念和图, 本章的目的是用较少的图形化表达概念的视和图, 来组织高层次的UML概念, 它展示了各种概念是如何描述系统以及视图是如何配合在一起的.本章总结不是全面的;一些概念被省略,更详细的内容,可以参见勾画UML语义视图的后续章节、以及UML规范,本文中的例子是一个计算机化操作的剧院票房、它是一个设计的例子.日的是在较短的篇幅中突出各种UML结构、它被特意的简化.没有详细的表述、已实现系统的完整模型既不适合简短的篇幅:也不能显著表达足够范围的UML结构,
UML视图UML的各种概念和结构并不存在明显的界线:但为了方便:我们将它们划分至多个视图、视图是表达系统单个方面的UML建模结构的简单子集、不同视图的分隔有时有些模糊.但我们希望它是直观的,一种或两种图为各种视图中的概念提供了可视化标记,视图在最高层次可以划分为三个领域:结构性分类、动态行为和模型管理,结构性分类描述了系统中的事物和事物间的关系、分类包括类,用例、构件和结点.分类提供了动态行为构建的基础,分类视图包括静态视图、用例视图和实现视图,动态行为描述了系统时间上的行为、行为可以用静态视图中系统快思的一系列变更来描述,行为视图包括状态机图、活动图和交互图.模型管理描述了用层次式的单元对模型自身的组织、包是模型的通用组织单元、特殊的包包括模型和子系统,模型管理视图与其它视图相交选.为团队工作和配置控制把它们组织起来、
态视图对应用领域的概念建模,以及将内建的概念作为应用实现的一部分、该视图不描述时间相关的行为,因而是静态的,时间相关的行为由其它视图描述、静态视图的主要组成部分是类和关系:关联、继承和各种依赖、如实现和使用,要是对应用领域或应用方案概念的描述、类视图围绕着类组织:其它元素属于成附加于类、静态视图显示为类国、名称的由来是因为它们主要的重点是类的描述,类绘制为长方形.属性和操作类表放置在不同的分隔中,当不需要完整的细节时,分隔可以被隐藏、类可以在多个图形中显示,它的属性和操作经常在其它的图中被隐藏,类间的关系绘成连接类的路径.不同种类的关系由线上的结构和路径或端点上的修饰来区分