Agile methods have some really good points: rapid feedback to customers who are considered part of the team, incremental building from a small, simple stable base, short time-boxed plan-do-show cycles, and continuous testing to prevent surprises. It is also interesting to talk about how agile methods approach designing systems. There seems to be a backlash against architecture, in the form of criticizing ‘BUFD’ – big up front design (thinking you can design for every eventuality before you really understand the requirements), and in the mantra ‘YAGNI’ – You aint gonna need it (never designing for the future, only putting the absolutely necessary things into your design as you need them). There has been quite some debate around these aspects, e.g. Are these valid criticisms of architecture? Do we need architecture in agile projects? Is there a way we can get the best of both worlds?
This talk is titled ‘Design in Agile Methods’, and looks at:
- design as art or science,
- engineering versus software design,
- the challenges of software design – urgency, complexity and uncertainty,
- two contrasting approaches to deal with these challenges (predict and control vs embrace change and learn),
- types of simplicity,
- cost of change, and
- how agile methods approach these issues in a specific way.
Wednesday, 15 February 2012, 18h15
125 Buitengracht Street,