Friday, December 26, 2008

Using Six Sigma To Minimize Software Bugs

By Craig Calvin

Software is a set of programs developed using various programming languages. The software programs may be developed for the purpose of reservation of air tickets, calculation of various bills, accounting processes and so on. Sometimes software has some drawbacks or it may not have a certain functionality that is expected of it to work perfectly. These are usually bugs in software and they need to be fixed. But a better solution is to avoid such errors in the beginning of the software development stages, so that there are minimal errors. This is precisely what Six Sigma methodology enables companies to do.

If we consider, for instance, an airline reservation system, there are utilities in it that calculate fares, assign seats, allow you to choose when you want to fly and order special meals. However, if there is a bug in the software, one can imagine what disasters that could cause.

There are generally two types of software bugs - programming bugs and data bugs. The data bugs are usually easier to discover, isolate and fix, as they are usually the product of incorrect table rate errors. Programming bugs are the logical errors made and detecting their source is more difficult, requiring modification and recompilation of the code before it is used again.

The nature of Six Sigma is its control mechanism at every stage of product development. Various controls can be employed for mistake proofing. For instance, if there were normal minimums for rates or costs or charges, then any value below that minimum would be an error. Six Sigma systematically helps to eliminate bugs in this way.

Six Sigma discipline is data driven, and generally software projects are begun after collecting data pertaining to the problem area. Using the Six Sigma technique for collecting information, the organization can be ensured that the data is as correct as it can possibly be. Then when developing the program, the areas containing the data collected can be eliminated as problems and used for mistake proofing the program. By the time the program reaches the testing stage, these areas can be isolated and modifications can be made. Six Sigma methodology can help minimize losses from bugs to a large extent. - 16069

About the Author: