Skip to content

3.4.4 用优先级引导 AI 分阶段开发

你在第二章用减法思维划分了 P0/P1/P2 功能优先级。现在的问题是:如何让 AI 按这个顺序分阶段工作?

为什么要分阶段开发

问题场景

小李把完整的 PRD 一次性发给 AI:

请帮我实现这些功能:
- 添加任务
- 查看列表
- 勾选完成
- 删除任务
- 分类标签
- 优先级标记
- 定时提醒
- 数据统计

AI 返回了一大堆代码。小李运行后发现:

  • "添加任务"有 bug(输入为空也能添加)
  • "分类标签"功能做得很完整
  • "定时提醒"用了他看不懂的技术

小李花了两小时调试,发现核心功能有问题,但锦上添花的功能却很完善。

这就是"一次性给太多"的典型后果。

分阶段的三大好处

好处说明
减少遗漏AI 一次处理 3-5 个功能比处理 10 个更不容易出错
及时验证每轮结束后可以测试,发现问题及时修正
灵活调整P0 做完后可能发现 P1 不需要了,省去无用功

三轮对话模式

分阶段开发的核心是:每轮只做一个优先级的功能,验证通过后再进入下一轮。

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   第一轮    │────▶│   第二轮    │────▶│   第三轮    │
│  实现 P0    │     │  添加 P1    │     │  添加 P2    │
│             │     │             │     │  (可选)     │
└─────────────┘     └─────────────┘     └─────────────┘
      │                   │                   │
      ▼                   ▼                   ▼
   验证测试            验证测试            验证测试

第一轮:实现 P0 功能

Prompt 模板

markdown
请根据以下 PRD 实现第一版,**只做 P0 功能,不要做任何额外的事情**

[粘贴你的 PRD]

特别强调:
- 只实现"核心功能"部分列出的功能
- 不要添加任何 PRD 中没有提到的功能
- 代码要简洁,能跑起来就行

小李的实际 Prompt

markdown
请根据以下 PRD 实现第一版,只做 P0 功能。

# 极简待办

## 一句话描述
一个给自己用的极简待办清单网页

## 目标用户
我自己(职场人士,每天处理5-10件事务)

## 要解决的问题
怕遗漏重要事项,需要一个打开就能用的极简工具

## 核心功能(P0,只做这些)
- 添加任务:输入框 + 添加按钮
- 查看任务:列表显示所有待办
- 完成任务:点击勾选,显示删除线

## 不做的功能
- 不要登录注册
- 不要删除功能(P1,下一轮做)
- 不要分类标签
- 不要云同步

## 技术约束
- 纯前端:HTML + CSS + JavaScript
- 数据存储:浏览器 localStorage
- 界面语言:中文

特别强调:只做上面列出的 P0 功能,不要添加任何额外功能。

第一轮验证清单

AI 返回代码后,按这个清单验证:

  • [ ] 能添加任务吗?
  • [ ] 任务能显示在列表吗?
  • [ ] 能勾选完成吗?
  • [ ] 刷新后数据还在吗?
  • [ ] 有没有多做了什么功能?

全部通过后,才进入第二轮。

第二轮:添加 P1 功能

Prompt 模板

markdown
P0 功能已完成并验证通过。现在请添加 P1 功能。

## 当前已有功能
- 添加任务 ✓
- 查看列表 ✓
- 勾选完成 ✓

## 本轮要添加的 P1 功能
- [P1 功能1]
- [P1 功能2]

## 注意事项
- 不要修改已有的 P0 功能代码(除非是 bug 修复)
- 不要添加任何 P1 以外的功能
- 保持代码风格一致

小李的实际 Prompt

markdown
P0 功能已完成并验证通过。现在请添加 P1 功能。

## 当前已有功能
- 添加任务 ✓
- 查看列表 ✓
- 勾选完成 ✓

## 本轮要添加的 P1 功能
- 删除任务:每个任务右边有个删除按钮,点击后移除
- 任务计数:显示"待办 X 项,已完成 Y 项"

