1.1 OOP design: Classic or classical?1.1.1 The design phase1.1.2 UML 1011.1.3 Explaining each piece of the class diagram1.1.4 The implementation phase1.2 Sources of complexity1.2.1 Many relations between classes1.2.2 Unpredictable code behavior1.2.3 Not trivial data serialization1.2.4 Complex class hierarchiesSummary