工程师思维的核心 |《转向:用工程师思维解决商业难题》
工程师思维的核心正是我所说的模块化系统思维。这并不是一项单一的才能,而是技术与原则的融合。系统性思考不仅仅要做到有系统、有条理,它更需要你能理解在生活的起起落落中,没有什么事物是真正静止的,一切皆有关联。一个系统因其各个模块之间的关系而成为一个整体,这样的整体是不能通过单独分析各组成部分就能理解的。
举例来说,模块化系统思维的一种特殊技巧是解构(把一个较大的系统打散成一个个模块)和重构(把这些模块重新组合起来)的功能性组合。其重点是确定哪些是强连接,哪些是弱连接(模块如何运作、如何不运作或如何才可能运作),以及如何把这一知识变成对工程师有用的结果。一个相关的设计理念是逐步求精,这是软件工程师所常采用的。工程师对一种产品或服务所做的每一步改进,都会促成一个更好的结果或有助于替代方案的开发。即便在这个产品开发框架中,也有一种自上而下的设计策略——“分而治之”,分别解决每个子任务,逐步进展,直至实现最终目标。与此方法相对的是自下而上的设计策略,即把各个模块重新组合起来。
中央情报局科学技术部前副主任、国家安全专家鲁思·戴维(Ruth David)这样归纳:“工程不但是系统思维的同义词,也是系统建设的同义词,是一种从不同角度观察问题的能力。人们不仅要了解各个组成部分和它们之间的相互依存关系,而且要真正领会整体以及它的意义所在。”这就是工程师思维能在全社会那么多领域得以广泛应用,并且对个人和团体都有效的原因之一。
模块化系统思维随情境而变化,因为没有一个被广泛接受的“工程方法”。设计建造“迪拜塔”不同于设计编写微软办公套件的软件代码无论是用来对世界杯所用足球进行风洞测试,还是制造一枚导弹用来射击另一枚飞行中的导弹,工程都以不同的方式在起作用。即使在一个特定的行业中,所用的技术也可以不同。制造一台涡轮风扇发动机不同于组装一个巨型系统,比如一架飞机,或者推而广之,一种集合众系统的系统,比如空中交通网络。
随着我们周围现实环境的变化,工程的性质也在不断发生变化。除了作为“文化硬件”,工程也是经济增长的引擎。例如在美国,最近的统计表明工程师占总人口的比例不足4%,但他们却在超比例地为其余人创造就业机会。某些工程创新会取代人类的工作,但它们通常会产生促进发展的新机遇和新途径。
工程师思维有三个基本特征:
1、首先是在没有结构的情况下“预见”结构的能力。
从日本俳句到高层建筑,我们的世界依赖于结构。就像一位有才华的作曲家“聆听”未曾谱写的音乐,一名优秀的工程师能够通过结合规则、模型和直觉,想象和生成结构。工程师思维倾向于关注冰山的水下部分而不是它外露的上部。它关注的不仅仅是看得见的事物,也包括看不见的事物。
结构化的系统思维过程会考虑系统的各个元素如何在逻辑、时间、顺序和功能方面相连接,以及在什么条件下起作用或不起作用。历史学家可能在事件发生几十年后再应用这类结构逻辑,但工程师需要做的是事先判断,无论是对极微小的细节,还是对高层次的抽象整体。这是工程师制作模型的主要原因之一,这样他们才能进行基于现实的结构性对话。至关重要的是,预见结构需要用智慧来判断结构何时是有价值的,
从瓦利埃和格里博瓦尔的作为可知,军事系统因他们运用了结构化的创新方法而得以发扬光大。下面是一段美国国防高级研究计划局(DARPA)前局长乔治·海尔迈耶(George Heilmeier)的问答,他曾设计了现代光学技术的一个重要部分——液晶显示器(LCD)。他的创新方法是应用一张检查清单模板,这样的模板适用于有明确目标和客户的项目。
- 你想做什么?陈述你的目标,但千万不要使用专业术语。
- 目前是怎么做的?现行方法受限于什么?
- 你的方法有什么创新之处,为什么你认为它会成功?
- 什么人会关注?如果你成功了,会带来什么影响?
- 有什么风险或收益?
- 花费多少?需要多长时间?
- 检验成功与否的中期和期末“考核”是什么?
在基础层面上,这样的结构有助于你用合乎逻辑的方式提出正确的问题。
2、工程师思维的第二个特点是能够熟练地在约束条件下进行设计
任何现实场景都存在激发或破坏我们潜能的约束条件。鉴于工程固有的实用性,它所承受的压力远比其他行业大。无论是自然约束还是人为约束,都不允许工程师等到所有现象都得到充分理解和解释后才行动。人们期望工程师能在给定的限制条件下生成可能达到的最好结果。即使没有约束,好的工程师也知道如何运用约束来帮助自己实现目标。对工程师来说,时间约束可激发创意和智慧。财力约束和取决于自然规律的物理约束也很常见,此处还有一个不可预知的约束——人类行为。
奥利维尔·德·韦克(Olivier de Weck)和他在麻省理工学院的研究员同事指出,“如果麦金塔(Macintosh)操作系统或视窗(Windows)操作系统的每个新版本,都是一个从零开始的全新操作系统,那么个人计算机将停止发展”。工程师经常改造和强化他们的软件产品,逐步满足顾客偏好和商业需要,其实这些不外乎是约束在起作用。“看起来简单的改变常常需要其他改变来推动,继而又引起更多的改变……你必须找到一种方法延续旧事物,同时创造新事物。”压力是无止境的。
3、工程师思维的第三个属性关乎取舍——经过深思熟虑后对解决方案和备选方案做出决断的能力。
工程师设定设计重点,并进行资源分配,将弱目标从强目标中分离出来。对于飞机的设计,一个典型的取舍可能是在给定的性能指标约束下,平衡成本、重量、翼展要求以及厕所尺寸。这种选择压力,甚至可以延伸到乘客是否喜欢他们乘坐的飞机。如果将约束比作走钢丝,那么取舍便是一场可行性、可能性、期望与限制之间的拔河比赛。
科学、哲学和宗教也许忙着追求它们认为的真理,而工程则负责在约束条件下产生效用。结构、约束和取舍是工程师思维的三大法宝。这些原则之于工程师就像时间、速度和节奏之于音乐家一样。
本文摘选自《转向:用工程师思维解决商业难题》,若涉及侵权告知删除
工程师思维的核心 |《转向:用工程师思维解决商业难题》相关推荐
- 10个顶级商业思维_9个启发 | 如何用设计思维解决商业难题
小小sha导图卡片屋 第402次分享 分享 | 小小sha(ID :shashalaoshi2020) 排版编辑| 麻吉(ID:Cmj-hellow) 晚上19:30,相约导图卡片屋,今天我们来聊聊如 ...
- 前端工程师·的好习惯_质量检查工程师应避免的7个不良习惯
前端工程师·的好习惯 大多数人都同意软件质量很重要. 我们已经看到了各种情况下的错误软件的结果:从火星探测器故障和执行致命剂量辐射的化学治疗仪到经历级联故障的电信系统. 假设软件测试人员将是开发团队的 ...
- 工程师思维是什么?芯片工程师要有哪些思维习惯?
芯片工程师有知识基础和工作技能就够了? 我不同意! 至少这个说法漏掉了很重要的思维,柏拉图说过,"思维是灵魂的自我谈话". 在IC行业,思维对工程师来说是非常重要的.所以芯片工程师 ...
- ML:从工程化思维分析—机器学习团队十大角色的简介(背景/职责/产出物):产品经理、项目经理、业务咨询顾问、数据科学家、ML研究员、数据工程师、ML工程师、DevOps/软件开发/交付工程师
ML:从工程化思维分析-机器学习团队十大角色的简介(背景/职责/产出物):产品经理.项目经理.业务咨询顾问.数据科学家.ML研究员.数据工程师.ML工程师.DevOps/软件开发/交付工程师 背景:在 ...
- 有工程师思维吗?什么是工程师思维?
有工程师思维吗? 当设计思维被广泛谈论的时候,惯性思维使然,出现了所谓"工程师思维",直觉上,"工程师思维"仿佛站在了"设计思维"的对面,但 ...
- 软件测试人员的核心竞争力,软件测试工程师的核心竞争力是什么?
在测试行业,很多人会认为,测试工程师这个岗位其实是很容易被替代的,工作了3年5年会的东西,一个应届生稍加培养也能做,那么企业会选择谁可想而知.所以在学习的过程中,我们首先要找准自己的定位,先搞清楚你的 ...
- 工程师实战方法论核心 12 讲
专栏亮点 授人以渔.对工程师而言,「鱼」即知识点,「渔」则为实战方法论.技术类文章通常聚焦于知识点,而本专栏则侧重于实战方法论,力求授读者以渔. 服务于实践.本专栏内容源于实践,是阿里系 4 位资深工 ...
- 网络技术工程师专业核心 | 网络技术工程师就业方向
一.网络技术工程师专业定义 本专业主要面向对网络感兴趣的有志青年,通过本专业的学习,可以处理常见的电脑软.硬件故障,能够组建并维护大中型企业的网络环境及相应的广域网系统,能够熟练操作思科.华为等主流厂 ...
- python编程思维导图_用来梳理 Python 编程核心知识15张思维导图
原标题:用来梳理 Python 编程核心知识15张思维导图 小编这次在逛论坛的时候,无意中发现了一份python的武功秘籍,也就是一份思维导图,堪称业界经典! 思维导图可以有力地激发你的联想,通过一个 ...
- 新媒体运营思维的核心概念知识点有哪些?
新媒体运营思维的核心知识点有哪些?运营是个筐什么都能往里装. 曾经听人说过:互联网产品是一项贯穿了用户整个生命周期的设计行为,根据用户的需求而变化,最终完成对用户需求的实现与用户体验的完善.同样的道理 ...
最新文章
- Using Regular Expression to validate a Guid
- linux如何修改主机名
- CodeBlacks程序调试的那些事
- 精读《谈谈 Web Workers》
- 设置vim打开文件光标指在上次退出位置
- Excel 转为 MySQL 语句
- 计算机一级办公软件选择题,计算机一级MSOffice习题
- 遵化计算机培训,遵化人力资源培训
- WPF 如何在代码中使用自定义的鼠标资源
- 程序员如何达到年薪百万?java程序员必读书籍!
- Java static静态关键字 有啥用
- tensorflow输出
- 关于call()的this指向研究
- plc仿真实训软件_多专业综合仿真实训K3使用教程
- centos修改mysql数据库密码修改_centos7 mysql 修改数据库密码
- 音视频中的码率控制(CBR、VBR、CVBR、FIXQP)
- 欧姆龙OMRON PLC之Host Link协议(一)
- 虚拟服务器架设教程,架设服务器虚拟主机教程
- (淘宝无限适配)手机端rem布局详解
- Ubuntu 14.04出现“device not managed”错误及ubuntu可以ping通外网浏览器上不了网。