Return to search

Correlation of Software Quality Metrics and Performance

Performance is an aspect of software quality that is often not considered at early stages of software design. Common approaches to performance analysis include utilizing profiling tools after the software has been developed to find bottlenecks and executing simulation models that are either manually constructed or derived from UML design diagrams. Many projects attempt to correct performance issues by adding more powerful hardware instead of attacking the root cause. Software metrics have been used to predict many aspects of software quality such as maintainability and fault-tolerance by correlation and regression analysis. Metrics proposed by Chidamber and Kemerer, also known as the CK metric suite, have been studied extensively in software quality model analyses. These studies examined maintainability, fault tolerance, error proneness, and scalability of the software as it evolved through time. Correlations were made between metrics and the likely quality models they represented. Other metrics such as Cyclomatic Complexity by McCabe and class couplings by Martin have also been used in quality predictions. No research has been conducted to analyze relationship between performance and metrics. The goal of this research was to construct a decision tree that used software metrics to forecast performance characteristics. The relationship between metrics and performance was derived by correlation between static code metrics and three runtime variables: number of objects, method call frequency, and average method call lengths on selected software benchmarks. The decision tree was constructed using the C4.5 algorithm implemented in the WEKA software. Pearson correlation coefficients were obtained for the combined datasets from all benchmarks. The decision trees and Pearson statistics showed that weighted methods per class (WMC), total lines of code (TLOC), and coupling between objects (CBO) have significant correlation with software performance. WMC showed positive correlation with number of objects and calls. CBO correlated positively with average method call lengths and negatively with number of objects. TLOC correlated positively with number of calls.

Identiferoai:union.ndltd.org:nova.edu/oai:nsuworks.nova.edu:gscis_etd-1108
Date01 January 2012
CreatorsBurdett, Yan Liu
PublisherNSUWorks
Source SetsNova Southeastern University
Detected LanguageEnglish
Typetext
Formatapplication/pdf
SourceCEC Theses and Dissertations

Page generated in 0.0018 seconds