用于人工智能代码生成的计划 - 执行 - 检查 - 行动框架

AI 代码生成工具虽承诺更快开发,但常产生质量问题、集成问题和交付延迟。文中描述了一个用于人类 - AI 协作的结构化 Plan-Do-Check-Act(PDCA)框架,作者在与代理合作一年多后用了六个月进行了完善。使用该 PDCA 循环,能在利用 AI 能力的同时更好地维护代码质量,通过工作协议、结构化提示和持续反思,作者能对所提交的代码负责并引导 AI 生成经过测试和可维护的软件。

代码生成未实现其潜力
AI 代码生成的快速采用增加了产出,但未定期实现交付和结果的可衡量改进。谷歌的 DORA 2024 年 DevOps 状态报告指出,AI 采用每增加 25%,交付稳定性就会下降 7.2%。质量问题也更令人担忧,GitClear 的 2024 年对 2.11 亿行代码的分析显示,重复代码块增加了 10 倍,克隆代码的缺陷率为 17%,18.42%的 bug 会传播到其他副本。

为何采用结构化 PDCA 循环?
行业未实现生产力提升和质量改进,因为 AI 工具及其使用都需要进化。工程师需要可重复的实践,利用经验引导代理进行测试验证的更改,同时利用现有代码模式。结构化提示比临时方法在方法和任务复杂性方面表现更好。PDCA 通过已证明的软件工程实践提供结构,包括持续改进和迭代交付,是作者 20 年来追求的敏捷实践的基础。一项受控研究发现,PDCA 使软件缺陷减少了 61%。

PDCA 框架概述
这是作者为与编码代理的交互而组装的结构化 PDCA 循环,用于项目管理过程中规划、跟踪和接受工作。包括工作协议和结构化提示,引导人类/AI 协作通过循环的各个步骤,每个步骤都基于先前步骤,并且行动步骤(反思)强制进行持续改进。该框架适用于 1 到 3 小时的编码任务,也可用于将较大的工作范围分解为该大小的单元。

工作协议:人类在 AI 协作中的责任
工作协议是帮助团队提高一致性和维持代码质量的成熟实践,作者将其改编用于人类 - AI 协作,以结构化协议来确定人类在交互中的责任,包括原则和干预问题,以确保代码质量。

计划
计划由高级分析和详细规划组成。

  • 高级分析:解决业务问题:前期分析确保在开始代码生成前明确业务问题和技术方法,通过迭代循环扩展分析提示,以强制进行项目范围的代码搜索。
  • 详细规划:创建可观察和可测试的增量:在确定方法后,详细规划提示要求代理准备初始执行计划,将工作分解为可测试的清单项目,遵循 TDD 纪律,限制尝试次数并明确接受标准。

做:测试驱动的实施与人类监督
实施提示强制 TDD 纪律,允许相关功能分组为并行更改并同时进行测试验证,减少推理成本,提高人类监督和代码质量。

检查:完成分析
完成分析要求代理审查聊天会话记录和生成的代码,以确认更改是否达到预期输出,并标记与原始计划和实施指南的偏差,提供明确的完成定义和数据用于反思。

行动:反思以持续改进
反思步骤分析会话,突出协作模式,识别成功的人类干预,并提出改进提示和开发者使用工具的建议,通过回顾性提示收集评估数据。

衡量成功
持续改进需要独立的质量措施,作者使用 GitHub 的 API 创建早期预警系统,通过 git 动作测量五个质量代理,并提供了部分输出示例。对于企业,有商业解决方案可供选择。

实验结果
通过在 Cursor 中使用 Anthropic 模型实施相同故事,比较 PDCA 与非结构化方法。结果显示在前期规划成本和故障排除效率之间存在权衡,PDCA 方法产生的生产代码更少、测试覆盖率更全面、提交更原子化,定性上提供了更好的开发者体验,但结果基于单个实验。

有待进一步发展的领域
作者的协议、提示模板和成功指标仍在发展中,包括匹配流程形式ality 与任务复杂性,以及包括模型选择策略,以优化执行成本。

结论
AI 代码生成因质量退化和集成挑战未实现其生产力潜力,PDCA 框架通过将结构应用于人类 - AI 协作来弥补这一差距,提供了五个关键实践,实验结果表明存在核心权衡,PDCA 需更多前期规划投资以减少故障排除和维护,组织采用 AI 代码生成需要可扩展且适应不同上下文的系统实践。

AI 披露
作者使用生成式 AI 工具(Claude)作为支持工具,同时保持人类专业知识作为内容的驱动者,对所有内容负责并严格验证 AI 生成的建议。

阅读 6
0 条评论