Skip to content

阶段 0-4:从方案到任务

本章目标:完成前置阶段的推进,产出合格的文档和可执行的任务清单。

预计时长:60 分钟

重要程度:⭐⭐⭐ 这是整个项目质量的基础!

核心原则

🎯 关键认知

每个阶段都不是"点一下自动生成"。每个阶段都需要人类审核和纠偏。

阶段质量直接决定后续编码成本 — 前面省的时间,后面会加倍补回来。

宁可在前置阶段多花 30 分钟仔细审核,也不要在编码阶段花 3 小时返工。

前置阶段(0-4)是"人类决策"的主要体现,AI 负责分析和生成,人类负责审核和决策。

阶段 0:业务方案

目标与产出

目标:明确项目边界,确定做什么、不做什么

产出:业务需求文档,包含:

  • 项目背景和目标
  • 目标用户群体
  • 核心功能列表
  • 功能边界(明确不做什么)
  • 成功标准

操作步骤

1. 开始阶段 0

点击「开始阶段 0」按钮,你会看到需求输入框。

2. 输入详细需求

基于我们的待办事项项目,输入以下需求描述:

markdown
## 项目背景
开发一个个人待办事项管理应用,帮助用户更好地组织和跟踪日常任务。

## 目标用户
- 需要管理个人任务的知识工作者
- 希望提高工作效率的个人用户
- 不需要复杂项目管理功能的轻量级用户

## 核心功能需求
1. 待办事项管理
   - 添加新的待办事项
   - 编辑现有待办事项
   - 删除不需要的待办事项
   - 标记任务完成状态

2. 任务属性
   - 任务标题(必填)
   - 任务描述(可选)
   - 优先级:高/中/低
   - 截止时间(可选)
   - 创建时间(自动)

3. 查看和筛选
   - 查看所有待办事项
   - 按完成状态筛选(全部/未完成/已完成)
   - 按优先级筛选
   - 按截止时间排序

4. 用户界面
   - 简洁直观的 Web 界面
   - 响应式设计,支持桌面和移动设备
   - 操作便捷,学习成本低

## 功能边界(不做什么)
- 不做多用户协作功能
- 不做复杂的项目管理(甘特图、里程碑等)
- 不做时间跟踪功能
- 不做文件附件功能
- 不做通知推送功能

## 技术要求
- 使用现代 Web 技术栈
- 数据本地存储,无需注册登录
- 部署简单,支持 Docker

需求描述技巧

  • 具体明确:避免"用户友好"这样的模糊描述
  • 包含边界:明确说明不做什么,避免功能蔓延
  • 考虑用户:从用户角度描述需求,而不是技术角度
  • 可验证:每个需求都应该有明确的验收标准

3. 等待 AI Leader 分析

点击「生成业务方案」后,AI Leader 会:

  1. 分析你的需求输入
  2. 识别关键业务要素
  3. 生成结构化的业务方案文档
  4. 提出可能的问题和建议

这个过程通常需要 30-60 秒。

4. 审核业务方案

AI 生成的业务方案可能包含:

markdown
# 个人待办事项管理应用 - 业务方案

## 1. 项目概述
### 1.1 项目背景
...

### 1.2 目标用户
- 主要用户:个人知识工作者
- 使用场景:日常任务管理、工作规划
- 用户特征:追求简洁高效,不需要复杂功能

## 2. 功能规划
### 2.1 核心功能模块
1. 任务管理模块
2. 筛选排序模块  
3. 用户界面模块

### 2.2 功能优先级
- P0(必须有):基础 CRUD、状态管理
- P1(应该有):优先级、截止时间
- P2(可以有):排序筛选、响应式

## 3. 技术约束
...

## 4. 成功标准
- 用户能在 5 分钟内学会基本操作
- 单个任务操作响应时间 < 1 秒
- 支持至少 1000 个待办事项

审核要点

  • [ ] 是否准确理解了你的需求?
  • [ ] 功能优先级是否合理?
  • [ ] 是否遗漏了重要功能?
  • [ ] 是否增加了你不需要的功能?
  • [ ] 技术约束是否符合预期?

