Issue No.04 - December (1976 vol.2)
T.J. McCabe , Department of Defense, National Security Agency
This paper describes a graph-theoretic complexity measure and illustrates how it can be used to manage and control program complexity. The paper first explains how the graph-theory concepts apply and gives an intuitive explanation of the graph concepts in programming terms. The control graphs of several actual Fortran programs are then presented to illustrate the correlation between intuitive complexity and the graph-theoretic complexity. Several properties of the graph-theoretic complexity are then proved which show, for example, that complexity is independent of physical size (adding or subtracting functional statements leaves complexity unchanged) and complexity depends only on the decision structure of a program.
testing, Basis, complexity measure, control flow, decomposition, graph theory, independence, linear, modularization, programming, reduction, software
T.J. McCabe, "A Complexity Measure", IEEE Transactions on Software Engineering, vol.2, no. 4, pp. 308-320, December 1976, doi:10.1109/TSE.1976.233837