Files
chill_notes/AI工程/概念/过程方案vs事实方案.md
2026-06-22 11:30:51 +08:00

4.6 KiB
Executable File
Raw Permalink Blame History

过程方案vs事实方案

相关:规格驱动开发上下文体系Harness工程

定义

过程方案事实方案规格驱动开发中两种不同的规格管理方式。

  • 过程方案Plans:记录实现过程,每次新建文件,用完即弃
  • 事实方案Designs:记录系统真相,覆盖更新,长期维护

核心区别

维度 过程方案Plans 事实方案Designs
目的 记录实现过程 记录当前状态
更新方式 追加新文件 覆盖更新
生命周期 短期(任务完成后归档) 长期(持续维护)
维护成本 低(不修改旧文件) 高(必须保持最新)
使用场景 任务执行、问题排查 新功能开发、架构决策
示例 plan-2026-06-20-feature-x.md database-schema.md

过程方案Plans

特征

  • 每次任务创建新文件
  • 文件命名包含日期:plan-YYYY-MM-DD-feature-name.md
  • 任务完成后移动到archive/目录
  • 不修改旧文件,保留决策轨迹

内容结构

# Plan: 实现用户注册功能

## 目标
实现用户注册API支持邮箱验证

## 任务列表
- [ ] 1. 创建数据库表users
- [ ] 2. 实现POST /api/v1/users API
- [ ] 3. 实现邮箱验证逻辑

## 实现方案
1. 使用Flyway创建users表
2. Controller接收CreateUserCommand
3. AppService调用UserRepository保存

## 状态
- 开始时间2026-06-20 10:00
- 预计完成2026-06-20 12:00
- 实际完成2026-06-20 11:30

## 问题记录
- 10:30 发现数据库连接池配置问题
- 11:00 邮箱服务超时,增加重试机制

最佳实践

  • 命名规范plan-YYYY-MM-DD-feature-name.md
  • 内容结构:目标、方案、任务列表、状态、问题记录
  • 归档策略:任务完成后移动到archive/目录

事实方案Designs

特征

  • 每次覆盖更新
  • 文件命名使用功能名称:database-schema.md
  • 必须保持最新状态
  • 作为下次Plan的事实依据

内容结构

# 数据库设计

## 概述
系统数据库设计,包含用户、角色、权限等表。

## users表
| 字段 | 类型 | 说明 |
|------|------|------|
| id | bigint | 主键 |
| username | varchar(50) | 用户名,唯一 |
| email | varchar(100) | 邮箱,唯一 |
| password | varchar(255) | 密码,加密存储 |
| status | tinyint(1) | 状态0-禁用1-启用 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 更新时间 |

## roles表
| 字段 | 类型 | 说明 |
|------|------|------|
| id | bigint | 主键 |
| name | varchar(20) | 角色名称 |

## 变更历史
- 2026-06-20添加users表
- 2026-06-21添加roles表
- 2026-06-22添加user_roles关联表

最佳实践

  • 命名规范:使用功能名称,如database-schema.md
  • 内容结构:概述、详细设计、变更历史
  • 更新策略:每次变更必须更新文档,保持最新

目录结构

docs/
├── standards/     # 标准规格(事实方案)
├── features/      # 需求规格(事实方案)
├── designs/       # 设计规格(事实方案)
├── plans/         # 计划规格(过程方案)
│   ├── archive/   # 归档的计划
│   └── plan-2026-06-20-feature-x.md
└── others/        # 架构决策、Release、测试用例等

使用策略

何时使用过程方案

  • 任务执行过程记录
  • 问题排查记录
  • 决策轨迹记录
  • 临时方案记录

何时使用事实方案

  • 数据库设计
  • API设计
  • 架构设计
  • 标准规范
  • 需求规格

优势与局限

过程方案

优势

  • 维护成本低
  • 保留决策轨迹
  • 易于追溯历史

局限

  • 文件数量多
  • 需要定期归档
  • 不反映当前状态

事实方案

优势

  • 反映当前状态
  • 单一真相来源
  • 易于理解

局限

  • 维护成本高
  • 需要持续更新
  • 丢失历史信息

最佳实践

  1. 明确区分:清楚区分哪些是过程方案,哪些是事实方案
  2. 定期归档:过程方案定期归档到archive/目录
  3. 保持最新:事实方案必须保持最新状态
  4. 变更历史:事实方案记录变更历史
  5. 关联引用Plans引用Designs确保一致性

相关概念

  • 规格驱动开发过程方案和事实方案是SDD的规格管理方式
  • 上下文体系:过程方案和事实方案是上下文体系的组成部分
  • Harness工程过程方案和事实方案是Harness的文档管理方式