COCHCOMO: An extension of COCOMO II for Estimating Effort for Requirement Changes during Software Development Phase

Software undergoes changes at all stages of the software development process. Accepting too many changes will cause expense and delay and rejecting the changes may cause customer dissatisfaction. One of the inputs that help the software project management to decide whether to accept or reject the changes is by having a reliable estimation of the change effort. From a software development perspective, the estimation has to take into account the inconsistent states of software artifacts across project lifecycle i.e., fully developed or partially developed. This inconsistent state requires different ways of estimation such as the fully developed artifacts may have different calculation compared to the partially developed artifacts. Many change effort estimation models have been developed and one of them is using impact analysis. One main challenge of this technique from software development perspective is that this technique is specifically used for software maintenance phase in which all software artifacts have been completely developed. This research introduces a new change effort estimation model that is able to use different estimation techniques for different states of software artifacts. The outcome of this research is a new change effort estimation model for software development phase using the extended version of the static and dynamic analysis techniques from our previous works. The significant achievements of the approach are demonstrated through an extensive experimental validation using several case scenarios. Key-Words: Software development, change impact analysis, change effort estimation, impact analysis, effort estimation

[1]  Magne Jørgensen,et al.  A framework for the analysis of software cost estimation accuracy , 2006, ISESE '06.

[2]  Nazri Kama,et al.  A Change Impact Size Estimation Approach during the Software Development , 2013, 2013 22nd Australian Software Engineering Conference.

[3]  Beizhan Wang,et al.  Estimation of software projects effort based on function point , 2009, 2009 4th International Conference on Computer Science & Education.

[4]  P. Krutchen,et al.  The Rational Unified Process: An Introduction , 2000 .

[5]  Magne Jørgensen,et al.  Reasons for software effort estimation error: impact of respondent role, information collection approach, and data analysis method , 2004, IEEE Transactions on Software Engineering.

[6]  Giuliano Antoniol,et al.  Information retrieval models for recovering traceability links between code and documentation , 2000, Proceedings 2000 International Conference on Software Maintenance.

[7]  Lori L. Pollock,et al.  Integrating Influence Mechanisms into Impact Analysis for Increased Precision , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[8]  Iman Attarzadeh,et al.  Proposing an Enhanced Artificial Neural Network Prediction Model to Improve the Accuracy in Software Effort Estimation , 2012, 2012 Fourth International Conference on Computational Intelligence, Communication Systems and Networks.

[9]  Li-Wei Chen,et al.  Integration of the grey relational analysis with genetic algorithm for software effort estimation , 2008, Eur. J. Oper. Res..

[10]  Ian Sommerville,et al.  Requirements Engineering: Processes and Techniques , 1998 .

[11]  Nazri Kama,et al.  Integrated Change Impact Analysis Approach for the Software Development Phase , 2013 .

[12]  Susan P. Williams,et al.  Requirements Volatility and Its Impact on Change Effort: Evidence-based Research in Software Development Projects Return to Published Papers , 2006 .

[13]  Mohd. Nazri Kama,et al.  Requirement Level Impact Analysis with Impact Prediction Filter , 2012 .

[14]  M. S. Saleem Basha,et al.  Analysis of Empirical Software Effort Estimation Models , 2010, ArXiv.

[15]  Keith H. Bennett,et al.  Software maintenance and evolution: a roadmap , 2000, ICSE '00.

[16]  Gregg Rothermel,et al.  Whole program path-based dynamic impact analysis , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[17]  Michael M. Richter,et al.  A flexible method for software effort estimation by analogy , 2007, Empirical Software Engineering.

[18]  Jean-Marc Desharnais,et al.  A comparison of software effort estimation techniques: Using function points with neural networks, case-based reasoning and regression models , 1997, J. Syst. Softw..

[19]  Shawn A. Bohner,et al.  Impact analysis-Towards a framework for comparison , 1993, 1993 Conference on Software Maintenance.

[20]  Da Yang,et al.  COCOMO-U: An Extension of COCOMO II for Cost Estimation with Uncertainty , 2006, SPW/ProSim.

[21]  Mark Reynolds,et al.  Predicting Class Interactions from Requirement Interactions: Evaluating a New Filtration Approach , 2010, ICSE 2010.

[22]  Shoab A. Khan,et al.  Measuring the Impact of Changing Requirements on Software Project Cost: An Empirical Investigation , 2012 .

[23]  Barry W. Boehm,et al.  A constrained regression technique for cocomo calibration , 2008, ESEM '08.

[24]  Eric A. Hansen,et al.  Breadth-first heuristic search , 2004, Artif. Intell..

[25]  Jameleddine Hassine,et al.  Change impact analysis for requirement evolution using use case maps , 2005, Eighth International Workshop on Principles of Software Evolution (IWPSE'05).

[26]  Celso Massaki Hirata,et al.  Integrating functional metrics, COCOMO II and earned value analysis for software projects using PMBoK , 2008, SAC '08.

[27]  Mark Reynolds,et al.  Impact Analysis using Class Interaction Prediction Approach , 2010, SoMeT.

[28]  Nazri Kama Change impact analysis for the software development phase: State-of-the-art , 2013 .

[29]  Shawn A. Bohner,et al.  A framework for software maintenance metrics , 1990, Proceedings. Conference on Software Maintenance 1990.

[30]  Nazri Kama,et al.  A Change Impact Analysis Approach for the Software Development Phase , 2012, 2012 19th Asia-Pacific Software Engineering Conference.