Skip to content

Latest commit

 

History

History
120 lines (108 loc) · 3.83 KB

DevOps持续交付体系(Guides).md

File metadata and controls

120 lines (108 loc) · 3.83 KB

DevOps持续交付体系(Guides)

文化篇

- 瀑布式开发
- 精益运动
- 敏捷开发
- 持续交付运动
- DevOps持续交付体系
- DevOps的组织文化
  - 交付“价值”
  - 允许失败、获得反馈、持续改善
  - 持续学习、彼此信任
- DevOps的研发文化
  - 目标:高质量、低风险地快速发布软件价值
  - 核心模式
  - 核心原则

流程及方法篇

- IT价值流概览
- 0.业务需求协作管理
- 1.需求拆分(产品组织主导)
  - 1.1 需求拆分的好处
  - 1.2 需求拆分的方法        
    - 1.2.1 以用户故事进行需求拆分
    - 1.2.2 用户故事的拆分原则(INVEST)
- 2.研发准备工作(研发组织)
  - 2.1 研发任务拆分
  - 2.2 测试用例编写
  - 2.3 系统架构梳理
    - 2.3.1 架构的设计原则
    - 2.3.2 涉及遗留架构的改造策略
- 1.持续集成(Continuous integration  简称CI)
  - 1.1 持续集成的步骤
  - 1.2 持续集成的实践]
    - 1.2.1 使构建过程脚本化,搭建持续集成框架
    - 1.2.2 向构建中添加已有的自动化验证集合
    - 1.2.3 选择利于持续集成的分支策略
    - 1.2.4 建立六步提交法
- 2.持续测试
  - 2.1 Brian Marick 测试四象限
  - 2.2 测试类型
    - 2.2.1 单元测试
    - 2.2.2 组件测试
    - 2.2.3 集成测试
    - 2.2.4 验收测试
- 3.持续部署(发布)
  - 3.1 高频发布的好处
  - 3.2 低风险发布策略
    - 3.2.1 蓝绿部署
    - 3.2.2 滚动部署
    - 3.2.3 灰度发
- 4.软件配置管理
  - 4.1 核心原则
  - 4.2 制品库管理
    - 4.2.1 临时软件包库
    - 4.2.2 正式软件包库
    - 4.2.3 外部软件包库
  - 4.3 数据版本管理
- 总:部署流水线
  - 1.核心阶段
    - 基础环境准备
    - 1.1 “提交构建”阶段
    - 1.2 “UAT验收测试”阶段
    - 1.3 “部署/发布”阶段
  - 2.基础支撑服务
  - 3.需遵守的原则
- 1.监测与决策
  - 1.1 生产环境监测体系
    - 1.1.1 后台服务监测
    - 1.1.2 分发客户端监测
  - 1.3 问题处理体系
- 2.数据治理体系

工具平台篇

- (一)产品准备期
  - 1.需求及研发任务管理:禅道或Jira
- (二)产品交付期
  - 1.部署流水线:KubeSphere
  - 2.CI&CD 系统:Jenkins
  - 3.代码质量管理:SonarQube
    - 2.1 多语言支持
    - 2.2 七个维度检测代码质量
    - 2.3 执行流程
  - 4.持续测试平台:MeterSphere
  - 5.容器镜像制品库:Harbor
    - 让镜像分发更高效
    - 让镜像分发更安全
    - 优雅的资源清理和垃圾回收
    - 多种HA方案
- (三)产品运营期
   - 1.服务器及应用监控:KubeSphere + Prometheus + 公有云自带
  -  2.业务监控及运营:自研智能运营分析系统

落地评估篇

- 1.过程维度
  - 1.1 能力雷达图谱
- 2. 结果维度
  - 2.1 质量
    - 2.1.1 交付前的过程质量
    - 2.1.2 交付后的生产质量
  - 2.2 速度
    - 2.2.1 业务需求响应速度
    - 2.2.2 持续交付能力