Design Metrics And Experience 2
3. The average number of instance variables per class should be less than 6. Similar in reasoning as the previous point - more instance variables indicate that one class is doing more than it should.
4. The class hierarchy nesting level should be less than 6. Start counting at the level of any framework classes that you use or the root class if you don't.
5. The number of subsystem-to-subsystem relationships should be less than the average number of class-to-class relationships within a subsystem.