image.png

是什么

  • 一种的软件开发方法。提升开发角色间沟通,集成,协调效率,实现产品快速部署。
  • 一种文化。促进开发和运维之间的协作,专注于持续测试和交付。目标是更快,更自动的部署到生产环境。一切度量只为发现持续改善点,而不是一种追责文化。增加协作,共享工具,减少竖井,减少浪费,重视反馈和自动化。
  • 一个持续的过程。

    image.png

    质量把控常见措施

    1. 代码质量

  • Code Reivew

    • MR 时,必须有 Review 人。
    • 核心文件有 Owner。核心文件改时,Owner 必须 Review。
  • 质量检查
    • 提交前检查
    • 合并到主分支时,跑 CI 检查
  • 质量门禁。基于代码扫描的实现。
    • 圈复杂度,重复代码率。

2. 自动化测试

  • 单元测试。
    • 明确编写标准
    • 设置单测覆盖率标准。
    • 本地和集成环境执行。
  • 其他自动化测试

3. 环境治理

  • 明确环境分类:开发环境,手工测试环境,自动化测试环境,预发布环境,金丝雀环境。
  • 环境自动创建:自动进行环境创建和部署。

DevOps 的度量

1. 质量

  • 单位时间遗留缺陷数
  • 单个用户故事发现缺陷数
  • 变更失败率
  • 单位时间内线上故障数

2 速度

  • 需求前置周期
  • 用户故事交付周期
  • 集成测试周期
  • 发布频率
  • 线上故障平均修复时长

3 价值

  • 需求吞吐量
  • 有效交付量