4个维度,实例化DevOps原则
不可变容器指的是软件产品被封装到一个类似docker这样的容器内上线,且上线后不可手工修改其配置。如果一定要修改,也只能通过部署流水线把要修改的内容重新打包成另一个新的不可变容器来上线。这样做的好处是能够实现部署和发布自动化以及进行更好的版本控制,消除线上手工配置所带来的无法审计的风险。这一实践是本文写作时期的推荐实践,该实践今后还会继续演进。 3. 流程管理层实践Improvement Kata和Coaching Kata进行流程持续改进 高于 用结果导向进行管理佛家说:“菩萨畏因,众生畏果”。传统按结果导向进行管理的一个弊病,就是团队成员会把注意力放到结果上,而不是产生这样结果的原因——即过程改进之上。这样的后果就是,大家会把精力放到如何让报表好看,而不是真正地提高团队成员的持续改进能力来真正达到所期望的结果。 企业管理层可以参考《丰田套路》一书来带头实践Improvement Kata和Coaching Kata,让企业产生持续改进的文化。其中,Improvement Kata是通过一系列“确定目标—>考察现状—>识别困难—>制定方案—>观察成效”的PDCA反馈环来做持续改进;Coaching Kata是通过导师“一对一带学徒”的方式来让企业全员掌握持续改进的方法。 全局优化而非局部优化由于大部分按职能组织团队的企业内部都存在部门割据的问题,导致大家都在做本职能部门内的局部优化,而没人做部门间的整体优化。有些部门间的扯皮时间甚至长达数月,严重影响了产品的交付。这提醒我们,全局优化来提高企业整体竞争力,才是各个部门赖以生存的保障。 单件流高于库存单件流指的是,正在制作的产品的各个模块,能从最初的对其增加价值的加工步骤,直接传递到下一个增值加工步骤进行加工,并最终被传递到客户手中,在这个过程中,各个步骤之间没有发生等待或者排队的现象。而如果在各个步骤的传递过程中发生了等待或排队,那就等同于建立了库存。 软件开发中常见的库存包括排队等候开发的需求、排队等候测试的代码、排队等待修复的缺陷和排队等待上线的产品特性;隐藏很深的库存可能由诸如那些有固定期限(比如每月一次)的“用户验收测试”的流程造成——月初几天就开发测试完毕的产品特性必须要被存放近一个月,等到月底“用户验收测试”后才能继续往下游走。软件开发中的上述库存就是让项目延期的最大原因。而企业如果能做到单件流,那么就相当于消灭了库存,让价值在不同环节之间流动得最快,进而实现了前文所提到的全局优化。 4. 工具自动化高于手工(编辑:西安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |