3.2 功能分析与因果链:追踪问题在系统里的传播


3.2 功能分析与因果链:追踪问题在系统里的传播

本节摘要:OAF 图是静态合影,因果链是动作片。本节讲怎么把不期望效应写成事件链、怎么区分链上的"根事件—传播事件—表现事件",以及怎么用功能载体的转移(换一个对象来承担同一功能)找到绕开整条链的解法。

静态图回答不了的问题

OAF 建模完成后常见一种尴尬:图上五六个对象、七八条功能边,都知道有问题,但不知道从哪条边下手。原因很简单——静态图不回答"先后"和"谁引发谁"。因果链分析补上这两维,把功能边按时间顺序串成事件序列,问题的传播路径就显形了。

以打印机卡纸为例,从现象回溯的因果链:

E1 纸张含水率偏高(仓储环境湿度大) E2 纸张边缘轻微波浪形变 E3 进纸辊夹持时纸张受力不均 E4 纸张偏斜 进入定影通道角度超差 E5 纸张卡在定影辊与导向板之间 E6 面板报卡纸 打印中断

链上一眼可辨三种事件:E1 是根事件(上游再无因果来源),E2 到 E5 是传播事件,E6 是表现事件(用户看到的一切)。多数"解决方案"绑定在 E6 和 E5——把导向板间隙调大、增加卡纸传感报警。而链分析的结论是:E2(波浪形变)才是传播链的第一次成形点,在 E2 之前截断,E3 到 E6 全部消失。

追溯的三个动作

动作一:五问回溯。 对表现事件连问五次"这又是为什么造成的",每次答案必须落在具体对象的属性上。问不下去(答案超出封闭世界)或问到根事件为止。五问不是死数,是防止三问就草草收工的经验下限。

动作二:标根事件。 链上再无上游因果的事件就是根。注意根事件可能不止一个——卡纸链里若纸张批次与通道间隙公差各自独立致害,就是双根链,两条支线要分别处理。

动作三:找关键传播事件。 传播事件里挑"断掉它收益最大"的。判据有两条:断掉后下游事件全部消失;断掉它的工程代价可承受。E2 断法是纸张仓储环境除湿或使用前晾纸平衡水分,代价低收益全,是标准的关键传播事件。

# 因果链的根事件与断链收益计算 chain = [ ("E1", "纸张含水率偏高", []), ("E2", "纸张边缘波浪形变", ["E1"]), ("E3", "进纸夹持受力不均", ["E2"]), ("E4", "进纸角度超差", ["E3"]), ("E5", "卡在定影通道", ["E4"]), ("E6", "报卡纸打印中断", ["E5"]), ] roots = [i for i, _, ps in chain if not ps] print("根事件:", roots) down = {i: [j for j, _, ps in chain if i in ps] for i, _, _ in chain} def cascade(n, acc=None): acc = acc or set() for c in down[n]: if c not in acc: acc.add(c); cascade(c, acc) return acc for i, desc, _ in chain: d = cascade(i) print(f"{i} {desc}: 断链消除 {len(d)} 个下游事件 {sorted(d)}")

输出显示从 E2 断链消除四个下游事件,从 E5 断链只消除一个——量化对比把"该在哪下手"变成一道算术题。这正是 2.2 节接头案例同款思路在不同问题上的复用:因果链工具本身是通用的,变的只是问题域。

功能载体的转移

因果链之外,功能分析还有一记高价值招法:给同一功能换承担者。卡纸链的 E3 环节,"夹持送纸"功能由进纸辊承担,波浪纸让它的夹持失效。追问一句:夹持功能必须由辊子承担吗?吸风进纸平台用负压气流承担同一功能,对纸面平整度完全不敏感——功能没变,载体换了,E3 这个传播事件被整体绕开。

载体转移的搜索口令只有三问:这个功能现在由谁承担?封闭世界里还有什么对象具备承担它的属性?把功能搬过去,链条哪一环失效?第三问的回答直接对接第 4 章的算子 4(改变功能与结构),可以说载体转移就是算子 4 在分析阶段的预习。

因果链三种事件与断链收益

因果链三种事件与断链收益

本节要点回顾

  • 链上三色事件:根事件、传播事件、表现事件——表现事件从来不是下手点
  • 五问回溯:每次答案必须落到对象属性,问不下去才算到根
  • 断链收益可计算:下游消除数与工程代价两个数一比,下手点自明
  • 双根链要拆支:两条独立致害线分别处理,别硬拧成一股
  • 载体转移三问:谁在承担、谁能承担、搬过去断哪环——分析阶段最强的一记预手

常见问答

因果链和鱼骨图(石川图)有什么不同

鱼骨图是发散工具:从问题出发枚举可能原因类别(人机料法环),适合排查"未知原因"。因果链是收敛工具:从已确认的事件序列出发找结构,适合"知道现象但看不清传播路径"。实践顺序常常是鱼骨图圈出嫌疑方向,因果链把嫌疑方向展开成帧序列——两者衔接而不是替代。

回溯到第几层该停

两个停止条件任一满足即停:答案落到不可控的外部条件(气候、法规)时停——那是约束不是因;或答案落到一个"改了它问题必然消失且改造可行"的事件时停——那是根事件,攻它。最常见的错误是不停地往上追,追到"公司战略"层面,分析变成了抱怨大会。

链上出现环(A 导致 B、B 又导致 A)怎么处理

环不是错误,是自增强回路的信号,标记出来别展开。比如"氧化增大接触电阻、电阻增大发热、发热加速氧化"是个恶性循环环。环的处理方式是找"入场条件"——环转起来之前总有一个启动事件,攻启动事件比攻环本身省力,这与断链逻辑完全一致。

起步时的简化建议

首次做因果链分析的团队,建议从"七帧以内"练起:强制自己在七个事件内讲完问题过程。这个限制逼你合并次要事件、只留主干,主干清晰之后再加细帧。一上来就切二十帧的新手团队,几乎都会迷失在自己切的帧里——先粗后细是分析的手感,与雕刻先打轮廓再抠细节是同一个道理。

FAQ:因果链分析能不能用于事故调查

非常适合,而且事故调查的场景比改良场景更"标准":事故有明确的表现事件、有时间线、有物证。用五问回溯替代传统的逐层追责,能显著减少"归结为人为失误"的偷懒结论——人为失误永远只是传播事件,它上游有设计、制度、培训的根事件。把 USIT 的因果链引入事故复盘,是安全工程领域公认的顺滑迁移。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U