A way to measure the complexity of object-oriented software involves topological features of the code's hierarchical organization at the method, class, package, and component levels. Sangwan et al (2008) suggested that as certain software products evolve, this complexity shifts from lower to higher structural levels, or vice-versa. They studied three widely used open source software programs and showed that these structural shifts called “epochs” were present and suspected that this phenomenon was pervasive. To support or refute this assertion, 30 open source programs were studied and structural shifts in complexity were found significantly in 27 of them. In those projects where no complexity shift was evident, no refactoring had occurred. These findings further suggest that in large, open source software projects, when refactoring occurs a shifting in complexity from one level to another will occur.