The name of each subsystem is unique and descriptive of the collective responsibilities of the subsystem
The subsystem description accurately reflects the collective responsibilities of the subsystem
The subsystem, through its interfaces, presents a single, logically consistent set of services
The subsystem is the responsibility of a single individual or team
The subsystem realizes at least one interface
The interfaces realized by the subsystem are clearly identified and the dependencies are correctly documented
The subsystem's dependencies on other model elements is restricted to interfaces and packages to which the subsystem has a compilation dependency
The information needed to effectively use the subsystem is documented in the subsystem facade
Other than the interfaces realized by the subsystem, the subsystem's contents are completely encapsulated
Each operation on an interface realized by the subsystem is utilized in some collaboration
Each operation on an interface realized by the subsystem is realized by a model element (or a collaboration of model elements) within the subsystem
Subsystem partitioning done in a logically consistent way across the entire model
The contents of the subsystem are fully encapsulated behind its interfaces
|