如何快速理解复杂业务,系统思考问题?

正视复杂性

我们必须承认这个世界原本就非常复杂,就像以我们现在的科技仍然不能攻克新冠病毒、不能精确预测天气、不能有效控制经济形势异常波动一样,任何试图浮于表面、疏于投入就想了解并解决一个复杂问题的傲慢做法,最终都只能接受无情的打脸。

回到我们阿里当前的业务,随着市场规模的扩大、用户群体的多样性、公司组织的持续膨胀和细分、产品历史包袱的累积,我们的业务不可避免的越来越复杂和难以理解。就像著名的热力学第二定律(熵增定律)所解释的那样,只要没有外界系统的做功(我理解是一个颠覆性的业务模式),我们当前的系统就无可避免的持续熵增。

但作为在业务线工作的一员,更加全面的理解我们手上的业务逻辑是我们能做好工作的基本条件,我们肯定不能满足仅仅是点状理解的一些信息,也不能接受理解一个业务只能依赖长时间的工作经验,所以这里给大家介绍一个帮助自己全面理解一个复杂系统的工具:“系统思考”。之前我会尝试用它来帮助自己梳理手上的业务逻辑,感觉有一定的作用,做了这个入门总结,希望对大家有帮助。

什么是系统思考

我们的思考误区

先回忆一下,从很小的时候起,我们接受的教育是让我们怎么解决复杂问题的?

是的,就是通过拆解,把一个复杂为题拆解成多个不那么复杂的问题,再把不怎么复杂的问题继续拆解成简单的问题,最后通过解决一件一件的简单问题进而来解决原本的那个复杂问题。

这个方法是非常了不起的,也成就人类的伟大,我们把世界分割成一个一个的片断加以分析后再合并、还原,其思维方法遵循如是简单的法则:“部分之和等于整体”。这种拆分的思考方法在大部分情况下都比较有效,它让人产生了幻觉,误以为这世界是由一个个的各别事件堆积而成,看不见普遍存在的、整体复杂的关联、互动作用,从而导致人类行为的短期性、盲目性和灾难性。就像“盲人摸象”、“快思考”等都指出这种思考方式的局限性,所以在我们的工作中,如果仅仅秉承着“拆分”的方法,是不能解决真正复杂的问题的。

所以我们这里介绍一个从整体系统的角度思考复杂问题的方法:“系统思考”,本文的核心思想主要来自两本书:《第五项修炼》、《系统思考》,大家如果看完本文,觉得还有点意思,可以考虑找来这两本书深入了解一下。

什么是系统

在介绍“系统思考”之前,我们先确认下什么是“系统”。

“系统”都是复杂的,但并不是任何看上去“复杂”的东西都是系统,在我们讨论的范围里,一个规模庞大的衣柜、一发炮弹、一大束鲜花都算不上是一个“系统”。

系统是指一组相互作用、相互关联、或相互依赖的部分组成的复杂而又统一、具有特殊目的的整体,系统会拥有其单独部分不具备的特征。

我们说的“系统”都是动态的,比如下面的足球队、龙卷风、蜂群都能称之为一个“系统”。

系统一般有三个核心特点,多个部分、相互依赖、特有目的:

  1. 系统一定是由多个部分组成的,如果只有一个部分,一定不能称之为系统;
  2. 各个部分之前必须相互有依赖关系,单独的部分不能独立发挥它的价值;
  3. 所有部分整合在一起有它的目的,虽然有的时候自然和社会系统往往难以确知它的目的。

什么是系统思考

对什么是“系统”达成一致后,我们来看一下什么是“系统思考”。为了好理解,我们把系统思考扩展成三个不同的思考概念,可以理解为“系统思考”是同时具备这三种思考模式的一种方法:

  1. 【深度思考】不能停留在现象的表面思考,要能从现象深入到问题的背后,找到问题的本质;
  2. 【全局思考】不能单点、局部的看待问题,要能站远一点,看到问题的全局;
  3. 【动态思考】不能停留在某个时刻看问题,要理解每个人、每个业务之间都是动态变化的;

系统思考不仅仅是一个概念,更是一套思考问题的方法论,下面重点介绍这套方法论是怎么操作的。
系统思考的工具和方法

