2.8 KiB
2.8 KiB
name, description
| name | description |
|---|---|
| dev-design | 开发流程 - 设计阶段,技术选型与细节设计,产出设计文档 |
设计
开发流程第二阶段:基于需求文档进行技术选型和细节设计。
调用方式
/dev-design,也可说"开始设计"。
产出目录
docs/design/
执行流程
Checklist
- 前置检查:读取需求文档
- 探索现有代码库
- 技术选型
- 前端风格设计(如涉及)
- 细节设计循环
- 用户确认并保存
1. 前置检查
- 读取
docs/requirements/目录下的需求文档 - 如果不存在,提示用户先运行
/dev-requirement完成需求分析 - 用户可选择跳过(直接进入设计)
- 展示需求文档摘要,确认设计范围
2. 探索现有代码库
- 查看项目文件结构
- 识别现有技术栈(package.json、pyproject.toml 等)
- 了解现有架构模式
- 识别可复用的模块和接口
3. 技术选型
识别需要做出的技术决策,逐个讨论:
规则:
- 每个决策点提出 2-3 个方案
- 说明每个方案的优缺点
- 给出推荐方案和理由
- 使用多选方式让用户选择
常见决策点:
- 框架选择
- 数据库/存储方案
- 状态管理方案
- API 风格(REST/GraphQL/RPC)
- 认证方案
4. 前端风格设计(如涉及)
如果项目涉及 UI:
- 询问视觉风格偏好
- 确定配色方案、字体、间距规范
- 确定组件库(如有)
- 确定布局模式
如果项目不涉及 UI,跳过此步骤。
5. 细节设计循环
按以下维度逐个展开设计,每个维度分段展示给用户确认:
模块划分:
- 将系统拆分为职责单一的模块
- 每个模块有清晰的边界和接口
数据模型:
- 核心数据结构定义
- 数据关系
- 存储方案
接口设计:
- 模块间接口 / API 端点
- 输入输出规范
- 错误码定义
错误处理:
- 异常场景识别
- 错误处理策略
- 边界情况处理
6. 保存设计文档
按以下模板保存:
# 设计文档:<项目名称>
> 创建日期:YYYY-MM-DD
> 对应需求:docs/requirements/YYYY-MM-DD-xxx.md
> 状态:已确认
## 1. 技术选型
| 决策点 | 选择 | 理由 | 备选方案 |
|-------|------|------|---------|
## 2. 架构设计
### 整体架构
### 模块划分
| 模块 | 职责 | 依赖 |
|------|------|------|
## 3. 数据模型
## 4. 接口设计
## 5. 前端设计(如适用)
## 6. 错误处理与边界情况
保存为 docs/design/YYYY-MM-DD-<项目名>.md,提示下一步可调用 /dev-tdd 生成测试用例(测试先行)。
关键行为
- 技术选型基于项目实际约束,不盲目追求新技术
- 设计文档中的每个需求都能追溯到需求文档
- 前端风格仅在涉及 UI 时展开
- 模块划分遵循单一职责原则