文章转载自:https://www.qcloud.com/community/article/265626

先来一段闲话,最近我发现软件开发和去餐厅吃饭非常像,只是餐厅需要交付的不是软件,而是一桌菜,包含了前菜、主菜、甜点等等。拿去年很火的一部剧《好先生》来举个栗子:

吃饭的人就是用户;

点菜的服务员就是业务人员,负责收集用户需求进行分析;

主厨就是架构师,负责设计;

其他厨师就是研发,负责实现设计和用户需求;

试菜员就是测试,负责验证菜品是否符合标准要求;

上菜的服务员就是运维,负责将菜交付给最终用户,往往菜做的不好,做的慢,挨骂的总是上菜的人,因为运维是交付的最后环节,里用户最近,前序环节的问题都会累积到运维侧爆发。

餐厅做的好的地方在于:一道菜一道菜的上,要是等上一小时,一次性给你端一桌菜上来,而且是连桌子一起端,大家想想你的感受是啥?

DevOps的知识体系

精益管理和TPS:是DevOps的基础理论支撑,包括持续改进、准时制、消除浪费、单件流等等。持续集成实践和TPS的安灯拉绳机制很类似;
敏捷管理:主要是敏捷开发的理论和实践;
持续交付:是DevOps最重要的工程实践,自动化的核心内容;
IT服务管理:主要是讲究轻量级

DevOps是集大成者,它并不制造概念,它是讲很多理念和实践进行整合,打通端到端的过程,目标就一个服务业务,更快更好的交付业务。