| Phase | Main Topic | Content & Learning Activities | Objectives & Deliverables |
|---|---|---|---|
| 1 | General Introduction |
|
|
| 2 | Basic Concepts |
|
|
| 3 | Object-Oriented Analysis Process |
|
|
| 4 | UML – Unified Modeling Language |
|
|
| 5 | Object-Oriented Design |
|
|
| 6 | Design Patterns |
|
|
| 7 | Implementation and Testing |
|
|
| 8 | OOAD Project Management |
|
|
| 9 | Application Trends |
|
|
Core Mindsets for OOAD
1. Abstract to Simplify
Focus on what an object "does" rather than "how it does it." Hide internal complexity to create components that are easy to use and manage.
2. High Cohesion, Low Coupling
Design classes with clear, focused responsibilities (high cohesion) and minimize dependencies between them (low coupling) to create a flexible, easy-to-change system.
3. Model the Real World
Think of the system as a collection of interacting objects that reflect real-world entities and processes to create an intuitive design.
4. Design for Change
Always anticipate that requirements will change. Use principles like SOLID and Design Patterns to build software that can be extended and adapted without a complete rewrite.