引言
你有没有想过,AI 不仅能帮你写代码,还能像一位经验丰富的架构师一样,引导你完成从需求分析到系统设计再到代码生成的完整开发流程?
今天我要分享的,是一次使用 AI-DLC(AI-Driven Development Lifecycle) 方法论开发桌面应用的真实实践。从一个简单的需求——"做一个能创建 Jira Issue 的桌面工具"——到最终生成完整可运行的代码,整个过程不到一个小时。
什么是 AI-DLC?
AI-DLC 是 AWS 提出的一种 AI 原生 的软件开发方法论。它不是在传统 Scrum 或 Kanban 上"贴"一层 AI,而是从第一性原理出发,重新思考:当 AI 成为开发的核心驱动力时,软件开发流程应该是什么样的?。

核心理念:重新想象,而非改装
AI-DLC 的第一原则就是"Reimagine Rather Than Retrofit"。传统方法论是为人类设计的——周为单位的迭代、大量的会议、手工编写的文档。而 AI 的速度和能力完全不同,它可以在几分钟内完成需求分析、架构设计和代码生成。
对话方向的反转
在传统开发中,开发者主动编写代码,AI 辅助补全。而在 AI-DLC 中,AI 主导对话方向,人类担任验证者和决策者。就像使用导航软件:你设定目的地(需求),AI 规划路线(设计方案),你在关键路口确认方向(审批节点)。
AI-DLC核心框架
在AI-DLC 框架中,AI通过结构化流程与人类协作,将业务意图转化为可部署的软件系统。
AI-DLC的核心框架包含三个维度,其中交付物构成了不同阶段衔接的桥梁文档。
交付物(ARTEFACTS): PRFAQs, User Stories, NFRs, Risks 阶段(PHASES): Inception 、Construction、Operation 角色(ROLES):PO、Developers、AI 一起Mob Programming
核心概念:
**业务意图(Intent):**流程起点,代表高层次业务需求 **工作单元(Unit):**AI理解并分解意图后生成的独立任务包 **敏捷迭代周期(Bolt):**执行工作单元的快速循环流程 **领域设计(Domain Design):**业务逻辑经过建模后的结构化呈现 **部署单元(Deployment Unit):**最终可交付的软件包
三个阶段

