Sunday, September 30, 2007

October 1, 2007 – Mediocrity: Caring Enough to Give Your 2nd Best

On December 17, 1903, Orville and Wilbur Wright made the first successful powered airplane flight. It was quite an amazing accomplishment, but I don’t believe it would have been possible if they were working in today’s business world. The problem would have been the drive for perfection. It would have started something like this…

Orville: “Yes, sir, this is the design. The scope statement says you want us to build a self propelled machine that flies.”

Sponsor: “I see. But it only has two of those wing things. I was thinking it should have three. You know, one for a backup.”

Wilbur: “I suppose we could put a change request in for the third one.”

Finance Director: “We could actually save 25% by reducing it to one wing. With the cost overruns in the bike department it would really help increase our profits for the year.”

Orville: “The Functional Design clearly calls for two wings. All of the use case scenarios specify two.”

Marketing: “We could sell this easier if it was enclosed and had wider seats.”

Sponsor: “Yes! We should also place a phonograph on the back of each seat so people could listen to whatever they wanted to in flight. I saw it in a magazine once.”

Wilbur: “This was supposed to be the prototype.”

Upper Management: “Do whatever you have to do, but we told the stockholders it would be ready by the end of the year.”

The stakeholders have a grand vision of what the end product could be, but they need to get the thing off the ground first. Sometimes, aiming for great is overkill. But how do you know when it is ok to deliver something that isn’t perfect?

Meeting the Grade
There is a definite difference between grade and quality. Quality is a measure of how well a product meets its requirements. Grade is a category assigned to a product that has the same functionality but a different level of ability or requirement. Grade is the difference between a luxury vehicle and an economy car. Both are expected to get you from point A to point B and both will be tested for quality to ensure they meet their design specifications. A luxury car, however, is expected to be built better and have more features.

Anyone can snap a photograph but you wouldn’t turn your wedding memories over to your 13 year old nephew. By determining the expected grade of your product you can adjust the level of effort expended to meet that goal.

Setting the Priority
Along with any other critical success factors a choice must be made between three possibilities. Which one of the following is the most important to your project?

  1. Schedule
  2. Cost
  3. Scope
Don’t let anyone say all three or even pick two. One of them must be the most critical. If it was promised by the end of the year, you will be willing to pay more and limit the size. If certain features are key, then the schedule may have to slip and it may cost more. All the development decisions can then be made based on what is most important.

Consider the Cost of Perfection
Have you ever worked with someone who places a premium value in perfection? Pulling together a prototype takes as long as creating the full version. In the insurance business, getting a new product line to market ahead of your competitor is huge. Unfortunately you can’t sell it until your systems can handle it. With time to market as your driver, the cost of ergonomically designing the input screen looses value points.

Making it Mediocre
The architecture needs to be sound but not necessarily a work of art. Code doesn’t have to be pretty, it just has to work and be maintainable. Produce a quality product, but save the bells and whistles for the next release. It is better to get it out and improve it over time than give up ground to your competitors.

In the final analysis, second best can actually land you in first place.

No comments: