用途:该技能面向软件架构分析,依据 Vlad Khononov 的三维耦合模型评估代码库中模块间的耦合状况,帮助识别架构异味、判断模块应拆分还是合并,以及解释为何一处改动会意外波及他处。
主要能力:从三个维度分析——集成强度(组件间共享什么)、距离(耦合在物理上位于何处)、波动性(组件变更频率)。集成强度分为侵入式、功能性(顺序/事务/对称)、模型耦合与契约耦合;距离按封装层级衡量,跨团队时按康威定律上调一级;波动性依据子域类型(核心/支撑/通用)与 git 历史估算。核心平衡公式为 BALANCE = (STRENGTH XOR DISTANCE) OR NOT VOLATILITY,维护成本公式为 MAINTENANCE_EFFORT = STRENGTH × DISTANCE × VOLATILITY。
使用方式:按阶段执行——收集上下文与业务背景、绘制依赖图并计算距离、逐条依赖分类集成强度、评估波动性、计算平衡评分,最后输出含执行摘要、依赖图、问题清单、正面模式与优先级建议的报告。可用 git log --since="6 months ago" --format="" --name-only | sort | uniq -c | sort -rn | head -20 辅助估算波动性。
适用场景:用户要求分析耦合、评估架构、检查依赖、识别问题耦合,或询问模块是否应抽取/合并时。
限制:波动性最好用真实 git 数据而非纯静态分析;对称功能性耦合需语义阅读,静态工具通常无法检测;组织距离需用户输入;动态共生性(时序、值、标识)难以在无运行时观察时发现;分析结论需结合业务上下文修正。