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.

B.4 Zusammenhalt 209<br />

System<br />

Bedingung Fragetext Antwortskala Gewicht auto.<br />

– Sind alle Entwurfsentscheidungen so weit wie<br />

möglich verborgen?<br />

– Gibt es we<strong>der</strong> globale Variablen noch werden<br />

öffentliche Klassenattribute als solche verwendet?<br />

Fragebogen B-9: Entkopplung System<br />

B.4 Zusammenhalt<br />

Wesentliche Prinzipien für die Erhöhung des Zusammenhalts sind die Trennung <strong>der</strong><br />

Zuständigkeiten (separation of concerns) und die Trennung von Verhalten und Implementierung<br />

(separation of policy and implementation). Klassen mit hohem Zusammenhalt<br />

realisieren eine abgegrenzte Aufgabe vollständig.<br />

Klasse/Interface<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

Bedingung Fragetext Antwortskala Gewicht auto.<br />

– Ist die Klasse eine abgegrenzte Abstraktion eines<br />

Begriffs aus dem Problem- o<strong>der</strong> Lösungsbereich?<br />

– Realisiert die Klasse nur eine Verantwortlichkeit<br />

(o<strong>der</strong> sehr wenige)?<br />

(wenn viele Operationen vorhanden sind, deutet<br />

das auf das Gegenteil hin)<br />

– Realisiert die Klasse ihre Verantwortlichkeiten<br />

vollständig?<br />

– Hat die Klasse mindestens eine Operation (einschließlich<br />

<strong>der</strong> geerbten)?<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

– Hat die Klasse nicht nur get-/set-Operationen? 0 = nein,<br />

1 = ja<br />

– Verfügt die Klasse höchstens über wenige get-/<br />

set-Operationen?<br />

(viele get/set-Operationen deuten auf eine<br />

schlechte Aufteilung hin, da sich offensichtlich<br />

Funktionalität außerhalb <strong>der</strong> Klasse befindet)<br />

this∈I Stellt das Interface alle nötigen Operationen für<br />

einen einzigen Dienst zur Verfügung?<br />

this∈I Enthält das Interface ausschließlich die für seinen<br />

Dienst notwendige Operationen?<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

0 = nein,<br />

1 = ja<br />

– Realisiert jede Operation eine einzige Funktion? 0 = nein,<br />

1 = ja<br />

Fragebogen B-10: Zusammenhalt Klasse/Interface (Abschnitt 1 von 2)<br />

***<br />

***<br />

***<br />

***<br />

***<br />

* ✔<br />

***<br />

**<br />

***<br />

***<br />

**

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!