5. 修改和完善(如需要)

如果对生成的方案不满意,可以:

  1. 点击「编辑文档」,直接修改内容
  2. 点击「重新生成」,提供更详细的反馈
  3. 在反馈框中补充:如"请增加数据导出功能的考虑"

6. 确认推进

满意后点击「推进到阶段 1」。

阶段 1:需求分析

目标与产出

目标:将业务方案转化为具体的功能需求和用户故事

产出:需求分析文档,包含:

  • 详细功能清单
  • 用户故事(User Stories)
  • 验收标准(Acceptance Criteria)
  • 功能依赖关系

操作步骤

1. 开始阶段 1

AI Leader 会基于阶段 0 的业务方案,自动开始需求分析。

2. 审核功能清单

生成的需求分析可能包含:

markdown
# 需求分析文档

## 1. 功能清单

### 1.1 任务管理功能
- F001: 添加待办事项
- F002: 编辑待办事项
- F003: 删除待办事项  
- F004: 标记完成状态
- F005: 批量操作

### 1.2 任务属性功能
- F006: 设置任务标题
- F007: 设置任务描述
- F008: 设置优先级
- F009: 设置截止时间

### 1.3 查看筛选功能
- F010: 任务列表显示
- F011: 按状态筛选
- F012: 按优先级筛选
- F013: 按时间排序

## 2. 用户故事

### 2.1 基础管理
**US001: 添加待办事项**
- 作为用户,我希望能快速添加新的待办事项
- 验收标准:
  - 点击"添加"按钮打开输入框
  - 输入标题后按回车即可创建
  - 新任务默认为"未完成"状态

**US002: 编辑待办事项**
- 作为用户,我希望能修改已有的待办事项
- 验收标准:
  - 双击任务可进入编辑模式
  - 可修改标题、描述、优先级、截止时间
  - 保存后立即生效

### 2.2 状态管理
...

## 3. 非功能需求
- 性能:页面加载时间 < 2 秒
- 兼容性:支持 Chrome、Firefox、Safari
- 可用性:新用户 5 分钟内学会基本操作

审核要点

  • [ ] 功能清单是否完整?
  • [ ] 用户故事是否符合实际使用场景?
  • [ ] 验收标准是否可测试?
  • [ ] 是否有遗漏的边界情况?

3. 确认推进

审核无误后推进到阶段 2。

阶段 2:产品原型

目标与产出

目标:设计用户界面和交互流程

产出:产品原型文档,包含:

  • 页面结构设计
  • 交互流程图
  • UI 组件说明
  • 响应式布局方案

操作步骤

1. 审核页面设计

AI Architect 会生成页面原型:

markdown
# 产品原型设计

## 1. 页面结构

### 1.1 主页面布局

┌─────────────────────────────────────┐ │ 应用标题栏 │ ├─────────────────────────────────────┤ │ [添加任务] [筛选] [排序] │ ├─────────────────────────────────────┤ │ ☐ 任务标题 1 [高] 今天 │ │ ✓ 任务标题 2 [中] 明天 │ │ ☐ 任务标题 3 [低] 后天 │ ├─────────────────────────────────────┤ │ 统计信息 │ └─────────────────────────────────────┘


### 1.2 添加任务弹窗

┌─────────────────────┐ │ 添加新任务 │ ├─────────────────────┤ │ 标题: [] │ │ 描述: [] │ │ 优先级: [高▼] │ │ 截止: [日期选择器] │ ├─────────────────────┤ │ [取消] [确定] │ └─────────────────────┘


## 2. 交互流程

### 2.1 添加任务流程
1. 用户点击"添加任务"按钮
2. 弹出任务输入表单
3. 用户填写必要信息
4. 点击"确定"保存任务
5. 任务出现在列表顶部

### 2.2 完成任务流程
1. 用户点击任务前的复选框
2. 任务状态变为"已完成"
3. 任务样式变为划线状态
4. 如果开启筛选,已完成任务可能隐藏

