Header



A Great Product Vs. Good Enough Software: The Quality Perspective

July 04, 2008


During the Producteering Breakfast series held at the SD Forum in California last month, the majority of participants (from the ISV community) held the view that a flawless and high quality product need not be the goal when attempting to build a successful product. Instead, a product that fulfilled customer expectations and which was better than competing products had more potential to be a ‘great product’.

So, instead of zero-defect software, what most users want is software that is cheap enough, fast enough, feature-rich enough, and available soon enough -- that is, "Good enough”. Zero-defect software is often at the expense of time, functionality or cost – or all three. In fact, zero-defect software never guarantees that a product is ready or good enough to ship.

That leaves us with the question that’s been asked many times before: when is non-life critical software ready to ship? Is it when a certain date arrives, certain functionality built or some quality metric achieved? None of these criteria can actually result in software that is good enough to deliver. One aspect of an approach promoted by James Bach is to adopt a utilitarian method to deliver good enough software that is based on risk analysis. That is:

  • Software is good enough when the potential positive consequences of creating or applying it outweigh the potential negatives
  • Structured risk management needs to be applied to weigh the consequences and identify factors that make the risk more or less likely to occur
  • Assessment of short and long-term consequences if the risk occurs
  • Knowing the difference between important and unimportant, necessary and unnecessary

Many successful software products ship with dozens, if not hundreds or thousands of bugs, including most Windows and Mac product versions. However, it isn’t the number of bugs that matters; it’s the effect of each bug. In other words, knowing the risks of deploying software with known (and unknown) defects allows one to release software that is good enough, even to be the best!

Related links

Challenges of Good Enough Software

Reduce Your Risk of Failure

Some Software Development Best Practices

Defective Software Works

Software’s Classic Mistakes-2008

Producteering – A great way to build Successful Products!

Ensuring the success of software products is ongoing research for the last decade or so. Yet Product Engineering is not even considered basic knowledge in Academic Curricula. Given this situation, we understand and realize the importance that product engineering deserves, as opposed to generic application engineering and have institutionalized what it takes to build better products quickly and consistently. This is what we call Producteering.

You will learn in this webinar:

How to build successful products quickly and consistently?

What is the significance of 4 Ps in Producteering?

How can Producteeting reduce your R&D budgets?

How does Producteering improve possibilities of differentiating your offerings in the competitive marketplace?

View the webinar

http://producteering.org | Sponsored by Aspire Systems