大象之关于对UML的一些理解

最近比较不闲,要读的书实在是太多,我也是看了这本丢那本。这实在不是一个好的习惯,我会渐渐改正,不多废话,以下是再读《大象》后整理的一部分(因为暂时只读到这儿)认为值得回味的内容:


面向过程的前提:过程是稳定的,结果是预设的。

 

UML作为一种建模语言和所有语言一样都是由基本词汇和语法两部分构成。其中定义的一些建立模型所需要的表达某种特定含义的基本元素,这些元素称之为元模型类比于基本词汇。另外还定义了这些元模型互相之间关系的规则,以及如何用这些元素和规则绘制图形以建立模型来映射现实世界,这些规则和图形称之为表示法或视图,类比于一般语言中的语法。

 

UML统一建模语言的意义:它试图用统一的语言来覆盖整个软件过程,让不同的团队操着同样的口音顺畅地沟通。

 

建立模型的过程是一个抽象的过程,所以要建立模型,首先要知道如何抽象现实世界。

 

如果我们站在很高的抽象层次,以高度归纳的视角来看这个世界的运作,就会发现其本质无非是人、事、物,规则——人驱动系统,事体现过程,物记录结果,规则是控制。

 

人:参与者(Actor)是模型信息来源的提供者,也是第一驱动者。

要建立的模型意义完全被参与者决定,所建立的模型也完全为参与者服务,所以参与者是整个建模过程的中心。

 

事:用例(User CASE)来表示驱动者的业务目标,也就是参与者想要做什么并且获得什么,这个业务目标就是现实世界中的“事。

 

规则:业务场景(business scenario)用例场景(User CASE scenario)的UML视图来描绘。

 

物:UML通过称之为业务对象模型(business object model)的视图来说明在达成这些业务目标的过程中涉及到的事物。

 

边界决定了外面能对里面做什么“事”。

 

边界类实际上代表了原始需求中的事。

实体类实际上代表了现实世界中的物。

控制类则体现了现实世界中的规则。

 

面向对象困难的解决:

需要的方法:

1、  一种把现实世界映射到对象世界的方法;——现实世界被我们用一种对象型语言描述(UML

2、  一种用对象世界描述现实世界的方法——用“边界”、“实体”、“控制”的分析方法从对象的视角描述了以现实世界需求为原型建立的业务模型。

3、  一种炎症对象世界行为正确反映了现实世界的方法——设计模型是概念模型在特定环境和条件下的“实例化”,实例化后的对象行为“执行”了概念模型描述的那些信息,因此设计模型得以通过概念模型追溯到原始需求来验证对象世界是否正确反映了现实世界。

 

设计类,其实是用某种语言在某种特定的规范的约束下“实例”化分析类的结果。

posted @ 2010-03-22 18:48  程序员天下  阅读(248)  评论(0编辑  收藏  举报