寓言故事
修桥队把工序画成了只向前走的箭头图
修桥队过去靠老师傅口头安排。先备木,再立桩,再铺板,再验收。桥小的时候,大家凭经验就能接上。后来工程变大,许多工序可以并行,许多工序又必须等待前一步。油漆不能早于铺板,验收不能早于承重测试。工头先写了一张长清单。清单从上到下看着整齐,却把能并行的事排成串,也没有说明每一步依赖谁。
有次油漆队提前进场,发现桥板还没铺完;铺板队又等不到铁钉,因为采购被排在太后面。全队都忙,却互相卡住。
书吏画了一张箭头图。每个圆点是一道工序,箭头表示必须先完成什么;图里不允许箭头绕回去,否则工程会永远等自己。
工头立刻看出哪些活能并行,哪些是关键路径,哪一步延误会拖住全桥。调度不再靠喊话,而靠依赖关系。
后来,修桥队把这张图用于流水线、数据处理和自动化任务。图没有替他们干活,却让执行顺序和等待关系变得可计算。
工头明白,复杂流程最怕含混的先后关系;一张无环依赖图能让整套装置知道什么可以开始,什么必须等待。
箭头图还揭穿了一个老误会:忙不等于快。采购队早早跑出去并没有用,因为没有尺寸单就买不了钉;油漆队守在桥边也没有用,因为承重未测就不能刷。
后来书吏每天早晨只问三件事:哪些圆点已经完成,哪些箭头已经满足,哪条路拖住了全桥。工头少了吼叫,多了判断;复杂工程终于有了可以推演的骨架。只要箭头清楚,哪怕队伍换人,新人也能看懂工程为什么走到这里。图上的安静箭头,比工地上的喊声更可靠。等谁、先谁、卡谁,从此不靠记性。也不靠运气。