In search of the origins and enduring impact of Agile software development

The Agile Manifesto is a philosophical touchpoint for all agile software development (ASD) methods. We examine the manifesto and certain agile methods in an effort to identify the major impacts of ASD. We have encountered some difficulty in delineating agile and non-agile software processes, which is partially the result of terminological confusion. It is clear from the volume of published research that ASD has made a significant contribution, and we have identified two lasting impacts: a reduction in iteration durations and a push for reduced levels of documentation. We find that the contemporary use of tooling to automate processes may not be wholly congruent with the manifesto and that many organisations may still rely on business contracts despite calls in the manifesto for greater levels of informal customer collaboration.

[1]  Steve R. Palmer,et al.  A Practical Guide to Feature-Driven Development , 2002 .

[2]  Dean Leffingwell,et al.  Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise , 2011 .

[3]  I. Cohen,et al.  ADVANCED NAVAL TACTICAL COMMAND AND CONTROL STUDY. VOLUME V. TECHNOLOGY. (PART TWO). , 1965 .

[4]  Ken Schwaber,et al.  Agile Project Management with Scrum , 1980 .

[5]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[6]  Philipp Diebold,et al.  Agile practices in practice: a mapping study , 2014, EASE '14.

[7]  Jeff Sutherland Business object design and implementation workshop , 1995, OOPSLA '95.

[8]  Ken Schwaber,et al.  SCRUM Development Process , 1997 .

[9]  Jim Highsmith,et al.  Agile Software Development Ecosystems , 2002 .

[10]  Barry W. Boehm,et al.  Empirical Findings in Agile Methods , 2002, XP/Agile Universe.

[11]  J J Connelly,et al.  MANAGEMENT REPORT: CONTROLLING PRODUCTION OF COMPLEX SOFTWARE , 1963 .

[12]  Tore Dybå,et al.  Empirical studies of agile software development: A systematic review , 2008, Inf. Softw. Technol..

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

[14]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[15]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[16]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[17]  Orit Hazzan,et al.  The Agile Manifesto , 2014 .

[18]  Sydney Abbey,et al.  What is A “Method”? , 1991 .

[19]  Corey Ladas,et al.  Scrumban: Essays on Kanban Systems for Lean Software Development , 2009 .

[20]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[21]  Torgeir Dingsøyr,et al.  A decade of agile methodologies: Towards explaining agile software development , 2012, J. Syst. Softw..

[22]  Rory V. O'Connor,et al.  Continuous software engineering—A microservices architecture perspective , 2017, J. Softw. Evol. Process..

[23]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

[24]  Rory V. O'Connor,et al.  An Investigation of Software Development Process Terminology , 2016, SPICE.

[25]  Vahid Garousi,et al.  Hybrid software and system development in practice: waterfall, scrum, and beyond , 2017, ICSSP.

[26]  Reidar Conradi,et al.  Towards a Reference Framework for Process Concepts , 1992, EWSPT.

[27]  Frank Maurer,et al.  Requirements engineering and agile software development , 2003, WET ICE 2003. Proceedings. Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2003..

[28]  Watts S. Humphrey,et al.  A discipline for software engineering , 2012, Series in software engineering.

[29]  Victor R. Basili,et al.  Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.

[30]  Brian Fitzgerald,et al.  Uncovering theories in software engineering , 2013, 2013 2nd SEMAT Workshop on a General Theory of Software Engineering (GTSE).

[31]  Andraž Cej,et al.  Agile software development with Scrum , 2010 .

[32]  Rafael Prikladnicki,et al.  Usage of SCRUM Practices within a Global Company , 2008, 2008 IEEE International Conference on Global Software Engineering.

[33]  Gary B. Wills,et al.  Historical Roots of Agile Methods: Where Did "Agile Thinking" Come From? , 2008, XP.

[34]  Rory V. O'Connor,et al.  Do We Speak the Same Language? Terminology Strategies for (Software) Engineering Environments Based on the Elcat Model - Innovative Terminology e-Learning for the Automotive Industry , 2017, EuroSPI.

[35]  Rory V. O'Connor,et al.  Exploring the Relationship between Software Process Adaptive Capability and Organisational Performance , 2015, IEEE Transactions on Software Engineering.

[36]  Mark C. Paulk,et al.  Agile Methodologies and Process Discipline , 2002 .

[37]  DingsøyrTorgeir,et al.  Empirical studies of agile software development , 2008 .

[38]  JaatunMartin Gilje,et al.  Agile Software Development , 2002, Comput. Sci. Educ..

[39]  Rory V. O'Connor,et al.  The situational factors that affect the software development process: Towards a comprehensive reference framework , 2012, Inf. Softw. Technol..

[40]  James A. Highsmith,et al.  Adaptive Software Development: A Collaborative Approach to Managing Complex Systems , 1999 .

[41]  Ivar Jacobson,et al.  Where's the Theory for Software Engineering? , 2012, IEEE Software.

[42]  Ivar Jacobson,et al.  The Road to the Unified Software Development Process , 2000 .

[43]  Tore Dybå,et al.  Overcoming Barriers to Self-Management in Software Teams , 2009, IEEE Software.

[44]  Craig Larman,et al.  Agile and Iterative Development: A Manager's Guide , 2003 .

[45]  Rory V. O'Connor,et al.  A Complexity Theory Viewpoint on the Software Development Process and Situational Context , 2016, 2016 IEEE/ACM International Conference on Software and System Processes (ICSSP).

[46]  Stavros Stavru,et al.  A critical examination of recent industrial surveys on agile method usage , 2014, J. Syst. Softw..

[47]  Daryl Kulak,et al.  Use cases: requirements in context , 2000, SOEN.