核心问题

工程师为什么会对某些看似简单的需求犹豫?

真实场景

PM 想加一个“超级管理员可代用户操作”的功能。页面只要一个按钮,但工程师非常谨慎。

因为这不是按钮问题,而是权限、安全、审计和责任边界问题。

常见误区

坏判断是:

工程师不愿意做,是因为嫌麻烦。

很多“麻烦”其实是系统复杂度的信号。

工程视角

复杂度可能来自:

  • 概念变多。
  • 状态变多。
  • 分支变多。
  • 例外变多。
  • 数据迁移。
  • 权限边界。
  • 回滚困难。
  • 监控和审计要求。

复杂度不是代码行数,而是未来理解和修改的成本。

PM 可以怎么做

PM 可以请工程师把复杂度翻译出来:

  • 哪个模型会被破坏?
  • 哪些边界会变模糊?
  • 哪些旧功能会受影响?
  • 哪些风险需要额外保护?

Atlas Action

当工程师说“这个复杂”时,不要追问“为什么不能简单点”,先问:

复杂度主要来自数据、状态、权限、兼容,还是发布风险?

小结

复杂度是工程系统里的长期成本。

PM 能理解复杂度,就能更准确地判断需求是否值得。