New M.E. Thesis Submitted from CSE Student


A software fault is a defect that causes software failure in an executable product. Faults in software systems continue to be a major problem. Despite a huge amount of development effort going into fault reduction in terms of quality control and testing, systems are delivered to users with excessive faults. It has been recognized that seeking out fault-prone parts of the system and targeting those parts for increased quality control and testing is an effective approach to fault reduction. As more faults will be detected, quality will be improved. Predicting faults early in the software life cycle can be used to improve software process control and achieve high software reliability. Timely predictions of faults in software modules can be used to direct cost-effective quality enhancement efforts to modules that are likely to have a high number of faults. Prediction of fault-prone modules provides one way to support software quality engineering through improved scheduling and project control. Methodologies and techniques for predicting the testing effort, monitoring process costs, and measuring results can help in increasing efficiency of software testing. Being able to measure the fault-proneness of software can be a key step towards steering the software testing and improving the effectiveness of the whole process. Prediction models based on software metrics, can estimate number of faults in software modules.
In the present work, Partitional Clustering technique named K-means clustering is evaluated on real-time software defect dataset. The results show that when the prediction technique is evaluated, then best algorithm for classification of the software components into faulty/fault-free systems is found to be K-means algorithm followed by the Decision tree Algorithm C 4.5.

Leisure Readings :