Where & When
Bellevue , WA
Mon, Aug 4
- Wed, Aug 6 '08
9:00 am - 5:00 pm
Pricing
$1600/person
Early Bird Discount
Register at least 4 weeks prior to the course and receive
$100 off
Special Pricing
Get 20% off on Both Courses if you also Register for the
Advanced Software Design Course, Aug 7-8, in Bellevue for a combined total of $2200
Instructor
Design Patterns Explained
Abstract
Design Patterns Explained teaches participants a style of analysis and design that facilitates Agile practices. We do this by illustrating the use of abstract coupling, patterns, testability, emergent (just-in-time) design, and emphasizing the critical qualities, principles, and practices that make flexible designs possible.
For development organizations to thrive in an Agile, iterative process that embraces change, it is critical that the systems they create are not vulnerable to changing requirements, business priorities, technologies, market pressures, etc.
This course answers the key questions in modern development. How does one design systems that have changeability as a fundamental quality? And, how can the team communicate effectively when a design is in a constant state of change?
Detailed Description
This course uses patterns in a new way. Patterns are thought of as part of the old “up-front design” style of development, but we now realize that they are more powerful in an Agile environment, where much is assumed to be unknown at the beginning of a project, and where the design is expected to emerge through the iterative process.
Patterns are examples of following the wisdom that guides good design. They emphasize the importance of creating encapsulation and using delegation to segregate systems to protect them from cascading change. When they were first suggested, computers were fundamentally slower, and technology resources (memory, disk space) were far more expensive than they are today. The style of design suggested by patterns is far more realistic now.
Patterns are far more useful as collection of best practices, rather than simply “reusable solutions”. Therefore, participants will learn how to use patterns as part of a thought process that guides analysis, using “pattern orientation” as a way to understand an ever-changing problem domain.
Participants will also learn to consider patterns in the context of testability (specifically unit testing), commonality-variability analysis, and a technique called “refactoring to the open-closed”. By combining these techniques into an overall paradigm of design, we enable developers and teams to move a design forward confidently, even when there is an expectation that the sand beneath their feet with shift.
Course Length
3 daysVenue Location Info
- Net Objectives Bellevue Offices
Belle-View Office Park
275 118th Avenue SE- Room/Location
- Suite 115
- Map link
- Directions/Maps
- Special Instructions
Enter the main double-doors of the building, off the parking lot. Take the hall to your right. Go to the door at the end of the hall. The training room is through the door, down the hall, last doorway on your left, opposite a small kitchen.