用 TRAE 开发审批系统:一套可复制的 AI 辅助开发工作流

在开始具体实践之前,先明确 AI 辅助开发的完整流程:

第一步:需求分析与技术文档转换- 将产品需求转换为 AI 可理解的技术文档,关键是结构化描述,明确输入输出,定义验收标准

第二步:接口设计与数据建模-定义清晰的 API 协议和数据模型,保持简单,考虑扩展性,遵循设计原则

第三步:代码生成与业务逻辑实现-利用 AI 生成基础代码,人工实现核心业务,人机分工明确,AI 做重复工作,人工做决策

第四步:测试验证与文档同步-生成测试代码,及时文档更新

🎯 核心思路

人机分工很关键:

我们负责:

架构决策:决定技术选型、系统设计和数据流向,把控整体方向

核心业务逻辑实现:把最复杂、最重要的那些业务逻辑写好,处理边界情况和性能问题

代码 review:检查代码质量,发现潜在问题,保证团队代码标准一致

TRAE 负责:

重复劳动:处理那些重复性、机械性的编码工作,比如 CRUD、配置文件等

文档同步:代码变更后自动更新相关文档,保持文档和代码同步

测试用例:生成和维护各种测试用例,覆盖主要功能和边界场景

📋 完整工作流

这里我以开发一个简单的审批系统为例

第一步:需求文档二次加工(关键步骤)

原始 PRD 通常是这样的:

"要个审批系统,能多级审批,审批人能同意拒绝,要记录审批意见..."

我的处理方式是用标准化提示词让 TRAE 帮忙转换,你可以使用如下提示词:

这是原始需求文档@审批需求。md, 

请帮我将以下产品需求转换为开发可执行的技术文档,按这个格式: 

1。 核心实体和关系 

2。 主要功能点 

3。 数据流转和状态变化 

4。 接口协议设计 

5。 验收标准 

原始需求:[粘贴 PRD 内容]。

接下来你就是生成数据库表结构了,可以使用如下提示词:

请根据 approval_workflow_design.md 设计文档创建完整的数据库表结构,使用 MySQL 8.0 语法定义所有必要的数据表,表设计要包含自增主键、外键约束和合适的索引策略,

字段类型选择要考虑数据精度和存储效率,所有时间字段统一使用 DATETIME 类型并设置默认值,状态字段使用 TINYINT 配合注释说明取值含义,

软删除字段和审计字段要在每个业务表中保持一致,表间关系通过外键约束保证数据完整性,字符集统一使用 utf8mb4 支持完整的 Unicode 字符,

为高频查询场景创建复合索引优化性能,同时生成对应的 DROP 语句以便回滚操作。

有了设计文档,你可以使用如下提示词指导 AI 帮你生成 RPC 协议:

请参考 business_approval_design.md 这个设计文档,帮我设计完整的审批流程 RPC 协议,其中服务接口需要定义在 approval_service.thrift 文件中,

协议设计要求包含完整的方法签名和参数结构体定义,所有接口返回值统一使用标准的响应格式包装,

枚举类型要涵盖所有可能的业务状态和错误码,结构体字段需要合理的默认值和必填标识,

接口设计要考虑扩展性预留足够的保留字段,复杂查询参数封装成独立的请求对象,批量操作接口要限制单次处理的数据量上限。

blancpainw.watchrhf.cn

blancpainw.vay.net.cn

blancpainw.xajshd.com

blancpainw.jshdkm.com

blancpainw.watch51.com

blancpainw.guoshew.com

blancpainw.hljjshd.com

blancpainw.watchwd.com

blancpainw.watchlj.cn

blancpainw.watchjwb.cn

blancpainw.szwatchpg.com

blancpainw.szwatchpg.cn

blancpainw.watchgz.cn

blancpain-cds.zhcxb.cn

blancpain-cds.szwatchpg.cn

blancpain-cds.fjfsx.com

blancpain-njs.tagheueru.cn

blancpain-njs.hx626.com

blancpain-guangzhou.watch4s.com

blancpain-shenzhen.watch4s.com

blancpain-guangzhou.wbiaohome.com

blancpain-shenzhen.wbiaohome.com

blancpain-guangzhou.wbiao120.com

blancpain-shenzhen.wbiao120.com

ap-shenzhen.fdcpx.net

ap-shenzhen.longinesshwx.com

ap-shs.szwatchpg.cn

ap-shs.buchererweixiu.com

ap-shenzhen.audemarsweixiu.com

ap-shenzhen.mosershwx.com

ap-shs.kpkwatch.com

ap-shs.watchgz.cn

ap-shenzhen.fjfsx.com

ap-shenzhen.tagheueru.cn

ap-shs.ywbzn.com

ap-shs.aysza.cn

ap-shenzhen.hx626.com

ap-shenzhen.ernestshwx.com

ap-shs.watchrhc.cn

ap-shs.zzjshd.com

ap-shenzhen.shjshdzb.com

ap-shenzhen.watchxu.com

ap-shs.ynwatchzb.cn

ap-shs.watch-service.com.cn

ap-shenzhen.gyjshd.com

ap-shenzhen.spezp.com

ap-shs.shrhzb.com

ap-sys.shrhzb.com

ap-sys.jshdvip.com

ap-shenzhen.iwatch4s.com

接下来是项目目录按领域分层,你可以指定代码的位置,比如:

需要严格按照以下四层架构来组织代码实现,我有以下目录结构,每个目录的职责如下:

handler 目录 - 你需要在这里实现 RPC 服务接口,处理外部请求的接收和响应,负责参数校验、数据转换和错误处理

service 目录 - 你需要在这里实现核心业务逻辑,编排各种业务操作流程,协调 domain 层的领域对象完成复杂业务场景

domain 目录 - 你需要在这里定义领域模型和业务实体,封装纯粹的业务规则,不能依赖任何外部框架或基础设施

repository 目录 - 你需要在这里定义数据访问接口,提供数据持久化的抽象层,与具体存储实现解耦。

增量开发

开发分为几个阶段,每个阶段都是可运行的版本:

第一轮:Walking Skeleton(最小可用版本)

实现 CreateApplication + GetApplication,简单的状态管理(Draft -> Pending),基础数据库 CRUD,一个集成测试。

提示词:"请实现最简单的创建和查询审批单功能,只包含必要字段,先跑通流程"

第二轮:完善审批流程

ProcessApproval 实现,状态机完整逻辑,权限校验,审批记录存储。

第三轮:查询功能

ListPendingApprovals,分页和过滤,性能优化。

第七步:测试

单元测试要覆盖各种边界情况,你可以使用如下提示词:

你需要测试正常输入、空值处理、边界值(最大最小零值)、异常输入的错误处理、以及各种业务逻辑分支,确保每个测试用例都有明确的断言验证

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容