《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一一2.2 该模型的构思从何而来

简介: 本节书摘来自华章出版社《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一 书中的第2章,第2. 2节,作者:(美) Frederick P. Brooks, Jr. 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看

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

相关文章
|
存储 前端开发 Linux
DPDK-mempool(1)
DPDK-mempool(1)
339 0
|
安全 Linux 网络安全
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
|
10月前
|
存储 前端开发 索引
React 图片轮播组件 Image Carousel
本文介绍了如何使用React创建图片轮播组件。首先,解释了图片轮播的基本概念和组件结构,包括图片容器、导航按钮、指示器和自动播放功能。接着,通过代码示例详细说明了创建基本组件、添加自动播放、处理边界情况的步骤。还探讨了常见问题如状态更新不及时、内存泄漏和样式问题,并提供了解决方案。最后,介绍了进阶优化,如添加过渡效果、支持触摸事件和动态加载图片,帮助读者构建更完善的轮播组件。
229 16
|
8月前
|
算法
重磅!2025年中科院预警期刊名单正式发布!
中国科学院文献情报中心定期发布《国际期刊预警名单》,旨在防范学术不端和不当出版行为。2025年最新名单聚焦两大问题:一是引用操纵、论文工厂等破坏科研生态的行为;二是中国作者占比过高或APC费用不合理,影响学术成果国际化传播。自2022年起,预警名单调整至年初发布,便于科研人员规划投稿。名单结合定量数据与专家评估,动态反映期刊风险。被列预警期刊可能影响职称评审及科研经费认可,建议优先选择中科院分区表推荐期刊,警惕快速代发陷阱,并关注期刊官网声明。未来,强化学术自律和技术工具应用将助力科研规范化,推动中国学术走向全球。
709 0
|
测试技术 机器学习/深度学习 算法
智能化软件测试的演进与实践
随着人工智能技术的蓬勃发展,软件测试领域迎来了革命性的变革。本文深入探讨了智能化软件测试的发展脉络、关键技术及其在现代软件开发中的应用。我们将从自动化测试的基础出发,逐步解析机器学习和深度学习如何赋能测试流程,以及这些技术如何提升测试效率和准确性。此外,文章还将分享一系列成功的案例研究,展示智能化软件测试如何在不同类型的项目中发挥作用。
|
存储 缓存 自然语言处理
elasticsearch 聚合 : 指标聚合、桶聚合、管道聚合解析使用总结
elasticsearch 聚合 : 指标聚合、桶聚合、管道聚合解析使用总结
|
存储 算法 安全
大揭秘:HashMap原理解析
大揭秘:HashMap原理解析
245 0
|
SQL 关系型数据库 PostgreSQL
|
网络协议 Linux
如何在 Linux 中配置 IPv4 和 IPv6 地址?
如何在 Linux 中配置 IPv4 和 IPv6 地址?
741 0