Dynamic project performance estimation by combining static estimation models with system dynamics KeungSik Choi * , Doo-Hwan Bae Department of EECS, Korea Advanced Institute of Science and Technology (KAIST), 373-1 Guseong-dong, Yuseong-gu, Daejon 305-701, Republic of Korea article info Article history: Received 5 May 2007 Received in revised form 29 February 2008 Accepted 2 March 2008 Available online 18 March 2008 Keywords: Dynamic software process simulation System dynamics Estimation model integration Dynamic project performance estimation Expert judgment technique abstract Changes in user requirements or project personnel occur frequently during project execution particularly in long-term and large-size projects. We need a tool which can estimate the effects of changing condi- tions to effectively manage the project. This paper proposes a simulation method for dynamic project performance in terms of effort, schedule, and defect density changes in a dynamic project environment by combining COCOMO II with system dynamics. We apply expert judgment technique to overcome the lack of empirical data on the effects of dynamic project environment. We develop a simulation tool (available on the authors’ website) which has model adjustment parameters to reflect experts’ estimation on project characteristics. The simulation experiment on a military application development project demonstrates that the developed model can show the behavioral characteristics of a project suffering unanticipated and uncontrolled requirements creep. This helps project managers understand interactions between project factors and proactively eval- uate and control the effects of dynamic project environment. Ó 2008 Elsevier B.V. All rights reserved. 1. Introduction Changes in user requirements, project personnel, or objectives occur frequently during project execution particularly in long-term and large-size government projects such as a military command and control system development. These changes force projects to deviate from their initial project plan (expected effort, milestone, etc.) and often cause them to fail. The unanticipated or uncon- trolled project changes interactively influence many other project factors such as developer’s morale and make it difficult to manage the projects. Unless such changes are avoidable, we need to man- age them by evaluating the impact of project environment changes and taking actions proactively. This paper proposes a simulation method for dynamic project performance in terms of effort, schedule, and defect density changes in a dynamic project environment by combining COCOMO II with system dynamics. We utilize the estimation capability of a paramet- ric estimation model which provides a statistical estimation based on a function of multiple variables, calibrated using regression with historical data [1]. Specifically, we use COCOMO II in our research be- cause it is most popular and provides an externally and internally open model, enabling users to fully understand and deal with its in- puts, outputs, internal models, and assumption [2]. We combine COCOMO II with system dynamics as follows: First, we derive a small-time incremented development rate (e.g., KSLOC or Function Point (FP)/day) of each phase to bring dynamics to COCOMO II by using the effort and schedule distribution data. Sec- ond, we integrate the effort, schedule, and defect density estima- tion models to analyze the trade-offs among them. Finally, we incorporate additional project factors to represent the effects of the dynamically changing project environment. The numerical relationships caused by the additional project factors are derived by using expert judgment technique, Delphi [3], which is useful in the absence of empirical project data. We implement a dynamic project performance estimation tool using iThink software [4] and perform a simulation experiment on a military application development project. The parameter val- ues of the simulation model are set based on authors’ experience and experts’ survey. The simulation results show that the model can reproduce the behavioral characteristics of a military project suffering a lot of creeping requirements. We do not insist that our model can exactly estimate the effects of changing project con- ditions, but argue that our model can help project managers better understand interactions between project factors and proactively control the long-term and large-size projects. At least, it can show the most significant cause–effect relationships and typically observed behavior patterns of a target domain. In the next section, we provide background on COCOMO II and sys- tem dynamics. In Section 3, we introduce the researches which ap- plied COCOMO to the dynamic software process simulation and compare them with our approach. In Section 4, we discuss the basis of using the drivers of COCOMO II in a dynamic simulation and present how to combine static estimation models of COCOMO II with system 0950-5849/$ - see front matter Ó 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.infsof.2008.03.001 * Corresponding author. Tel.: +82 42 869 3558; fax: +82 42 869 8488. E-mail addresses: kschoi@se.kaist.ac.kr (K. Choi), bae@se.kaist.ac.kr (D.-H. Bae). Information and Software Technology 51 (2009) 162–172 Contents lists available at ScienceDirect Information and Software Technology journal homepage: www.elsevier.com/locate/infsof