首现我们举个列子,下图左边这个人接水的场景就是一个典型的系统,那我们可以怎么描述这个系统呢?

  1. “一个人正在接水”?太简单,没有描述清楚这是一个什么样的系统;
  2. “一个人左手控制水龙头,右手拿杯子在接水,眼睛在观察水位情况”?还是觉得缺少结构化,没有能清晰得描述出这个系统中各个部分之间的、动态的、依赖的关系。

我们再看右边这个被抽象的结构图,每个节点都是系统中的一个变量,不同变量之间形成了关系,通过这个图,我们能理解在系统中不同部分之间是怎么相互依赖和影响了,我们可以预料系统可能的走势,也可以进一步思考怎么在这个系统中施加作用而影响系统的走势。
基于上面这个描述系统里各个部分相互作用的因果逻辑图,我们引入“系统思考”里的一个最重要的工具:因果回路图,下面我们就来讲一讲这个因果回路图的画法。

因果回路图

一个用来描述“系统思考”的因果回路图一般由三个部分组成,分别是:

  1. 【变量】,变量是我们建模的系统结构里的因素,它的值是随时间而变化的,一般是个名词;
  2. 【链路】,变量之间可以形成链路,这个链路是形成因果逻辑的链路(一个变量的变化影响另一个变量);
  3. 【回路】,几条链路可能形成回路。如果从变量A到变量B有一条链路,当从变量B到变量A,之间可能通过一系列其它的变量,也有一条链路时,就形成了回路。

两种回路模型

找到系统中的回路是“系统思考”的重要抓手之一,所以我们会重点讲讲回路。我们有两种最典型的回路,一个叫“增强回路”,一个是“平衡回路”:

  1. 【增强回路】:Reinforcing loop,一个回路中的变量增加或减少,会影响这个回路中的所有链路持续增加或减少,发展的趋势不受控制,我们常见的类比说法比如“恶性循环”、“强者恒强”等等就是增强回路导致的;
  2. 【平衡回路】:Balance loop,一个回路中的变量增加或减少受到系统中其他变量的反向影响,使得这个系统中的变量在长期的维度会表现出一种保持平衡的状态,比如最常见的例子是,猪肉如果大幅度涨价,就会有更多的人加入到养猪的行业,第二年的猪肉就会应为供应充足而降价,最终长期看价格会维持在一个平衡的状态。

后面的回路里,我们会用“R”表示增强回路,用“B”表示平衡回路,在链路中,会用“+”表示变量之间的正向的影响,用“-”表示变量之间的负向影响。

回路上的时延

在因果回路图中还有一个非常重要的概念就是“时延”。
一个变量的变化影响另一个变量并不一定是马上生效的,他们之间的关系有可能存在时延。一个大家在日常生活中很容易遇到的例子就是调节洗澡水的温度问题(特别是来到一个不熟悉的环境里,如宾馆),怎么调到一个适合自己的水温并不容易,要不就是水温过高,要不就是过低,这背后就是水温调节器和实际水温变化中间存在“时延”导致的。

在因果回路图引入时间概念之后,我们在链路之间增加一个“||”的符号代表这两个变量之间的因果关系存在时延。

时延在工作中最典型的例子比如:招聘对项目人力缺口的影响、代码单元测试度产品质量的影响、学习对于工作能力的影响等等。对时延的感知也是帮助你理解系统复杂性的重点之一。

系统思考的5个基础模型

如果现在大家对系统思考最基本的工具“因果回路图”有了理解之后,我们就可以参考软件开发领域里的“设计模式”(Design Pattern)思考一下,系统思考是不是也有一些常见的模型。

是的,因果回路是有一些常用、特定的“套路”,这些套路就是我们常说的“模式”,这里我们介绍4中最有代表性的基础模型。

饮鸩止渴

“饮鸩止渴”描述了我们是怎么在进度的压力下一次又一次的放弃了自己的坚持,因为链路上的延迟,让我们心存侥幸,最后使得我们的系统背负了沉重的技术债的。

舍本逐末

“舍本逐末”描述了短期表面方案和长期根本方案之间的冲突,因为增强回路的存在,使得我们不能对“效能优化”这个根本的方案提高优先级,最终上瘾于短期表面方案。

目标侵蚀

“目标侵蚀”描述了我们怎么在目标完成的压力下,放弃了做争取的事,而是通过直接降低目标来达成目标的。真实的“加速”措施通常需要更长的时间才能见效。正是这个延迟,使得我们逐步转向上面的平衡回路,需求延期和下调目标成为一种习惯。

