Monday, January 31, 2011

Agile development

The current fad in software development is to be "agile". The original intent was that the developers and software company should be able to respond to change quickly, including changes to the design required when something new is learned. The problem I have with this, like most fads, is that many companies and developers are using the term without fully studying the intent. The result is a return to a development style I call "dumb as rocks".

Many developers seem to want to start designing and coding before they have studied and thought through all of the available information. They grab one fact, code, learn something else, code some more, learn more, redesign and rewrite what they have written, etc. This desire to start work before you know what you are trying to do has been ridiculed for ages and many Dilbert cartoons have been dedicated to it. Yet many developers and companies are doing this exact thing thinking that they are now being agile.

The intent of agile development isn't that you charge off with no knowledge. You still need to think and plan. You should only redesign or recode if something unexpected comes up, not something you just didn't bother to think through the first time.

Agile development may be the way of the future or it may be a passing fad, I have no idea which. What I do know is that a lot of what people think is "agile" is really "dumb as rocks".

No comments: