大象---Thinking in UML读书笔记(二)

1.2 UML带来了什么

1.2.1 什么是UML

UML是一种建模用的语言,而所有的语言都是由基本词汇和语法两个部分构成的,UML也不例外。UML定义了一些建立模型所需要的、表达某种特定含义的基本元素:这些元素称为元模型,相当于语言中的基本词汇,例如用例、类等。另外,UML 还定义了这些元模型互相之间关系的规则,以及如何用这些元素和规则绘制图形以建立模型来映射现实世界;这些规则和图形称为表示法或视图(View), 相当于语言中的语法。如同我们学习任何一种语言一样,学习UML无非是掌握基本词汇的含义,再掌握语法,通过语法将词汇组合起来形成一篇有意义的文章。UML与其他自然语言和编程语言在原理上并无多大差别,无非是UML这种语言是用来写说明文的,用自然世界和计算机逻辑都能够理解的表达方法来说明现实世界。

1.2.2 可视化

可视化的含义是指,UML 通过它的元模型和表示法,把那些通过文字或其他表达方法很难表达清楚的,隐晦的潜台词用简单直观的图形表达和暴露出来,准确而直观地描述复杂的含义。把“隐晦”的变成“可视”的,也就是把文字变成图形,这才是UML可视化的真正含义。

举个例子,有一段文字描述:造一辆车身是红色金属漆的小轿车,装备四个普利斯通牌的轮胎,它是一辆四门车,车门是加厚的,并且前后门玻璃上贴黑色的膜。前后挡风玻璃里都装有电热丝,后视镜是电动可调的。
如果信息点比较多,而且相互之间有联系,阅读文字并不容易让人理解到底描述了怎样的一个逻辑结构。
其实在文字还未出现以前人类就学会绘画了,一幅图画可以表达的含义远远胜过文字描述,上面的那段话让我们试着换一种形式来表达, 如下图所示。大象---Thinking in UML读书笔记(二)

1.2.3 从现实世界到业务模型

我们所处的这个现实世界充满了丰富多彩但杂乱无章的信息,要建立一个模型并不容易。建立模型的过程是一个抽象的过程,所以要建立模型,首先要知道如何抽象现实世界。如果我们站在很高的抽象层次,以高度归纳的视角来看这个世界的运作,就会发现现实世界无论多复杂,无论是哪个行业,无论做什么业务,其本质无非是由人、事、物和规则组成的。人是一切的中心,人要做事,做事就会使用一些物并产生另一些物,同时做事需要遵循一定的规则。 人驱动系统,事体现过程,物记录结果,规则是控制。建立模型的关键就是弄明白有什么人,什么人做什么事,什么事产生什么物,中间有什么规则,再把人、事、物之间的关系定义出来,一个模型也就基本成型了。

第一,UML采用被称之为参与者(actor) 的元模型作为信息来源提供者,参与者代表了现实世界的“人”。参与者是模型信息来源的提供者,也是第一驱动者。换句话说,要建立的模型的意义完全被参与者决定,所建立的模型也是完全为参与者服务的,参与者是整个建模过程的中心。
大象---Thinking in UML读书笔记(二)

第二,UML采用被称之为用例(use case)的一种元模型来表示驱动者的
业务目标,也就是参与者想要做什么并且获得什么。这个业务目标就是现实
世界中的“事”。而这件事是怎么做的,依据什么规则,则通过被称之为业务场景(business scenario)和用例场景(use case scenario)的UML视图来描绘的,这些场景便是现实世界中的“规则”。最后,UML通过被称之为业务对象模型(business object model)的视图来说明在达成这些业务目标的过程中涉及到的事物,用逻辑概念来表示它们,并定义它们之间的关系。业务对象模型则代表了现实世界中的“物”。

UML通过上面的元模型和视图捕获现实世界的人、事、物和规则,于是现实信息转化成了业务模型,这也是面向对象方法中的第一步。业务模型真实映射了参与者在现实世界的行为,图下图展示了这种映射关系。
大象---Thinking in UML读书笔记(二)