通用AI辅助软件开发工作流
一、需求澄清与细化需求不清晰时目标将模糊的需求转化为明确的、可执行的开发任务。1.1 人提出原始需求自然语言用一句话描述要做什么例“做一个拍卖行系统”。1.2 AI生成需求澄清问题列表要求AI列出所有需要明确的点例如拍卖类型英式、荷兰式、一口价出价规则加价幅度、是否允许代理出价并发场景多少人同时出价一致性要求是否允许超卖异常处理支付失败、背包满、服务重启1.3 人回答问题补充细节逐一回答AI的问题形成最终的需求文档Markdown格式。1.4 AI输出需求规格说明书PRD包含功能列表、业务流程流程图、接口定义、数据模型、非功能性需求性能、安全、可扩展性。产出清晰的需求文档所有人达成共识。二、编程规则限定模拟真正程序员的开发习惯目标让AI生成的代码符合团队规范避免“玩具代码”。2.1 人设定编程规则清单一次性定义后续复用规则示例纯文本- 语言Go 1.22 - 风格遵循 Uber Go Style Guide - 错误处理所有错误必须显式处理不允许 _ - 日志使用 structured loggingzap关键路径打印 traceId - 并发所有共享变量必须加锁或使用 channel禁止裸 sync.Map - 事务数据库事务必须显式控制边界不允许自动提交 - 幂等所有写操作必须携带 requestId并在数据库层去重 - 测试单元测试覆盖率 ≥ 80%核心路径 100%必须包含并发测试 - 安全性所有用户输入必须在服务端校验禁止拼接 SQL2.2 AI将规则嵌入系统提示System Prompt在每次对话开始时将规则列表粘贴给AI要求其严格遵守。2.3 人代码审查时对照规则清单逐条检查AI生成的代码是否符合规则不符合则打回重写。产出一致的代码风格和质量基线。三、开发阶段模拟真正程序员开发3.1 架构设计与接口定义步骤谁做内容设计模块划分人画出模块图Handler → Service → DAO → DB/Cache/MQ定义API接口人 AI人写出接口路径、请求/响应AI生成OpenAPI规范定义数据模型AI 人审AI生成表结构、Redis键设计人审核索引、约束3.2 骨架代码生成步骤谁做内容生成项目结构AI按分层架构生成目录和文件生成DAO/Cache/MQ层AI生成CRUD、锁、消息收发等基础代码生成Service层空壳AI生成函数签名、注释、错误定义3.3 核心逻辑实现人指导AI执行步骤谁做内容人写伪代码/流程图人用自然语言描述核心流程例出价→校验→扣款→更新→通知AI翻译为代码AI将伪代码转为实际代码注意事务、锁、幂等人审查关键代码人检查状态机、并发安全、错误处理、边界条件迭代修复人AI人提出修改意见AI调整3.4 单元测试AI生成人补充步骤谁做内容生成基础测试AI覆盖正常路径、常见异常人补充测试矩阵人列出所有必须覆盖的场景并发、边界、幂等、状态机非法转换AI补全缺失测试AI根据矩阵生成测试代码含goroutine并发测试运行并修复人AI运行go test -race修复data race和逻辑错误3.5 并发与安全加固步骤谁做内容并发压测人用wrk/hey模拟高并发观察是否有超卖、死锁分析问题人AI人定位问题AI给出多个修复方案选择并实施修复人选择最优方案AI执行代码修改安全审计AI 人审AI扫描常见漏洞人确认风控规则3.6 集成测试与预发布步骤谁做内容搭建集成环境人启动依赖服务准备测试数据编写集成测试AI覆盖端到端流程模拟故障人MQ宕机、Redis切换、服务重启AI辅助编写故障脚本验证幂等与补偿人AI重复请求、部分失败场景3.7 性能调优步骤谁做内容制定压测目标人如P99 200msQPS ≥ 500执行压测人记录QPS、延迟、错误率分析瓶颈人AIAI分析pprof、慢查询人判断瓶颈优化代码人指导AI执行增加缓存、优化SQL、减小锁粒度四、单元测试专项指南4.1 测试覆盖矩阵模板测试场景优先级是否覆盖测试函数名正常流程Happy PathP0✅TestXxx_Success参数错误负值、空值P0✅TestXxx_InvalidParam业务异常余额不足、库存不足P0✅TestXxx_Insufficient并发竞争多人同时操作P1❌需补幂等性重复请求P1❌需补边界条件时间截止、库存为1P1❌需补状态机非法转换P2❌需补服务重启后恢复P2❌需补4.2 AI生成测试的要求每个测试函数独立使用t.Run子测试组织。并发测试必须使用t.Parallel()和sync.WaitGroup。使用go test -race验证无数据竞争。使用 mock/stub 隔离外部依赖数据库、Redis、MQ。测试数据尽量随机生成避免硬编码。4.3 测试通过标准单元测试覆盖率 ≥ 80%核心模块 ≥ 90%。所有P0/P1场景覆盖。go test -race -count1全部通过无警告。压测场景下无死锁、无数据不一致。五、部署与监控步骤谁做内容配置管理与特性开关人AIAI生成配置结构体人设置Feature Flag数据库迁移脚本AI生成向上/向下迁移人审核向前兼容性CI/CD配置AI生成Dockerfile、Pipeline配置灰度发布人制定分批上线策略监控告警人AIAI生成指标暴露代码人配置告警规则全链路追踪AI集成OpenTelemetry六、持续改进步骤谁做内容线上问题复盘人AI人描述问题AI辅助分析日志性能优化人指导AI执行根据线上数据调整参数规则更新人根据经验更新编程规则清单附录人与AI分工速查表任务负责人示例业务决策、架构选型人选择数据库、缓存策略代码生成、测试编写AI生成DAO、单元测试代码审查、安全审计人检查状态机、SQL注入故障诊断人主导AI辅助人描述现象AI列出可能原因性能调优人指导AI执行人指出瓶颈AI修改代码
上一篇/下一篇内容由系统自动关联
返回资讯列表 →