持续交付-发布可靠软件的系统方法

一、基础篇

1.1 软件交付问题

1.1.1 奇奇怪怪的发布模式

  • 手工部署软件
  • 开发完后才向类生产环境部署
  • 通过运维团队来管理生产环境的配置

手工部署软件的缺点:成本代价高,部署环境未自动化,每次部署时会发生错误且追查难,手工部署需要文档支持而文档维护成本高

在一个产品发布过程中,需要将测试、部署和发布活动也纳入开发过程中,让它们成为开发流程的一部分。

通过运维团队来管理生产环境,需要由团队登录到生产服务器进行手工修改并记录,系统无法回滚到之前部署的某个配置,包括操作系统、应用服务器、关系型数据库等

总结:

自动化部署能够省去很多麻烦,其带来的便利性也是显而易见的,同时在一个产品发布过程中,需要将测试、部署和发布活动也纳入开发过程中,让它们成为开发流程的一部分

1.1.2 软件交付的原则

软件部署三件事:

  • 提供并管理必要的环境
  • 将应用正确版本安装在正确环境上
  • 配置应用程序,包括其所要的任何数据以及状态

软件交付的原则:

  • 为软件发布创建一个可重复且可靠的过程
  • 将测试等所有事情自动化
  • 把所有东西纳入版本控制
  • 提前并频繁地做让你感到痛苦的事(指优先解决项目中最痛苦的事)
  • 越早发现错误,修复成本越小
  • 交付团队的每个人都应该对应用程序的质量负责
  • 戴明环原则:Plan - Do - Check - Action(PDCA原则),每个改进点都应该有一个人负责跟踪

1.1.3 如何实现目标

1.2 配置管理

1.3 持续集成

1.4 测试策略的实现

原文地址:https://www.cnblogs.com/knis/p/15325072.html