2.2 该模型的构思从何而来
将设计过程建模为一种系统化的、按部就班的过程的观念,似乎肇端于德国机械工程社团。Pahl和Beitz在他们7次修改其稿的伟大论著中阐述了目前被最广泛地接受的观点。4 他们对达・芬奇(1452~1519)的《Notebooks》中关于设计备选方案的系统化搜索过程进行实践并分析,而并非只泛泛阅读那显式写出的陈述。 Herbert Simon在其著作《The Sciences of the Artificial》(1969,1981,1996)中独立地提出设计就是一个搜索过程的主张。他提出的模型及相关讨论远比这里的要复杂。Simon乐观地认为设计过程就是搜索人工智能意义下的合适标的(只要有足够的处理能力可用),他也投身于严格化理性设计模型的筹划,因为这样一种模型对于设计过程自动化而言乃是不可或缺的先驱力量。他的模型仍然有影响力―即使到了今天,我们已经认识到,其原始设计中的“险恶问题”5 可以说是在人工智能中最没前途的候选问题之一。 在软件工程领域,Winston Royce对于因为采用“先写了再说”的方法而造成的大型软件项目失败而深感震惊,于是独立地引介了一种由7个步骤组成的瀑布模型,以将流程加以整顿,如第3章的第1插图所示。事实上,Royce是将他的瀑布模型当做一个假想的批评对象提出来的,但是有很多人已经引用并追随这个假想的批评对象,他提出的更为复杂精妙的模型反而被大家忽略。我在年轻的时候也犯过那样的错误,并在之后公开地为此忏悔。6 即使有那么一点儿讽刺的味道,Royce的7步模型仍然必须看做是设计的理性模型的基础性表述之一。 Royce强调,他的7个步骤是彼此泾渭分明的,需要分别规划并各有专人负责。其中确有重叠的部分,但这部分被仔细地限定在一定范围之内: 各个步骤的顺序安排乃是基于以下的概念:每前进一步,设计就变得更加详尽,在(邻接的)前一步和后一步之间有一定的重叠,但是在序列中距离较远的步骤就不太会有什么重叠之处了……我们拥有一种有效的退路,这往往可以将早期工作中仍然可资利用的以及得到保留的部分尽可能地最大化。7 设计空间可以表达为树型结构的观念,是在Simon的著作中隐含地提出的。这个观念在Gerry Blaauw和我合著的《Computer Architecture》一书中有具体的描述和图解。8 在该书中,我们将处理器架构的设计方案以严格的层阶架构形式组织在一个巨大的树型结构中,以83个链接子树来表示。有关闹钟的设计树可以作为一个简单的例子,如图2-1所示。其中,人们可以看到两种根型:开放和封闭。开放根型,如“闹铃”节点所示,表示的是细分单元,每一个分支都是一种特定的设计属性,且必须指定其值,即所谓属性分支。封闭根型如“铃声”节点所示,这个节点枚举了所有的备选方案,人们必须从中选择适当的方案。 图2-1 闹钟的设计树(部分),选自Blaauw和Brooks(1997)所著《Computer Architecture》的图1-12和图1-14