Performance of Cost Assessment on Reusable Components for Software Development using Genetic Programming

Reusability is the quality of a piece of software, which enables it to be used again, be it partial, modified or complete. A wide range of modeling techniques have been proposed and applied for software quality predictions. Complexity and size metrics have been used to predict the number of defects in software components. Estimation of cost is important, during the process of software development. There are two main types of cost estimation approaches: algorithmic methods and non-algorithmic methods. In this work, using genetic programming which is a branch of evolutionary algorithms, a new algorithmic method is presented for software development cost estimation, using the implementation of this method; new formulas were obtained for software development cost estimation in which reusability of components is given priority. After evaluation of these formulas, the mean and standard deviation of the magnitude of relative error is better than related algorithmic methods such as COCOMO formulas.

[1]  Barry W. Boehm,et al.  Software development cost estimation approaches — A survey , 2000, Ann. Softw. Eng..

[2]  Ajay Kumar,et al.  MEASURING SOFTWARE REUSABILITY USING SVM BASED CLASSIFIER APPROACH , 2011 .

[3]  Melanie Mitchell,et al.  An introduction to genetic algorithms , 1996 .

[4]  Taghi M. Khoshgoftaar,et al.  Early Quality Prediction: A Case Study in Telecommunications , 1996, IEEE Softw..

[5]  Parvinder S. Sandhu,et al.  Automatic Reusability Appraisal of Software Components using Neuro-fuzzy Approach , 2007 .

[6]  Mayank Dave,et al.  Retrieval of Most Relevant Reusable Component Using Genetic Algorithms , 2006, Software Engineering Research and Practice.

[7]  Victor R. Basili,et al.  A validation of object oriented metrics as quality indicators , 1996 .

[8]  Hareton Leung,et al.  Software cost estimation , 2001 .

[9]  Reeta Bhardwaj,et al.  Framework for Evaluating Reusability of Procedure Oriented System using Metrics based Approach , 2010 .

[10]  Haeng-Kon Kim,et al.  Transforming a Legacy System into Components , 2006, ICCSA.

[11]  Hao Wang,et al.  Introduction to Genetic Algorithms in Electromagnetics , 1995 .

[12]  Victor R. Basili,et al.  Identifying and qualifying reusable software components , 1991, Computer.

[13]  David Hemer,et al.  Specification-based retrieval strategies for component architectures , 2005, 2005 Australian Software Engineering Conference.

[14]  J. Stender Introduction to genetic algorithms , 1994 .

[15]  Robert G. Reynolds,et al.  Identifying Reusable Software Components by Induction , 1991, Int. J. Softw. Eng. Knowl. Eng..

[16]  Ellis Horowitz,et al.  Cocomo ii model definition manual , 1998 .

[17]  K. S. Mann,et al.  A SVM Based Approach For Reusability Evaluation of Object Oriented Based Software Components , 2012 .

[18]  Rick Kazman,et al.  Requirements for integrating software architecture and reengineering models: CORUM II , 1998, Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261).

[19]  Ricardo Valerdi,et al.  Pioneers of Parametrics , 2007 .

[20]  Soo Dong Kim,et al.  COMO: a UML-based component development methodology , 1999, Proceedings Sixth Asia Pacific Software Engineering Conference (ASPEC'99) (Cat. No.PR00509).

[21]  Riccardo Poli,et al.  A Field Guide to Genetic Programming , 2008 .

[22]  Victor R. Basili,et al.  A Validation of Object-Oriented Design Metrics as Quality Indicators , 1996, IEEE Trans. Software Eng..