软件开发的流程

需求评审 → 技术方案 → 开发 → 自测 → 提测 → 测试 → 灰度 → 全量 → 监控
   ↑___________________________________________________________↓
                        (线上问题反馈,循环迭代)
阶段 做什么 谁参与
需求评审 产品经理讲需求,技术评估可行性 PM、开发、测试
技术方案/评审 确定架构、接口、数据库设计 开发、架构师
开发 写代码、单元测试 开发
自测 开发自己跑通主流程 开发
提测 代码合并到测试分支,交给测试 开发→测试
测试(SIT/UAT) 功能测试、性能测试、回归测试 测试/部分用户
灰度发布 小范围真实环境验证 运维/开发 + 真实用户
全量发布 所有用户可用 运维
线上监控 观察错误率、性能指标、业务数据 运维/开发/PM

与灰度相关的其他术语

术语 含义 与灰度的区别
A/B测试 同时跑两个版本,对比数据决定哪个更好 灰度侧重风险控制,A/B侧重数据决策;常结合使用
蓝绿部署 准备两套完全一样的环境,瞬间切换流量 灰度是渐进切流,蓝绿是瞬间全切
金丝雀发布(Canary) 和灰度基本同义,源自"煤矿金丝雀"预警典故 国外常用说法
滚动发布(Rolling) 逐个替换服务器实例 偏运维层面,灰度偏产品/用户层面
功能开关(Feature Toggle) 代码里埋开关,随时开启/关闭某个功能 灰度是发布策略,开关是技术手段,常配合使用

2 测试方面

  1. 功能测试
  2. 回归测试
  3. 兼容测试
posted @ 2026-07-21 16:08  wenli7363  阅读(32)  评论(0)    收藏  举报