Abstract
Abstractions of software may take the form of complex graphs. This chapter presents methods for measurement of hypergraph abstractions of software, using information theory, rather than counting. Even though the context of this chapter is software engineering, the measurement methods are applicable to any hypergraph. The software-metrics literature often assumes that complex software has more bugs than simple software. Thus, if one measures a software system, one can identify which modules are more likely to have bugs. This chapter presents measures of size, complexity, and coupling in terms of the amount of information, building on formal definitions of these software-metric families proposed by Briand, Morasca, and Basili. Kolmogorov complexity and its information theory-based approximations are the foundation for our measure of size. Excess entropy is the foundation for our measures of complexity and coupling. These concepts make the metrics sensitive to the configuration of hypergraph connections, and thus, may be preferred to corresponding counting metrics.
MSC2000 Primary 68N30; Secondary 94A17, 68Q30.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Allen, E.B.: Information theory and software measurement. PhD thesis, Florida Atlantic University, Boca Raton, Florida, August 1995. Advised by Taghi M. Khoshgoftaar
Allen, E.B.: Measuring graph abstractions of software: An information-theory approach. In Proceedings: Eighth IEEE symposium on software metrics, pages 182–193, Ottawa, Canada, June 2002. IEEE Computer Society
Allen, E.B., Gottipati, S., Govindarajan, R.: Measuring size, complexity, and coupling of hypergraph abstractions of software: An information-theory approach. Software Qual. J. 15(2), 179–212 (2007)
Allen, E.B., Khoshgoftaar, T.M.: Measuring coupling and cohesion: An information-theory approach. In Proceedings of the sixth international software metrics symposium, pages 119–127, Boca Raton, Florida, November 1999. IEEE Computer Society
Briand, L.C., Daly, J.W., Wüst, J.: A unified framework for cohesion measurement in object-oriented systems. Empir. Software Eng. Int. J. 3(1), 65–117 (1998)
Briand, L.C., Daly, J.W., Wüst, J.K.: A unified framework for coupling measurement in object-oriented systems. IEEE Trans. Software Eng. 25(1), 91–121 (1999)
Briand, L.C., El Emam, K., Morasca, S.: On the application of measurement theory in software engineering. Empir. Software Eng. Int. J. 1(1), 61–88 (1996). See [8, 37]
Briand, L.C., El Emam, K., Morasca, S.: Reply to “Comments to the paper: Briand, El Emam, Morasca: On the application of measurement theory in software engineering”. Empir. Software Eng. Int. J. 2(3), 317–322 (1997). See [7, 37]
Briand, L.C., Morasca, S., Basili, V.R.: Property-based software engineering measurement. IEEE Trans. Software Eng. 22(1), 68–85 (1996). See comments in [10, 28, 39]
Briand, L.C., Morasca, S., Basili, V.R.: Response to: Comments on “Property-based software engineering measurement”: Refining the additivity properties. IEEE Trans. Software Eng. 23(3), 196–197 (1997). See [9, 28]
Chaitin, G.J.: On the length of programs for computing finite binary sequences. J. ACM 13(4), 547–569 (1966)
Chaitin, G.J.: A theory of program size formally identical to information theory. J. ACM 22(3), 329–340 (1975)
Cover, T.M., Thomas, J.A.: Elements of Information Theory. Wiley, New York (1991)
Dehmer, M.: Information-theoretic concepts for the analysis of complex networks. Appl. Artif. Intell. 22(7), 684–706 (2008)
El Emam, K., Benlarbi, S., Goel, N., Rai, S.N.: The confounding effect of class size on the validity of object-oriented metrics. IEEE Trans. Software Eng. 27(7), 630–650 (2001). See [16]
Evanco, W.M.: Comments on “The confounding effect of class size on the validity of object-oriented metrics”. IEEE Trans. Software Eng. 29(7), 670–672 (2003). See [15]
Fenton, N.E., Pfleeger, S.L.: Software Metrics: A Rigorous and Practical Approach, 2nd edn. PWS Publishing, London (1997)
Halstead, M.H.: Elements of Software Science. Elsevier, New York (1977)
Khoshgoftaar, T.M., Allen, E.B.: Applications of information theory to software engineering measurement. Software Qual. J. 3(2), 79–103 (1994)
Kitchenham, B.A., Pfleeger, S.L., Fenton, N.E.: Towards a framework for software measurement validation. IEEE Trans. Software Eng. 21(12), 929–944 (1995). See comments in [21, 27]
Kitchenham, B.A., Pfleeger, S.L., Fenton, N.E.: Reply to: Comments on “Towards a framework for software measurement validation”. IEEE Trans. Software Eng. 23(3), 189 (1997). See [20, 27, 36]
Kolmogorov, A.N.: Logical basis for information theory and probability theory. IEEE Trans. Inform. Theory 14(5), 662–664 (1968)
Li, M., Vitányi, P.M.B.: Two decades of applied Kolmogorov complexity. In Proceedings of the third annual structure in complexity theory conference, pages 80–101, Washington, DC, June 1988
McCabe, T.J.: A complexity measure. IEEE Trans. Software Eng. 2(4), 308–320 (1976)
Mohanty, S.N.: Entropy metrics for software design evaluation. J. Syst. Software 2, 39–46 (1981)
Morasca, S., Briand, L.C.: Towards a theoretical framework for measuring software attributes. In Proceedings of the Fourth International Symposium on Software Metrics, pages 119–126, Albuquerque, New Mexico, November 1997. IEEE Computer Society
Morasca, S., Briand, L.C., Basili, V.R., Weyuker, E.J., Zelkowitz, M.V.: Comments on “Towards a framework for software measurement validation”. IEEE Trans. Software Eng. 23(3), 187–188 (1997). See [20, 36]
Poels, G., Dedene, G.: Comments on “Property-based software engineering measurement”: Refining the additivity properties. IEEE Trans. Software Eng. 23(3), 190–195 (1997). See [9]
Schneidewind, N.F.: Methodology for validating software metrics. IEEE Trans. Software Eng. 18(5), 410–422 (1992)
Schütt, D.: On a hypergraph oriented measure for applied computer science. In Digest of Papers: COMPCON 77 Fall, pages 295–296, Washington, DC, September 1977. IEEE Computer Society. Abstract only
Shannon, C.E., Weaver, W.: The Mathematical Theory of Communication. University of Illinois Press, Urbana, Illinois (1949)
Solomonoff, R.J.: A formal theory of inductive inference, part 1 and part 2. Inform. Contr. 7, 1–22, 224–254 (1964)
van Emden, M.H.: Hierarchical decomposition of complexity. Machine Intelligence 5, 361–380 (1970). See also [34] for details
van Emden, M.H.: An Analysis of Complexity. Number 35 in Mathematical Centre Tracts. Mathematisch Centrum, Amsterdam (1971)
Watanabe, S.: Information theoretical analysis of multivariate correlation. IBM J. Res. Dev. 4(1), 66–82 (1960)
Weyuker, E.J.: Evaluating software complexity measures. IEEE Trans. Software Eng. 14(9), 1357–1365 (1988)
Zuse, H.: Comments to the paper: Briand, Emam, Morasca: On the application of measurement theory in software engineering. Empir. Software Eng. Int. J. 2(3), 313–316 (1997). See [7, 8]
Zuse, H.: A Framework for Software Measurement. Walter de Gruyter and Co., Berlin (1997)
Zuse, H.: Reply to: “Property-based software engineering measurement”. IEEE Trans. Software Eng. 23(8), 533 (1997). See [9]
Acknowledgements
This work was supported in part by grant CCR-0098024 from the National Science Foundation. The findings and opinions in this chapter belong solely to the author and are not necessarily those of the sponsor. We thank Sampath Gottipati, Rajiv Govindarajan, Taghi M. Khoshgoftaar, and Ye Chen, who were coauthors of related work with us. We thank the Empirical Software Engineering research group at Mississippi State University for helpful discussions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Allen, E.B. (2011). Information Theory-Based Measurement of Software. In: Dehmer, M., Emmert-Streib, F., Mehler, A. (eds) Towards an Information Theory of Complex Networks. Birkhäuser, Boston, MA. https://doi.org/10.1007/978-0-8176-4904-3_12
Download citation
DOI: https://doi.org/10.1007/978-0-8176-4904-3_12
Published:
Publisher Name: Birkhäuser, Boston, MA
Print ISBN: 978-0-8176-4903-6
Online ISBN: 978-0-8176-4904-3
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)