Object-Oriented Development
- to manage the complexity of massive software intensive systems
Criterion for decomposition: \fbox{object}
- each object must correspond to an object or concept of the problem domain
Abstractions of the problem space
- model of reality -- promotes an understanding of the system