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
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
Site Search
Latest Changes
-
Articles
(2012-01-11) -
New Article, "Succeeding With and Sustaining TDD"
(2012-01-11) -
New Agile in a Flash card/blog entry, "Test Abstraction Smells"
(2012-01-11) -
New Article, "Unit Tests Are FIRST"
(2012-01-11) -
Quotes From Our Students
(2011-12-19) -
New Blog Entry, "Test-Driving a Heap-Based Priority Queue"
(2011-11-09) -
Pragmatic Software Development Solutions
(2011-11-09)

