Abstract
A method is described for the formal evaluation of a software metric and its underlying model. This is based upon the specification of the model as an algebra and its desired behaviour as an associated axiom set. If these axioms can be proved to be invariant across the model, then the model may be considered to be valid with respect to its axioms. Where an axiom cannot be shown to be invariant this implies that either the model is anomalous or that the axiom was inappropriate. This approach is applied to a design metric based upon intermodule coupling. It is argued that this method of metric validation is a general one, and one which is capable of increasing confidence in the correctness of a metric particularly during the early stages of its development when empirical data may either be sparse or unavailable. It is intended as a practical means whereby metrics workers can eliminate pathological metrics prior to embarking upon costly and time consuming empirical validation exercises. We do not intend that this method should supplant empirically based means of validation, rather that it is complementary technique.
This work has been supported by British Telecom Research Labs., Martlesham Heath, Ipswich, IP5 7RE, England
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Boehm, B.W. ‘Software engineering economics'. IEEE Trans, on Softw. Eng. 10(1) pp4–21. 1984.
deMarco, T. ‘Controlling software projects. Management, measurement and estimation'. Yourdon Press. NY. 1982.
Ehrig, H. Mahr, B. Fundamentals of algebraic specification, EATCS, Vol.6 Springer-Verlag, 1985.
Fenton, N.E. Whitty, R.W. ‘Axiomatic approach to Software metrification through program decomposition'. Computer J. 29(4) pp330–340. 1986.
Gehani, N.H. ‘Specifications formal and informal — a case study', Softw. Pract. & Experience, 12, pp433–444, 1982.
Gilb, T. Principles of software engineering management, Addison-Wesley, 1988.
Guttag, J.V. ‘Abstract data types and the development of data structures”. CACM 20(6) pp397–404. 1977.
Guttag, J.V. Horning, J.J. ‘The ALgebraic Specification of Abstract data types', Acta Informatica, 10, pp27–52, 1978.
Henry, S. Kafura, D. Harris, K. ‘On the relationship among three software metrics’ ACM SIGMETRICS Performance Evaluation Review 10, Spring pp81–88. 1981.
Hamer, P.G. Frewin, G.D. ‘M.H. Halstead's Software Science — A Critical Examination'. Proc. IEEE 6th Int. Conf on Softw. Eng. pp197–206. 1982.
Ince, D.C. Shepperd, M.J. 'system design metrics: a review and perspective.’ Proc. IEE/BCS Conf. Software Engineering '88 July 12–15, Liverpool University, pp23–27. 1988.
Ince, D.C. Shepperd, M.J. ‘An empirical and theoretical analysis of an information flow based design metric'. Proc. European Software Eng. Conf., Warwick, England. Sept. 12–15, 1989.
Kitchenham, B.A. McDermid, J.A. ‘Software metrics and integrated project support environments'. Softw. Eng. J. 1(1) pp58–64. 1986.
Krantz, D.H. Luce, R.D. Suppes, P. Tversky, A. Foundations of measurement. Academic Press, London. 1971.
Kyburg, H.E. Theory and measurement. Cambridge Univ. Press, Cambridge, England. 1984.
Lassez, J-L. van der Knijff, D.J.J. Shepherd, J. Lassez, C. ‘A critical examination of software science'. J. of Syst. & Softw. 2, pp105–112. 1981.
Liskov, B. Guttag, J. Abstraction and specification in program development. MIT Press, MA., 1986.
McCabe, T.J. ‘A complexity measure’ IEEE Trans. on Softw. Eng. 2(4) pp308–320. 1976.
Melton, A.C. Gustafson, D.A. Bieman, J.A. Baker, J.A. ‘A mathematical perspective for software measures research’ Softw. Eng. J. 5(4) pp246–254, 1990.
Parnas, D.L. ‘On the criteria to be used in decomposing systems into modules'. CACM 15(2) pp1053–1058.
Prather, R.E. ‘An axiomatic theory of software complexity metrics'. The Comp. J. 27(4) pp340–347. 1984.
Prather, R.E. ‘On hierarchical software metrics'. Softw. Eng. J. 2(2) pp42–45. 1987.
Shepperd, M.J. ‘A critique of cyclomatic complexity as a software metric’ Softw. Eng. J. 3(2) pp30–36. 1988.
Shepperd, M.J. ‘An empirical study of design measurement'. The Softw. Eng. J. Jan. 1990.
Shepperd, M.J. System Architecture Metrics: An Evaluation, PhD Dissertation, Open University, 1991.
Stevens, S.S. ‘Measurement, psychophysics and utility’ in Churchman, C.W. Ratoosh, P. (eds.) ‘Measurement: definitions and theories'. Wiley, N.Y., 1959.
Stevens, W.P. Myers, G.J. Constantine, L.L. ‘Structured design’ IBM Sys. J. 13(2) pp115–139. 1974.
Suppes, P. Zinnes, J.L. ‘Basic measurement theory'. In Lieberman, B. (ed.) ‘Contemporary problems in statistics’ O.U.P. 1971.
Weyuker, E.J. ‘Evaluating software complexity measures'. IEEE Trans. on Softw. Eng. 14(9) pp1357–1365. 1988.
Yau, S.S. Collofello, J.S. ‘Some stability measures for software maintenance'. IEEE Trans. on Softw. Eng. 6(6) pp545–552. 1980.
Yin, B.H. Winchester, J.W. ‘The establishment and use of measures to evaluate the quality of software designs’ Proc. ACM Softw. Qual. Ass. Workshop pp45–52. 1978.
Zuse, H. Bollmann, P. ‘Software metrics: using measurement theory to describe the properties and scales of static complexity metrics'. ACM SIGPLAN Notices 24(8), pp23–33, 1989.
Zuse, H. Software Complexity. Measures and Methods, deGruyter, Berlin, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shepperd, M., Ince, D. (1991). Algebraic validation of software metrics. In: van Lamsweerde, A., Fugetta, A. (eds) ESEC '91. ESEC 1991. Lecture Notes in Computer Science, vol 550. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540547428_57
Download citation
DOI: https://doi.org/10.1007/3540547428_57
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54742-6
Online ISBN: 978-3-540-46446-4
eBook Packages: Springer Book Archive