Dependency Management in Large-Scale Agile: A Case Study of DevOps Teams

Managing dependencies between teams and within teams is critical when running large-scale agile projects. In large-scale software development, work is carried out simultaneously by many developers and development teams. Results are delivered frequently and iteratively, which requires management of dependencies on both the project and team level. This study explores coordination mechanisms in agile DevOps teams in a large-scale project and how the mechanisms address different types of dependencies. We conducted a case study where we observed 38 scheduled meetings and interviewed members of five DevOps teams and two teams supporting the DevOps teams. By using a dependency taxonomy, we identified 20 coordination mechanisms (eleven synchronization activities and nine synchronization artifacts). Eight of these mechanisms seem essential for coordination in large-scale projects because they addressed more than four types of dependencies. The main implication is that project management needs to combine many practices handling all the dependencies in large-scale projects.

[1]  Jan Pries-Heje,et al.  Why Scrum Works: A Case Study from an Agile Distributed Project in Denmark and India , 2011, 2011 AGILE Conference.

[2]  Torgeir Dingsøyr,et al.  What Is Large in Large-Scale? A Taxonomy of Scale for Agile Software Development , 2014, PROFES.

[3]  Kevin Crowston,et al.  A coordination theory approach to process description and redesign , 1998 .

[4]  Christine Nadel,et al.  Case Study Research Design And Methods , 2016 .

[5]  Jonathan Grudin,et al.  Understanding dependencies: a study of the coordination challenges in software development , 1996 .

[6]  Beverley G. Hope,et al.  Author's Personal Copy the Journal of Systems and Software Coordination in Co-located Agile Software Development Projects , 2022 .

[7]  L. Sproull,et al.  Coordinating Expertise in Software Development Teams , 2000 .

[8]  Knut H. Rolland,et al.  Tailoring Agile in the Large: Experience and Reflections from a Large-Scale Agile Software Development Project , 2016, XP.

[9]  Tore Dybå,et al.  A teamwork model for understanding an agile team: A case study of a Scrum project , 2010, Inf. Softw. Technol..

[10]  Hans-Peter Fröschle DevOps , 2017, HMD Praxis der Wirtschaftsinformatik.

[11]  Pekka Abrahamsson,et al.  The impact of agile practices on communication in software development , 2008, Empirical Software Engineering.

[12]  P. Eskerod,et al.  Project portfolio management - There's more to it than what management enacts , 2008 .

[13]  Viktoria Stray,et al.  Planned and unplanned meetings in large-scale projects , 2018, XP Companion.

[14]  Viktoria Stray,et al.  Daily Stand-Up Meetings: Start Breaking the Rules , 2018, IEEE Software.

[15]  Klaas-Jan Stol,et al.  Continuous software engineering: A roadmap and agenda , 2017, J. Syst. Softw..

[16]  Torgeir Dingsøyr,et al.  Exploring software development at the very large-scale: a revelatory case study and research agenda for agile method adaptation , 2017, Empirical Software Engineering.

[17]  Torgeir Dingsøyr,et al.  Coordinating Knowledge Work in Multi-Team Programs: Findings from a Large-Scale Agile Development Program , 2018, ArXiv.

[18]  Ramtin Jabbari,et al.  Towards a benefits dependency network for DevOps based on a systematic literature review , 2018, J. Softw. Evol. Process..

[19]  Diane E. Strode,et al.  A dependency taxonomy for agile software development projects , 2016, Inf. Syst. Frontiers.

[20]  Jan Bosch,et al.  Towards DevOps in the Embedded Systems Domain: Why is It So Hard? , 2016, 2016 49th Hawaii International Conference on System Sciences (HICSS).

[21]  Pekka Abrahamsson,et al.  Agile Software Development Methods: Review and Analysis , 2017, ArXiv.

[22]  Alexander Scheerer,et al.  Coordination in Large-Scale Agile Software Development: A Multiteam Systems Perspective , 2014, 2014 47th Hawaii International Conference on System Sciences.

[23]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.

[24]  Torgeir Dingsøyr,et al.  Emerging research themes and updated research agenda for large-scale agile development: a summary of the 5th international workshop at XP2017 , 2017, XP Workshops.

[25]  Casper Lassenius,et al.  Inter-team coordination in large-scale globally distributed scrum: Do Scrum-of-Scrums really work? , 2012, Proceedings of the 2012 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement.

[26]  Viktoria Stray,et al.  A Taxonomy of Inter-Team Coordination Mechanisms in Large-Scale Agile , 2017, IEEE Transactions on Software Engineering.

[27]  Matthew B. Miles,et al.  Qualitative Data Analysis: An Expanded Sourcebook , 1994 .

[28]  Barry W. Boehm,et al.  Management challenges to implementing agile processes in traditional development organizations , 2005, IEEE Software.

[29]  A. V. D. Ven,et al.  Determinants of Coordination Modes within Organizations , 1976 .

[30]  Alexander Scheerer,et al.  Coordination Challenges in Large-Scale Software Development: A Case Study of Planning Misalignment in Hybrid Settings , 2018, IEEE Transactions on Software Engineering.