A Working Simple System

Posted by Doug Fri, 05 May 2006 12:56:20 GMT

John Gruber recently pointed out a quote from John Gall:

A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a working simple system.

Like John, I had never heard of this before. However, I think it strikes to the heart of agile development. With SCRUM the mantra is to always deliver a working system at the end of each sprint. With Extreme Programming one of the practices is, “What’s the simplest thing that could possibly work?”

At work, we have a set of applications and services that have grown to the point where they are unwieldy and don’t support our future business plans. We’re in the process of rebuilding them with our evolving business in mind. This is a fairly hard process. We know (or at least suspect) that the final systems that fully replace what we’re using now will be quite complex. The challenge is to grow a complex system simply while delivering incrementally useful services.

Posted in  | Tags , , ,  | no comments

Copyright 2001 - 2005 by Lathi.net and Doug Alcorn

Creative Commons, Some Rights Reserved Ruby on Rails Developer Powered by Debian GNU/Linux Powered by Typo