DevOps 的出色表现
DevOps 的出色表现
DevOps 不断发展,自从2009年提出此术语以来,DevOps 的状态每年都呈指数级增长。在2019年飞速发展的过程中,各种规模和形态的组织(从企业到初创公司)在 DevOps 方面都展现了极大的热情。每个组织都有其自己的 DevOps故事,其中一些故事尚未开始,一些故事还处于婴儿期,有些故事已经成熟,有些故事已经达到顶峰。 不同于其他故事,DevOps 故事源于不断改进。
随着企业逐渐变得数字化和软件驱动,人们对 DevOps 旅程的本质和可能性有了更大的认识。不仅工程师或技术领导者,甚至商业领导者都对 DevOps 的概念、实践和应用非常感兴趣。对于实现商业成功的 DevOps 的需求已得到越来越广泛的接受。
《 2019 年 DevOps 状态报告》作为大量在线资源的提供者之一,可用于解和学习 DevOps 如何塑造跨行业的软件交付。该报告极大地总结了软件交付的趋势和挑战,它可以帮助团队研究可用于提升软件交付能力并最终成就卓越。
在此报告中,IT 性能称为软件交付能力,以区分软件交付工作与 IT 服务台和其他支撑功能。这是一个期待已久的可喜变化。我也喜欢的关键更改之一是增加了运营指标以完成软件交付周期。该报告重点介绍了五个被称为“软件交付和运营(SDO)性能指标”的度量或指标,它们侧重于系统级结果。这有助于避免软件度量标准的常见陷阱,后者常常使不同的功能相互冲突,并导致以牺牲总结果为代价的局部优化。
该报告重点介绍了软件交付能力的四个方面,如下所示:
- 部署频率 – 对于您从事的主应用程序或服务,您的组织多久部署一次代码?
- 变更的前置时间 – 对于您从事的主应用程序或服务,您的变更前置时间是多少(即,从代码提交到成功在生产中运行的代码需要多长时间)?
- 恢复服务的时间 – 对于您正在使用的主应用程序或服务,发生服务事件(例如计划外中断或服务受损)时,恢复服务通常需要多长时间?
- 变更失败率 – 对于您使用的主应用程序或服务,导致服务质量下降或随后需要修复(例如,导致服务受损、服务中断,需要修改程序、回滚、向前修复、修补程序)的变更的百分比?
然后对这四个方面进行度量,以对四个类别的性能进行排名:精英、高级、中级和低级。下表(从报告中引用)指示了各个方面的详细信息。
我强烈建议添加到此列表中的另一个方面是“团队敬业度指数”,即团队的快乐程度和参与度。我认为团队绩效与团队敬业度成正比。团队敬业度越高,即团队越快乐越敬业,他们产生的结果就越好。
报告中的另一个主题是“ J 转换曲线”。下图突出显示了自动化如何帮助绩效低下的人员提升到中等性能水平,然后测试需求、技术负担和复杂性增加导致手动操作,从而导致进度变慢。这是一个有趣且值得注意的观察。它强调了自动化并不总是答案。如果您使错误的流程自动化,那么您得到的只是错误的结果,而且更快。
无休止的改进、学习、共享和利用专业知识可将您带到高水平或精英绩效水平 – 将团队提升为精英绩效的旅程需要的不仅仅是工具。在各个级别(即团队级别、领导级别和赞助者级别)的坚持、恒心和毅力对于从低绩效水平或中绩效水平取得突破以发挥团队最大潜力至关重要。如果我们踏上精英绩效之旅,您会发现自动化、技术实践和持续改进计划是您旅途的催化剂。鉴于测试需求、技术债务和日益增加的复杂性将成为您的阻碍,我发现锚定和引擎(帆船回顾展)格式提供了一种快速而有趣的方法,可在一幅图片中(如下所示)可视化催化剂(引擎)和阻滞剂(锚定)。
行业看到了更高的精英绩效
该报告证实,精英表演者的比例几乎增加了两倍,低表现者的比例下降了,中等表演者的比例上升了。要注意的一项主要观察结果是,从低性能到中性能再到高性能的移动不是单向的。当面对复杂性增加时,团队(从 J 曲线中突出显示)可以从高位降为中级,也可以从中级降为低级。总体而言,很高兴看到向上增加。
前进之路
软件交付性能可以通过多种方式确定业务成果。 组织推动软件交付绩效的能力包括文化,技术实践,清晰的变更流程,持续交付和基于价值的成果。 这些功能并不是一蹴而就的,需要对组织 DNA 进行根本性的改变。
根据我在不同行业和公司中工作的经验,我可以确认这些软件交付能力集群不是静态的。上面列出的任何功能的更改都会对软件交付能力产生影响,您可能会发现能力集群在两个方向上都从一个级别波动到另一个级别。关键是要保持专注并通过定期将其嵌入组织的工作方式中来维持它。
参考
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Python在计算内存时应该注意的问题?
我之前的一篇文章,带大家揭晓了 Python 在给内置对象分配内存时的 5 个奇怪而有趣的小秘密。文中使用了sys.getsizeof()来计算内存,但是用这个方法计算时,可能会出现意料不到的问题。 文档中关于这个方法的介绍有两层意思: 该方法用于获取一个对象的字节大小(bytes) 它只计算直接占用的内存,而不计算对象内所引用对象的内存 也就是说,getsizeof() 并不是计算实际对象的字节大小,而是计算“占位对象”的大小。如果你想计算所有属性以及属性的属性的大小,getsizeof() 只会停留在第一层,这对于存在引用的对象,计算时就不准确。 例如列表 [1,2],getsizeof() 不会把列表内两个元素的实际大小算上,而只是计算了对它们的引用。 举一个形象的例子,我们把列表想象成一个箱子,把它存储的对象想象成一个个球,现在箱子里有两张纸条,写上了球 1 和球 2 的地址(球不在箱子里),getsizeof() 只是把整个箱子称重(含纸条),而没有根据纸条上地址,找到两个球一起称重。 1、计算的是什么? 我们先来看看列表对象的情况: 如图所示,单独计算 a 和 b 列表的结...
- 下一篇
从零开始入门 K8s | Kubernetes 网络模型进阶
作者 | 叶磊(稻农)阿里巴巴高级技术专家 本文整理自《CNCF x Alibaba 云原生技术公开课》第 25 讲,点击直达课程页面。 关注“阿里巴巴云原生”公众号,回复关键词**“入门”**,即可下载从零入门 K8s 系列文章 PPT。 导读:本文将基于之前介绍的基本网络模型,进行更深入的一些了解,希望给予读者一个更广更深的认知。首先简单回顾一下容器网络的历史沿革,剖析一下 Kubernetes 网络模型的由来;其次会剖析一个实际的实现(Flannel Hostgw),展现了数据包从容器到宿主机的变换过程;最后对于和网络息息相关的 Servcie 做了比较深入的机制和使用介绍,通过一个简单的例子说明了 Service 的工作原理。 Kubernetes 网络模型来龙去脉 容器网络发端于 Docker 的网络。Docker 使用了一个比较简单的网络模型,即内部的网桥加内部的保留 IP。这种设计的好处在于容器的网络和外部世界是解耦的,无需占用宿主机的 IP 或者宿主机的资源,完全是虚拟的。它的设计初衷是:当需要访问外部世界时,会采用 SNAT 这种方法来借用 Node 的 IP 去访问...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6