Layers and Categories
Refinement of Layer architecture
- Layer is partitioned into categories
Principles
- no circular dependencies among categories within a layer
- classes with circular dependencies belong in the same category
- category is implemented as one or more shared libraries/packages
Consequences
- simplified maintenance, porting, testing
Reference
- Pattern-Oriented Software Architecture--Buschmann, Meunier, Rohnert, Sommerlad, Stal