The Organization of Software Teams in the Quest for Continuous Delivery: A Grounded Theory Approach

Context: Continuous delivery practices accelerate time to market and improve customer satisfaction. Although recent related work suggests that organizations employing continuous delivery should promote a collaborative culture among different IT teams, there is no substantial literature tackling how organizations should organize their teams to excel in continuous delivery. Objective: In this study, we investigate how organizations pursuing continuous delivery organize their development and operations teams. Method: We collected and analyzed data from interviews with 46 IT professionals, following Grounded Theory guidelines. Results: After a careful analysis, we identified four patterns of organizational structures: (1) siloed departments, (2) classical DevOps, (3) cross-functional teams, and (4) platform teams. The main contribution of this study is a taxonomy that organizes these structures along with their properties. This taxonomy is our theory for organizing software teams in the context of continuous delivery.

[1]  Gene Kim,et al.  The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win , 2013 .

[2]  Jennifer Davis,et al.  Effective DevOps: Building a Culture of Collaboration, Affinity, and Tooling at Scale , 2016 .

[3]  L. Pinfield A Field Evaluation of Perspectives on Organizational Decision Making. , 1986 .

[4]  Niall Murphy,et al.  Site Reliability Engineering: How Google Runs Production Systems , 2016 .

[5]  Paul Ralph,et al.  Toward Methodological Guidelines for Process Theories and Taxonomies in Software Engineering , 2019, IEEE Transactions on Software Engineering.

[6]  James Noble,et al.  How Much Up-Front? A Grounded theory of Agile Architecture , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[7]  S. Georgieva,et al.  Best Practices in Project Management Through a Grounded Theory Lens , 2008 .

[8]  Fabio Kon,et al.  Building a Theory of Software Teams Organization in a Continuous Delivery Context , 2020, 2020 IEEE/ACM 42nd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion).

[9]  Charlene O'Hanlon,et al.  A Conversation with Werner Vogels , 2006, ACM Queue.

[10]  Ronnie E. S. Santos,et al.  Building a Theory of Job Rotation in Software Engineering from an Instrumental Case Study , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).

[11]  Steve Neely,et al.  Continuous Delivery? Easy! Just Change Everything (Well, Maybe It Is Not That Easy) , 2013, 2013 Agile Conference.

[12]  Jan Bosch,et al.  Climbing the "Stairway to Heaven" -- A Mulitiple-Case Study Exploring Barriers in the Transition from Agile Development towards Continuous Deployment of Software , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.

[13]  Jeff Cox,et al.  The Goal: A Process of Ongoing Improvement , 1984 .

[14]  Fabio Kon,et al.  A maturity model for software startup ecosystems , 2018, Journal of Innovation and Entrepreneurship.

[15]  Andrew Begel,et al.  A Study of the Organizational Dynamics of Software Teams , 2017, 2018 IEEE/ACM 40th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP).

[16]  Lianping Chen,et al.  Continuous Delivery: Huge Benefits, but Challenges Too , 2015, IEEE Software.

[17]  Nelio Oliveira Organizational Structure, Format, Shape, Design and Architecture , 2012 .

[18]  Kief Morris,et al.  Infrastructure as Code: Managing Servers in the Cloud , 2016 .

[19]  Rodrigo Bonifácio,et al.  Adopting DevOps in the real world: A theory, a model, and a case study , 2019, J. Syst. Softw..

[20]  Liming Zhu,et al.  Adopting Continuous Delivery and Deployment: Impacts on Team Structures, Collaboration and Responsibilities , 2017, EASE.

[21]  E. Guba Criteria for assessing the trustworthiness of naturalistic inquiries , 1981 .

[22]  Harald C. Gall,et al.  Towards quality gates in continuous delivery and deployment , 2016, 2016 IEEE 24th International Conference on Program Comprehension (ICPC).

[23]  A. Huberman,et al.  Qualitative Data Analysis: A Methods Sourcebook , 1994 .

[24]  Fabio Kon,et al.  Continuous Delivery: Building Trust in a Large-Scale, Complex Government Organization , 2018, IEEE Software.

[25]  C. Brodsky The Discovery of Grounded Theory: Strategies for Qualitative Research , 1968 .

[26]  Alan Forster,et al.  Measuring performance , 2010, Canadian Medical Association Journal.

[27]  R. Duane Ireland,et al.  Resource Orchestration to Create Competitive Advantage , 2010 .

[28]  R. Yin Case Study Research: Design and Methods , 1984 .

[29]  Liming Zhu,et al.  An empirical study of architecting for continuous delivery and deployment , 2018, Empirical Software Engineering.

[30]  Per Erik Strandberg,et al.  Ethical Interviews in Software Engineering , 2019, 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM).

[31]  James Noble,et al.  Becoming Agile: A Grounded Theory of Agile Transitions in Practice , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE).

[32]  P. Schroeder The Goal: A Process of Ongoing Improvement , 1994 .

[33]  Ivan Porres,et al.  On the Impact of Mixing Responsibilities Between Devs and Ops , 2016, XP.

[34]  Mojtaba Shahin,et al.  On the Role of Software Architecture in DevOps Transformation: An Industrial Case Study , 2020, ICSSP.

[35]  Guilherme Horta Travassos,et al.  Characterizing DevOps by Hearing Multiple Voices , 2016, SBES '16.

[36]  Joost C. F. de Winter,et al.  Social desirability is the same in offline, online, and paper surveys: A meta-analysis , 2014, Comput. Hum. Behav..

[37]  Audris Mockus,et al.  Organizational volatility and its effects on software defects , 2010, FSE '10.

[38]  Fabio Kon,et al.  A Survey of DevOps Concepts and Challenges , 2020, ACM Comput. Surv..

[39]  Paul Ralph,et al.  Grounded Theory in Software Engineering Research: A Critical Review and Guidelines , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).

[40]  William C. Adams,et al.  Conducting Semi‐Structured Interviews , 2015 .

[41]  Mika Mäntylä,et al.  The highways and country roads to continuous deployment , 2015, IEEE Software.

[42]  Jason Bennett Thatcher,et al.  A Taxonomy of Software Delivery Performance Profiles: Investigating the Effects of DevOps Practices , 2020, AMCIS.

[43]  Harald C. Gall,et al.  An empirical study on principles and practices of continuous delivery and deployment , 2016, PeerJ Prepr..

[44]  K. Eisenhardt Building theories from case study research , 1989, STUDI ORGANIZZATIVI.

[45]  A. Strauss,et al.  The discovery of grounded theory: strategies for qualitative research aldine de gruyter , 1968 .

[46]  Gerard G. Meszaros,et al.  A pattern language for pattern writing , 1997 .

[47]  Paul A. Anderson,et al.  Decision Making by Objection and the Cuban Missile Crisis , 1983 .

[48]  Fabio Kon,et al.  Platform Teams: An Organizational Structure for Continuous Delivery , 2020, ICSE.