Modeling dynamics in agile software development

  • Authors:
  • Lan Cao;Balasubramaniam Ramesh;Tarek Abdel-Hamid

  • Affiliations:
  • Old Dominion University, Norfolk, VA;Georgia State University, Atlanta, GA;Naval Postgraduate School, Monterey, CA

  • Venue:
  • ACM Transactions on Management Information Systems (TMIS)
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Changes in the business environment such as turbulent market forces, rapidly evolving system requirements, and advances in technology demand agility in the development of software systems. Though agile approaches have received wide attention, empirical research that evaluates their effectiveness and appropriateness is scarce. Further, research to-date has investigated individual practices in isolation rather than as an integrated system. Addressing these concerns, we develop a system dynamics simulation model that considers the complex interdependencies among the variety of practices used in agile development. The model is developed on the basis of an extensive review of the literature as well as quantitative and qualitative data collected from real projects in nine organizations. We present the structure of the model focusing on essential agile practices. The validity of the model is established based on extensive structural and behavioral validation tests. Insights gained from experimentation with the model answer important questions faced by development teams in implementing two unique practices used in agile development. The results suggest that due to refactoring, the cost of implementing changes to a system varies cyclically and increases during later phases of development. Delays in refactoring also increase costs and decrease development productivity. Also, the simulation shows that pair programming helps complete more tasks and at a lower cost. The systems dynamics model developed in this research can be used as a tool by IS organizations to understand and analyze the impacts of various agile development practices and project management strategies.