|
|||
Finding Effective Software Metrics to Classify Maintainability Using a Parallel Genetic AlgorithmRodrigo Vivanco1,2 and Nicolino Pizzi1,2 1Institute for Biodiagnostics, National Research Council Canada, Winnipeg, MB, Canada
2University of Manitoba, Winnipeg, MB, Canada
Abstract. The ability to predict the quality of a software object can be viewed as a classification problem, where software metrics are the features and expert quality rankings the class labels. Evolutionary computational techniques such as genetic algorithms can be used to find a subset of metrics that provide an optimal classification for the quality of software objects. Genetic algorithms are also parallelizable, in that the fitness function (how well a set of metrics can classify the software objects) can be calculated independently from other possible solutions. A manager-worker parallel version of a genetic algorithm to find optimal metrics has been implemented using MPI and tested on a Beowulf cluster resulting in an efficiency of 0.94. Such a speed-up facilitated using larger populations for longer generations. Sixty-four source code metrics from a 366 class Java-based biomedical data analysis program were used and resulted in classification accuracy of 78.4%. LNCS 3103, p. 1388 ff. lncs@springer.de
|