30.10.2013 Aufrufe

Bewertung der Qualität objektorientierter Entwürfe - Worte-Projekt

Bewertung der Qualität objektorientierter Entwürfe - Worte-Projekt

Bewertung der Qualität objektorientierter Entwürfe - Worte-Projekt

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

5.5 Formale Definition von Metriken 55<br />

Eine Hinzunahme <strong>der</strong> Template-Klassen zu ODEM ist also prinzipiell möglich. Es<br />

gibt aber wichtige Gründe, es nicht zu tun. Zum einen gibt es noch einige Unklarheiten<br />

über die tatsächliche Darstellung im UML-Metamodell. Beispielweise fehlt in <strong>der</strong><br />

Spezifikation die Information darüber, wie die Beziehungen von formalen Template-<br />

Parametern in den Template-Instanzen modelliert werden. Zum an<strong>der</strong>en wird durch<br />

die Hinzunahme von Templates die Formulierung und Auswahl von Metriken<br />

erschwert. Wenn z. B. die Anzahl <strong>der</strong> Klassen gezählt werden soll, kann man die echten<br />

Klassen und die Template-Klassen zählen, weil das diejenigen sind, die tatsächlich<br />

implementiert werden müssen. Alternativ zählt man die echten Klassen und die Template-Instanzen,<br />

weil das die Anzahl <strong>der</strong> tatsächlichen Klassen im Modell ist. Welche<br />

Zählweise ist nun die richtige? Bei beiden gibt es Argumente dafür und dagegen.<br />

Wegen <strong>der</strong> genannten Schwierigkeiten und <strong>der</strong> zusätzlichen Komplexität wurde entschieden,<br />

Templates vorläufig nicht in ODEM aufzunehmen.<br />

5.5 Formale Definition von Metriken<br />

5.5.1 Stand <strong>der</strong> Praxis<br />

Metriken für objektorientierte Systeme gibt es inzwischen viele (z. B. Chidamber,<br />

Kemerer, 1991; Chen, Lu, 1993; Kolewe, 1993; Li, Henry, 1993; Abreu, Carapuca, 1994;<br />

Chidamber, Kemerer, 1994; Hopkins, 1994; Lorenz, Kidd, 1994; Martin, 1995; Tegarden<br />

et al., 1995; Hen<strong>der</strong>son-Sellers, 1996; Li, 1998; Marchesi, 1998; Genero et al., 2000).<br />

Einen Überblick über die Literatur geben Archer, Stinson (1995) und Fetcke (1995).<br />

Ein schwer wiegendes Problem vieler dieser Metriken ist <strong>der</strong>en unpräzise natürlichsprachliche<br />

Spezifikation. Dies tritt beson<strong>der</strong>s bei <strong>der</strong> Frage zutage, wie mit geerbten<br />

Eigenschaften umgegangen wird (Churcher, Shepperd, 1995a). Beispielsweise werden<br />

Begriffe wie „local method“ o<strong>der</strong> „method of a class“ (Li, Henry, 1993 bei <strong>der</strong> Definition<br />

von Number of Methods, NOM) verwendet, um eine Zählmetrik von Methoden<br />

einer Klasse zu definieren. Lei<strong>der</strong> werden diese Begriffe aber nicht näher erläutert. Es<br />

bleibt damit unklar, was genau gezählt wird:<br />

• Werden geerbte Methoden mitgezählt?<br />

• Werden bei redefinierten Methoden sowohl die geerbte als auch die neu definierte<br />

Methode gezählt?<br />

• Werden Klassenmethoden, Instanzmethoden o<strong>der</strong> beide gezählt?<br />

• Werden öffentliche Methoden, private Methoden o<strong>der</strong> beide gezählt?<br />

Das gleiche Problem hat übrigens auch die ähnliche Metrik WMC (Weighted Methods<br />

per Class; Chidamber, Kemerer, 1994), wie auch Churcher und Shepperd (1995b) feststellen.<br />

Eine formale Definition <strong>der</strong> Metriken ist also unabdingbar. Es bietet sich an,<br />

als Basis <strong>der</strong> formalen Definition ODEM als Referenzmodell zu verwenden.<br />

5.5.2 Fallstudien<br />

Um die Eignung von ODEM zur formalen Definition von Metriken auf bereits in <strong>der</strong><br />

Literatur definierte Metriken zu erproben, werden in zwei Fallstudien die Paketmetriken<br />

von Martin (1995) und die bekannte Metrikensuite von Chidamber und Kemerer

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!