This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Validation of the Component-Based Method for Software Size Estimation
October 2000 (vol. 26 no. 10)
pp. 1006-1021

Abstract—Estimation of software size is a crucial activity among the tasks of software management. Work planning and subsequent estimations of the effort required are made based on the estimate of the size of the software product. Software size can be measured in several ways: Lines of code (LOC) is a common measure and is usually one of the independent variables in equations for estimating effort. There are several methods for estimating the final LOC count of a software system in the early stages. In this article, we report the results of the validation of the component-based method (initially proposed by Verner and Tate) for software sizing. This was done through the analysis of 46 projects involving more than 100,000 LOC of a fourth-generation language. We present several conclusions concerning the predictive capabilities of the method. We observed that the component-based method behaves reasonably, although not as well as expected for “global” methods such as Mark II function points for software size prediction. The main factor observed that affects the performance is the type of component.

[1] T. Bäck, U. Hammel, and H.-P. Schwefel, “Evolutionary Computation: Comments on the History and Current State,” IEEE Trans. Evolutionary Computation, vol. 1, no.1, pp. 3–17, Apr. 1997.
[2] S. Cockcroft, “Estimating CASE Development Size from Outline Specifications,” Information and Software Technology, vol. 38, pp. 391–399, 1996.
[3] S.D. Conte, H. E. Dunsmore, and V. Y. Shen, Software Engineering Metrics and Models, Benjamin/Cummings, Menlo Park, Calif., 1986.
[4] B.E Cushing and M.B. Romney, Accounting Information Systems. fifth ed., Addison-Wesley, 1990.
[5] H. Demuth and M. Beale, Neural Network Toolbox for Matlab, The MathWorks, 1994.
[6] J.J. Dolado, “A Study of the Relationships among Albrecht and Mark II Function Points, Lines of Code, 4GL and Effort,” J. Systems and Software, vol. 37, no. 2, pp. 161–173, May 1997.
[7] A.R. Gray and S.G. MacDonell, “A Comparison of Techniques for Developing Predictive Models of Software Metrics,” Information and Software Technology, vol. 39, pp. 425–437, 1997.
[8] M.T. Hagan, H.B. Demuth, and M. Beale, Neural Network Design. PWS Publishing, 1996.
[9] J. Hakkarainen, P. Laamanen, and R. Rask, “Neural Networks in Specification Level Software Size Estimation,” Proc. 26th Ann. Hawaii Int'l Conf. System Sciences, pp. 626–634, 1993.
[10] M. Hakuta, F. Tone, and M. Ohminami, “A Software Size Estimation Model and Its Evaluation,” J. Systems and Software, vol. 37, pp. 253–263, 1997.
[11] H. Hiden, M. Willis, M. Tham, P. Turner, and G. Montague, “Non-Linear Principal Components Analysis Using Genetic Programming,” Proc GALESIA '97, pp. 302–308, Sept. 1997.
[12] W.S. Humphrey, A Discipline for Software Engineering, Addison-Wesley, Reading, Mass., 1995.
[13] D.H. Hutchens and V.R. Basili, “System Structure Analysis: Clustering with Data Bindings,” IEEE Trans. Software Eng., vol. 11, no. 8, pp. 749–757, Aug. 1985.
[14] C. Jones, Applied Software Measurement, McGraw-Hill, New York, 1991.
[15] M. Jørgensen, “Experience with the Accuracy of Software Maintenance Task Effort Prediction Models,” IEEE Trans. Software Eng., vol. 21, no. 8, pp. 674–681, Aug. 1995.
[16] J.R. Koza, Genetic Programming: On the Programming of Computers by Natural Selection. MIT Press, 1992.
[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] B. McKay, J. Elsey, M. Willis, and G. Barton, “Evolving Input-Output Models of Chemical Process Systems Using Genetic Programming,” Proc. Int'l Federation of Automatic Control '96, 1996.
[19] B. McKay, M.J. Willis, and G.W. Barton., “Steady-State Modelling of Chemical Process Systems Using Genetic Programming,” Computers and Chemical Eng., vol. 21, no. 9, pp. 981–996, 1997.
[20] Documentation SPSS for Windows. SPSS, Inc.
[21] 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.
[22] C.R. Symons, “Function Point Analysis: Difficulties and Improvements,” IEEE Trans. on Software Eng., vol. 14, no.1, Jan. 1988.
[23] C.R. Symons, Software Sizing and Estimating MKII FPA. John Wiley and Sons, 1991.
[24] G. Tate and J. Verner, “Software Sizing and Costing Models: A Survey of Empirical Validation and Comparison Studies,” J. Information Technology, vol. 5, pp. 12–26, 1990.
[25] G. Tate and J. Verner, “Approaches to Measuring Size of Application Products with CASE Tools,” Information and Software Technology, vol. 33, pp. 622–628, 1991.
[26] J. Verner and G. Tate, “Estimating Size and Effort in Fourth Generation Development,” IEEE Software, pp. 15–22, July 1988.
[27] J. Verner and G. Tate, “A Software Size Model,” IEEE Trans. Software Eng., vol. 18, no. 4, pp. 265–278, Apr. 1992.
[28] M. Willis, H. Hiden, M. Hinchliffe, B. McKay, and G. Barton, “Systems Modelling Using Genetic Programming,” Computers and Chemical Eng., vol. 21Supplement, pp. 1,161–1,166, 1997.

Index Terms:
Software size estimation, software measurement, function points, software management, linear regression, neural networks, genetic programming.
Citation:
José Javier Dolado, "A Validation of the Component-Based Method for Software Size Estimation," IEEE Transactions on Software Engineering, vol. 26, no. 10, pp. 1006-1021, Oct. 2000, doi:10.1109/32.879821
Usage of this product signifies your acceptance of the Terms of Use.