本文较长,来自作者近期工作感悟,虽然还有很多不成熟之处及待改进空间,但感觉对各软件团队在面对AI Coding浪潮的冲击下如何应对还是有一定帮助的,特共享共勉。
特别是软件开发不同阶段,如何编写合适的提示词,这个各有各的玩法,但对软件工程成熟度而言,还是应该有规范化的要求,具备一定的章法,第7章内容(具体提示词)具有较大参考价值,各团队可以根据各自情况自行发挥,原理类似。
目录
1、软件开发8大典型阶段
2、软件团队6类典型角色
3、8大阶段6类角色的任务分配对照表
4、6类角色输出物对照表
5、8大阶段输出要求清单
6、8大阶段输出要求细节
7、8大阶段AI提示词(非常重点!)
8、AI提示词驱动开发示例
1、软件开发8大典型阶段
01-需求分析、02-架构设计、03-软件设计、04-前端实现、05-后端实现、06-测试设计、07-部署方案、08-运维方案
2、软件团队6类典型角色
- 产品经理:聚焦需求定义与验收,贯穿需求分析到测试阶段。
- 架构师:主导技术设计,覆盖架构、接口和部署方案。
- 前端开发:代码为核心产出,辅以设计文档和测试报告。
- 后端开发:代码为核心产出,辅以设计文档和测试报告。
- 测试:覆盖全流程测试设计,包括接口、前端、后端和运维验证。
- 运维:侧重部署和稳定性保障,与架构师协作基础设施设计。
3、8大阶段6类角色的任务分配对照表
开发阶段 | 产品经理 | 架构师 | 前端开发 | 后端开发 | 测试 | 运维 |
1. 需求分析 | 主导需求分析,编写需求规格说明书、用例图、功能列表、优先级排序 | 参与需求分析,提供技术可行性建议 | - | - | 参与需求评审 | - |
2. 架构设计 | 参与架构评审 | 主导架构设计,编写架构设计文档、技术栈选型、系统架构图、部署架构图 | 参与前端技术选型 | 参与后端技术选型 | 参与架构评审 | 参与部署架构设计 |
3. 软件设计 | 参与设计评审 | 主导详细设计,编写详细设计文档、数据库设计文档、API设计文档 | 主导页面原型设计,编写页面原型文档和原型文件 | 参与API设计,编写数据库设计 | 参与设计评审 | - |
4. 前端实现 | 参与功能验收 | 提供技术指导 | 主导前端开发,编写源代码、测试用例、构建配置、部署文档、开发文档 | - | 参与前端测试 | - |
5. 后端实现 | 参与功能验收 | 提供技术指导 | - | 主导后端开发,编写源代码、测试用例、数据库脚本、部署文档、开发文档 | 参与后端测试 | - |
6. 测试阶段 | 参与测试用例评审 | 参与性能测试 | 参与前端测试 | 参与后端测试 | 主导测试工作,编写测试计划、测试用例、测试报告 | - |
7. 部署阶段 | - | 参与部署方案评审 | 参与前端部署 | 参与后端部署 | 参与部署测试 | 主导部署工作,编写部署方案、运维手册、部署脚本 |
8. 运维阶段 | - | 参与运维方案评审 | - | - | - | 主导运维工作,编写监控配置、备份方案、安全配置、维护计划 |
注:
"主导"表示该角色在该阶段承担主要责任
"参与"表示该角色在该阶段提供支持或参与评审
"-"表示该角色在该阶段不直接参与
4、6类角色输出物对照表
产品经理
需求分析阶段
docs/01-需求分析/requirements-spec.md(需求规格说明书)
docs/01-需求分析/use-case-diagram.md(用例图)
docs/01-需求分析/feature-list.md(功能列表)
docs/01-需求分析/priority-ranking.md(优先级排序)
软件设计阶段
docs/03-软件设计/page-prototype.md(页面原型设计文档)
docs/03-软件设计/prototype/prototype.html(页面原型文件)
系统架构师
架构设计阶段
docs/02-架构设计/architecture-design.md(架构设计文档)
docs/02-架构设计/tech-stack.md(技术栈选型)
docs/02-架构设计/system-architecture.md(系统架构图)
docs/02-架构设计
/deployment-architecture.md(部署架构图)
软件设计阶段
docs/03-软件设计/detailed-design.md(详细设计文档)
docs/03-软件设计/database-design.md(数据库设计文档)
docs/03-软件设计/api-design.md(API设计文档)
前端开发
前端实现阶段
frontend/src/(源代码目录)
frontend/tests/(测试用例目录)
frontend/build/(构建配置目录)
frontend/deploy.md(部署文档)
frontend/docs/(开发文档)
后端开发
软件设计阶段
参与编写 docs/03-软件设计/api-design.md(API设计文档)
参与编写 docs/03-软件设计/database-design.md(数据库设计文档)
后端实现阶段
backend/src/(源代码目录)
backend/tests/(测试用例目录)
backend/db/(数据库脚本目录)
backend/deploy.md(部署文档)
backend/docs/(开发文档)
测试
测试阶段
test/test-plan.md(测试计划文档)
test/test-cases.md(测试用例文档)
test/test-report.md(测试报告文档)
运维人员
部署阶段
deploy/deploy-plan.md(部署方案文档)
deploy/operations.md(运维手册)
deploy/scripts/(部署脚本目录)
运维阶段
ops/monitoring/(监控配置目录)
ops/backup/(备份方案目录)
ops/security/(安全配置目录)
ops/maintenance/(维护计划目录)
注:
每个角色负责其对应输出物的编写和维护
部分输出物可能需要多个角色协作完成
所有输出物都需要经过相关角色的评审
5、不同阶段输出要求清单
需求分析阶段
docs/01-需求分析/requirements-spec.md(需求规格说明书)
docs/01-需求分析/use-case-diagram.md(用例图)
docs/01-需求分析/feature-list.md(功能列表)
docs/01-需求分析/priority-ranking.md(优先级排序)
架构设计阶段
docs/02-架构设计/architecture-design.md(架构设计文档)
docs/02-架构设计/tech-stack.md(技术栈选型)
docs/02-架构设计/system-architecture.md(系统架构图)
docs/02-架构设计
/deployment-architecture.md(部署架构图)
软件设计阶段
docs/03-软件设计/detailed-design.md(详细设计文档)
docs/03-软件设计/database-design.md(数据库设计文档)
docs/03-软件设计/api-design.md(API设计文档)
docs/03-软件设计/page-prototype.md(页面原型设计文档)
docs/03-软件设计/prototype/prototype.html(页面原型文件)
前端实现阶段
frontend/src/(源代码目录)
frontend/tests/(测试用例目录)
frontend/build/(构建配置目录)
frontend/deploy.md(部署文档)
frontend/docs/(开发文档)
后端实现阶段
backend/src/(源代码目录)
backend/tests/(测试用例目录)
backend/db/(数据库脚本目录)
backend/deploy.md(部署文档)
backend/docs/(开发文档)
测试阶段
test/test-plan.md(测试计划文档)
test/test-cases.md(测试用例文档)
test/test-report.md(测试报告文档)
部署阶段
deploy/deploy-plan.md(部署方案文档)
deploy/operations.md(运维手册)
deploy/scripts/(部署脚本目录)
运维阶段
ops/monitoring/(监控配置目录)
ops/backup/(备份方案目录)
ops/security/(安全配置目录)
ops/maintenance/(维护计划目录)
6、不同阶段输出要求细节
01-需求分析阶段
需求规格说明书 (requirements-spec.md)
- 功能需求
- 非功能需求
- 系统约束
- 验收标准
用例图 (use-case-diagram.md)
- 用户角色
- 用例描述
- 用例关系
- 用例流程
功能列表 (feature-list.md)
- 功能模块
- 功能点
- 功能描述
- 功能依赖
优先级排序 (priority-ranking.md)
- 功能优先级
- 开发优先级
- 测试优先级
- 发布优先级
02-架构设计阶段
架构设计文档 (architecture-design.md)
- 系统架构图
- 技术栈选型
- 模块架构
- 安全架构
- 性能架构
- 监控架构
技术栈选型 (tech-stack.md)
- 前端技术栈
- 后端技术栈
- 数据库选型
- 中间件选型
系统架构图 (system-architecture.md)
- 整体架构
- 模块划分
- 接口设计
- 数据流
部署架构图 (
deployment-architecture.md)
- 部署拓扑
- 环境配置
- 网络架构
- 安全架构
03-软件设计阶段
详细设计文档 (detailed-design.md)
- 类图
- 接口设计
- 数据库设计
- 算法设计
数据库设计文档 (database-design.md)
- 表结构设计
- 索引设计
- 存储过程设计
- 数据迁移设计
API设计文档 (api-design.md)
- API接口设计
- 数据格式设计
- 错误处理设计
API文档
页面原型设计文档 (page-prototype.md)
- 页面布局设计
- 组件设计
- 交互设计
- 视觉设计
页面原型文件 (prototype/prototype.html)
- 高保真UI原型
- 功能模块实现
- 交互效果
04-前端实现阶段
源代码目录 (frontend/src)
- 组件目录
- 路由配置
- 状态管理
- 工具函数
- 样式文件
测试用例目录 (frontend/tests)
- 单元测试
- 集成测试
- E2E测试
构建配置目录 (frontend/build)
- Webpack配置
- Babel配置
- 环境配置
部署文档 (frontend/deploy.md)
- 部署步骤
- 环境要求
- 配置说明
开发文档 (frontend/docs)
- 开发规范
- 组件文档
- API文档
05-后端实现阶段
源代码目录 (backend/src)
- 控制器
- 服务层
- 数据访问层
- 工具类
- 配置文件
测试用例目录 (backend/tests)
- 单元测试
- 集成测试
- 性能测试
数据库脚本目录 (backend/db)
- 建表脚本
- 初始化数据
- 存储过程
部署文档 (backend/deploy.md)
- 部署步骤
- 环境要求
- 配置说明
开发文档 (backend/docs)
- 开发规范
- API文档
- 数据库设计文档
06-测试阶段
测试计划文档 (test/test-plan.md)
- 测试范围
- 测试策略
- 测试环境
- 测试进度
测试用例文档 (test/test-cases.md)
- 功能测试用例
- 性能测试用例
- 安全测试用例
测试报告文档 (test/test-report.md)
- 测试结果
- 问题统计
- 改进建议
07-部署阶段
部署方案文档 (deploy/deploy-plan.md)
- 部署架构
- 部署步骤
- 回滚方案
运维手册 (deploy/operations.md)
- 日常运维
- 故障处理
- 监控告警
部署脚本目录 (deploy/scripts)
- 部署脚本
- 配置脚本
- 监控脚本
08-运维阶段
监控配置目录 (ops/monitoring/)
- 系统监控配置
- 性能监控配置
- 日志监控配置
- 告警规则配置
备份方案目录 (ops/backup/)
- 数据备份方案
- 系统备份方案
- 恢复演练方案
- 备份验证方案
安全配置目录 (ops/security/)
- 安全策略配置
- 访问控制配置
- 审计日志配置
- 漏洞扫描配置
维护计划目录 (ops/maintenance/)
- 日常维护计划
- 定期维护计划
- 应急维护计划
- 升级维护计划
7、8大阶段AI提示词
01-需求分析
# 需求分析提示词
## 功能需求分析
请分析以下功能需求:
1. 用户故事
2. 功能点列表
3. 业务规则
4. 用户交互流程
## 非功能需求分析
请分析以下非功能需求:
1. 性能需求
2. 安全需求
3. 可用性需求
4. 可维护性需求
## 约束条件
请列出项目的主要约束条件:
1. 技术约束
2. 时间约束
3. 资源约束
4. 法律约束
## 输出要求
请提供以下文档:
1. docs/01-需求分析/requirements-spec.md(需求规格说明书)
2. docs/01-需求分析/use-case-diagram.md(用例图)
3. docs/01-需求分析/feature-list.md(功能列表)
4. docs/01-需求分析/priority-ranking.md(优先级排序)
02-架构设计
# 架构设计提示词
## 系统架构
请设计以下系统架构:
1. 整体架构图
2. 技术栈选择
3. 系统模块划分
4. 模块间交互
## 数据架构
请设计以下数据架构:
1. 数据模型
2. 数据流图
3. 存储方案
4. 数据安全
## 部署架构
请设计以下部署架构:
1. 部署拓扑图
2. 服务器配置
3. 网络架构
4. 负载均衡
## 安全架构
请设计以下安全架构:
1. 认证方案
2. 授权方案
3. 数据加密
4. 安全防护
## 输出要求
请提供以下文档:
1. docs/02-架构设计/architecture-design.md(架构设计文档)
2. docs/02-架构设计/system-architecture.md(系统架构图)
3. docs/02-架构设计/deployment-architecture.md(部署架构图)
4. docs/02-架构设计/tech-stack.md(技术选型说明)
03-软件设计
# 软件设计提示词
## 详细设计
请进行以下详细设计:
1. 类图设计
2. 接口设计
3. 数据库设计
4. 算法设计
## 模块设计
请设计以下模块:
1. 模块职责
2. 模块接口
3. 模块依赖
4. 模块测试
## 接口设计
请设计以下接口:
1. API接口
2. 数据格式
3. 错误处理
4. 接口文档
## 数据库设计
请设计以下数据库相关内容:
1. 表结构
2. 索引设计
3. 存储过程
4. 数据迁移
## 页面原型设计要求
请设计以下页面原型:
1. 页面布局
- 整体布局结构
- 导航菜单设计
- 页面组件布局
- 响应式设计
2. 交互设计
- 用户操作流程
- 表单交互
- 数据展示方式
- 反馈机制
3. 视觉设计
- 配色方案
- 字体规范
- 图标设计
- 视觉层次
4. 功能模块
- 参照设计文档内容
## 页面原型设计
通过以下方式完成所有原型图片的设计
1. 参照需求分析文档先设计出需要实现哪些功能
2. 作为UI设计师完成这些原型界面的设计
3. 使用html在一个界面上生成所有的原型界面,使用Tailwind CSS创建高保真UI原型,可从Unsplash获取图片素材,使用FontAwesome等开源图标库,让原型显得更精美和接近真实
4. 这些界面可直接用于项目开发
## 输出要求
请提供以下文档:
1. docs/03-软件设计/detailed-design.md(详细设计文档)
2. docs/03-软件设计/class-diagram.md(类图文档)
3. docs/03-软件设计/api-design.md(接口设计文档)
4. docs/03-软件设计/database-design.md(数据库设计文档)
5. docs/03-软件设计/prototype-design.md(页面原型设计文档)
6. docs/03-软件设计/prototype/prototype.html(页面原型文件)
04-前端实现
# 前端实现提示词
## 页面开发
请实现以下页面开发:
1. 页面布局
2. 组件开发
3. 路由配置
4. 状态管理
## 功能实现
请实现以下功能:
1. 用户交互
2. 数据展示
3. 表单处理
4. 动画效果
## 性能优化
请进行以下性能优化:
1. 代码优化
2. 资源加载
3. 缓存策略
4. 渲染优化
## 测试要求
请进行以下测试:
1. 单元测试
2. 集成测试
3. 性能测试
4. 兼容性测试
## 输出要求
请提供以下内容:
1. frontend/src/(源代码目录)
2. frontend/tests/(测试用例目录)
3. frontend/config/(构建配置目录)
4. docs/04-前端实现/deployment.md(部署文档)
5. docs/04-前端实现/development.md(开发文档)
6. 参照需求分析、架构设计、软件设计内容,特别是参照03-软件设计中prototype目录下原型图的设计,实现前端代码
05-后端实现
# 后端实现提示词
## 服务开发
请实现以下服务开发:
1. API接口
2. 业务逻辑
3. 数据处理
4. 缓存处理
## 数据库操作
请实现以下数据库操作:
1. 数据访问
2. 事务处理
3. 数据验证
4. 数据迁移
## 中间件集成
请集成以下中间件:
1. 消息队列
2. 缓存服务
3. 日志服务
4. 监控服务
## 安全实现
请实现以下安全功能:
1. 认证授权
2. 数据加密
3. 访问控制
4. 安全防护
## 输出要求
请提供以下内容:
1. backend/src/(源代码目录)
2. backend/config/(配置文件目录)
3. backend/scripts/(部署脚本目录)
4. docs/05-后端实现/api-docs.md(接口文档)
5. docs/05-后端实现/development.md(开发文档)
6. 参照需求分析、架构设计、软件设计内容,实现后端代码
06-测试设计
# 测试设计提示词
## 测试策略
请制定以下测试策略:
1. 测试范围
2. 测试方法
3. 测试环境
4. 测试工具
## 测试用例
请设计以下测试用例:
1. 功能测试
2. 性能测试
3. 安全测试
4. 兼容性测试
## 自动化测试
请设计以下自动化测试:
1. 单元测试
2. 接口测试
3. UI测试
4. 集成测试
## 测试执行
请执行以下测试:
1. 测试计划
2. 测试执行
3. 缺陷管理
4. 测试报告
## 输出要求
请提供以下内容:
1. docs/06-测试设计/test-plan.md(测试计划)
2. frontend/tests/(前端测试用例目录)
3. backend/tests/(后端测试用例目录)
4. docs/06-测试设计/test-report.md(测试报告)
5. docs/06-测试设计/test-cases.md(测试用例文档)
07-部署方案
# 部署方案提示词
## 环境配置
请配置以下环境:
1. 开发环境
2. 测试环境
3. 预发布环境
4. 生产环境
## 部署流程
请设计以下部署流程:
1. 构建流程
2. 部署步骤
3. 回滚方案
4. 监控方案
## 容器化部署
请设计以下容器化部署:
1. Docker配置
2. Kubernetes配置
3. 服务编排
4. 资源管理
## CI/CD流程
请设计以下CI/CD流程:
1. 代码集成
2. 自动化构建
3. 自动化测试
4. 自动化部署
## 输出要求
请提供以下内容:
1. docs/07-部署方案/deployment-guide.md(部署指南)
2. deploy/config/(部署配置目录)
3. deploy/scripts/(部署脚本目录)
4. docs/07-部署方案/monitoring.md(监控方案)
5. .github/workflows/(CI/CD工作流配置目录)
08-运维方案
# 运维方案提示词
## 监控方案
请设计以下监控方案:
1. 系统监控
2. 应用监控
3. 日志监控
4. 告警策略
## 运维流程
请设计以下运维流程:
1. 日常运维
2. 故障处理
3. 变更管理
4. 应急预案
## 安全管理
请设计以下安全管理:
1. 访问控制
2. 安全审计
3. 漏洞管理
4. 应急响应
## 性能优化
请设计以下性能优化:
1. 系统优化
2. 应用优化
3. 数据库优化
4. 网络优化
## 输出要求
请提供以下内容:
1. docs/08-运维方案/operation-manual.md(运维手册)
2. docs/08-运维方案/monitoring-plan.md(监控方案)
3. docs/08-运维方案/emergency-plan.md(应急预案)
4. docs/08-运维方案/optimization-plan.md(优化方案)
5. ops/scripts/(运维脚本目录)
8、AI提示词驱动开发示例
以设计一套通用的设备资产管理系统为例进行开发。
提示词如下,按阶段分别将提示词贴出,AI Coder自行处理,Cursor、Trae等都执行效果杠杠的。
设计一套通用的设备资产管理系统。
按01-需求分析中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析中文档,按02-架构设计中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计文档,按03-软件设计中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计、03-软件设计文档,按04-前端实现中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计、03-软件设计文档,按05-后端实现中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计、03-软件设计、04-前端实现、05-后端实现文档,按06-测试设计中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计、03-软件设计、04-前端实现、05-后端实现、06-测试设计文档,按07-部署方案中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
参照01-需求分析、02-架构设计、03-软件设计、04-前端实现、05-后端实现、06-测试设计、07-部署方案文档,按08-运维方案中的提示词进行输出,特别是要严格遵循输出要求,不要输出多余的文档,也不要缺少要求的文档。
提示词目录,按阶段贴
自动生成的8个阶段文档
自动生成的前端、后端、测试、部署、运维代码及内容