## 3. 响应式设计

### 3.1 桌面端 (>768px)
- 使用卡片式布局
- 任务信息横向排列
- 支持鼠标悬停效果

### 3.2 移动端 (<768px)  
- 任务信息纵向堆叠
- 增大点击区域
- 简化操作按钮

审核要点

  • [ ] 页面布局是否合理?
  • [ ] 交互流程是否顺畅?
  • [ ] 是否考虑了移动端适配?
  • [ ] UI 组件是否符合用户习惯?

阶段 3:技术方案

目标与产出

目标:确定技术架构和实现方案

产出:技术方案文档,包含:

  • 系统架构设计
  • 技术栈选型
  • 数据库设计
  • API 接口定义

操作步骤

1. 审核技术架构

AI Architect 会生成技术方案:

markdown
# 技术方案设计

## 1. 系统架构

### 1.1 整体架构

┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ 前端 UI │───▶│ 后端 API │───▶│ 数据库 │ │ (Vue 3) │ │ (FastAPI) │ │ (SQLite) │ └─────────────┘ └─────────────┘ └─────────────┘


### 1.2 技术栈选型

**前端技术栈**:
- 框架:Vue 3 + Composition API
- UI 库:Element Plus
- 构建工具:Vite
- 状态管理:Pinia
- HTTP 客户端:Axios

**后端技术栈**:
- 框架:FastAPI
- ORM:SQLAlchemy
- 数据库:SQLite(开发)/ PostgreSQL(生产)
- 认证:JWT(可选)

**部署方案**:
- 容器化:Docker + Docker Compose
- 前端:Nginx 静态文件服务
- 后端:Uvicorn ASGI 服务器

## 2. 数据库设计

### 2.1 数据表结构

**todos 表**:
```sql
CREATE TABLE todos (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    title VARCHAR(200) NOT NULL,
    description TEXT,
    priority VARCHAR(10) DEFAULT 'medium',
    due_date DATETIME,
    completed BOOLEAN DEFAULT FALSE,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
    updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
);

2.2 索引设计

sql
CREATE INDEX idx_todos_completed ON todos(completed);
CREATE INDEX idx_todos_priority ON todos(priority);
CREATE INDEX idx_todos_due_date ON todos(due_date);

3. API 接口设计

3.1 RESTful API 规范

基础路径/api/v1

待办事项接口

  • GET /todos - 获取待办事项列表
  • POST /todos - 创建新待办事项
  • GET /todos/{id} - 获取单个待办事项
  • PUT /todos/{id} - 更新待办事项
  • DELETE /todos/{id} - 删除待办事项
  • PATCH /todos/{id}/complete - 标记完成状态

3.2 数据模型

Todo 模型

python
class TodoCreate(BaseModel):
    title: str = Field(..., min_length=1, max_length=200)
    description: Optional[str] = None
    priority: str = Field(default="medium", regex="^(low|medium|high)$")
    due_date: Optional[datetime] = None

class TodoResponse(BaseModel):
    id: int
    title: str
    description: Optional[str]
    priority: str
    due_date: Optional[datetime]
    completed: bool
    created_at: datetime
    updated_at: datetime

4. 部署配置

4.1 Docker 配置

  • 前端:基于 Nginx 的静态文件服务
  • 后端:基于 Python 3.11 的 FastAPI 应用
  • 数据库:SQLite 文件挂载

4.2 环境变量

bash
DATABASE_URL=sqlite:///./todos.db
CORS_ORIGINS=http://localhost:3000
API_PREFIX=/api/v1

::: tip 🎯 这里最值得花时间
架构设计是整个项目质量的锚点。如果你对技术选型有不同想法,在这里明确告诉 AI:

- "请使用 React 而不是 Vue"
- "后端请用 Django REST Framework"
- "数据库用 PostgreSQL,不要 SQLite"
- "请添加用户认证功能"
:::

**审核要点**:

- [ ] 技术栈选型是否合理?
- [ ] 数据库设计是否满足需求?
- [ ] API 接口是否完整?
- [ ] 部署方案是否可行?
- [ ] 是否考虑了性能和扩展性?

#### 2. 提出修改意见

如果需要调整,可以在反馈框中说明:

请做以下调整:

  1. 前端改用 React + Ant Design
  2. 数据库增加 tags 字段,支持标签功能
  3. API 增加批量操作接口
  4. 添加数据导出功能的接口设计

## 阶段 4:任务分解

### 目标与产出

**目标**:将技术方案分解为可执行的开发任务

**产出**:任务分解文档,包含:
- 详细任务列表
- 任务依赖关系
- 工作量估算
- 执行顺序建议

### 操作步骤

#### 1. 审核任务分解

AI Leader 会生成任务列表:

```markdown
# 任务分解方案

