扫码阅读
手机扫码阅读
企业如何落地DevOps(下)
277 2024-02-24
版本和配置管理
变更检查:原则上每次配置和版本的变更,无论是代码合并,还是配置信息的变更甚至只是简单修改一个字段,都需要进行检查,评估影响范围。 权限管理:权限管理可以看做是变更检查的一个补充,很多时候由于权限分配的松散,导致了很多变更被忽视或者无意掩盖了,进而导致了很多有意思的线上故障。
部署和环境管理
服务监控:大多数团队只关注生产环境的服务可用性,有完善的监控,测试环境的服务可用性反而不太重视,无形中花费了很多时间来排查环境引起的各种问题,降低了研发过程效率。 可控发布:测试环境的发布往往比较随意,很多时候一轮测试还未完成,为了验证所谓的bug修复,就发布一次。对于像微服务这种复杂的系统架构,其实这样做很容易埋下风险。更好的方式是发布的可控,比如:设置发布时间窗口/指定发布权限/发布信息同步/DDL变更的统一等。
持续交付流水线
代码提交后并没有触发完整的流水线; 流水线很多时候并没有触发自动化测试,而是通知后手动执行自动化测试; 自动化测试之后发现了问题,往往需要很长时间去排查到底是哪里出现了问题;
完整的动作:从提交、打包编译、配置变更、服务部署到测试执行、结果反馈,是否是连贯快速的。 及时的响应:出了问题能否及时响应,是否有丰富的问题应对策略(案例沉淀、知识库)。
可视化持续度量
前置时间:需求从提出到上线的时间周期,体现了研发团队的交付速率,用来计算交付吞吐量。 增值活动时间和不增值活动时间:减少无意义的会议、频繁的需求变更、不断reopen的bug等。 完成度和准确度:有多少工作因为质量不符合要求而被打回,比如一句话需求、冒烟测试不通过。
在保障交付质量的前提下提高软件研发交付效率; 高效的交付支撑了业务目标更快达成,技术和业务互相促进闭环; 业务目标达成更有利于企业员工自身跟着平台成长而获利和成长;
原文链接:
http://mp.weixin.qq.com/s?__biz=Mzg2NDAwMjM1NQ==&mid=2247487303&idx=1&sn=b61dac099ede8232eae204305ef2dc2e&chksm=ce71471bf906ce0d83db20e34b693d10c5e51cd0c87e93941aada444c062f39e2e04ad7e4743#rd
老张的求知思考世界的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线