The many faces of inheritance: a taxonomy of taxonomy
Bertrand Meyer · Computer · 1996
One of the most important considerations in constructing object-oriented software is the methodology of inheritance: how to use this mechanism well. The paper presents a taxonomy comprising twelve kinds of inheritance usage grouped into three broad categories: model inheritance; software inheritance; and variation inheritance.