“成长上限”描述了一个增强回路不可能独自持续下去,在一个更大的维度,一定会有另一个因素(或平衡回路)对它进行限制,这个就是成长上限。

公共悲剧

“公共悲剧”描述了对于大家共享的有限资源(APP首页弹窗),每个个体(业务单元)都想自己利益最大化。使用者越多,越消耗用户对平台体验的信任。随着弹窗总量迅速增加,遭遇用户容忍瓶颈时,消费者会感到不可容忍,用脚投票。

理解业务逻辑的例子

对于我自己过去接触的一些复杂业务,我会尝试使用“系统思考”作为工具去帮助自己加强对业务的理解,我经常在画对应业务的因果回路图的时候会发现一些新的观点,产生一些新的疑问,这个过程对我的帮助良多。
这里还是要强调一下,“系统思考”只是一个工具,不同的人,面对同样一个系统,因为了解的信息多少不同,关注的问题角度不同,对系统发展方向的期待不同,都会导致画出来的因果回路图有所不同。
所以,“系统思考”就是一个帮助你不断的通过zoom out、zoom in 来完整的、体系的看待复杂问题的工具,通过使用这个工具的过程,帮你更好的思考和理解你面对的复杂问题。

最后,再补充说明一下,对于复杂问题的思考其实是有层次的,从最表面的事件(正在发生什么),到事件背后的规律(发展趋势是什么),再到这个问题的结构模式(解释趋势背后的原因),再到价值观(驱动这个模式的理念),层层递进。在画完自己的业务系统因果回路图之后,再结合这个心智模型,思考自己的思考在哪个层次,是否可以有机会再下钻到更深的层次。

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510666.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云原生消息队列 Pulsar 浅析

一、前言 Pulsar是一个多租户,高性能的服务间消息解决方案。最初由Yahoo开发,现在由Apache Software Foundation负责。Pulsar是消息队列领域的一匹黑马,其最大优点在于它提供了比Apache Kafka更简单明了、更健壮的一系列操作功能&#xff0c…

当 Knative 遇见 WebAssembly

Knative 是在 Kubernetes 基础之上的 Serverless 计算的技术框架,可以极大简化 Kubernetes 应用的开发与运维体验。在 2022 年 3 月成为 CNCF 孵化项目。Knative 由两个主要部分组成:一个是支持 HTTP 在线应用的 Knative Serving,一个是支持 …

6000字干货分享:数据中台项目管理实践分享

简介 阿里云数据中台是一个包含落地实施方法论、平台产品和技术服务的企业级解决方案。阿里云数据中台以Maxcompute等大数据计算平台为载体,以三个One为理论基础构成数据中台方法论,实现在一个平台里完成数据全生命周期的管理工作。 本文总结了企业级数…

关于程序员的职业操守,从《匠艺整洁之道》谈起

为什么程序员需要职业操守? 行业的壮大 这个问题还得从软件行业的发展说起。软件行业从诞生(1935)至今(2022),已经八十多年的历史了。 在这期间,整个软件行业有了巨大的发展: 从业…

面向长代码序列的 Transformer 模型优化方法,提升长代码场景性能

阿里云机器学习平台PAI与华东师范大学高明教授团队合作在SIGIR2022上发表了结构感知的稀疏注意力Transformer模型SASA,这是面向长代码序列的Transformer模型优化方法,致力于提升长代码场景下的效果和性能。由于self-attention模块的复杂度随序列长度呈次…

支持异构GPU集群的超大规模模型的高效的分布式训练框架Whale

近日,阿里云机器学习PAI关于深度学习模型高效的分布式训练框架的论文《 Whale: Efficient Giant Model Training over Heterogeneous GPUs 》被计算机系统领域国际顶级学术会议USENIX ATC22接收。 Whale是阿里云机器学习PAI平台自研的分布式训练框架,开…

深度揭秘阿里云函数计算异步任务能力

在上篇文章《解密函数计算异步任务能力之「任务的状态及生命周期管理」》中,我们介绍了任务系统的状态管理,并介绍了用户应如何根据需求,对任务状态信息进行实时的查询等操作。在本篇中我们将会进一步走进函数计算异步任务,介绍异…

月费 19 美元的 GitHub Copilot 企业版上线,你乐意买单吗?

