DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发、技术运营和质量保障(QA)部门之间的沟通、协作与整合。DevOps让开发和运维能够更加紧密地合作,DevOps也可以看作是敏捷开发到敏捷运营在整个项目周期中的运用。
日前,CSDN研发频道推出了2014年DevOps实践调查活动,据活动报告显示:有37%的开发者听说过DevOps并且很感兴趣正准备使用;有60%的用户表示只知道DevOps概念,但尚未使用;能够熟练使用的用户只占到19%。
北上广完胜
IT产业一般都呈现区域性分布的局面,在美国,硅谷便是高科技产业的胜地,许多IT专业人才都聚集在这里。而在中国,北上广则一直是从事信息/网络研发的人才聚集地。
地区分布
据调查数据来看,实行DevOps战略的大多数企业/开发人员基本聚集在这三个地方,其中北京以45%的优势排名第一位,上海、深圳、广州、杭州依次排在了第二、第三、第四、第五的位置。这也说明了,DevOps理念的实施与软件产业发展水平息息相关。
软件工程师独占鳌头
尽管DevOps还是一种新兴方法,但已有不少企业开始采用相关的概念和工具来管理大型基础设施和复杂的交付流程。执行这些复杂的流程不仅需要有技术方面的支持,还得需要相关的业务技能、沟通技能等相关技术的支持。通过调查发现,兼具这些技能的就是我们的软件开发工程师。
职业分布
执行DevOps的主角仍然是软件开发人员,占到75%,他们除了拥有技术技能外,还得精通业务流程、发布流程等技能。其次是架构师和系统运维工程师,分别占据7%和5%。
年轻开发者是主力
通过调查发现,目前运用DevOps方法的主要是从事1-3年的年轻开发者,他们容易接收新鲜事物,并且学习速度也比较快。
开发年限
1-3年的年轻开发者占到40.26%,这些开发者熟悉软件的开发和发布流程。这些人的参与能够推进DevOps的普及及发展,相信在未来5年,DevOps战略将会迎来发展高峰。紧随其后的是拥有5-10年开发经验的资深软件开发者,占到19.48%。他们除了拥有过硬的技术外,在基础设施、业务等方面都有一定的工作经验,所以,上手也会比较容易。
DevOps行业领头羊:电子商务和金融
行业划分
运维人数
运维人数
DevOps不受企业规模影响
在常人的印象中,一种新技术方法的推广更适合在小企业里执行,因为大企业更容易滋生各种小团体,类似“我们”、“他们”这样的团体存在。但通过调查数据发现,企业组织的规模化对DevOps的组织与施行影响并不大。
企业规模
虽然拥有500人以上的企业占了总数据的44%,但这并不能说明DevOps就能在大企业里得到普及,因为紧随其后的便是50人以下的小公司,占到了23%,这些公司一般都比较更容易推广DevOps,在沟通、管理、协调上都比较易于管理。
DevOps仍然比较新鲜
随着软件开发需求的日益增多、变化速度越来越快,在1990年代出现了敏捷软件开发方法。它强调人与人的交互优先于过程和工具、可以工作的软件优先于求全责备的文档、客户协作优先于合同谈判、随时应对变化优先于循规蹈矩。
但它并未改善从古至今开发与运维脱节这一现象,而DevOps理念则强调开发+运维之间的协作,可以说是敏捷开发+敏捷运维。那么这一概念在国内是否得到了普及呢?
图1
据调查数据显示,只有25%的参与者正在使用DevOps,还有37%的用户只是听说过DevOps,并且很感兴趣。然而,据InformationWeek在美国做的《2014 DevOps Survey》 报告显示:在318名参与调查的用户当中,有68%的人熟悉DevOps概念,有22%的用户熟悉DevOps的运作细节,有38%的人对DevOps有点印象。而在国内,还有31%的用户表示从未听过DevOps,这也充分说明DevOps概念在国内还未得到普及。
实践乃是真理
图2
DevOps(开发运营)意识到,开发和运营是两个独立的连续过程,两者的结合可以在企业在上市时间、用户数量、收入以及软件质量等方面带来显著提升。
但由图2可以获知,在所参与的用户当中,有60%的用户目前只知道DevOps是什么,但并未用于实践。除此之外,有19%的用户能够熟练使用,有18%的用户还处于入门阶段,但这一数字将会持续上升。
阻碍DevOps发展的“拦路虎”
据某份报告显示,DevOps的成功更多是业务技能,而非技术技能。其中必备的技能包括:业务优先性、战略、行业标准等相关知识、通信技能、当前业务流程等相关知识。在运用DevOps过程中,部署开发运营的主要障碍有:组织复杂性――人员、部门、内部独立性占到41%;缺乏对开发周期的理解占到24%。
图3
而在此次调查中,有33%的用户表示,在使用DevOps过程中缺乏工具支持。除了这一因素,最大的因素则是程序员和运维人员不同文化障碍所导致。随着DevOps理念的深入和运用的普及,相信这一障碍将会在不久后消失。也有调查者表示,其所在的企业规模不适合推行DevOps。
据调查数据显示,目前在使用DevOps过程中,使用最多的工具分别是:SVN、Git、Visual Studio、Puppet、Rational、Jenkins。
昙花一现还是未来主流?开发者有答案
在所有参与调查的用户中,有56%的用户对DevOps持看好态度,31%的用户则认为DevOps会成为未来开发趋势。大部分的用户都认为DevOps对开发有好处,有利于促进开发、运维之间的沟通,产品质量将会更满足客户需求,并且会提高开发和软件交付的速度。
对DevOps未来看法
从报告数据中我们还可以发现,越来越多的人意识到,使用DevOps给企业、产品带来的好处与实惠。DevOps战略在未来几年将会得到普及与应用。而DevOps的成功运用离不开企业领导的重视、工具的运用、开发/运维人员对业务流程的掌握、沟通与合作等因素。
各位开发者,你们对DevOps开发理念持何种态度?是否正在使用?不妨留言,让我们听听你们的声音。