This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Software Measurement: A Necessary Scientific Basis
March 1994 (vol. 20 no. 3)
pp. 199-206

Software measurement, like measurement in any other discipline, must adhere to the science of measurement if it is to gain widespread acceptance and validity. The observation of some very simple, but fundamental, principles of measurement can have an extremely beneficial effect on the subject. Measurement theory is used to highlight both weaknesses and strengths of software metrics work, including work on metrics validation. We identify a problem with the well-known Weyuker properties (E.J. Weyuker, 1988), but also show that a criticism of these properties by J.C. Cherniavsky and C.H. Smith (1991) is invalid. We show that the search for general software complexity measures is doomed to failure. However, the theory does help us to define and validate measures of specific complexity attributes. Above all, we are able to view software measurement in a very wide perspective, rationalising and relating its many diverse activities.

[1] E. Adams, "Optimizing preventive service of software products."IBM Res. J., vol. 28, no. 1, pp. 2-14, 1984.
[2] A. J. Albrecht, "Measuring application development productivity," inIBM Applic. Dev. Joint SHARE/GUIDE Symp., Monterey, CA, 1979, pp. 83-92.
[3] J. Aczel, F. S. Roberts, and Z. Rosenbaum, "On scientific laws without dimensional constants,"J. Math. Anal. Applicat., vol. 119, no. 389-416, 1986.
[4] A. L. Bakeret al., "A philosophy for software measurement,"J. Syst. Software, vol. 12, no. 3, pp. 277-281, July 1990.
[5] S. Brocklehurst, P. Y. Chan, B. Littlewood, and J. Snell, "Recalibrating software reliability models,"IEEE Trans. Software Eng., vol. 16, no. 4, pp. 458-470, Apr. 1990.
[6] B. W. Boehm,Software Engineering Economics. Englewood Cliffs, NJ: Prentice-Hall, 1981.
[7] V.R. Basili and H.D. Rombach, "The Tame Project: Towards Improvement-Oriented Software Environments,"IEEE Trans. Software Eng., Vol. SE-14, No. 6, June 1988, pp. 758-773.
[8] R. E. Courtney and D. A. Gustafson, "Shotgun correlations in software measures,"IEE Software Eng. J., vol. 8, no. 1, pp. 5-13, 1993.
[9] J. C. Cherniavsky and C. H. Smith, "On weyuker's axioms for software complexity measures,"IEEE Trans. Software Eng., vol. 17, no. 6, pp. 636-638, June 1991.
[10] R. A. DeMillo and R. J. Lipton, "Software project forecasting," inSoftware Metrics, A. J. Perlis, F. G. Sayward, and M. Shaw, Eds. Cambridge, MA: MIT Press, 1981, pp. 77-89.
[11] N. E. Fenton,Software Metrics: A Rigorous Approach. London, U.K.: Chapman&Hall, 1991.
[12] N. E. Fenton, "When a software measure is not a measure,"IEE Software Eng. J., vol. 7, no. 5, pp. 357-362, May 1992.
[13] L. Finkelstein, "A review of the fundamental concepts of measurement,"Measurement, vol. 2, no. 1, pp. 25-34, 1984.
[14] N. E. Fenton and B. A. Kitchenham, "Validating software measures,"J. Software Testing, Verification&Reliability, vol. 1, no. 2, pp. 27-42, 1991.
[15] N. E. Fenton and A. Melton, "Deriving structurally based software metrics,"J. Syst. Software, vol. 12, no. 3, pp. 177-187, July 1990.
[16] J.-C. Falmagne and L. Narens, "Scales and meaningfulness of quantitative laws."Synthese, vol. 55, pp. 287-325, 1983.
[17] P.J. Fleming and J.J. Wallace, "How Not to Lie with Statistics: The Correct Way to Summarize Benchmark Results,"Comm. ACM, Vol. 29, No. 3, Mar. 1986, pp. 218-221.
[18] M. Halstead,Elements of Software Science. New York: Elsevier-North Holland, 1977.
[19] J. Inglis, "Standard software quality metrics,"AT&T Tech. J., vol. 65, no. 2, pp. 113-118, Feb. 1985.
[20] 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. 529-532, Mar. 1993.
[21] Z. Jelinski and P. B. Moranda, "Software reliability research," inStatistical Computer Performance Evaluation, W. Freiberger, Ed. New York: Academic Press, 1972, pp. 465-484.
[22] B. A. Kitchenham and B. de Neumann, "Cost modelling and estimation," inSoftware Reliability Handbook, P. Rook, Ed. New York: Elsevier Applied Science, 1990, pp. 333-376.
[23] D. Kafura and S. Henry, "Software quality metrics based on interconnectivity,"J. Syst.&Software, vol. 2, pp. 121-131, 1981.
[24] B. A. Kitchenham and K. Kansala, "Inter-item correlations among function points," inIEEE Software Metrics Symp., Baltimore, MD, 1993, pp. 11-15.
[25] D.H. Krantz, R. D. Luce, P. Suppes, and A. Tversky,Foundations of Measurement, vol. 1. New York: Academic Press, 1971.
[26] B. Kitchenham and N. Taylor, "Software project development cost estimation,"J. Syst. and Software, vol. 5, pp. 267-278, 1985.
[27] H. E. Kyburg,Theory and Measurement. Cambridge: Cambridge Univ. Press, 1984.
[28] H. F. Li and W. K. Cheung, "An empirical study of software metrics,"IEEE Trans. Software Eng., vol. SE-13, pp. 697-708, June 1987.
[29] B. Littlewood, "Forecasting software reliability," inSoftware Reliability Modeling and Identification, S. Bittanti, Ed. Berlin: Springer-Verlag, 1988, pp. 140-209.
[30] T. J. McCabe, "A complexity measure,"IEEE Trans. Software Eng., vol. SE-2, no. 4, pp. 308-320, Apr. 1976.
[31] A. C. Melton, D. A. Gustafson, J. M. Bieman, and A. L. Baker, "A mathematical perspective for software measures research,"Software Eng. J., vol. 5, no. 5, pp. 246-254, Sept. 1990.
[32] J. C. Munson and Khoshgoftaar, "The detection of fault prone modules,"IEEE Trans. Software Eng., vol. 18, no. 5, pp. 423-433, May 1992.
[33] M. Neil, "Multivariate assessment of software products,"J. Software Testing Verificationand Reliability, to appear 1992.
[34] R. E. Prather and S. G. Giulieri, "Decomposition of flowchart schemata."Comput. J., vol. 24, no. 3, pp. 258-262, 1981.
[35] G. B. Giannakis and J. M. Mendel, "Identification of non-minimum phase systems using higher-order statistics,"IEEE Trans. Acoust. Speech Signal Processing, vol. 37, pp. 360-377, 1989.
[36] F. S. Roberts,Measurement Theory with Applications to Decision Making, Utility, and the Social Sciences. Reading, MA: Addison Wesley, 1979.
[37] F. S. Roberts, "Applications of the theory of meaningfulness to psychology,"J. Math. Psychol., vol. 29, pp. 311-332, 1985.
[38] N. F. Schneidewind, "Methodology for validating software metrics,"IEEE Trans. Software Eng., vol. 18, no. 5, pp. 410-422, May 1992.
[39] J.E. Smith, "Characterizing Computer Performance with a Single Number,"Comm. ACM, Oct. 1988.
[40] P. H. Sydenham, Ed.,Handbook of Measurement Science, vol. 1. New York: J. Wiley, 1982.
[41] C. R. Symons, "Function point analysis: Difficulties and improvements,"IEEE Trans. Software Eng., vol. 14, no. 1, pp. 2-11, Jan. 1988.
[42] D. A. Troy and S. H. Zweben, "Measuring the quality of structured design,"J. Syst. Software, vol. 2, pp. 113-120, 1981.
[43] J. Tian and M. V. Zelkowitz, "A formal program complexity model and its applications,"J. Syst. Software, vol. 17, pp. 253-266, 1992.
[44] S. N. Woodfield, H. E. Dunsmore, and V. Y. Shen, "The effects of modularisation and comments on program comprehension," inProc. 5th Int. Conf. Software Eng., 1979, pp. 213-223.
[45] E. J. Weyuker, "Evaluating software complexity measures,"IEEE Trans. Software Eng., vol. 14, no. 9, pp. 1357-1365, Sept. 1988.
[46] H. Zuse,Software Complexity: Measures and Methods. Amsterdam: de Gruyter, 1990.
[47] H. Zuse, "Support of experimentation by measurement theory," inExperimental Software Engineering Issues (Lecture Notes in Computer Science, vol. 706), H. D. Rombach, V. R. Basili, and R. W. Selby, Eds. New York: Springer-Verlag, 1993, pp. 137-140.

Index Terms:
software metrics; measurement theory; programming theory; software measurement; scientific basis; measurement theory; software metrics work; metrics validation; software complexity measures; complexity attributes
Citation:
N. Fenton, "Software Measurement: A Necessary Scientific Basis," IEEE Transactions on Software Engineering, vol. 20, no. 3, pp. 199-206, March 1994, doi:10.1109/32.268921
Usage of this product signifies your acceptance of the Terms of Use.