Agile Design

If BDUF was not such a good idea (and it really wasn’t!) then it’s hardly surprising that Agile looked so good when it came along.

Sadly a whole lot of Agile became a cargo cult, and the dogma became that all design was bad. The notion (and I’ve heard it expressed in exactly these terms) came about that, “If we just write enough tests, a design will emerge, and it will be a much better design than we’d achieve otherwise.”

Unfortunately it’s horseshit. What an agile process really implies is that we design — and redesign — every step of the way. Most agile teams fail to do that.

Fortunately, after a decade or more in the wilderness, the pendulum of belief is now swinging back the other way, and it’s OK once more to talk about “design” as a discipline, a skill and an art worth practising. And perhaps it’ll be in healthier form, where we explicitly demand that design be accommodating of change, of evolution. As it was always meant to be.