An Agile Project System Dynamics Simulation Model

An Agile Project System Dynamics Simulation Model

A. S. White (School of Science and Technology, Middlesex University, London, UK)
DOI: 10.4018/ijitsa.2014010104


This paper compares established Systems Dynamics (SD) models of software projects with models of agile development. A new minimal SIMULINK™ agile project model was created and compared to a Waterfall model of a NASA project. Results are presented to enable project managers to predict the performance of future agile project processes. The model includes the time to generate the requirements and a function to provide requirements volatility. These models show that for the same productivity and fraction of errors that are satisfactory, the overall development staff costs are similar for agile and waterfall projects and the undiscovered rework is less for the agile project. This model generally supports empirical observations that shorter time-box iterations yield a shorter overall project completion.
Article Preview


Good project management (Abdel-Hamid & Madnick, 1989) is dependent on technical production processes, time scheduling in a dynamic environment, adequacy of project managers, team members effectiveness and team interaction. Projects may be considered as a system in which demands are made (the requirements) and an internal project organisation, which is controlled to produce the software goals, while being disturbed by the external environment and customers (White, 2013). A history of the development of project management before the agile revolution is given by Garel (2013) exemplifying the standard model.

Lin and Levary (1989) describe computer aided software design using System Dynamics (SD), expert systems and a Knowledge based management system used in the design of a space station. Häberlein (2004) has outlined common structures involved in SD models while Rodrigues and Bowers (1996) have established the criteria for successful use of System Dynamics in project management and Madachy (2008) produced a core text detailing the use of SD methods in software projects.

Operation of the software development process was described by the successful System Dynamics (SD) models of Tarek Abdel-Hamid and Madnick (TAH) (1991), which set up equations relating levels (states) such as the number of reworked errors and relates them to rates such as the error detection rate or the rework rate. The TAH model was validated at the time against NASA data for a space project and the agreement was very good. SD model structure is highly non-linear with data, usually implemented as table functions, for example about how the errors in the coding are propagated and how behaviour is based on perceived values. These non-linear assumptions (Lyneis & Ford, 2007) do not allow for System Dynamics models to be used to develop scalable rules for managers to make legitimate judgements about projects of different size. In the last thirty years the software development processes used by companies has changed significantly. For example, West and Grant (2010) report up to 35% of software projects now use agile project methods. Any models of software development need therefore, to include the evolutionary project management methods of Gilb (2005) and iterative methods such as SCRUM, Rational Unified Process (RUP), eXtreme Programming (XP) and Rapid Applications Development (RAD).

Complete Article List

Search this Journal:
Open Access Articles: Forthcoming
Volume 12: 2 Issues (2019): 1 Released, 1 Forthcoming
Volume 11: 2 Issues (2018)
Volume 10: 2 Issues (2017)
Volume 9: 2 Issues (2016)
Volume 8: 2 Issues (2015)
Volume 7: 2 Issues (2014)
Volume 6: 2 Issues (2013)
Volume 5: 2 Issues (2012)
Volume 4: 2 Issues (2011)
Volume 3: 2 Issues (2010)
Volume 2: 2 Issues (2009)
Volume 1: 2 Issues (2008)
View Complete Journal Contents Listing