核心问题
这块系统到底谁负责?
Ownership 不是“谁写过这段代码”,而是:谁有责任、权限和上下文来维护它。
没有 owner 的系统会腐烂。有太多 owner 的系统会瘫痪。
工程映射
Ownership 至少包括:
- code ownership
- service ownership
- data ownership
- on-call ownership
- decision ownership
课程平台里,course-access 应该拥有访问权规则和写入口。billing 可以请求发放访问权,但不应该直接改 course_access_grants。
billing owns payments/refunds
course-access owns grants/policy/revocation
organizations owns memberships
support owns audited tooling, not raw database edits
判断问题
- 出事故时谁被叫醒?
- 谁能批准契约变化?
- 谁拥有数据写入口?
- 谁负责文档和 runbook?
小结
Ownership 要让责任和权限对齐。
只有责任没有权限,是背锅。只有权限没有责任,是风险。