  Power law distributions have been found in many natural and social phenomena,
and more recently in the source code and run-time characteristics of
Object-Oriented (OO) systems. A power law implies that small values are
extremely common, whereas large values are extremely rare. In this paper, we
identify twelve new power laws relating to the static graph structures of Java
programs. The graph structures analyzed represented different forms of OO
coupling, namely, inheritance, aggregation, interface, parameter type and
return type. Identification of these new laws provide the basis for predicting
likely features of classes in future developments. The research in this paper
ties together work in object-based coupling and World Wide Web structures.