INCEPTION(启动)
确定"做什么"和"为什么做" :需求分析、架构设计、工作分解
CONSTRUCTION(构建)
确定"怎么做" :功能设计、代码生成、测试验证
OPERATIONS(运维)
确定"如何运行" :部署、监控、维护
实战:用 AI-DLC 开发 SmartJira
下面是我这次开发的过程记录(只包括前两个阶段)。
背景
我有一个现有的 Python 项目——一个 Jira Issue 查询的命令行工具。现在我想把它扩展成一个桌面应用,新增两个核心功能:
创建 Jira Issue,支持模板设置,常用字段不用每次重复填写 从 Excel 批量创建,一键导入多个 Issue
Phase 1: INCEPTION — 启动阶段
工作区检测
AI-DLC 的第一步是"感知环境"。AI 自动扫描了我的工作区,识别出:
这是一个 Brownfield 项目(已有代码) 语言:Python 核心模块:JiraIssueFetcher 类 依赖:jira 3.8.0, requests 2.31.0
逆向工程
对于已有代码库,AI-DLC 会先进行逆向工程——理解现有系统的架构、API、依赖关系。这一步生成了 8 份文档,包括业务概览、架构图、代码结构、API 文档等。
这就是 AI-DLC 论文中提到的 "Elevate existing code into semantic-rich models"——将代码提升为语义丰富的模型,为后续设计提供上下文。
需求分析
AI 不是直接开始写代码,而是先提出了 7 个澄清问题:
新程序与现有代码的关系? 需要支持哪些字段? 模板存储方式? Excel 格式要求? 错误处理策略? 界面语言? 配置方式?
这些问题以结构化的多选题形式呈现,我只需要选择选项即可。这正是 AI-DLC 的核心模式:AI 提出方案,人类做决策。
应用设计
基于我的回答,AI 设计了完整的组件架构:
9 个组件:MainWindow、4 个页面(查询、创建、批量创建、设置)、4 个服务(JiraService、TemplateManager、ExcelHandler、ConfigManager) 依赖关系图:清晰展示组件间的调用关系 文件结构规划:ui/、services/、templates/ 三层目录
工作单元分解
系统被分解为 4 个工作单元(Unit):
这对应 AI-DLC 论文中的 Unit 概念——"Cohesive, self-contained work element",每个单元都是内聚的、自包含的工作元素。
Phase 2: CONSTRUCTION — 构建阶段
功能设计
在写代码之前,AI 先为 Unit 1 生成了详细的功能设计:
业务逻辑模型(启动流程、配置合并规则、认证策略) 领域实体(AppConfig、ConnectionStatus) 业务规则(16 条验证和行为规则)
代码生成
然后按照 Unit 1 → 2 → 3 → 4 的顺序,逐步生成代码。每个单元完成后立即验证导入是否正常。
最终生成了 11 个源文件,涵盖:
完整的 PyQt6 GUI 应用 工具栏导航 + 页面切换 JSON 模板系统(加载/保存/删除) Excel 导入 + 预览 + 校验 + 批量创建 异步操作(QThread + Signal) 配置管理(.env + GUI 双模式)
构建验证
ConfigManager OK, keys: ['jira_url', 'username', ...]JiraService OK, connected: FalseTemplateManager OK, templates: ['default']Default template loaded, fields: 11ExcelHandler OKAll components initialized successfully!一次通过,零错误。
关键洞察
1. Operations 阶段:开发即生产的未来
这次实践中我没有走到第三阶段 OPERATIONS,因为 AI-DLC 目前还没有完整实现这个阶段——但这恰恰是最值得期待的部分。
传统研发流程中,开发环境和生产环境是严格分离的:开发→测试→预发→生产,每一步都有人工介入和环境切换。但我认为 AI 时代的终极形态是 开发即生产环境。当 AI 具备了足够的环境感知和自愈能力,它可以在检测到问题的瞬间自动接管运维——代码部署、异常检测、故障恢复、性能调优,全部在一个连续的闭环中完成。
开发和运维之间的那堵墙,终将被 AI 推倒。
2. 从"AI 交互式开发"到"AI 驱动开发生命周期"
当下大多数人使用 AI 写代码的方式,本质上是 AI 交互式开发——打开对话框,想到什么问什么,需求、设计、编码、调试随机穿插。今天让 AI 写个函数,明天让它改个 bug,后天又让它重构一段逻辑。没有全局规划,没有阶段划分,需求在对话中零散地冒出来,架构在一次次修补中逐渐变形。
这种模式在解决单点问题时很高效,但面对一个完整的软件项目时,它就像一场乱战——你永远不知道下一步该做什么,AI 也不知道整体方向在哪里。
AI-DLC 的本质区别在于:它给 AI 驱动的开发加上了生命周期的骨架。
同样是 AI 在干活,但 AI-DLC 下的 AI 知道自己处于哪个阶段、该产出什么、下一步去哪里。需求分析就是需求分析,不会突然跳去写代码;架构设计就是架构设计,不会中途去修 bug。每个阶段有明确的输入、输出和审批节点,整个流程有序推进。
一句话总结:AI 交互式开发是让 AI 当你的手,AI-DLC 是让 AI 当你的参谋部。
3. 一个可定制的范式
AI-DLC 最有价值的地方在于:它是一个范式,而不是一个固定流程。
当前的三阶段(Inception → Construction → Operations)是一个基础框架,但你完全可以根据自己团队的实际情况去定制。比如:
在 Inception 和 Construction 之间加入 测试策略阶段,让 AI 先规划测试方案再写代码 在 Inception 之前加入 需求挖掘阶段,让 AI 帮你做用户调研、竞品分析、需求优先级排序 在 Operations 之后加入 持续优化阶段,让 AI 基于生产数据自动提出改进建议 根据项目类型调整每个阶段的深度——简单项目跳过设计直接生成,复杂项目加入安全评审和性能设计
这就是范式的力量:它给你一个思考框架,而不是一套死板的规则。你可以在这个框架上长出适合自己的开发流程。
结语
AI-DLC 代表了软件开发的一个新范式:AI 驱动,人类决策。它不是要取代开发者,而是让开发者从繁琐的实现细节中解放出来,专注于真正需要人类智慧的部分——定义问题、做出权衡、验证方向。
当 AI 能在一小时内完成从需求到代码的全流程时,开发者的核心竞争力就不再是"写代码的速度",而是 "定义正确问题的能力" 和 "在关键节点做出正确判断的能力"。
这,或许就是软件开发的未来。
本文中的 SmartJira 项目使用 AI-DLC 工作流开发,从需求描述到可运行代码,全程由 AI 驱动、人类审批。
参考资料:
AI-Driven Development Lifecycle (AI-DLC) Method Definition, Raja SP, AWS AI-DLC GitHub: https://github.com/kiro-community/powers/tree/main/aidlc
夜雨聆风