Agile Design (4 Days)
June 11th-14th, London
Maintaining the value of a system depends on our ability to extend
and adapt the code to keep pace with new requirements. There's a direct
relationship between the useful life and the maintenance costs of
software and the design quality of its underlying code.
If you're going to do design the Agile way, you need to know what
you're doing - much more so than for traditional Big Design Up-Front
approaches. Don't underestimate just how disciplined you need to be.
On this 4-day intensive and challenging workshop, you will learn the
underlying principles of object oriented and component-based design.
This will give you a solid grounding that you can build on as we cover
two kinds of Agile Design:
- Up-front Design
- Simple, lightweight, collaborative approaches to doing
just enough specification in advance
- Feedback-driven Design
- Effective techniques for improving and maintaining the
design quality of your code
We will address these critical skills through an example project, in
which you will design, implement, measure, inspect and refactor real
code to get a practical appreciation of the principles and practices.
Course Outline:
- Day 1 - Up-Front Design: Part I
- Evolutionary Design - How & Why Does It Work?
- Agile Design - Dispelling The Myths
- Agile Object Oriented Analysis & Design (not
necessarily) using UML
- Day 2 - Up-Front Design: Part II
- OOA/D (cont)
- Agile UI & Interaction Design
- Day 3 - Feedback-driven Design: Part I
- OO Design Principles & Design Metrics
- Day 4 - Feedback-driven Design: Part II
- Design Patterns
- Refactoring
- Software In Context
- Enterprise Architecture
- Agile SOA
- The Model Office - An Agile Environment
for Contextual Design
(Please note that, given the practical nature, the
course material will not be covered in a totally linear fashion)