Jonathan Bennett

Are You Botching Your Software Projects?

Project management of software is different than most other types of projects. This is due to the “soft” part of software. Well designed software is extremely flexible, which is the primary advantage it has over things that are physical.

This shows up in at least three ways:

  1. We often are wrong in our assumptions, so that should be taken into consideration when planning our projects.
  2. Very few decisions need to be final. Good software should maximize flexibility and allow for changes.
  3. Change is inevitable. Good software will let you make changes in the future that are not compatible with what you expect today. You should be able to make these additions without rewriting everything from scratch.

You might operate in a world where placing a pipe in an engineering drawing one foot in the wrong direction is an incredibly costly mistake. The “cost” of a mistake in most software is so much lower that applying the same degree of rigour is not a good return on your investment.

We’ll dive into each of these project management missteps in the next few days, but let me ask, have you run into project management issues in the past? What were they, and how have you dealt with them?