终于拿Rumbaugh 的新书了

终于拿Rumbaugh 的新书<UML面向对象建模与设计(第2版)>了。面向对象的设计方法有多种,比较著名的就有Booch方法、Coad & Yourdon方法、Jocobson ( OOSE )方法、Rumbaugh ( OMT )方法、Wrifs-Brock ( 责任驱动法 )方法等等。唯有对Rumbaugh的方法情有独钟,几年前就买了《面向对象建模与设计(影印版)》,重要的部分也看过几遍。里面的图形不是用UML表示的,有些美中不足,一直期待Rumbaugh的新书出版。

 

大约是七八年前看过张海藩老师所编写的《软件工程导论》,里面采用的是Rumbaugh的方法。那可能是我见到的第一本关于软件工程的书,甚至可能是第一次知道软件工程这个概念。对于学的是机械专业,仅写过几个小程序的我来说,第一次读这样的书,当时的感觉何止是震撼,所以印象极深。

 

Rumbaugh的方法强调的三个模型的建立:

 

对象模型。建立对象模型就是职责分配的过程,把系统的各种职责分配到具体的类上去。系统由哪些子系统组成,子系统又由哪些类组成,子系统与子系统的关系,类与类之间的关系。相对于动态模型而言,可以称为静态模型。类之间的关系仅限于继承、组合、关联等,这些关系都是静态的,无论程序是否运行,这些关系都存在了。对象模型常用UML的类图和包类来表现。

 

动态模型。动态模型描述是对象之间的协作关系,这些对象动起来,按照预定(类里的描述)的方式运行,才能完成一件任务。其中还包括对象自身的状态转换,在一定的事件驱动下,对象的内部状态转换,在不同的状态下,对象具有不同的表现行为。动态模型常用UML的序列图、活动图和状态图来表现。

 

功能模型。从系统外部,把系统当作一个黑盒,来考查系统的功能,能起到补充作用。系统的输入和输出,能很好的描述系统功能。功能模型通常用数据流图来表现,描绘数据输入、处理、输出和存储等。

 

虽然这种方法已经提出十几年了,但并没有过时。在目前流行的RUP中提到的4+1视图(逻辑视图(Logical View)过程视图(Process View)物理视图(Physical View)开发视图(Development View)用例 use cases)和《软件架构编档》里提到的3种视图(模块视图、组件连接器视图和分配视图)里,关于分析和设计的内容大部分仍然可以归于这三个模型。

 

你可能感兴趣的:(活动,存储,任务,UML,出版,图形)