The course applies a fundamental set of design patterns utilizing object- oriented principles to solve real world software’s design problems.

In this course, delegates will learn techniques to apply those patterns using object-oriented languages like C# / C++.

During the course, delegates will work on a practical lab, which demonstrate the need and the usage of design patterns.

Skills Acquired

On Completion, students will become better object-oriented programmers as well as better at object oriented analysis and design


OO methodology, OO language like C#, Java C++ etc.

Software engineers / programmers who want to upgrade their skills and deepen their understanding on OOD, and learn OO Principles and design patterns concepts.

24 Hours

Software Engineering


Certificate: No

Price: contact us for more details

Leave your details

Course Outline

UML Brief overview

  • Class Diagrams
  • Sequence Diagrams

Design Principles

  • The Open-Closed Principle
  • The Liskov Substitution Principle & Design by Contract
  • Single Responsibility Principle (optional)
  • Dependency Inversion Principle (optional)

Design Patterns

  • Factory Method
  • Singleton
  • Proxy
  • Adapter
  • Visitor
  • Template Method
  • Abstract Factory
  • Prototype
  • Command
  • Composite
  • Decorator
  • Strategy
  • Chain of Responsibility
  • Mediator (optional)
  • Observer

Software Design with Agile Methodologies

  • Overview of Agile Development
  • Introduction to Test Driven Development
  • Refactoring – Overview & demonstrations
  • Agile Development demonstration