作者:empty 页数:544 出版社:empty |
The Ln iid Mode tig Language Reference Manual(Second Ei kw)“如果您是UML的忠实拥道、毫无疑问本书是独一无二的, 尽管我曾经参与过UML规范制定的过程, 在通读这本书的过程中我仍然学到了很多东西, 尤其是UML的变化和新能力给我下了根的印象,“最新版本的统一模合鹰UML 20的推出、校其样为软件需系统建核的标准表示法而备受崇, 机是, 如大多教标文档一样, 官方的UML起总是那品湿不便干导航, 此外, 由于UML 20通比苗的版本复杂,于是出这样一本全面的考手成得格外有意又了,作为UML标准造可购考手册, 木书在第1版的基上进行了重大更新和扩, UML的创建者J umesRunt augh.IsarhscobsenkiGradyBooch.请晰完整地了UML的所有瓶念, 包括对序列图, 松动模,状态根, 出, 和银件的内部构以湿特性棉速的主要1。本书的手明式构不仅有助干读者对UML的之进行视范化的学习与解、更为广大程序开发人员,系统用户和工程技术人员提供了方便快捷的查向方式,无论您是在插需求,开发软单构,设计实现是在试理解现有系统,在本书中您都特找到满意的善業。
一字序的条目词, 了每一个UML念, 全面盖UML 10义和表示法。进一步解释原始视范中意义和目标模的概念,·时论都分提供了使用建议和对复杂概念的满人理解。
本书第2版基于UML 2.0规范, 对1999年出版的第1版进行了全面的修改。本书首先简要介绍了UML的历史、基本概念、目标及使用方法, 然后按字母顺序列出了UML的所有术语、从语义、表示法和用途等方面全面而详尽地介绍了UML的构成和概念,仅有助于读者对UML的概念进行规范化的学习与理解, 更为广大程序开发人员、系统用户和工程技术人员提供了方便快捷的查询。
前言本书是关于统一建模语言(UML, Unified Modeling Language) 的一本全面实用的参考书,可供软件开发人员、软件架构师、项目经理、系统工程师、程序员、分析员、用户以及任何害要研究、设计、开发或理解复杂软件系统的人员参考。书中对UML的概念和组成做了详细介绍,包括其语义、语法、表示法和用途。对广大专业软件开发人员来说,这是一本使用方便、内容全面的参考书, 此外, 本书还讨论了标准文献没有解释清楚的细节问题和UML中所做的一些决定的基本原理。本书不是一本UML标准文献的指南, 也不是一本关于UML标准文献中所包含的元模型内部结构的指导手册, 研究开发方法的方法学家和UML工具的开发者会对元模型细节感兴趣, 面一般的软件开发人员无需了解这些包含在对象管理集团(OMG, Object Management Group) 文献中的不易为人理解的细节,本书涵盖了能够满足绝大部分软件开发人员需要的内容,对于某些源于原始标准的细节,都指明了其出处。希望参考原始文献的读者可以从OMG的网站(www.omg.org)得到相关的标准文献。的最好支持。在阅读本书之前,读者应具备一些面向对象技术的基本知识。为方便初学者,书后的参考文献中列出了我们和其他作者早期的原作。虽然这些书中采用的某些表示法现在已有了变化,但是一些书中介绍的面向对象的概念仍然有用, 如[Rumbaugh-91] 、[Booch-94] 、[Jacobson-92]和[Meyer 88] 等书, 所以这里没有必要重新阐述这些基本概念, [Blaha-05] 使用UML的表示法更新了{Rumbaugh-91] , 如果需要一本展示如何对一些常见问题建模的入门指南, 可参考《UML用户指南》(The Unified Modeling Language UserGuide) 和《UML精粹》(UML Distilled)[Fowler-04] 。使用UML并不局跟于某一种专门的开发过程, 本书也不针对某一种开发过程进行讨论和介绍.尽管UML可用于许多开发过程, 但它最适用于迭代的、增量的、用例驱动的、以软件架构健壮性为中心的开发过程——我们认为这是开发现代复杂软件最适宜的开发过程.UML是软件开发的工具,为了将其置于这种上下文之中,本书定义了这种开发过程的各个阶段,但是这些阶段并不羁于UML标准。《统一软件开发过程》(The Un iied Software Development Process)出[a cobs on-99] 详细描述了这样一种开发过程, 我们认为这种过程是对UML的补充和对软件开发
参考手册和OMG规范UML是一门博大的、汇集了诸多特性的建模语言, 一本只是复述原始规范的参考手册将不会给读者带来多大的帮助。就像任何一本字典或者百科全书那样,我们必须尽可能清楚地归纳知识,同时减少所包含资料的数量,我们常常选择略去晦湿难懂的特殊情况,或者不使用冗长的方式来表述一些概念,而是强调常见的用法,这并不意味着那些略去的技术是无用的,而是对大多数读者来说, 不使用这些技术已经能够成功了。但是, 本书不应该被视为对UML语言最具权威的解释。就像任何一种标准一样,最具权威的解释来自于正式的规范,应该参考这些规范来解决出现的分歧。我们试图遵循以下原则:·解释一个概念的主要意思而不过多讲述其元模型表现形式的具体细节,,不去讨论抽象元类,建模人员最终必须使用具体的元类,如果将其内部的各抽象层折叠起来,具体的元类能够更容易地描述,·不去讨论元模型的封装打包,元模型封装成包也许对工具的开发者十分重要,但是建模人员大多数情况下不需要知道,如果有读者需要知道这些信息,可以查阅具体的规范。·根据完整的UML规范搭述概念, OMG规范包含了许多中间层和明确控制点, 这些都使得理解UML变得非常困难, 我们描述了UML的全部功能, 如果您的工具没有实现所有这些功能,那么您也许不能使用其中的一部分,但是,了解这些功能并没有坏处。, 从概念的常规法角度描述概念。OMG规范往往用一般方式来表达概念。对于规范而言,这是恰当的,但是我们觉得,如果将概念放到一个特定的上下文中去,然后再一般化,读者会更容易理解这些概念,如果您担心一个概念在复杂的、具有不确定性的情况下无法应用,并且感到本书中的解释不够充分,您可以查阅原始规范。然而遗憾的是,即便是OMG规范, 在复杂的情况下有时也是模糊不清的。
本书概要本书分为四个部分:(1) UML发展史和建模知识概述; (2) UML基本概念综述; (3) UML术语和概念词典;以及(4)简短的附录。本书的词典部分是一个按字母表顺序组织的条目表,每一条目都较为详细地描述了一个概词典条目包含以下部分,但并不是所有条目都包含所有部分:概念名用黑体表示,出现在短文主体的左侧,紧接在概念名之后的简要定义用普通字体印词典的条目包括预定义的构造型。条目名称后面括号中的注释标识出了构造型适用的建模第一部分是UML概述, 讲述了UML发展史、目的及用途, 旨在帮助读者理解UML的起源和它试图满足的求.第二部分是UML基本概念的简要综述, 以便读者能够认识UML的所有功能特性, 该部分端述了UML所支持的各种视图, 并说明了各种构造如何协同工作。该部分首先介绍了一个用到了各种UML视图的例子, 接着分章介绍每一种视图, 概述的目的不是提供一个完整的教材或对各VI种概念进行全面叙述, 而主要是总结性地阐述UML的各种概念, 将这些概念联系起来, 它是进一步详细阅读本书中术语和概念词典的起点,第三部分包括了各种参考信息,这些信息被组织成一个个相关主题以便于查找,本书的主体是一个按字母顺序排列的所有UML概念和构造的词典。所有UML术语, 不论重要与否, 在词臭中都有对应条目,调典尽可能全面地提供信息,因此,凡是第二部分提到的概念,在词典中都有更详细的进一步阐述,相同或相似的信息有时在调典中的许多条目中都予以列出,以便读者查阅, 书中包含了一些常用的面向对象术语, 这些术语并不是正式的UML概念, 只是为例子和讨论提供了上下文环境。附录列出了UML的元模型和UML表示法的总结, 附录还给出了有关面向对象知识的主要参考文献, 但不完全包含所涉及的UML概念或其他方法的出处, 参考文献中所列的许多文献都提及了一些优秀的书籍和杂志文章,有兴趣的读者可据此进一步研究这些方法和概念的形成和发展。词典条目格式念。条目下所有的解释性短文按照概念的不同层次组织。高层次概念通常包括其下级低层次概念的概括性说明,每一低层概念在一段单独的短文中有详细解释,各个短文中所阐述的概念彼此之间有高度的相互索引关系,词典的这种组织形式使得每个概念在一致的层次中,避免了嵌套性的解释说明带来的来回查找的麻烦。高度格式化的编排也有利于相关概念的引用,阅读本书时,不必根据索引查找书中内容,而可以直接到词典正文中查找有关概念和术语。但这种编排格式不适于学习UML语言, 建议初学者首先阅读本书第二部分或其他UML的介绍性读物, 如《UML用户指南》(UML UserGuide) [Booch-99] .标题和简要定义刷。概念的定义力求抓住该概念的主旨,以简洁的表达方式描述,因此它只是一个简要定义,概念的精确涵义参考后面短文的主体部分.元素,语义表示法,但该部分不包括表示法的说明。首先给出概念的概括语义。对于具有从属结构特性的概念,在概括性语义说明后面的“结构”子标题下,列出了这些属性的名字。在大多数情况下,特该部分详细解释了概念的含义,包括该概念使用和执行顺序上的约束,尽管某些例子要用到性按名称的字母表顺序排列,同时在右侧给出了特性的描述。如果某一特性包含多个选择项,那么每一选择项均会以缩进列表的形式列出。在更复杂的情况下,一个特性会专门用一个段落叙述,
以免嵌套过多引起混乱,当特性的解释很多,一张表格无法容纳时,会用普通字体描述,同时插入粗斜体的标题。有时,对一个主要概念的说明分散在多个逻辑子项中而不是在一个列表中,此时,附加说明的部分会接在“结构”小节之后或替代“结构”小节。尽管在结构编排上采取了多种方式,但这些结构对读者来说应该是很清晰的。属性的名字通常用简明的语音表述.而不是使用UML元模型中使用的内部标识, 但是两者之间是很容易关联起来的、
前言
3.10特性描述.
第4章静态视图.
4.1概述.
4.2类元.
4.3关系.
4.4关联.
4.5泛化.
4.6实现.
4.7依赖.
4.8约束.
4.9实例.
第5章设计视图.
5.1概述.
5.2结构化类元.
5.3协作.
5.4模式.
5.5组件.
第6章用例视图.
6.1概述.
6.2执行者.
6.3用例.
第7章状态机视图.
7.1概述.
7.2状态机.
7.3事件.
7.4状态.
7.5转换.
7.6复合状态.
abstract(抽象) .
abstract class(抽象类) .
abstract peratin(抽象操作) .
abstractin(抽象化) .
accept actin(接受动作) .
access(访问) .
actin(动作) .
actin expressin(动作表达式) .
actin sequence(动作序列) .
activatin(激活) .
active(活动的) .
active class(主动类) .
active bject(主动对象) .
activity part ii n(活动分区) .
activity view(活动视图) .
actr(执行者) .
actual parameter(实参)
aggregate(聚合) .
aggregatin(聚合) .
第一部分背景知识
第二部分UML概念
第三部分参考资料
第1章UML概述.
1.1UML简述.
1.2UML演变.
1.3UML的目标.
1.4UML的复杂性.
1.5UML评价.
1.6UML概念范围.
第2章模型的本质和目的.
2.1什么是模型.
2.2模型的目的.
2.3模型的层次.
2.4模型的内容.
2.5模型的含义.
第3章UML一览
3.1UML视图
3.2静态视图.
3.3设计视图.
3.4用例视图.
3.5状态机视图.
3.6活动视图.
3.7交互视图.
3.8部署视图.
3.9模型管理视图.
第8章活动视图.
8.1概述.
8.2活动.
8.3活动和其他视图.
8.4动作.
第9章交互视图.
9.1概述.
9.2交互.
9.序列图.
9.4通信图.
第10章部署视图.
10.1概述.
10.2节点.
10.3工件.
第11章模型管理视图.
11.1概述.
11.2包.
11.包间的依赖.
11.4可见性.
11.5导入.
11.6模型.
第12章特性描述.
12.1概述.
12.2构造型.
12.3标记值.
12.4特性描述.
第13章UML环境
13.1概述.
13.2语义的职责.
13.3表示法的职责.
13.4编程语言的职责.
13.5使用工具建模.
第14章术语词典.
actv estate cnfiguratin(活动状态配置) .103
activity(活动) .103
act vity diagram(活动图) .109
activity edge(活动边)109
act vity expressin(活动表达式) .109
activity final nde(活动结束节点) .-109
activity grup(活动组) .-110
activity nde(活动节点).110
.083alternative(替换)+.117
-83analysis(分析) .117
.83analysis t me(分析时期)117
.84ancestr(祖先) .
.84any trigger(任意触发器).117
.85applicatin(应用) .
.88
apply functin actin(应用函数动作) . 118
architecture(架构) .-118
call trigger(调用触发器) .
cannical ntatin(规范表示法) .
cardinality(基数) .
central buffer nde(中央缓冲节点) .
change event(改变事件) .
change trigger(改变触发器) .
change abit y(可变性)
child(子) .
chice(选择) .
class(类) .
class attribute(类属性) .
class diagram(类图) .
class feature(类特征) .
class in-state(状态类)
classname(类名) .
class peratin(类操作) .
classificatin actin(分类动作) .
classifier(类元) .
classifier rl c(类元角色) .
client(客户) .
cllabratin(协作) .
cllabratin diagram(协作图) .
cllabratin ccu men ce(协作发生) -.
cllabratin rle(协作角色) .
cllabratin use(协作使用) .166
cmbined fragment(复合片断) .-168
cmment(注释) .170
cmmunicatin(通信) .171
cmmunicatin diagram(通信图) .-172
cmmunicatin path(通信路径) .174
cmpartment(分栏) .174
cmpile time(编译时) .175
cmplete.176
cmpletin transitin(完成转换)176
cmplex prt(复杂最) .177
cmplex transitin(复杂转换) -.177
cmpnent(组件) ·182
critical regin(临界区域) .217
current event(当前本件) .218
dataflw(数据流) .-219
datastre nde(数据存储节点) .220
datatype(数据类型) .221
data value(数据值) .221
decisin(判断) .222
decisin nde(判断节点) .222
defaultvalue(默认值) .223
defer rab lc event(可延迟事件) .223
deferred event(延迟事件) .224
delegatin(委托) .225
delegatin cnnectr(委托连接器) .-225
dependency(依赖) -.226
deplyment(部署) .228
deplyment phase(部暑(阶段) ) .229
deplyment diagram(部署图).229
deplyment specificatin(部署说明).229
deplyment view(部署视图) .229
derivatin(派生) .229
derive(派生, Abstractin dependency的
derived element(派生元素) .-229
derived unin(派生并集) .-231
assembly cnnectr(装配连接器) .
assert.
assertin(断言) .
assciatin(关联) .
assciatin(binary) (关联(二元) ) .125
assciatin(n-ary) (关联(n元) ) .125
assciatin class(关联类) .125
assciatin end(关联端)+.-.128
assciatin generalizatin(关联泛化) .129
asynchrnus actin(异步动作) .130
atmic(原子) .-130
attribute(属性) .130
aux ii ary(辅件, Class的构造型) .133
backgrund infrmatin(背景信息) .-133
bag(袋) .133
becme(变成关系) .133
behavir(行为) .133
behaviral feature(行为特征) .134
behaviral state machine(行为状态机) .135
behaviral view(行为视图) ·.135
binary assciatin(二元关联) .135
bind.136
binding(绑定) .136
Blean(布尔型) .138
Blean expressin(布尔表达式) .-138
bund element(绑定元素) .138
branch(分支) .140
break.143
bradcast(广播) .-143
buffer(缓冲) .144
build Cmpnent(构建组件, Cmpnent
的构造型).144
call(调用) .144
call(调用, Usage dependency的构造型) .147
call event(调用事件) .147
cmpnent diagram(组件图) .-186
cmpsite aggregatin(组合聚合).186
cmpsite class(组合类) .186
cmpsite bject(组合对象) .-186
cmpsite state(复合状态) .187
cmpsite structure(复合结构) .189
cmpsite structure diagram(复合