• en


Practise Object Oriented Design

Created by Franziska Sauerwein

For experienced developers who want to improve their design skills in object-oriented languages. Design objects and their relationships using the principles of OO. Collaborate with a team and learn how to communicate and negotiate your ideas.

More courses Contact

Course Duration

2 days

Why attend?

  • Practise the use of the most important OO design tools
  • Use Test Driven Development, Class-Relationship-Collaborator (CRC) cards and sequence diagrams to design systems
  • Practise separating responsibilities between objects
  • Assign relationships between objects to adhere to good OO design
  • Fill your toolbelt with different approaches to software design to be able to pick the right one according to the context
  • Understand and communicate benefits and drawbacks of different desing decisions
  • Keep the design flexible and iterate, verifying your assumptions with code


  • Recapitulation of design principles
  • Using CRC cards as a design tool
  • Applying SOLID principles to object oriented design
  • Using sequence and class relationship diagrams to design
  • Using tests to drive the design
  • Structuring problems for iterative solutions
  • Verifying design assumptions with code


Software developers and architects who:

  • Have experience in developing software commercially
  • Are familiar with at least one Object Oriented Language (such as Java or C#)
  • Have basic experience in Object Oriented Design
  • Are comfortable using TDD to build software
  • Understand design principles of OO such as SOLID and the four rules of simple design


Developers must:

  • Bring their own laptops
  • Have a development environment consisting of:
    • an object oriented language
    • Their favourite IDE
    • A unit testing framework
  • Be able to create projects, build source code and run test cases in their development environment

Talk to us about your training needs