Skip to main content
Log in

System dynamics modelling of the impact of agile practice on the quality of continuous delivery projects

  • Original Paper
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

The adoption of agile practices in software projects has been faced with scepticism by practitioners, with concerns about the actual effectiveness of these practices. Using system dynamics, this study investigates the impact of four popular agile practices, Test-Driven Development, Pair Programming, On-site Customer Involvement and Pair Testing, on the quality of continuous delivery projects. The developed system dynamic model, called the predictive continuous delivery model, was developed with an extensive use of existing literature, supported by survey, interviews, historical data and expert’s judgement. Simulation results showed all the investigated agile practices except pair programming have a significant impact on the quality of continuous delivery projects.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

References

  1. Abdel-Hamid T (1984) The dynamics of software development project management: an integrative system dynamics perspective. Ph.D. dissertation, Sloan School of Management, MIT

  2. Abdel-Hamid T, Madnick S (1991) Software project dynamics: an integrated approach, 1st edn. Prentice Hall, Englewood Cliffs

    Google Scholar 

  3. Alliance Agile (2013) Guide to agile practices. http://guide.agilealliance.org/. Accessed 20 Sept 2014

  4. Ambler S, Lines M (2012) Disciplined agile delivery: a practitioner’s guide to agile software delivery in the enterprise. IBM Press, Indianapolis

    Google Scholar 

  5. Basili VR, Shull F, Lanubile F (1999) Building knowledge through families of experiments. IEEE Trans Softw Eng 25(4):456–473

    Article  Google Scholar 

  6. Beck K (1999) Extreme programming explained: embrace change, 1st edn. Addison Wesley, Reading

    Google Scholar 

  7. Beck K (2003) Test driven development: by example, 1st edn. Addison Wesley, Reading

    Google Scholar 

  8. Beedle M et al (2001) Manifesto for agile software development. http://agilemanifesto.org/. Accessed 12 Sept 2014

  9. Boehm BW (2002) Get ready for agile methods, with care. Computer 35(1):64–69

    Article  Google Scholar 

  10. Brace I (2008) Questionnaire Design: How to Plan, Structure and Write Survey Material for Effective Market Research, 2nd edn. Kogan Page, Philadelphia, London

  11. Bradburn NM, Sudman S, Wansink B (2004) Asking questions: the definitive guide to questionnaire design—for market research, political polls, and social and health questionnaires, revised edition. Wiley, San Francisco

    Google Scholar 

  12. Brewer J, Hunter A (1989) Multi method research: a synthesis of styles. Sage, Newbury Park

    Google Scholar 

  13. Cao L (2004) Modeling dynamics of agile software development. In: Companion to the 19th annual ACM SIGPLAN conference on object-oriented programming systems, languages, and applications. OOPSLA ’04. ACM, New York pp 46–47

  14. Cao L (2010) Modeling dynamics in agile software development. Ph.D thesis, Georgia State University, Atlanta

  15. Chichakly K (2007) Modeling agile development: when is effective? In: Proceedings of 25th international conference of the system dynamics society, July 29-August 2, 2007, Boston, Massachusetts

  16. Cohn M (2009) Succeeding with agile: software development using scrum, 1st edn. Addison Wesley, Upper Saddle River

    Google Scholar 

  17. Collofello JS, Yang Z, Tvedt JD, Merrill D, Rus I (1996) Modelling software testing processes. In: Conference proceedings of the 1996 IEEE fifteenth annual international phoenix conference on computers and communications, pp 289–293

  18. Constantine LL (1995) Constantine on peopleware, 1st edn. Prentice Hall, Englewood Cliffs

    Google Scholar 

  19. Daellenbach HG (1995) Systems and decision making: a management science approach. Wiley, Chichester, England

    Google Scholar 

  20. Edwards SH (2004) Using software testing to move students from trial-and-error to reflection-in-action. In: Proceedings of the 35th SIGCSE technical symposium on computer science education. SIGCSE ’04. ACM, New York, pp 26–30

  21. Faynshteyn L, Mišić V, Mišić J (2012) Analyzing the cost and benefit of pair programming revisited. J Inf Technol Appl 2(1):14–21. http://www.jitaau.com/Public/PDF/JITA_Vol%202_Issue1.pdf. Accessed 12 Oct 2012

  22. Forrester Research Inc. (2013) Continuous delivery: a maturity assessment model, building comprehensive advantage with software through a continuous delivery process, http://info.thoughtworks.com/rs/thoughtworks2/images/Continuous%20Delivery%20_%20A%20Maturity%20Assessment%20ModelFINAL.pdf. Accessed 15 June 2014

  23. Forrester J, Senge P (1980) Tests for building confidence in system dynamics models. TIMSStud Manag Sci 14:209–228

    Google Scholar 

  24. Forrester JW (1961) Industrial dynamics. MIT Press, Cambridge

    Google Scholar 

  25. George B, Williams L (2003) An initial investigation of test driven development in industry. In: Proceedings of the 2003 ACM symposium on applied computing. SAC ’03. ACM, New York, pp 1135–1139

  26. Glaiel F, Moulton A, Manick S (2013) Agile dynamics: a system dynamics investigation of agile software development methods [working papers] composite information systems laboratory (CISL) Sloan School of Management, Massachusetts Institute of Technology, Cambridge

  27. Goldstein I (2013) Scrum shortcuts without cutting corners: agile tactics, tools and tips, 1st edn. Addison Wesley, Upper Saddle River

    Google Scholar 

  28. Hammond A, Jeffrey S (2011) Five ways to streamline release management. Forrester Research Inc., http://www.serena.com/docs/repository/solutions/Forrester-Five_Ways_to_Streamline_Release_Management-from_Serena_Software.pdf. Accessed 12 June 2014

  29. Harrell C, Ghosh B, Bowden R (2004) Simulation using pro model with CD-ROM, 2nd edn. McGraw-Hill Science/Engineering/Math, New York

    Google Scholar 

  30. Hoegl M, Weinkauf K, Gemuenden HG (2004) Inter-team coordination, project commitment, and teamwork in multi-team R&D projects: a longitudinal study. Org Sci 15(1):38–55

    Article  Google Scholar 

  31. Humble J, Farley D (2010) Continuous delivery: reliable software releases through build, test, and deployment automation. Addison Wesley, Boston

    Google Scholar 

  32. Kellner M, Raffo D (1997) Measurement issues in quantitative simulations of process models. In: Proceedings of the workshop on process modeling and empirical studies of software evolution, pp 33–37

  33. Kohl J (2004) Pair testing: how i brought developers into the test lab. Better software [Online] January 2004. http://www.kohl.ca/articles/pairtesting.pdf. Accessed 12 Oct 2014

  34. Kuppuswami S, Vivekanandan K, Ramaswamy P, Rodrigues P (2003b) The effects of individual XP practices on software development effort. SIGSOFT Softw Eng Notes 28(6):6–6

    Article  Google Scholar 

  35. Madachy RJ (2007) Softw Process Dyn, 1st edn. Wiley-Blackwell, Piscataway

    Google Scholar 

  36. Melis M, Turnu I, Cau A, Concas G (2006) Evaluating the impact of test-first programming and pair programming through software process simulation. Ph.D thesis, School in Information Engineering University of Cagliari, Italy

  37. Melnik G, Maurer F (2007) Multiple perspectives on executable acceptance test-driven development. In: Proceedings of the 8th international conference on agile processes in software engineering and extreme programming. XP’07. Springer, Berlin, pp 245–249

  38. Misic VB (2004) Extreme dynamics: towards a system dynamics model of the extreme programming software development process. In: IEE, pp 237–242

  39. Münch J (2012) Software process definition and management, 2012th edn. Springer, Heidelberg

    Book  Google Scholar 

  40. Nagappan N, Maximilien EM, Bhat T, Williams L (2008) Realizing quality improvement through test driven development: results and experiences of four industrial teams. Empir Softw Eng 13(3):289–302

    Article  Google Scholar 

  41. Russell R, Cohn S (2012) Pair testing. VSD

  42. Shore J, Warden S (2007) The art of agile development, 1st edn. O’Reilly Media, Beijing

    Google Scholar 

  43. Strauss A, Corbin J (1998) Basics of qualitative research. Sage Publications, London

    Google Scholar 

  44. Turnu I, Melis M, Cau A, Setzu A, Concas G, Mannaro K (2006) Modeling and simulation of open source development using an agile practice. J Syst Archit 52(11):610–618

    Article  Google Scholar 

  45. Ur S, Yom-Tov E, Wernick P (2007) An open source simulation model of software development and testing. In: Bin E, Ziv A, Ur S (eds) Hardware and software, verification and testing. Lecture notes in computer science. Springer, Berlin, pp 124–137

  46. Version One (2012) 7th annual state of agile development survey. http://www.versionone.com/pdf/7th-Annual-State-of-Agile-Development-Survey.pdf. Accessed 27 July 2014

  47. Weinberg GM (1998) The psychology of computer programming silver, Anniversary edn. Dorset House Publishing, New York

    Google Scholar 

  48. Wernick P, Hall T (2004) The impact of using pair programming on system evolution a simulation-based study. In: Proceedings 20th IEEE international conference on software maintenance, pp 422–426

  49. Williams L (2000) The collaborative software process. PhD thesis, University of Utah

  50. Williams L Kessler R (2003) Pair Programming Illuminated, Addison-Wesley, Boston, MA

  51. Williams L, Kessler RR, Cunningham W, Jeffries R (2000) Strengthening the case for pair programming. IEEE Softw 17(4):19–25

    Article  Google Scholar 

  52. Williams M, Packlick J, Bellubbi R, Coburn S (2007) How We Made Onsite Customer Work - An Extreme Success Story. In: Agile Conference (AGILE), IEEE Computer Society Washington, DC, USA, 2007. pp 334–338

  53. Wojciechowski A, Wesolowski M, Complak W (2010) Experimental evaluation of ’On-Site Customer’ XP practice on quality of software and team effectiveness. In: Meersman R, Dillon T, Herreroeds P (eds) On the move to meaningful internet systems: OTM 2010 workshops. Lecture notes in computer science, Springer, Berlin, pp 269–278

  54. Yong Y, Zhou B (2009) Evaluating extreme programming effect through system dynamics modeling. In: International conference on computational intelligence and software engineering. CiSE 2009, pp 1–4

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Olumide Akerele.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Akerele, O. System dynamics modelling of the impact of agile practice on the quality of continuous delivery projects. Innovations Syst Softw Eng 14, 183–208 (2018). https://doi.org/10.1007/s11334-017-0296-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-017-0296-z

Keywords

Navigation