Kamis, 10 Januari 2008

Open-Source Tool To Catch Programming Bugs faster is on the horizon
by Vladimir C. Murray
January 10th, 2008 @ 05:39 AM

The National Institute of Standards and Technology (NIST), the University of Texas, Arlington and their scientists and mathematicians are at present working on an open source tool that will catch programming errors through the use of what is referred to as ""combinatorial testing"." According to the team of researchers, this tool has the potential to save software developers both time and money. This open source tool is slated to be released sometime this year.

The NIST researchers examined a vast number of software crashes and from the results they concluded that most of the software failures were due to what they call 'simple errors' and not complex events. When they looked at Web browsers, what they found was that although browsers have many different variables, the bulk of its failures occurred due to only two variables and the interaction between them.

The research team employed an approach where they explored two variables interactions and also different combinations of up six interacting variables.

Therefore if a word processing program is running that has ten different texts (e.g. superscript, italics and bold) there are a number of combinations of settings (say running subscript, italics and superscript simultaneously) that may lead to a software crash. Some 1024 tests will be required to test the ten effects and all its possible combinations. However only thirteen tests will eventually be need since only three effects and the resulting combinations will be needed.

The software program being developed will examine the interactions between the settings of multiple variables of a particular program. It will then generate sets of tests to run which will not be that many due to the program testing those things that generally cause software errors. The researchers believe that this will result in a superior error capture rate. This is a vast improvement over those other combinatorial testing software that could only do dual variable testing

This way of finding programming errors should be help to e-commerce websites that usually have a number of interacting variables.