## 1. 任务总览

总计 **15 个任务**,预计工作量 **8-12 小时**

### 1.1 任务分类
- 后端开发:8 个任务
- 前端开发:5 个任务  
- 测试部署:2 个任务

## 2. 详细任务列表

### 2.1 后端基础 (Backend Foundation)

**T001: 项目初始化**
- 描述:创建 FastAPI 项目结构,配置基础依赖
- 输出:项目骨架、requirements.txt、基础配置
- 估时:30 分钟
- 依赖:无
- 分配:Backend

**T002: 数据库模型**  
- 描述:创建 Todo 数据模型和数据库表
- 输出:models.py、数据库迁移脚本
- 估时:45 分钟
- 依赖:T001
- 分配:Backend

**T003: 基础 CRUD API**
- 描述:实现待办事项的增删改查接口
- 输出:todos.py 路由文件、CRUD 操作
- 估时:90 分钟
- 依赖:T002
- 分配:Backend

### 2.2 前端基础 (Frontend Foundation)

**T004: 前端项目初始化**
- 描述:创建 Vue 3 项目,配置 Element Plus
- 输出:前端项目结构、基础组件
- 估时:30 分钟
- 依赖:无
- 分配:Frontend

**T005: 主页面布局**
- 描述:实现应用主界面布局和导航
- 输出:App.vue、Layout 组件
- 估时:60 分钟
- 依赖:T004
- 分配:Frontend

### 2.3 核心功能 (Core Features)

**T006: 任务列表组件**
- 描述:实现待办事项列表显示和基础交互
- 输出:TodoList.vue 组件
- 估时:90 分钟
- 依赖:T005, T003
- 分配:Frontend

**T007: 添加任务功能**
- 描述:实现添加新待办事项的表单和逻辑
- 输出:AddTodo.vue 组件、API 集成
- 估时:75 分钟
- 依赖:T006
- 分配:Frontend

**T008: 编辑任务功能**
- 描述:实现编辑现有待办事项的功能
- 输出:EditTodo.vue 组件、更新逻辑
- 估时:60 分钟
- 依赖:T007
- 分配:Frontend

### 2.4 高级功能 (Advanced Features)

**T009: 筛选排序功能**
- 描述:实现按状态、优先级筛选和排序
- 输出:Filter 组件、排序逻辑
- 估时:75 分钟
- 依赖:T008
- 分配:Frontend

**T010: 批量操作**
- 描述:实现批量标记完成、批量删除功能
- 输出:批量操作 API 和前端界面
- 估时:90 分钟
- 依赖:T009, T003
- 分配:Backend + Frontend

### 2.5 测试部署 (Testing & Deployment)

**T011: 单元测试**
- 描述:为核心功能编写单元测试
- 输出:测试用例、测试报告
- 估时:120 分钟
- 依赖:T010
- 分配:Tester

**T012: Docker 部署**
- 描述:创建 Docker 配置,实现一键部署
- 输出:Dockerfile、docker-compose.yml
- 估时:60 分钟
- 依赖:T011
- 分配:DevOps

## 3. 执行计划

### 3.1 并行执行建议

