从 PRD 到任务¶
一个大的 PRD 如果不继续拆,最后很容易变成“大家都知道目标很大,但没人知道下一步先做什么”。
为什么 PRD 不能停在 PRD¶
PRD 通常描述的是:
- 项目要实现什么;
- 有哪些功能范围;
- 有哪些兼容性和性能要求;
- 有哪些非功能性约束。
但 PRD 不等于任务计划。
如果没有继续拆分,它无法直接回答:
- 先做对象还是先做 merge?
- 哪个模块是前置依赖?
- 哪些危险操作必须最后才能放开?
- 测试应该在哪一步跟上?
这个项目怎么拆¶
在 python-git-reproduction 里,大致的拆法是:
- 先立文档和工程约束;
- 再建项目骨架;
- 再做仓库初始化;
- 再做对象数据库;
- 再做管道命令;
- 再做 Index V2;
- 再做 commit 闭环;
- 再做 refs 和 branch;
- 再做工作区状态;
- 再做 checkout / switch / reset / stash / merge;
- 再做 pack、remote 和服务端;
- 最后用真实测试把整条链路兜住。
任务拆分的原则¶
任务不是按“功能看起来顺手”拆,而是按依赖关系拆:
- 没有对象库,后面所有东西都站不稳;
- 没有 index,就没法讲清楚 add、status、write-tree;
- 没有 refs,就没法做 branch、checkout、reset;
- 没有安全边界,就不该急着开放危险命令。
所以好的任务拆分,其实是在保护后续实现质量。