Granularity
Dependency Inversion Principle
Interface Segregation Principle
Liskov Substitution Principle
Open Closed Principle
Stability
UML Class
UML Collaboration
UML Sequence
UML Use Case