Climbing the "Stairway to Heaven": Evolving From Agile Development to Continuous Deployment of Software

Software-intensive systems companies need to evolve their practices continuously in response to competitive pressures. Based on a conceptual model presented as the “Stairway to Heaven,” we present the transition process when moving from traditional development towards continuous deployment of software. Our research confirms that the transition towards agile development requires a careful introduction of agile practices into the organization, a shift to small development teams, and a focus on features rather than components. The transition towards continuous integration requires an automated test suite, a main branch to which code is continually delivered, and a modularized architecture. The move towards continuous deployment requires internal and external stakeholders to be fully involved and a proactive customer with whom to explore the concept. Finally, the transition towards R&D as an innovation system requires careful ecosystem management in order to align internal business strategies with the dynamics of a competitive business ecosystem. Characteristic for all transitions is the critical alignment of internal and external processes in order to fully maximize the benefits as provided by the business ecosystem of which a company is part.

[1]  Ian Sommerville,et al.  Software engineering (6th ed.) , 2001 .

[2]  Jan Bosch,et al.  ESAO: A Holistic Ecosystem-Driven Analysis Model , 2014, ICSOB.

[3]  Alistair Cockburn,et al.  Agile Software Development: The Business of Innovation , 2001, Computer.

[4]  Geoff Walsham,et al.  Interpretive case studies in IS research: nature and method , 1995 .

[5]  Craig Larman,et al.  Scaling Lean & Agile Development: Thinking and Organizational Tools for Large-Scale Scrum , 2008 .

[6]  Alan Shalloway,et al.  Lean-Agile Software Development: Achieving Enterprise Agility , 2009 .

[7]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[8]  Tony Gorschek,et al.  Social networks in software process improvement , 2010 .

[9]  Jan Bosch,et al.  Building Products as Innovation Experiment Systems , 2012, ICSOB.

[10]  Jez Humble,et al.  Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation , 2010 .

[11]  Kari Känsälä,et al.  Software Product Family Evaluation , 2004, SPLC.

[12]  Laurie A. Williams,et al.  Agile software development: it's about feedback and change , 2003, Computer.

[13]  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.

[14]  Robert L. Nord,et al.  A general model of software architecture design derived from five industrial approaches , 2007, J. Syst. Softw..

[15]  J. F. Moore,et al.  Predators and prey: a new ecology of competition. , 1993, Harvard business review.