编辑: bingyan8 | 2015-08-28 |
工具是实现自动化的基础,在DevOps 知识体系的
5 个层面 中(如图 1),工具处于最底层,是DevOps 的基石[10,11,12] ,所以对于 DevOps 实践中的自动化支持工具的研究也 在不断地增多.而对于 DevOps 自动化支持工具的分类已经有了很多成熟的模型,Xebialabs 公司提供了 DevOps 工具周期表,StackOverdrive 公司则提供了 DevOps 工具全景图;
在学术界中 Vaasanthi R 等人提出了基于数据挖 掘技术的对 DevOps 工具进行分类的新方法[13] ,Kersten M 则对 DevOps 自动化支持工具的爆炸性增长问题提出 了自己的见解 [14] ,Farcic V 则对 DevOps 工具集中的持续集成与持续部署部分保持了关注[15,16] . 随着 DevOps 的不断发展,DevOps 观念不断获得认同,支持 DevOps 的自动化工具不断增多.虽然 DevOps 不仅仅会是停留在工具层面,但是工具之于整个 DevOps 是不可或缺甚至具有决定性作用的一部分.研究 DevOps 中的自动化工具,也会进一步推动 DevOps 的全面发展. 本文
第一节介绍了研究背景,阐述了 DevOps 文化,以及 DevOps 在中国的发展和 DevOps 与自动化支持工 价值观 原则 方法 实践 工具 黄璜 等:自动化工具对中国 DevOps 实践的影响
3 具的关系.
第二节介绍了研究方法,阐明了三个研究问题以及针对三个研究问题使用的不同的研究方法和研究 过程.
第三节对获取到数据进行定性分析,通过系统化文献评价获得了学术界最关注一些的 DevOps 自动化支 持工具,通过灰色文献评价获得了这些自动化支持工具在实践中存在的三个层次的问题,最后通过访谈得出了 企业进行 DevOps 转型的一个范例以及对 DevOps 自动化工具的一些建议.
第四节对研究的成果和不足进行讨 论.第5节对研究进行了总结和回顾.
2 研究方法 2.1 研究问题 DevOps 倡导的理念需要自动化给予支持,尤其在开发和运维方面.认识 DevOps 自动化支持工具的现状,理 解现有自动化工具在中国环境中 DevOps 实践中的问题,能够更好地促进 DevOps 在中国的发展,本文提出以下 研究问题: 研究问题一:目前 DevOps 实践中有哪些自动化工具? 该问题旨在收集目前 DevOps 实践中的自动化工具形成一个工具集合,并为后续研究提供参考.为了回答 这个问题,本文从学术文献中收集证据,从学术文献中搜索筛选并统计 DevOps 实践中的自动化工具. 研究问题二:目前的自动化工具在中国的 DevOps 实践中存在哪些问题? 该问题旨在找出中国的 DevOps 实践中自动化工具存在的问题.为了回答这个问题,本文在学术文献证据 的基础上,从部分中文博客论坛中收集灰色文献,从这些证据中抽取数据进行定性分析. 研究问题三:自动化工具在中国的 DevOps 实践中存在的问题有哪些解决办法? 该问题旨在给研究问题二中的问题提出解决方案.为了回答这个问题,本文邀请国内部分 DevOps 研究者、 DevOps 企业从业人员和 DevOps 咨询师进行访谈,对访谈内容抽取数据后进行定性分析. 2.2 研究方法 DevOps 文化诞生于技术社区,随即广泛地应用到软件企业组织中,近些年来,学术界对其的关注也逐渐增 加,但是相关的研究并不丰富,所以我们除了需要学术文献还需要使用博客等材料.本文的研究方法间的关系如 图2所示,首先采用系统化文献评价(Systematic Literature Review, SLR)对目前学术界和工业界都认可的 DevOps 实践中的自动化工具进行集合,然后通过灰色文献评价(Gray Literature Review, GLR)对上述工具集合 进行问题的总结,形成多个自动化工具在 DevOps 实践中存在的问题,最后针对这些问题,采取访谈的形式从企 业人员、咨询师、研究者三个角度获取评价,从而得出对每个问题的建议. 2.2.1 系统化文献评价 自2004 年Barbara A. Kitchenham 等人首次将系统化文献评价(SLR)引入软件工程以来[17] ,SLR 已经成为 软件工程中一种重要的研究方法[18] ,在《DevOps 自动化支持工具调研》[19] 中,李杉杉等对 DevOps 实践中的自 动化支持工具做出了系统化文献评价,对DevOps 自动化支持工具的相关文献进行了检索,本文按照报告中的 字符串((DevOps)in title or key........