Some object-oriented analysis and design (OOAD) methodologies

 

模式(分析模式、架构模式和设计模式)是我们广泛讨论的一个话题,研究它是为了能提高软件复用(代码复用和设计复用)的水平。模式的发展和OO 语言的发展、OOAD方法论的发展以及UML的发展都密切相关。

20世纪6070年代,面向对象语言初步发展的时期,Alan KaySmalltalk的发明人)提出了object-oriented programming,但是OOAD理论还没有正式被提出来。直到1982Grady Booch发表了OOAD发展史上里程碑式的一篇论文《Object-Oriented Design》。在20世纪80年代,OOAD的先驱者纷纷提出其OOAD idea,比较著名的有Kent Beck Peter CoadDon FiresmithIvar Jacobson (a UML founder)Steve MellorBertrand Meyer Jim Rumbaugh (a UML founder)Rebecca Wirfs-Brock等。

在过去的二十多年里,几种面向对象的分析和设计(OOAD)的方法论被提出来。这些方法论在几个方面有所不同。它们处理域空间(domain space)和创建分析设计模型的方式不同;它们创建的用来捕捉分析设计过程的输出的模型的类型也不同。在这些技术中,比较有名的是:

1.       Shlaer and Mellor (1988) 方法。

2.       Coad and Yourdon (1990) 方法。

3.       Wirfs-Brock Wilkerson Wiener (1990) 方法。

4.       Jacobson’s Objectory方法。

5.       Booch (1994)方法。

6.       Rumbaugh (1992) 方法。

7.       Hierarchical Object-oriented Design (HOOD) 方法。

8.       Real-Time Object-oriented Modeling language方法。

9.       Catalysis1998)方法。

 

一门设计方法论(design methodology),一般来说包括三个方面:

1、  Technology aspects(技术方面)。包括概念、符号和模型。可视化的模型表达了设计者解决问题的思想(模式)。

2、  Process aspects(过程方面)。包括任务和步骤。

3、  Organizational aspects(组织方面)。企业如何组织,以将方法论行之有效。

上面的这些理论从提出到现在都有10多年了,在它们的发展过程中,UML集各家所长,最后成为主流的建模语言,而模式也逐渐成为一个热门的研究课题。但是大多数关于设计模式的书籍著述大多都是介绍和记录设计模式的,而很少有论及如何在开发新的应用时系统地应用这些可复用的设计。

如何科学地使用模式以提高软件复用的水平?如何将多个模式科学地组合起来使用?如何系统地使用模式?为了解决这些问题,又有新的方法论被提出来,这就是POAD——Pattern-Oriented Analysis and Design(面向模式的分析和设计),相信已经有人对此有了研究,在下篇随笔中,我也将把学习POAD的一些学习笔记贴出来和各位交流。

 

posted @ 2005-09-30 11:13  风满袖  阅读(1352)  评论(0编辑  收藏  举报