Part 1: Introduction to object-oriented design1.Introduction to UML2. Modelling with objects3. Software development processesPart 2: Case study: Restaurant Booking System4. Restaurant system: use case model5. Restaurant system: analysis6. Restaurant system: design7. Restaurant system: implementationPart 3: UML Tutorial8. Class and object diagrams9. Interaction diagrams10. Statecharts and activity diagrams11. Constraints and OCL12. Implementation modelsPart 4: Object-oriented design in practice13. Code generation and reverse engineering 14. Principles and patternsAppendices: Reference materialA: UML notation referenceB: OCL reference C: A use case templateReferences and Further ReadingIndex