Emergent Design

Course Tabs

Course Overview

We teach high-quality object-oriented design using design patterns in our course, Agile Software Development with Design Patterns. We also teach good design as part of our course, Sustainable Test-Driven Development. People might consider these two approaches to be in opposition to each other having come from different eras in the history of our industry. We disagree. We believe there is tremendous synergy between them and in fact find great value in teaching them together through our course, Emergent Design.

This course combines Design Patterns Thinking and Sustainable Test-Driven Development into a powerful five-day course.

Course Objectives: 

This course is conducted over five days. In the first three days, we focus on the qualities. principles, and practices of good object-oriented analysis and design using the patterns as guidance. Exercises are done at tables and whiteboards. In the final two days, we teach the sustainable process of TDD through lecture and hands-on coding exercises. Through this process the students learn how TDD leads to patterns, how patterns lead to testability, and how they, together, empower the team to create high-quality software in an efficient and sustainable manner.

Target Audience:

Primary Audience: 

Experienced developers, testers, designers, architects, technical leads, and those who manage development teams. They should have basic object-oriented experience.

Secondary Audience: 
Less experienced developers will find value and should be included if part of an experienced team. We can provide pre-course material to bring them up to speed.
Learning Objectives: 

A the end of this course, you will understand the following:

  • What patterns are
  • How patterns lead to testability
  • How TDD leads to patterns
  • How patterns and TDD work together to empower teams
  • How patterns and TDD combine to realize high-quality software efficiently and sustainably
Course Description PDF: 

Any Certifications/PDUs


Maximum Number in Class

24 (Approximate. Depends upon make up and experience level of team.)
Room Setup and Equipment Needed

A laptop or desktop computer with XUnit installed and an IDE with which they are comfortable working is needed for every pair of participants. Students will sit in pairs, and so tables to accommodate this are needed. Whiteboard and Projector, Flip Chart