Software is among the most complex endeavors of the human mind; large scale
systems can have tens of millions of lines of source code. However, seldom is
complexity measured above the lowest level of code, and sometimes source code
files or low level modules. In this paper a hierarchical approach is explored
in order to find a set of metrics that can measure higher levels of
organization. These metrics are then used on a few popular free software
packages (totaling more than 25 million lines of code) to check their
efficiency and coherency.