资讯详情

资讯详情

《创业之路》-1044-细读商业经典 - 公司与软件系统:同构的复杂组织

公司与软件系统同构的复杂组织公司与软件系统常常被看作完全不同的两类事物一个由人组成充满人性博弈、情绪、利益分歧另一个由代码构成逻辑严谨、时序明确、数据流转毫厘不差。但穿透表层差异二者在底层架构上高度同构。公司组织架构、工作流程、生产资料与供应链、产品与商品、沟通与信息。软件系统系统架构、工作流程与时序图、输入、输出、数据结构。两套体系一一对应本质上都是一套持续接收外部输入按照预设规则处理最终产生输出并能够持续迭代演化的复杂系统。一、要素一一映射企业组织 ↔ 软件系统1. 组织架构 ↔ 系统架构公司的组织架构定义部门划分、层级关系、权责边界研发、生产、销售、财务模块之间谁负责什么谁向谁汇报哪些模块独立、哪些模块耦合。软件的系统架构定义模块划分、服务边界、依赖关系业务模块、存储模块、接口服务模块之间调用关系、服务归属高内聚低耦合的设计原则。二者的设计目标完全一致拆分复杂问题明确单元职责控制模块之间的耦合度。 组织架构臃肿、层级过多就如同软件架构深度嵌套、调用链路过长响应缓慢、故障容易层层传导组织边界模糊、权责不清如同软件模块职责混杂一处修改多处产生未知副作用。2. 工作流程 ↔ 工作流程与时序图公司的工作流程定义业务先后顺序客户询价→方案评审→合同签订→采购物料→生产制造→交付验收→回款。流程规定每一步由谁执行触发条件是什么异常情况如何处理。软件的时序图定义消息、请求的先后顺序客户端发起请求→网关校验→业务逻辑处理→读写数据库→返回结果。时序图清晰描述主体之间交互的先后次序、同步或异步调用、异常分支。企业流程卡点、审批冗余等同于软件串行调用过多系统吞吐量下降企业缺少异常处理预案就像软件没有异常捕获一旦某个环节出错整条流程直接崩溃。3. 生产资料与供应链 ↔ 输入公司的生产资料、供应链是整个系统的输入源。原材料、零部件、设备、上游供应商提供的物料、人才、资金源源不断流入企业系统作为加工转化的基础。没有稳定的供应链输入生产就会停滞。软件系统的输入是外部传入的参数、请求、数据流、文件、传感器信号。所有计算、逻辑处理都建立在输入之上输入脏数据、数据缺失后续所有运算结果都会失真。供应链质量不稳定劣质原材料流入生产产出次品软件输入没有校验脏数据进入系统引发逻辑错误。二者的质量校验逻辑完全一致在入口处做校验提前拦截不合格输入避免下游产生更大损失。4. 产品与商品 ↔ 输出公司经过组织运转、加工转化最终输出产品与商品交付给客户换取收入完成价值闭环。输出的品质、交付周期、功能决定客户是否买单。软件系统经过逻辑运算、数据处理最终返回输出报表、计算结果、生成文件、控制指令提供给使用者或者下游系统。输出的准确性、时效性决定系统价值。当市场需求变化企业需要迭代产品当业务需求变化软件需要调整输出格式与能力。输出是整个系统价值的最终载体。5. 沟通与信息 ↔ 数据结构公司内部信息依靠会议、文档、报表、工单传递。信息如何结构化存储、传递是组织运行的底层。订单信息、客户资料、BOM 清单、财务台账这些信息的格式、定义、流转方式就是企业版本的 “数据结构”。信息定义混乱、口径不统一部门之间沟通就会产生误解产生大量内耗。软件系统的数据结构定义数据如何组织、存储结构体、数据库表、字段定义。数据结构决定信息如何存放、如何读取、如何在模块之间传递。字段定义混乱模块之间数据无法对齐出现大量兼容性问题。很多企业管理内耗根源不是人不够努力而是信息没有统一的数据结构很多软件 BUG根源也不是代码能力差而是前期数据结构设计缺陷。二、更深层的共性两套系统都具备的底层规律都存在耦合与内耗问题模块 / 部门强耦合一处改动牵动全局。企业调整一条业务规则多个部门都要变更流程软件修改一个底层数据结构多个服务都要适配。耦合度越高系统迭代成本越高越容易出现路径依赖。都需要处理不确定性与异常分支软件设计要考虑异常超时、断连、输入非法企业运营也要处理异常供应链断供、客户违约、人员流失。优秀的系统设计不是假设一切顺利而是预先设计容错、降级、兜底方案。这和我们之前讨论组织系统“承认斗争、博弈用制度设置底线” 逻辑相通。都有版本迭代与演化能力企业不是一成不变组织架构、流程、产品会持续调整也就是组织系统的版本升级软件也持续迭代新增功能、修复缺陷、重构架构。成功的演化是局部小步试错验证之后再推广失败的演化是一次性大规模重构引发系统性崩溃。都存在接口问题企业和外部客户、供应商的对接本质是业务接口软件对外暴露 API 接口。接口约定一旦不清晰双方交互就会频繁出错。三、关键差异人构成的系统 vs 代码构成的系统同构不等于等同二者最大差异来自组成单元 软件系统的单元是代码遵循固定逻辑没有独立利益诉求不会自主博弈公司的单元是人具备独立的目标、利益、情绪。人会产生博弈、立场分歧、认知偏差。软件可以依靠严密的逻辑完全约束行为企业除了流程与制度相当于代码还要面对人性所以除了规则还需要价值共识、激励机制去引导个体自利行为转化为组织整体目标。这也恰好呼应我们之前的认知软件系统是理想的规则系统而公司是规则系统叠加人性系统。四、带来的实践启示理解公司与软件系统同构是一种非常强大的思维工具可以双向迁移认知管理者可以用软件工程思维做企业设计设计一家企业如同设计一套大型软件先梳理输入输出定义信息结构划分模块部门绘制业务时序流程做好异常处理控制耦合持续小版本迭代。不要上来就堆砌人员。软件架构师理解企业更容易打造真正贴合业务的系统软件不是凭空写代码软件本质是对企业业务流程、信息流转的数字化映射。看不懂企业组织、供应链、信息流转做出来的系统必然和真实业务脱节。诊断企业问题可以像排查软件故障一样企业出问题可以像排查系统故障看是输入供应链问题模块部门边界问题流程时序问题信息数据结构不一致问题还是输出产品不匹配需求 不需要简单归因于人的能力问题很多组织问题本质是架构与流程设计缺陷。结语公司和软件系统是两套同源的系统模型 公司是由人、物料、资金、信息构成的实体复杂系统 软件系统是由代码、数据、接口、时序构成的数字复杂系统。二者拥有一一对应的组成要素共享系统设计、耦合、容错、迭代的底层原理。唯一的巨大分野在于企业组织内嵌了人性博弈。 掌握这套同构思维无论是经营企业还是研发软件都能跳出局部视角站在系统的高度看清架构、流程、信息流转的本质。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →