
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
Martin Shepperd, Chris Schofield, "Estimating Software Project Effort Using Analogies," IEEE Transactions on Software Engineering, vol. 23, no. 11, pp. 736743, November, 1997.  
BibTex  x  
@article{ 10.1109/32.637387, author = {Martin Shepperd and Chris Schofield}, title = {Estimating Software Project Effort Using Analogies}, journal ={IEEE Transactions on Software Engineering}, volume = {23}, number = {11}, issn = {00985589}, year = {1997}, pages = {736743}, doi = {http://doi.ieeecomputersociety.org/10.1109/32.637387}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Software Engineering TI  Estimating Software Project Effort Using Analogies IS  11 SN  00985589 SP736 EP743 EPD  736743 A1  Martin Shepperd, A1  Chris Schofield, PY  1997 KW  Effort prediction KW  estimation process KW  empirical investigation KW  analogy KW  casebased reasoning. VL  23 JA  IEEE Transactions on Software Engineering ER   
Abstract—Accurate project effort prediction is an important goal for the software engineering community. To date most work has focused upon building algorithmic models of effort, for example COCOMO. These can be calibrated to local environments. We describe an alternative approach to estimation based upon the use of analogies. The underlying principle is to characterize projects in terms of features (for example, the number of interfaces, the development method or the size of the functional requirements document). Completed projects are stored and then the problem becomes one of finding the most similar projects to the one for which a prediction is required. Similarity is defined as Euclidean distance in ndimensional space where n is the number of project features. Each dimension is standardized so all dimensions have equal weight. The known effort values of the nearest neighbors to the new project are then used as the basis for the prediction. The process is automated using a PCbased tool known as ANGEL. The method is validated on nine different industrial datasets (a total of 275 projects) and in all cases analogy outperforms algorithmic models based upon stepwise regression. From this work we argue that estimation by analogy is a viable technique that, at the very least, can be used by project managers to complement current estimation techniques.
[1] D.W. Aha, "CaseBased Learning Algorithms," Proc. 1991 DARPA CaseBased Reasoning Workshop. Morgan Kaufmann, 1991.
[2] A.J. Albrecht and J.R. Gaffney, "Software Function, Source Lines of Code, and Development Effort Prediction: A Software Science Validation," IEEE Trans. Software Eng., vol. 9, no. 6, pp. 639648, 1983.
[3] K. Atkinson and M.J. Shepperd, "The Use of Function Points to Find Cost Analogies," Proc. European Software Cost Modelling Meeting,Ivrea, Italy, 1994.
[4] B.W. Boehm, "Software Engineering Economics," IEEE Trans. Software Eng., vol. 10, no. 1, pp. 421, 1984.
[5] L.C. Briand, V.R. Basili, and W.M. Thomas, "A Pattern Recognition Approach for Software Engineering Data Analysis," IEEE Trans. Software Eng., vol. 18, no. 11, pp. 931942, 1992.
[6] S.D. Conte, H. E. Dunsmore, and V. Y. Shen, Software Engineering Metrics and Models, Benjamin/Cummings, Menlo Park, Calif., 1986.
[7] J.M. Desharnais, "Analyse statistique de la productivitie des projets informatique a partie de la technique des point des fonction," masters thesis, Univ. of Montreal, 1989.
[8] R.T. Hughes, "Expert Judgement as an Estimating Method," Information and Software Technology, vol. 38, no. 2, pp. 6775, 1996.
[9] D.R. Jeffery, G.C. Low, and M. Barnes, "A Comparison of Function Point Counting Techniques," IEEE Trans. Software Eng., vol. 19, no. 5, pp. 529532, 1993.
[10] R. Jeffery and J. Stathis, "Specification Based Software Sizing: An Empirical Investigation of Function Metrics," Proc. NASA Goddard Software Eng. Workshop.Greenbelt, Md., 1993.
[11] N. Karunanithi, D. Whitley, and Y.K. Malaiya, "Using Neural Networks in Reliability Prediction," IEEE Software, vol. 9, no. 4, pp. 5359, 1992.
[12] C. Kemerer, "An Empirical Validation of Software Cost Estimation Models," Comm. ACM, vol. 30, pp. 416429, May 1987.
[13] B.A. Kitchenham and K. Kansala, “InterItem Correlations Among Function Points,” Proc. First Int'l Software Metrics Symp., pp. 1114, 1993.
[14] B.A. Kitchenham and N.R. Taylor, "Software Cost Models," ICL Technology J., vol. 4, no. 3, pp. 73102, 1984.
[15] P. Kok, B.A. Kitchenham, and J. Kirakowski, "The MERMAID Approach to Software Cost Estimation," Proc. ESPRIT Technical Week, 1990.
[16] J.L. Kolodner, CaseBased Reasoning, Morgan Kaufmann, San Francisco, Calif., 1993.
[17] J.E. Matson, B.E. Barret, and J.M. Mellichamp, “Software Development Cost Estimation Using Function Points,” IEEE Trans. Software Eng., vol. 20, no. 4, pp. 275–287, Apr. 1994.
[18] Y. Miyazaki and K. Mori, "COCOMO Evaluation and Tailoring," Proc. Eighth Int'l Software. Eng. Conf.London: IEEE CS Press, 1985.
[19] Y. Miyazaki et al., "Method to Estimate Parameter Values in Software Prediction Models," Information and Software Technology, vol. 33, no. 3, pp. 239243, 1991.
[20] T. Mukhopadhyay, S.S. Vicinanza, and M.J. Prietula, "Examining the Feasibility of a CaseBased Reasoning Model for Software Effort Estimation," MIS Quarterly, vol. 16, pp. 155171, June, 1992.
[21] A. Porter and R. Selby, "Empirically Guided Software Development Using MetricBased Classification Trees," IEEE Software, no. 7, pp. 4654, 1990.
[22] A. Porter and R. Selby, "Evaluating Techniques for Generating MetricBased Classification Trees," J. Systems Software, vol. 12, pp. 209218, 1990.
[23] E. Rich and K. Knight, Artificial Intelligence, second edition. McGrawHill, 1995.
[24] B. Samson, D. Ellison, and P. Dugard, "Software Cost Estimation Using an Albus Perceptron (CMAC)," Information and Software Technology, vol. 39, nos. 1/2, 1997.
[25] C. Serluca, "An Investigation into Software Effort Estimation Using a Back Propagation Neural Network," MSc dissertation, Bournemouth Univ., 1995.
[26] M.J. Shepperd, C. Schofield, and B.A. Kitchenham, “Effort Estimation Using Analogy,” Proc. 18th Int'l Conf. Software Eng., 1996.
[27] K. Srinivasan and D. Fisher, “Machine Learning Approaches to Estimating Software Development Effort,” IEEE Trans. Software Eng., vol. 21, no. 2, pp. 126–137, Feb. 1995.
[28] G.E. Wittig and G.R. Finnie, "Using Artificial Neural Networks and Function Points to Estimate 4GL Software Development effort," Australian J. Information Systems, vol. 1, no. 2, pp. 8794, 1994.