**第一轮**(可并行):
- T001: 后端项目初始化
- T004: 前端项目初始化

**第二轮**(可并行):
- T002: 数据库模型
- T005: 前端布局

**第三轮**:
- T003: 基础 API(依赖 T002)

**第四轮**:
- T006: 任务列表(依赖 T005, T003)

**后续轮次**:按依赖关系顺序执行...

### 3.2 关键路径
T001 → T002 → T003 → T006 → T007 → T008 → T009 → T010 → T011 → T012

预计总时长:**3-4 个工作日**(考虑并行执行)

审核要点

  • [ ] 任务粒度是否合适?(建议 30-120 分钟/任务)
  • [ ] 依赖关系是否正确?
  • [ ] 是否遗漏了重要任务?
  • [ ] 工作量估算是否合理?
  • [ ] 执行顺序是否优化?

2. 调整任务分解

常见调整需求:

任务太大

"T003 任务太大,建议拆分为:
- T003a: GET 接口实现
- T003b: POST 接口实现  
- T003c: PUT/DELETE 接口实现"

遗漏任务

"请增加以下任务:
- 数据验证和错误处理
- API 文档生成
- 前端错误提示组件"

依赖调整

"T006 不应该依赖 T003,前端可以先用 mock 数据开发"

3. 确认推进

任务分解满意后,点击「推进到阶段 5」,正式进入编码阶段。

阶段推进检查清单

完成阶段 0-4 后,确认以下产出:

✅ 阶段 0:业务方案

  • [ ] 明确了项目目标和用户群体
  • [ ] 定义了核心功能和边界
  • [ ] 确定了成功标准

✅ 阶段 1:需求分析

  • [ ] 功能清单完整详细
  • [ ] 用户故事符合实际场景
  • [ ] 验收标准可测试

✅ 阶段 2:产品原型

  • [ ] 页面布局合理
  • [ ] 交互流程顺畅
  • [ ] 考虑了响应式设计

✅ 阶段 3:技术方案

  • [ ] 技术栈选型合适
  • [ ] 数据库设计满足需求
  • [ ] API 接口定义完整
  • [ ] 部署方案可行

✅ 阶段 4:任务分解

  • [ ] 任务粒度合适(30-120 分钟)
  • [ ] 依赖关系正确
  • [ ] 工作量估算合理
  • [ ] 执行顺序优化

常见问题与解决

Q: AI 生成的内容不符合预期怎么办?

A: 不要直接推进,使用以下方法:

  1. 点击「编辑文档」直接修改
  2. 在反馈框中提供具体的修改建议
  3. 点击「重新生成」并提供更详细的输入

Q: 某个阶段生成时间很长?

A: 正常现象,复杂的架构设计可能需要 1-2 分钟。如果超过 5 分钟,检查:

  • 模型 API 是否正常
  • 网络连接是否稳定
  • Dispatcher 日志是否有错误

Q: 想跳过某个阶段直接进入编码?

A: 强烈不建议。每个阶段都有其价值:

  • 跳过需求分析 → 编码方向不明确
  • 跳过架构设计 → 代码结构混乱
  • 跳过任务分解 → Agent 无法有效执行

Q: 如何判断阶段质量是否足够?

A: 使用"5W1H"检查法:

  • What:要做什么功能?是否明确?
  • Why:为什么需要这个功能?是否合理?
  • Who:目标用户是谁?是否清晰?
  • When:什么时候完成?是否有计划?
  • Where:在哪里使用?是否考虑了场景?
  • How:如何实现?是否有具体方案?

本章输出

完成本章后,你应该拥有:

  • [x] 一份完整的业务方案文档
  • [x] 一份详细的需求分析文档
  • [x] 一份清晰的产品原型设计
  • [x] 一份可行的技术方案文档
  • [x] 一份可执行的任务分解清单

现在你已经为编码阶段做好了充分准备!下一步将看到 AI Agent 如何将这些方案转化为实际的代码。

© 2026 VAI TEAM · 上海番茄信息技术有限公司