Übung 1.2: Structural Analysis-Codeprüfung ausführen
Für diese Übung wird vorausgesetzt, dass Sie bereits Übung 1.1: Erforderliche Ressourcen importieren ausgeführt haben. Bei der vorliegenden Übung lesen Sie zunächst ein Benutzerszenario. Anschließend übernehmen Sie die Rolle des im Szenario beschriebenen Softwarearchitekten und verwenden das in Übung 1.1 importierte Projekt, um die Übung auszuführen.
Benutzerszenario
Zum Prüfen neu geschriebenen Codes und zum Beurteilen seiner Qualität muss der Architekt nach allgemeinen Anti-Pattern suchen. Anti-Pattern sind bekannte Probleme, die im Code auftreten und nicht bewährten Verfahren entsprechen. Während Design-Pattern gute Modelle darstellen, die eingehalten werden sollten, sind Anti-Pattern zu vermeiden. Im Folgenden sind bestimmte Anti-Pattern aufgeführt:
- Breakable: Das Objekt im Code weist so viele Abhängigkeiten auf, dass es sich bei der Änderung eines anderen Objekts voraussichtlich instabil verhält.
- Cyclic Dependency: Eine Gruppe von Objekten ist so miteinander verbunden, häufig durch Schleifenabhängigkeiten, dass Änderungen an einem Objekt Auswirkungen auf alle übrigen Objekte haben. Dies wird auch als Tangle bezeichnet.
- Hub: Das Objekt weist neben zahlreichen Abhängigkeiten auch zahlreiche abhängige Komponenten auf. Änderungen an einem anderen Objekt haben Auswirkungen auf den Hub. Gleichermaßen haben Änderungen am Hub Auswirkungen auf andere Objekte.
In der ersten Übung führt der Architekt eine Codeprüfung aus, um nach den oben beschriebenen Anti-Pattern zu suchen.
Übung
Im Verlauf dieser Übung führen Sie folgende Aufgaben aus:
- Auswählen einer Codeprüfung
- Anzeigen der in der Codeprüfung angewendeten Regeln
- Wählen des Codes, für den die Prüfung ausgeführt werden soll
- Ausführen der Codeprüfung
- Anzeigen der bei der Codeprüfung gefundenen Fehler
- Auswählen eines Fehlers, um die folgenden Informationen dazu anzuzeigen:
- Quellcode
- Beschreibung, Beispiele und Lösungen
Codeprüfung auswählen
So wählen Sie eine Structural Analysis-Codeprüfung aus:
- Klicken Sie in der Funktionsleiste in der Ansicht "Code Review" auf das Symbol für Regeln verwalten
.

- Klicken Sie in der Liste für die Auswahl der Codeprüfung auf Structural Analysis Code Review.
- Erweitern Sie den Ordner Structural Analysis und die Unterordner, um die in der Codeprüfung angewendeten Regeln anzuzeigen (siehe unten). Klicken Sie auf OK.

Codebasis für die Prüfung auswählen
So wählen Sie den Arbeitsbereich als zu überprüfende Codebasis aus:
- Klicken Sie in der Funktionsleiste in der Ansicht "Code Review" auf das Symbol für Prüfung
> Review Workspace.
Codeprüfung ausführen
Nach Auswahl der Codebasis für die Prüfung wird die Codeprüfung ausgeführt. Sie können den Status der Prüfung anhand des Fortschrittsanzeigers in der unteren rechten Ecke der Ansicht verfolgen.
Bei der Codeprüfung gefundene Fehler anzeigen
Nach Abschluss der Codeprüfung werden die gefundenen Fehler in der Ansicht "Code Review" angezeigt (siehe folgenden Screenshot):

In der Ansicht "Code Review" werden die folgenden Informationen bereitgestellt.
- Statistik zur Codeprüfung: Die Zeile oberhalb der gefundenen Fehler enthält Informationen über die zuletzt ausgeführte Codeprüfung: Name, Umfang, Anzahl der Regeln und geprüften Dateien sowie Anzahl und Wertigkeit der Fehler.
- Bei der Codeprüfung gefundene Fehler: Die bei der Codeprüfung gefundenen Fehler werden in der Ansicht "Code Review" in Ordnern aufgelistet. Jeder Ordnername gibt Auskunft über den Namen der Codeprüfung, die Kategorie und die Anzahl der Fehler.
Weitere Informationen zu einem bei der Codeprüfung gefundenen Fehler abrufen
So rufen Sie weitere Informationen zu einem bei der Codeprüfung gefundenen Fehler ab:
- Erweitern Sie den Ordner Structural Analysis: Cyclic Dependency. Er enthält vier gefundene Fehler (siehe folgenden Screenshot):

Vor jedem gefundenen Fehler steht ein Symbol, das seine Wertigkeit anzeigt.

Eine Glühlampe neben einem Symbol (
) weist darauf hin, dass für den betreffenden Fehler ein Quick-Fix vorhanden ist. Bei einem Quick-Fix handelt es sich um eine automatisierte Lösung für einen bestimmten Fehler. Die Quick-Fix-Symbole sind in der folgenden Abbildung dargestellt:

- Klicken Sie doppelt auf den Fehler, der mit "Event.java" beginnt. Details dazu werden an zwei Stellen angezeigt, wie in den folgenden Punkten und im Screenshot dargestellt:
- Quellcode: Zeigt den Code an, wo der Fehler auftritt, und hebt die genaue Position hervor.
- Ansicht "Code Review Details": Liefert eine detailliertere Fehlerbeschreibung und stellt Beispiele und Lösungen zur Korrektur bereit. Handelt es sich um einen Fehler vom Typ "Cyclic Dependency", finden Sie außerdem einen Abschnitt mit Details über Schleifen.

Sie haben Übung 1.2 "Structural Analysis-Codeprüfung ausführen" abgeschlossen.
Vorteile einer Codeprüfung nutzen
Durch das proaktive Ausführen von Codeprüfungen können Sie die gefundenen Fehler bereits in einem frühen Stadium analysieren und korrigieren und somit die folgenden Probleme ausschließen:
- Beeinträchtigung der Leistung, Wartung oder Skalierbarkeit der Anwendung
- Verursachung von Kosten-, Zeit- und Ressourcenaufwände für Ihr Unternehmen
In Übung 1.4 bauen Sie auf die in Übung 1.2 ausgeführten Aufgaben auf, indem Sie einen gefundenen Fehler korrigieren.
Nachbearbeitung von Übung 1.2
Sie haben Übung 1.2 "Structural Analysis-Codeprüfung ausführen" abgeschlossen. Im Verlauf dieser Übung führten Sie folgende Aufgaben aus:
- Auswählen einer Codeprüfung
- Anzeigen der in der Codeprüfung angewendeten Regeln
- Wählen eines Codes, auf dem die Prüfung ausgeführt werden sollte
- Ausführen der Codeprüfung
- Anzeigen der bei der Codeprüfung gefundenen Fehler
- Auswählen eines Fehlers, um die folgenden Informationen dazu anzuzeigen:
- Quellcode
- Beschreibung, Beispiele und Lösungen
Sie können nun mit Übung 1.3: Architectural Control-Regel definieren beginnen.