A Grounded Theory of Well Succeeded Devops
Total Page:16
File Type:pdf, Size:1020Kb
Building a Collaborative Culture: A Grounded Theory of Well Succeeded DevOps Adoption in Practice Welder Pinheiro Luz Gustavo Pinto Rodrigo Bonifácio Brazilian Federal Court of Accounts Federal University of Pará University of Brasília Brasília, Brazil Belém, Pará Brasília, Brazil [email protected] [email protected] [email protected] ABSTRACT ACM Reference Format: Background. DevOps is a set of practices and cultural values that Welder Pinheiro Luz, Gustavo Pinto, and Rodrigo Bonifácio. 2018. Building a Collaborative Culture: A Grounded Theory of Well Succeeded DevOps aims to reduce the barriers between development and operations Adoption in Practice. In ACM / IEEE International Symposium on Empirical teams. Due to its increasing interest and imprecise definitions, ex- Software Engineering and Measurement (ESEM) (ESEM ’18), October 11–12, isting research works have tried to characterize DevOps—mainly 2018, Oulu, Finland. ACM, New York, NY, USA, 11 pages. https://doi.org/- using a set of concepts and related practices. Aims. Nevertheless, little is known about the practitioners practi- tioners’ understanding about successful paths for DevOps adoption. The lack of such understanding might hinder institutions to adopt DevOps practices. Therefore, our goal here is to present a theory about DevOps adoption, highlighting the main related concepts 1 INTRODUCTION that contribute to its adoption in industry. Method. Our work builds upon Classic Grounded Theory. We DevOps is a a set of practices and cultural values that has emerged interviewed practitioners that contributed to DevOps adoption in in the software development industry. Even before the existence 15 companies from different domains and across 5 countries. We of the term — a mix of “development” and “operations” words [16] empirically evaluate our model through a case study, whose goal is — companies like Flickr [4] had already pointed out the need to to increase the maturity level of DevOps adoption at the Brazilian break the existing separation between the operations and software Federal Court of Accounts, a Brazilian Government institution. development teams. Since then, the term has appeared without a Results. This paper presents a model to improve both the under- clear delimitation and gained strength and interest in companies standing and guidance of DevOps adoption. The model increments that perceived the benefits of applying agile practices in operation the existing view of DevOps by explaining the role and motivation tasks. DevOps claimed benefits include increased organizational IT of each category (and their relationships) in the DevOps adoption performance and productivity, cost reduction in software lifecycle, process. We organize this model in terms of DevOps enabler cate- improvement in operational efficacy and efficiency, better quality gories and DevOps outcome categories. We provide evidence that col- of software products and greater business alignment between de- laboration is the core DevOps concern, contrasting with an existing velopment and operations teams [8, 20, 24]. However, the adoption wisdom that implanting specific tools to automate building, deploy- of DevOps is still a challenging task, because there is a plethora of ment, and infrastructure provisioning and management is enough to information, practices, and tools related to DevOps, but it is still un- achieve DevOps. clear how one could leverage such rich, yet scattered, information Conclusions. Altogether, our results contribute to (a) generating in an organized and structured way to properly adopt DevOps. an adequate understanding of DevOps, from the perspective of Existing research works have proposed a number of DevOps practitioners; and (b) assisting other institutions in the migration characterizations, for instance, as a set of concepts with related practices [1, 8, 10, 22, 23, 25]. Although some of these studies lever- arXiv:1809.05415v1 [cs.SE] 14 Sep 2018 path towards DevOps adoption. age qualitative approaches to gather practitioners’ perception (for CCS CONCEPTS instance, conducting interviews with them), they focus on char- acterizing DevOps, instead of providing recommendations to as- • Software and its engineering → Collaboration in software sist on DevOps adoption. Consequently, our research problem development; Software creation and management; is that the obtained DevOps characterizations allow a comprehen- KEYWORDS sive understanding of the elements that constitute DevOps, but do not provide detailed guidance to support newcomers interested in DevOps, Grounded Theory, Software Development, Software Op- adopting DevOps. As a consequence, many practical and timely erations. questions still remain open, for instance: (1) Is there any recom- ACM acknowledges that this contribution was authored or co-authored by an em- mended path to adopt DevOps? (2) Since DevOps is composed by ployee, contractor or affiliate of a national government. As such, the Government multiple elements [22], do these elements have the same relevance, retains a nonexclusive, royalty-free right to publish or reproduce this article, or to when adopting DevOps? (3) What is the role played by elements allow others to do so, for Government purposes only. ESEM ’18, October 11–12, 2018, Oulu, Finland such as measurement, sharing, and automation in a DevOps adop- © 2018 Association for Computing Machinery. tion? To answer these questions, we need a holistic understanding ACM ISBN 978-1-4503-5823-1/18/10...$15.00 of the paths followed in successful DevOps adoptions. https://doi.org/- ESEM ’18, October 11–12, 2018, Oulu, Finland W. Luz, G. Pinto, R. Bonifácio In this paper, we present a model based on the perceptions of software engineering that leverage GT predominantly use this ver- practitioners from 15 companies across five countries that success- sion [26]. We carried out our research using an existing guideline fully adopted DevOps. The model was constructed based on a clas- about how to conduct a Grounded Theory [2] research. This guide- sic Grounded Theory (GT) approach, and make clear that practi- line organizes a GT investigation in 3 steps: Open Coding Data Col- tioners interested in adopting DevOps should focus on building a lection, Selective Coding Data Analysis, and Theoretical Coding. collaborative culture, which prevents common pitfalls related to (A) Open Coding Data Collection. We started our research focusing on tooling or automation. We instantiated our model in by collecting and analyzing data from companies that claim the Brazilian Federal Court of Accounts (hereafter TCU), a Brazil- to have successfully adopted DevOps. To this end, we have ian Federal Government institution. TCU was bogged down in im- conducted a raw data analysis that searches for patterns of planting specific DevOps tools, repeating the same non-DevOps incidents to indicate concepts, and then grouped these con- problems, with conflicts between development and operations teams cepts into categories [26]. about how to divide the responsibilities related to different facets (B) Selective Coding Data Analysis. In the second step, we in the intersection between software development and software evolve the initial set of categories by comparing new inci- provisioning. When instantiated, our model helped TCU to change dents with the previous ones. Here the goal is to identify its focus to improve the collaboration between teams, and to use a “core category” [26]. The core category is responsible for the tooling to support (rather than being the goal of) the entire enabling the integration of the other categories and struc- process. The main contributions of this paper are the following: turing the results into a dense and consolidated grounded • A model, based on the classic Grounded Theory approach, theory [18]. The identification of the core category repre- that could support practitioners interested in adopting Dev- sents the end of the open-coding phase and the beginning Ops, based on evidence acquired from their industry peers; of the selective coding. In selective coding, we only consid- • An instantiation of this model in a real world, non-trivial ered the specific variables that are directly related to the context. TCU is different from the typical tech companies core category, in order to enable the production of an har- that have successfully reported the adoption of DevOps, though monic theory [7, 14]. Selective coding ends when we achieve the use of our model there have brought several benefits and a theoretical saturation, which occurs when the last few par- now DevOps practices have been disseminated at TCU. ticipants provided more evidence and examples but no new concepts or categories [12]. 2 RESEARCH METHOD (C) Theoretical Coding. After saturation, we built a theory that explains the categories and the relationships between We used Grounded Theory (GT) as the research method. GT was the categories. Additionally, we reintegrated our theory with originally proposed by Glaser and Strauss [12]. As distinguishing the existing literature, which allowed us to compare our pro- features, it has (1) the absence of clear research hypothesis upfront posal with other theories about DevOps. That is, using a and (2) limited exposure to the literature at the beginning of the Grounded Theory approach, one should only conduct a lit- research. GT is a theory-development approach (the hypothesis erature review in later stages of a research, in order to avoid emerge as a result of a investigation), in contrast with more tradi- external influences