Object-Oriented Design in Agile (3 days)

Audience: programmers. You'll learn how to sustain a high-quality object-oriented design in your system by using TDD.

Class size: 10 to 20
Prerequisites: 6 months TDD experience
Please call +1-719-287-GEEK or  email us to schedule now or ask questions.
Pricing / Details

Object-Oriented Design in Agile is a hands-on programming course that teaches design concepts through extensive exercises. All exercises are done via the application of test-driven development.

Upon completion of this course, you will:

  • understand and be able to create core "agile" UML models
    • class models
    • sequence models
    • state models
    • collaboration models
    • activity models
  • understand the SOLID class design principles and how to apply them in code
  • be able to know when to use UML to help solve problems
  • understand how the refactoring step in TDD relates to design
  • understand how to incorporate design patterns
  • understand the concept of simple design
  • learn several of the core design patterns
  • understand how to approach OO design in the context of a software development process
  • learn how to gather and analyze requirements with use cases
  • understand the distinctions between use cases and user stories

Most importantly, you'll understand how TDD allows you to incrementally grow a system while ensuring it maintains an optimal design, one that promotes and sustains low-cost maintenance.

Currently this course is offered in Java. With reasonable advance notice, we can also deliver a comparable course for C++, C#, and Ruby.

Pricing / Details