In well developed object oriented software, functionality and data is encapsulated in objects. Objects are encapsulated in components. Components are encapsulated into systems. If this is done well the result is:
![]() | Maximal coherence |
|
![]() | Minimal interconnection | |
![]() | Solid interface definitions |
![]() | Maximum maintainability, reuse and extensibility |