Software Quality Journal

, Volume 15, Issue 2, pp 179–212

Measuring size, complexity, and coupling of hypergraph abstractions of software: An information-theory approach

  • Edward B. Allen
  • Sampath Gottipati
  • Rajiv Govindarajan
Article

Abstract

Software development is fundamentally based on cognitive processes. Our motivating hypothesis is that amounts of various kinds of information in software artifacts may have useful statistical relationships with software-engineering attributes. This paper proposes 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.

Ordinary graphs represent relationships between pairs of nodes. We extend prior work with ordinary graphs to hypergraphs representing relationships among sets of nodes. Some software engineering abstractions, such as set-use relations for public variables, are better represented as hypergraphs than ordinary (binary) graphs.

Traditional software metrics are based on counting. In contrast, we adopt information theory as the basis for measurement, because the design decisions embodied by software are information. This paper proposes software metrics of size, complexity, and coupling based on information in the pattern of incident hyperedges. For comparison, we also define corresponding counting-based metrics.

Three exploratory case studies illustrate some of the distinctive features of the proposed metrics. The case studies found that information theory-based software metrics make distinctions that counting metrics do not, which may be relevant to software engineering quality and process. We also identify situations when information theory-based metrics are simply proportional to corresponding counting metrics.

Keywords

Software metrics Size Complexity Coupling Properties of metrics Measurement theory Information theory Entropy Excess entropy C++ case studies 

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Edward B. Allen
    • 1
  • Sampath Gottipati
    • 2
  • Rajiv Govindarajan
    • 3
  1. 1.Department of Computer Science and EngineeringBox 9637, Mississippi State UniversityMississippi State, MississippiUSA
  2. 2.Technation Software Consulting, Inc.Sioux FallsUSA
  3. 3.Peri SoftwareWarrenvilleUSA

Personalised recommendations