Mauczka, A. (2008). Evaluating object-oriented software metrics for source code change analysis : a study on open source projects [Master Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-23359
This study aims to provide additional insight into the area of Software-Metric Valida-tion by using a new methodology based on code change analysis. As code changes are risky and can be expensive, change data provides an interesting background for Quality Management. One of the goals of this work is to provide a model to be able to pin-point change occurrence by using Software Metrics.<br />The common methodology to validate Software Metrics is by comparing failure data and the metric-generated value in statistical analysis. The methodology chosen for this work is to validate Software Metrics by using change data instead of failure data. Change data can be gathered in an automated fashion, therefore allowing for a big sam-ple size, which in turn delivers more cogent conclusions. This change data is referred to as maintenance effort in literature. To be able to access a sufficient sample for statistical analysis, Open Source projects are used to gather the change data. Two metric suites are employed to gather the metric values. Self-written parsers are used to pre-process the data for statistical analysis. The statistical method used for validation is regression analysis. Two dependent variables are used, Changed Lines and a sum of Non-Commenting Source Statements - abbreviated NCSS - and Changed Lines. The metric generated values are used as independent variables.<br />A set of Hypotheses, based on assumptions and concepts in literature, is pitted against the results of the regression analysis. The results show that the more "sophisticated" a metric, i.e. metrics that are more complex than others, the less suited it is to predict the dependent variables. The possible reasons for this are discussed in this work.
en
Ziel dieser Arbeit ist es den Bereich der Software-Metriken, konkreter den Bereich der Validierung von Software-Metriken, um einen neuen Ansatz zu erweitern. Die gängige Vorgehensweise zur Validierung von Software Metriken besteht darin, die Werte, die von den Metriken generiert wurden, Fehler-Daten in einer statistischen Analyse gegenüber zu stellen. Die Vorgehensweise in dieser Arbeit widerspricht diesem Ansatz insofern, als dass die Werte der Metriken dem sogenannten Wartungsaufwand (Maintenance Effort) gegenüber gestellt werden. Dieser Wartungsaufwand kann in der Form von Changed Lines gemessen werden und in automatisierter Form gesammelt werden. Dies ermöglicht eine ausreichende Stichprobengröße, die wiederum zuverlässiger Schlüsse ziehen lässt. Änderungen am Source Code sind meistens risikobehaftet und teuer. Änderungsdaten stellen daher einen interessanten Aspekt des Qualitätsmanagements dar. Ein Ziel dieser Arbeit ist es daher ein Model vorzustellen, das in der Lage ist, unter der Zuhilfenahme von Software Metriken, Änderungen aufzuzeigen Um eine ausreichend große Anzahl an Projekten analysieren zu können, werden Open Source Projekte als Datenquelle benutzt. In der Studie werden zwei Metriken-Suiten zur Bewertung der Projekte hinzugezogen.<br />Mittels selbst-geschriebener Parser werden die Daten für die statistische Analyse aufbereitet. Die Validierung selbst erfolgt durch Anwendung der Regressionsanalyse. Changed Lines und die Summe aus Non-Commenting Source Statements (NCSS) und Changed Lines bilden die abhängigen Variablen. Die von den Metriken erzeugten Werte stellen die unabhängigen Variablen dar. Ein Set von Hypothesen, basierend auf Annahmen und Konzepten aus der einschlägigen Literatur, wird den Ergebnissen der Regressionsanalyse gegenüber gestellt. Das Ergeb-nis zeigt, dass je "anspruchsvoller" eine Metrik ist, d.h. je komplexer sie ist, desto geringer ist ihre Aussagekraft als Prädiktor für die abhängigen Variablen.