Properties of software measures

During recent years much attention has been directed towards the measurement of the properties and the complexity of software. The major goal of using software measures is to get reliable software and an objective representation of the properties of software and the software development process by numbers. Many software measures have been developed in order to determine the static complexity of single programs (intra-modular complexity) and of entire software systems (inter-modular complexity) during the phases of the software lifecycle. As a consequence of these developments many authors have discussed the properties of software measures. In this paper a measurement theory is introduced which gives conditions for the properties of measures. The properties of software measures and conditions of the use of software measures as an ordinal and ratio scale are given. As an example, these are applied to the measures of McCabe.Because composition and decomposition operations are major strategies in software development, theorems which describe the properties of software measures related to this type of operations are also presented. Properties of software measures, as required by masses in the literature, are discussed and explained with statements of measurement theory. The results show that it is possible to explain most of the required properties of software measures in the literature with conditions of measurement theory. This makes the properties of software measures during the software lifecycle and their application in practice more visible.

[1]  Robert L. Glass,et al.  Measuring software design quality , 1990 .

[2]  Maurice H. Halstead,et al.  Elements of software science , 1977 .

[3]  H. F. Li,et al.  An Empirical Study of Software Metrics , 1987, IEEE Transactions on Software Engineering.

[4]  Lem O. Ejiogu Software engineering with formal metrics , 1991 .

[5]  P. Bollmann,et al.  An Axiomatic Approach to Software Complexity Measures , 1987 .

[6]  P. Bollmann,et al.  Two axioms for evaluation measures in information retrieval , 1984, SIGIR 1984.

[7]  H. E. Dunsmore,et al.  Software engineering metrics and models , 1986 .

[8]  Horst Zuse,et al.  Software complexity: Measures and methods , 1990 .

[9]  Jaap Van Brakel,et al.  Foundations of measurement , 1983 .

[10]  Wilfred J. Hansen,et al.  Measurement of program complexity by the pair: (Cyclomatic Number, Operator Count) , 1978, SIGP.

[11]  Martin L. Shooman,et al.  The teaching of software engineering , 1983, SIGCSE '83.

[12]  Norman E. Fenton,et al.  Software Metrics: A Rigorous Approach , 1991 .

[13]  Horst Zuse,et al.  Measurement Theory and Software Measures , 1991, Formal Aspects of Measurement.

[14]  Horst Zuse Messtheoretische Analyse von statischen Softwarekomplexitätsmassen , 1985 .

[15]  Joseph K. Kearney,et al.  Software complexity measurement , 1986, CACM.

[16]  Horst Zuse,et al.  Software metrics: using measurement theory to describe the properties and scales of static software complexity metrics , 1989, SIGP.

[17]  S. Jayaprakash,et al.  Properties of Control-Flow Complexity Measures , 1991, IEEE Trans. Software Eng..

[18]  F. Roberts Measurement Theory with Applications to Decisionmaking, Utility, and the Social Sciences: Measurement Theory , 1984 .

[19]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[20]  Ronald E. Prather An Axiomatic Theory of Software Complexity Measure , 1984, Comput. J..

[21]  David A. Gustafson,et al.  Properties of Software Measures , 1991, Formal Aspects of Measurement.

[22]  Elaine J. Weyuker,et al.  Evaluating Software Complexity Measures , 2010, IEEE Trans. Software Eng..

[23]  A. Tversky,et al.  Foundations of Measurement, Vol. III: Representation, Axiomatization, and Invariance , 1990 .

[24]  Meilir Page-Jones,et al.  The practical guide to structured systems design , 1980 .

[25]  Sallie M. Henry,et al.  A Reliability Model Incorporating Software Quality Factors , 1988 .

[26]  Anneliese von Mayrhauser Software Engineering: Methods and Management , 1990 .