## 注意事项
- 不要修改已有的 P0 功能
- 不要添加分类、标签等其他功能
- 删除按钮样式要和整体风格一致

第二轮验证清单

  • [ ] P0 功能还能正常工作吗?
  • [ ] 删除功能正常吗?
  • [ ] 计数显示正确吗?
  • [ ] 删除后计数会更新吗?

第三轮:添加 P2 功能(可选)

第三轮是可选的。如果 P0 + P1 已经满足需求,可以到此为止。

Prompt 模板

markdown
P1 功能已完成。如果时间允许,现在可以添加 P2 功能。

## 当前已有功能
- [P0 功能列表] ✓
- [P1 功能列表] ✓

## 可选的 P2 功能(按优先级选择 1-2 个)
- [P2 功能1]
- [P2 功能2]
- [P2 功能3]

请先问我想优先做哪个,然后再实现。

阶段切换的关键句式

以下是一些在阶段切换时很有用的句式:

开始新阶段

"P0 验证通过,请继续添加 P1 功能..."
"上一轮功能已确认无误,现在进入下一阶段..."
"第一版完成,现在迭代第二版..."

发现问题时

"在测试 P0 时发现一个问题:[描述问题]。请先修复这个,然后再继续 P1。"
"添加任务时输入为空也能添加,这是个 bug。请加上非空校验。"

想调整计划时

"P0 做完后我发现其实不需要 P1 的删除功能了,请直接跳到 P2 的分类标签。"
"这个功能比想象中复杂,我们先暂停,我重新想想需求。"

完整案例:小李的三轮开发

第一轮对话

小李

请根据以下 PRD 实现第一版...(P0 功能)

AI:返回 HTML + CSS + JS 代码

小李测试

  • 添加任务 ✓
  • 查看列表 ✓
  • 勾选完成 ✓
  • 刷新数据保留 ✓

第二轮对话

小李

P0 验证通过。请添加 P1 功能:
- 删除任务
- 任务计数

AI:返回更新后的代码

小李测试

  • P0 功能正常 ✓
  • 删除功能正常 ✓
  • 计数显示正确 ✓

第三轮对话

小李

P1 完成。P2 功能里我只想做"任务优先级标记",其他不要。

AI:返回带优先级功能的代码

小李测试:全部通过,项目完成。

常见问题

Q:P0 还没做完,能不能先做个 P1 功能?

A:不建议。P0 是核心功能,如果核心有问题,后面做的都可能白做。老老实实按顺序来。

Q:AI 自作主张加了功能怎么办?

A:告诉它删掉,或者重新生成。

"我看到你添加了排序功能,但这不在 PRD 里。请删掉这个功能,只保留我要求的。"

Q:每轮都要把 PRD 全发一遍吗?

A:第一轮发完整 PRD,后面只发变化的部分就行。AI 通常能记住上下文。

Q:分阶段会不会太慢?

A:表面上多对话了几轮,但减少了大量返工时间。一次性做完往往要花更多时间调试。

验证检查点模板

每轮结束后,用这个模板做检查:

markdown
## 第 [N] 轮验证检查

### 功能验证
- [ ] [功能1] 正常工作
- [ ] [功能2] 正常工作
- [ ] [功能3] 正常工作

### 回归测试(确保之前的功能没坏)
- [ ] P0 功能仍然正常
- [ ] P1 功能仍然正常(如果已实现)

### 边界情况
- [ ] 空输入处理正确
- [ ] 刷新后数据保留
- [ ] 多次操作不会出错

### 决策
- [ ] 全部通过 → 进入下一轮
- [ ] 有问题 → 先修复,再继续

本节核心要点

  • ✅ 分阶段开发能减少遗漏、及时验证、灵活调整
  • ✅ 三轮模式:P0 → 验证 → P1 → 验证 → P2(可选)
  • ✅ 每轮开始时明确"只做这些,不做其他"
  • ✅ 每轮结束时用检查清单验证
  • ✅ 发现问题先修复,确认无误再进入下一轮

接下来,我们通过一个完整案例,体验从想法到 PRD 的全过程。