近日,微软旗下的 GitHub 发布了 Copilot 企业版,推出了一个名为“Copilot for Business”的新计划。每个用户每月仅需 19 美元就能享受企业级服务。简单来说,支付月费的用户将享有简单的许可管理,管理员可以为其团队启用 GitHub C…

设计稳定的微服务系统时不得不考虑的场景

我们的生产环境经常会出现一些不稳定的情况,如: 大促时瞬间洪峰流量导致系统超出最大负载,load 飙高,系统崩溃导致用户无法下单“黑马”热点商品击穿缓存,DB 被打垮,挤占正常流量调用端被不稳定服务拖垮&a…

千万级可观测数据采集器 - iLogtail代码完整开源

2022年6月29日,阿里云iLogtail开源后迎来首次重大更新,正式发布完整功能的iLogtail社区版。本次更新开源全部C核心代码,该版本在内核能力上首次对齐企业版,开发者可以构建出与企业版性能相当的iLogtail云原生可观测性数据采集器。…

科普达人丨漫画图解什么是 eRDMA?

在一个领先的阿里云数据中心里,数百台服务器(也就是大型的计算机)在疯狂工作和通信,他们正在合力完成一个大型的大数据处理任务,每台服务器领到自己的小任务,算完之后,得把结果相互同步&#xf…

聚焦科技创新产业升级 中国联通和腾讯签署新战略合作协议

12月20日,中国联通和腾讯在“2022中国联通合作伙伴大会”上签署新一轮战略合作协议。双方将充分发挥资源和技术优势,聚焦科技创新、产业升级、网络安全等进行全方位合作,为数实融合高质量发展开辟新路径、提供新引擎,助力千行百业…

科普达人丨漫画图解 SGX 加密计算黑科技

01 从一场朋友圈的“赛富”说起 最近,小明买基金赚了不少钱,开始膨胀了,开始在朋友圈里晒豪车、晒爱马仕。小红表示不服,“最近买基金还能赚钱?肯定是P图凡尔赛。还是我买币赚得多。”炒鞋达人小孟就更不服&#xff0…

SysOM 案例解析:消失的内存都去哪了 !

在《AK47 所向披靡,内存泄漏一网打尽》一文中,我们分享了slab 内存泄漏的排查方式和工具,这次我们分享一种更加隐秘且更难排查的"内存泄漏"案例。 一、 问题现象 客户收到系统告警,K8S 集群某些节点 used 内存持续升高…

Windows 上玩转最新的 Android 13,微软悄悄在 GitHub 上官宣了!

整理 | 屠敏出品 | CSDN(ID:CSDNnews)操作系统领域有两大霸主,一个是移动端的 Android,一个自然是桌面端的 Windows。当有一天,两者在同一套系统上碰撞,将会擦除怎样的火花?想必不少…

Serverless 时代下微服务应用全托管解决方案

Serverless 时代下微服务发展与挑战 早期业务规模比较简单,大多团队开发采用单体应用,已经能够很好地满足团队的业务需求,并且能够快速迭代。但随着业务规模的不断增长,系统变得越来越复杂,单体应用逐渐无法满足线上生…

关于接口测试自动化的总结与思考

序 近期看到阿里云性能测试 PTS 接口测试开启免费公测,本着以和大家交流如何实现高效的接口测试为出发点,本文包含了我在接口测试领域的一些方法和心得,希望大家一起讨论和分享,内容包括但不仅限于: 服务端接口测试介…

最新Forrester Wave云计算报告:阿里云位居中国领导者、全球强劲者象限

近日,国际权威机构Forrester连续发布2022年全球和中国云计算市场Forrester Wave报告,在中国市场上,阿里云位居领导者象限,在市场表现、战略两大维度的评测中获评全项最高分;在全球报告中,阿里云位居强劲者象…

大促场景下,如何做好网关高可用防护

618 大促正在如火如荼进行中。《618大促来袭,浅谈如何做好大促备战》一文介绍了全方位保障大促高可用的方法论和技术手段,本文继续围绕网关,深入探讨大促场景下,如何做好网关高可用防护,将从以下几点逐一展开介绍&…

Java Agent 踩坑之 appendToSystemClassLoaderSearch 问题

从 Java Agent 报错开始,到 JVM 原理,到 glibc 线程安全,再到 pthread tls,逐步探究 Java Agent 诡异报错。 背景 由于阿里云多个产品都提供了 Java Agent 给用户使用,在多个 Java Agent 一起使用的场景下&#xff0…