Measuring the Entropy of Large Software Systems
Greg S. Snider · 2001
entropy, software systems, structure, metric How does one measure a large software system to determine if it is "well-structured"? This report proposes a metric for doing just that, based on the concept of entropy from information theory. A tool that automatically extracts the metric from source code was built and used to compare two large software systems (each about 500,00 lines of source code): a commercial application that has existed and been heavily modified for several decades; and a recent rewrite of the same system that aimed at producing a well-structured system. The rewritten system was shown to have much lower entropy in each of its subsystems, compared to the legacy system, as well as much lower entropy overall.