AllStar2.0/开发周期with AI.md

971 lines
16 KiB
Markdown
Raw Permalink Normal View History

2026-04-27 14:54:13 +08:00
# 引入 AI 辅助后开发周期变化评估
## 一、整体说明
在原智能锁新实时系统方案基础上,如果引入类似 **AI 辅助开发 / 架构评审 / 代码生成 / 测试用例生成 / 运维脚本生成**,整体开发周期会明显缩短。
但需要注意:缩短主要发生在后端、协议设计、文档、测试脚本、运维配置、日志分析和问题排查等环节。
---
### 1.1 AI 很擅长的工作
AI 在以下工作上提速明显:
- 写代码
- 生成协议
- 生成文档
- 补充测试
- 查找 bug
- 生成配置
- 辅助重构
- 分析日志
---
### 1.2 AI 不擅长替代的工作
AI 很难直接替代以下工作:
- 真机调试
- 设备固件烧录
- 网络环境测试
- 音视频主观体验评估
- 硬件性能瓶颈排查
- 线上灰度观察
- 跨团队沟通
- 产品验收
---
### 1.3 难以大幅压缩的环节
因此,以下环节仍然难以大幅压缩:
- 设备端 WebRTC 移植
- APP 与设备真机联调
- 弱网测试
- 音视频质量调优
- BifroMQ / ZLMediaKit / TURN 的真实环境压测
- 线上灰度验证
---
## 二、整体结论
引入 GPT-5.5 辅助后,项目周期大致变化如下:
| 版本目标 | 原周期 | AI 辅助后周期 | 预计缩短 |
|---|---:|---:|---:|
| MVP 最小可用版本 | 8 - 12 周 | 5 - 8 周 | 缩短约 30% - 40% |
| 可灰度上线版本 | 12 - 16 周 | 8 - 12 周 | 缩短约 25% - 35% |
| 完整版本,含 AI、动态选路、完整可观测 | 16 - 24 周 | 12 - 18 周 | 缩短约 20% - 30% |
更现实的判断是:
> 有 GPT-5.5 帮助后,项目不是从 4 个月变成 1 个月,而是更可能从 4 个月压缩到 2.5 - 3 个月;从 6 个月压缩到 4 - 4.5 个月。
---
## 三、各模块开发周期变化
### 3.1 架构设计与协议设计
#### 原周期
**1 - 2 周**
#### AI 辅助后
**3 - 5 天**
#### 可提速内容
GPT-5.5 可以辅助生成:
- MQTT topic 规范
- signaling 消息协议
- 会话状态机设计
- ACK / retry / timeout 机制
- API 文档
- 数据表设计
- Redis key 设计
- 错误码规范
- Mermaid 架构图
- 时序图
- 测试用例矩阵
#### 缩短原因
这类工作主要是**脑力整理、文档建模、规范输出**AI 辅助收益很大。
#### 仍需人工确认
- 业务边界
- 历史系统兼容性
- 设备能力真实性
- 团队技术栈选择
---
### 3.2 `session-orchestrator` 会话编排服务
#### 原周期
**4 - 8 周**
#### AI 辅助后
**3 - 5 周**
#### 可提速内容
AI 可以帮助生成:
- Go / Java 服务基础框架
- 会话状态机代码
- API controller
- MQTT client 封装
- Redis 状态存储
- MySQL 表结构
- 幂等处理逻辑
- ACK / timeout / retry 框架
- 单元测试
- 集成测试
- OpenAPI 文档
- 日志和 trace 埋点模板
#### 缩短幅度
**约 30% - 40%**
#### 不能完全替代的部分
- 状态机边界确认
- 复杂异常流验证
- 与 APP / 设备端实际联调
- 高并发压测
- 线上问题复盘
---
### 3.3 `device-bootstrap` 设备接入服务
#### 原周期
**2 - 4 周**
#### AI 辅助后
**1.5 - 3 周**
#### 可提速内容
AI 可以帮助生成:
- 设备认证 API
- HMAC 签名校验
- MQTT 短期凭证颁发逻辑
- topic ACL 模型
- capability schema
- 配置下发接口
- 设备接入文档
- Mock 设备脚本
#### 缩短幅度
**约 25% - 35%**
#### 主要限制
- 设备端真实认证能力
- 设备固件兼容
- 密钥安全方案
- BifroMQ 自定义鉴权落地
---
### 3.4 BifroMQ 接入模块
#### 原周期
**2 - 4 周**
#### AI 辅助后
**1.5 - 3 周**
#### 可提速内容
AI 可以辅助:
- 设计 topic
- 设计 ACL
- 生成 MQTT 测试脚本
- 生成压测脚本
- 生成 Docker Compose / K8s 部署文件
- 生成设备模拟器
- 生成 APP 模拟 MQTT 客户端
- 编写监控告警配置
#### 缩短幅度
**约 20% - 30%**
#### 主要限制
- BifroMQ 集群稳定性验证
- 长连接压测
- MQTT 消息顺序和重复投递验证
- ACL 插件或鉴权服务的真实适配
---
### 3.5 `starlock` 改造
#### 原周期
**2 - 4 周**
#### AI 辅助后
**1.5 - 3 周**
#### 可提速内容
AI 可以辅助:
- 梳理现有 PHP 代码
- 生成会话创建 API
- 生成权限校验逻辑模板
- 生成内部调用 SDK
- 生成事件回调接口
- 生成幂等处理逻辑
- 生成接口文档和测试用例
#### 缩短幅度
**约 25% - 35%**
#### 主要限制
- 现有 `starlock` 代码质量
- 历史业务规则复杂度
- 多租户 / 家庭 / 设备归属关系的真实逻辑
- 旧系统兼容
---
### 3.6 `starcloud` 对接
#### 原周期
**1 - 3 周**
#### AI 辅助后
**1 - 2 周**
#### 可提速内容
AI 可以辅助:
- 梳理 `starcloud` 能力边界
- 生成内部 API 对接文档
- 生成权限校验调用逻辑
- 生成设备归属查询调用封装
- 生成套餐 / 风控 / 审计调用模板
- 生成接口测试用例
#### 缩短幅度
**约 20% - 30%**
#### 主要限制
- `starcloud` 现有 API 完整度
- 共享能力和 `starlock` 租户定制能力的边界
- 历史数据模型兼容
- 跨团队接<E9989F><E68EA5><EFBFBD>协调
---
### 3.7 APP 端 `app-starlock` 改造
#### 原周期
**4 - 8 周**
#### AI 辅助<E8BE85><E58AA9><EFBFBD>
**3 - 6 周**
#### 可提速内容
AI 可以辅助:
- Flutter MQTT 接入代码
- WebRTC 基础调用封装
- 会话 UI 状态机
- signaling 消息处理
- route switch 处理
- 质量上报逻辑
- 异常提示文案
- mock server
- 自动化测试用例
#### 缩短幅度
**约 20% - 30%**
#### 主要限制
APP 端会受到真实环境限制:
- Android / iOS WebRTC 行为差异
- 后台保活
- 音频权限
- 蓝牙 / 扬声器 / 麦克风路由
- 移动网络切换
- 真机兼容性测试
所以 AI 能帮忙写代码,但**真机联调时间很难被大幅压缩**。
---
### 3.8 WiFi 网关锁 / 设备端改造
#### 原周期
**6 - 12 周**
#### AI 辅助后
**5 - 10 周**
#### 可提速内容
AI 可以辅助:
- MQTT 协议解析代码
- signaling 消息结构
- 状态机代码
- 设备 capability schema
- HMAC 签名逻辑
- 日志模块
- C / C++ 代码审查
- 崩溃日志分析
- 设备模拟器
- 协议一致性测试
#### 缩短幅度
**约 10% - 25%**
#### 为什么提速有限
设备端是最难被 AI 大幅压缩的部分,因为涉及:
- 芯片 SDK
- 编码器
- 摄像头
- 麦克风
- 硬件资源
- 固件 OTA
- 内存和 CPU 限制
- 真实网络环境
- WebRTC 移植
如果设备端已有成熟 WebRTC SDK提速会明显一些。
如果设备端 WebRTC 从零移植AI 帮助有限。
---
### 3.9 WebRTC / TURN / ZLMediaKit 媒体链路
#### 原周期
**4 - 8 周**
#### AI 辅助后
**3 - 6 周**
#### 可提速内容
AI 可以辅助:
- WebRTC signaling 流程代码
- coturn 配置
- TURN 临时账号生成
- ZLMediaKit hook 接入
- ZLM 推流 / 拉流 API 封装
- ICE 失败重试逻辑
- 质量指标采集
- route switch 策略初版
- 弱网测试脚本
#### 缩短幅度
**约 20% - 30%**
#### 主要限制
- 真实 NAT 环境
- P2P 成功率
- TURN 带宽
- ZLM 延迟
- 双向语音质量
- 弱网表现
- APP 与设备 codec 兼容
媒体链路不是“代码写完就完成”,更多时间花在**联调和调优**。
---
### 3.10 `MQTT event worker`
#### 原周期
**2 - 4 周**
#### AI 辅助后
**1 - 2.5 周**
#### 可提速内容
AI 可以生成:
- MQTT 消费代码
- 事件 schema
- 幂等逻辑
- 回调 `starlock` 代码
- 重试机制
- 死信队列
- 事件落库表
- 单测和压测脚本
#### 缩短幅度
**约 35% - 45%**
这个模块比较适合 AI 辅助,因为逻辑清晰,边界明确。
---
### 3.11 `realtime-store` 与可观测性
#### 原周期
**1 - 3 周**
#### AI 辅助后
**1 - 2 周**
#### 可提速内容
AI 可以辅助生成:
- MySQL 表结构
- Redis key 规范
- Prometheus 指标设计
- Grafana dashboard
- 日志字段规范
- OpenTelemetry 接入代码
- sessionId 链路追踪规范
- 告警规则
#### 缩短幅度
**约 25% - 40%**
#### 注意事项
AI 能快速生成配置,但指标是否有用,需要靠真实联调不断修正。
---
### 3.12 AI 旁路模块 `ai-gateway`
#### 原周期
**2 - 4 周**
#### AI 辅助后
**1.5 - 3 周**
#### 可提速内容
AI 可以辅助:
- `ai-gateway` 服务框架
- WebSocket / streaming 转发
- 音频格式转换代码
- AI 会话状态机
- 回调 `starlock`
- 错误隔离机制
- 文档和测试脚本
#### 缩短幅度
**约 20% - 35%**
#### 主要限制
- `xiaozhi_server` 接口稳定性
- 音频实时性
- 设备端音频旁路能力
- 隐私合规
- 与主通话资源竞争
---
### 3.13 运维部署模块
#### 原周期
**3 - 6 周**
#### AI 辅助后
**2 - 4 周**
#### 可提速内容
AI 可以辅助生成:
- Dockerfile
- Docker Compose
- Kubernetes YAML
- Helm Chart
- Nginx 配置
- coturn 配置
- ZLMediaKit 配置
- Prometheus 配置
- Grafana 面板
- CI/CD 脚本
- 部署文档
- 回滚方案
#### 缩短幅度
**约 25% - 40%**
#### 主要限制
- 真实公网网络环境
- 防火墙端口
- TURN UDP 端口开放
- 证书配置
- 带宽压测
- 生产环境权限和安全审查
---
## 四、按模块重新估算周期
| 模块 | 原周期 | AI 辅助后 | 缩短幅度 |
|---|---:|---:|---:|
| 架构细化 / 协议设计 | 1 - 2 周 | 3 - 5 天 | 40% - 60% |
| `starlock` 改造 | 2 - 4 周 | 1.5 - 3 周 | 25% - 35% |
| `starcloud` 对接 | 1 - 3 周 | 1 - 2 周 | 20% - 30% |
| `session-orchestrator` | 4 - 8 周 | 3 - 5 周 | 30% - 40% |
| `device-bootstrap` | 2 - 4 周 | 1.5 - 3 周 | 25% - 35% |
| BifroMQ 接入 | 2 - 4 周 | 1.5 - 3 周 | 20% - 30% |
| APP 改造 | 4 - 8 周 | 3 - 6 周 | 20% - 30% |
| 设备端改造 | 6 - 12 周 | 5 - 10 周 | 10% - 25% |
| WebRTC / TURN / ZLM | 4 - 8 周 | 3 - 6 周 | 20% - 30% |
| MQTT event worker | 2 - 4 周 | 1 - 2.5 周 | 35% - 45% |
| realtime-store / 可观测 | 1 - 3 周 | 1 - 2 周 | 25% - 40% |
| AI gateway | 2 - 4 周 | 1.5 - 3 周 | 20% - 35% |
| 运维部署 | 3 - 6 周 | 2 - 4 周 | 25% - 40% |
| 测试 / 灰度 / 稳定性 | 2 - 4 周 | 2 - 3 周 | 10% - 25% |
---
## 五、为什么不是直接缩短一半以上?
因为这个项目不是纯 Web 后台系统,而是典型的:
```text
业务后台 + MQTT 长连接 + APP + 嵌入式设备 + WebRTC + TURN + ZLMediaKit + 弱网 + AI
```
AI 很擅长:
- 写代码
- 生成协议
- 生成文档
- 补测试
- 查 bug
- 生成配置
- 重构
- 分析日志
但 AI 不擅长替代:
- 真机调试
- 设备固件烧录
- 网络环境测试
- 音视频主观体验评估
- 硬件性能瓶颈排查
- 线上灰度观察
- 跨团队沟通
- 产品验收
所以合理预期是:
> 整体缩短 20% - 40%,不是缩短 70% - 80%。
---
## 六、最适合让 GPT-5.5 参与的工作
### 6.1 协议设计
让 AI 直接输出:
- MQTT topic 设计
- JSON schema
- 状态机表
- 错误码表
- ACK / retry / timeout 规则
- API 文档
- 时序图
收益非常高。
---
### 6.2 `session-orchestrator` 代码生成
适合 AI 参与:
- 服务框架
- 状态机
- Redis DAO
- MySQL DAO
- MQTT publish / subscribe
- OpenAPI
- 单元测试
- mock 设备
- mock APP
这是最应该 AI 深度介入的模块。
---
### 6.3 测试用例生成
可以让 AI 生成完整测试矩阵:
- 正常呼叫
- 设备离线
- APP 取消
- 设备拒接
- signaling 超时
- ICE 失败
- TURN 失败
- ZLM 失败
- MQTT 断线重连
- APP 杀进程
- 双端同时挂断
- 重复 invite
- 重复 accept
- session token 过期
- 多 APP 同时呼叫同一设备
这能显著减少遗漏。
---
### 6.4 日志分析与故障定位
后期联调时,可以让 AI 基于日志判断:
- 是 MQTT 没送达
- 还是设备没 ACK
- 还是 WebRTC ICE 失败
- 还是 TURN 凭证错误
- 还是 ZLM hook 鉴权失败
- 还是 APP 状态机没更新
这对音视频项目非常有价值。
---
### 6.5 运维配置生成
适合 AI 生成:
- Docker Compose
- coturn 配置
- ZLMediaKit 配置
- Prometheus 规则
- Grafana 面板
- Nginx 反代
- CI/CD pipeline
- 回滚文档
---
## 七、引入 AI 后的新排期建议
### 7.1 第 1 周:协议和骨架快速成型
#### AI 参与
- 输出完整接口文档
- 输出 MQTT topic 规范
- 输出状态机
- 输出数据库表
- 输出 mock APP / mock device
- 生成 `session-orchestrator` 项目骨架
#### 人工重点
- 审核协议
- 确认设备能力
- 确认 APP 交互
- 确认旧系统兼容方案
---
### 7.2 第 2 - 4 周:控制面 MVP
#### 完成内容
- `starlock` 创建会话 API
- `session-orchestrator` 基础状态机
- `device-bootstrap`
- BifroMQ 接入
- APP MQTT
- 设备 MQTT
- invite / accept / reject / hangup
#### AI 参与
- 生成大部分 CRUD / API / 测试
- 生成 mock 测试工具
- 辅助修复联调问题
---
### 7.3 第 5 - 7 周:媒体链路 MVP
#### 完成内容
- WebRTC P2P
- coturn
- ZLMediaKit
- ICE 失败后切 ZLM
- 基础质量上报
#### AI 参与
- 生成 WebRTC signaling 代码
- 生成 TURN / ZLM 配置
- 分析 getStats
- 分析失败日志
---
### 7.4 第 8 - 10 周:稳定性与可观测
#### 完成内容
- ACK / retry / timeout 完整化
- session trace
- 事件 worker
- Grafana dashboard
- 弱网测试
- 多异常流测试
#### AI 参与
- 生成异常测试用例
- 生成压测脚本
- 分析日志
- 辅助修复边界 bug
---
### 7.5 第 11 - 12 周:灰度上线
#### 完成内容
- 小批量设备灰度
- 线上日志分析
- 性能调优
- 回滚方案
- 运维文档
#### AI 参与
- 自动总结灰度问题
- 分析失败会话
- 生成修复建议
- 维护故障知识库
---
## 八、AI 加持后的推荐团队配置
### 8.1 原建议团队
| 角色 | 人数 |
|---|---:|
| 后端 | 2 |
| APP | 1 |
| 设备端 | 1 |
| 运维 | 1 |
| 测试 | 1 |
| 产品 / 架构 | 1 |
---
### 8.2 AI 辅助后建议团队
| 角色 | 人数 | 说明 |
|---|---:|---|
| 架构 / 技术负责人 | 1 | 负责边界、协议、评审 |
| 后端 | 1 - 2 | AI 可承担大量样板代码 |
| APP | 1 | 仍需真机调试 |
| 设备端 | 1 | 仍是关键瓶颈 |
| 运维 | 0.5 - 1 | AI 可生成配置,但仍需验证 |
| 测试 | 1 | AI 生成用例,人负责执行和验收 |
> 不建议因为有 AI 就取消测试或运维。这个项目涉及真实设备和音视频链路,测试和运维仍然很关键。
---
## 九、最容易被 AI 缩短的交付物
| 交付物 | 原耗时 | AI 辅助后 |
|---|---:|---:|
| 架构文档 | 3 - 5 天 | 1 天 |
| API 文档 | 3 - 5 天 | 1 - 2 天 |
| MQTT 协议文档 | 2 - 4 天 | 0.5 - 1 天 |
| 数据库设计 | 2 - 3 天 | 0.5 - 1 天 |
| 状态机设计 | 2 - 4 天 | 1 天 |
| 测试用例 | 3 - 5 天 | 1 - 2 天 |
| Docker Compose | 2 - 3 天 | 0.5 - 1 天 |
| 监控指标初版 | 2 - 4 天 | 1 天 |
| Mock 工具 | 3 - 7 天 | 1 - 3 天 |
---
## 十、需要防范的 AI 风险
### 10.1 AI 写出的代码看似完整,但边界不一定可靠
尤其是:
- 并发状态机
- 幂等处理
- 分布式锁
- MQTT 重连
- WebRTC 状态处理
- token 安全
- 资源清理
这些必须人工 code review。
---
### 10.2 AI 容易低估设备端复杂度
设备端不是普通 Linux 服务器,可能有:
- 内存限制
- SDK 限制
- 编译链限制
- 硬件编码限制
- 线程模型限制
- 网络库限制
设备端周期不能按普通后端服务估算。
---
### 10.3 AI 生成的配置要经过真实验证
比如:
- coturn 配置
- ZLMediaKit 配置
- Nginx 反代
- K8s 网络
- UDP 端口范围
这些配置 AI 可以生成,但不能直接上线。
---
### 10.4 AI 不能替代弱网测试
弱网测试必须真实做:
- 20% 丢包
- 200ms 延迟
- 抖动
- WiFi / 4G 切换
- NAT 类型变化
- 设备断电重连
- APP 后台恢复
---
## 十一、最终结论
在引入 GPT-5.5 级别 AI 辅助后,开发周期建议为:
| 目标 | 原周期 | AI 辅助后 |
|---|---:|---:|
| MVP 跑通主链路 | 8 - 12 周 | 5 - 8 周 |
| 可灰度上线 | 12 - 16 周 | 8 - 12 周 |
| 完整生产级版本 | 16 - 24 周 | 12 - 18 周 |
---
### 11.1 最能提速的模块
最能提速的模块是:
1. 协议设计
2. `session-orchestrator`
3. `device-bootstrap`
4. `MQTT event worker`
5. 测试用例和 Mock 工具
6. 运维配置和文档
---
### 11.2 最难被压缩的模块
最难被压缩的模块是:
1. 设备端 WebRTC
2. APP 真机适配
3. WebRTC / TURN / ZLM 三方联调
4. 弱网测试
5. 灰度上线验证
---
## 十二、推荐第一阶段目标
如果目标是尽快上线,建议第一阶段控制为:
```text
starlock 创建会话
+ session-orchestrator 状态机
+ BifroMQ signaling
+ APP/设备 MQTT
+ ZLMediaKit 优先兜底
+ WebRTC P2P 作为增强
```