Monday, February 28, 2011

It Takes Two to Tango

It takes two to Tango, but it takes three to develop good software. The user, programmer, and middle management execute an intricate dance where all are happy, or at least one is not. Users want reliability and new features, but not overwhelming changes. Programmers want their software to be useful and different, but don't want to fix bugs. Middle management wants to be profitable, but not look bad for missing deadlines. If you release too many features too quickly, or if the software is buggy it won't be financially successful. If you spend too much time fixing bugs you will miss deadlines. If you try to capture a different market with a major GUI change then you tick off your current user base. Windows Vista is an excellent example of this process failing. Vista missed 3 ship deadlines and was not well liked by Windows users. In contrast Windows 7 was released on time and is now the best selling operating system ever. Huge companies can step on their dance partner's toes occasionally, but dancing well is imperative for the success of a small company.

2 comments:

  1. I was thinking of Office '07, with its drastically changed UI and first time since '97 that the file formats changed... I STILL have customers requesting office '03 because they can't stand the new system...

    ReplyDelete
  2. As a software developer, I can attest to the dangers of "feature bloat." My colleagues frequently get caught up on bugs that features many times present, when the user has not requested any extra features at all. They only want what is easy to use and is familiar. It has been my experience that deadlines are frequently missed due to these "bloats." My motto is usually "Finish what the user wants, present it to them, make changes, and when they are pleased (and time permits), suggest any improvements(features) that you feel would be beneficial to the project."

    ReplyDelete