Intent
Refinement of Layered Architecture:
Layer is partitioned into categories.
Applicability
- no circular dependencis among categories within a layer
- classes with circular dependencies belong in the same category
- category is implemented as one or more shared libraries/packages
Structure
- [to do: diagram with categories]
Consequences
- simplified maintenance, porting, testing
Implementation
Uses in JHotDraw
- All packages of JHotDraw form categories with no circular dependencies