Toolmentor: Architekturanalyse mit Rational Systems Developer durchführen
Dieser Toolmentor beschreibt, wie Sie mit der Modellierungsumgebung von RSD eine Architekturanalyse durchführen.
Tool: Rational Systems Developer
Erweiterung: Architekturanalyse mit Rational Software Development durchführen
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Überblick

Dieser Toolmentor setzt voraus, dass bereits mehrere strukturierte Modelle in Übereinstimmung mit dem White Paper Model Structure Guidelines for RSx erstellt worden sind.

In diesem Toolmentor werden die folgenden Schritte ausgeführt:

Zusätzliche Toolinformationen

Architekturübersicht entwickeln

Für diesen Schritt haben Sie zwei Möglichkeiten, das Tool zu verwenden:

  • Als Zeichentool für die Erstellung formloser Diagramme, die die Architekturübersicht beschreiben.
  • Als UML-Modellierungstool für die Erstellung formaler semantischer Modelle, die bereits viele Details einer Lösung enthalten und aus denen mit den Umsetzungen "Modell-zu-Modell" und "Modell-zu-Code" wesentliche Teile der Implementierung automatisch generiert werden können.

Für J2EE-Anwendungen gibt es eine Reihe von Standard-Deployment-Konfigurationen, auf die Sie Ihre erste Architektur stützen können. Verwenden Sie für die Erstellung von Diagrammen eine Kombination von Elementen aus den Palettenfächern zu Deployment und den geometrischen Formen.

Nähere Informationen zur Strukturierung von Modellen finden Sie in den Abschnitten zu den folgenden Themen:

Übersicht über verfügbare Assets erstellen

Anmerkung: Einige der in diesem Abschnitt genannten Tool-Funktionen werden in RSM nicht unterstützt.

Der Architekt muss die Wiederverwendung vorhandener Assets berücksichtigen, einschließlich vorhandener Modelle. Das Tool stellt außerdem umfassende Unterstützung für eine automatisierte Architekturanalyse bereit, durch die der Benutzer die Architekturerkennung über Softwarevisualisierung auf hoher Ebene und Muster-/Antimustererkennung durchführen kann. Nähere Informationen finden Sie in den Richtlinien Architekturerkennung, Analyse und Steuerung.

Anforderungen für Umsetzungen identifizieren

Es gibt drei Verwendungsmöglichkeiten für das Tool:

  1. Als Zeichentool für die Erstellung formloser Diagramme, die die Architekturübersicht beschreiben.
  2. Als UML-Modellierungstool für die Erstellung formaler semantischer Modelle, die bereits viele Details einer Lösung enthalten und aus denen mit den Umsetzungen "Modell-zu-Modell" und "Modell-zu-Code" weitere Details automatisch generiert werden können.
  3. Als UML-Modellierungstool für die Erstellung formaler semantischer Modelle, die bereits viele Details einer Lösung enthalten. Umsetzungen werden manuell durchgeführt.

Wenn Sie die zweite oder die dritte Möglichkeit (siehe oben) verwenden, müssen Sie sich überlegen, welche Umsetzungen Sie benötigen. Im günstigsten Fall sind die benötigten Umsetzungen bereits vorhanden und stellen die erforderliche Funktionalität bereit.

Wenn Sie die zweite Möglichkeit (siehe oben) verwenden und die Umsetzung nicht ganz Ihren Anforderungen genügt, müssen Sie einen der folgenden Schritte durchführen:

  • Die vorhandene Umsetzung erweitern.
  • Die Umsetzung durch Änderung des Umsetzungscodes aktualisieren.
  • Eine neue Umsetzung erstellen, die in die vorhandene Umsetzung eingefügt werden kann oder die Ausgaben aus der vorhandenen Umsetzung akzeptiert.
  • Wenn eine Wiederverwendung nicht möglich ist und Sie eine neue eigenständige Umsetzung erstellen müssen, sollten Sie die vorhandene Vorlage als Beispiel/Ausgangspunkt verwenden.

Hinweis: Es gibt Beispielumsetzungen, die Sie wiederverwenden bzw. als Ausgangspunkt für Ihre eigene Umsetzung verwenden können: Geschäftsmodell zu Anwendungsfallmodell, Anwendungsfallmodell zu Analysemodell und Analysemodell zu Designmodell.

Die nachfolgend genannten 6 Schritte dienen zur Orientierung, falls Sie eine neue Umsetzung erstellen müssen:

  1. Erstellen Sie ein Plug-in-Projekt für Umsetzungen.
  2. Geben Sie den Quellentyp und das Zielmodell an.
  3. Geben Sie die anwendbaren Profile an.
  4. Fügen Sie der Umsetzung Regeln hinzu.
  5. Implementieren Sie umsetzungsspezifisches Verhalten.
  6. Testen Sie die Umsetzung.

Wiederverwendbare Muster identifizieren

Neben der Suche nach wiederverwendbaren Umsetzungen müssen Sie nach entsprechenden Mustern suchen, die Sie für Ihr Projekt verwenden können. Auch hier ist der günstigste Fall der, dass bereits alle erforderlichen Muster vorhanden sind.

Wenn die von Ihnen identifizierten Muster nicht ganz Ihren Anforderungen genügen, stehen Ihnen eine Reihe von Möglichkeiten zur Verfügung:

  1. Erstellen Sie ein neues Muster, das zusammen mit den vorhandenen Mustern verwendet werden kann.
  2. Aktualisieren Sie die Muster so, das sie Ihren Anforderungen genügen.
  3. Verwenden Sie vorhandene Muster als Entwurf/Beispiel, während Sie ein neues geeigneteres Muster erstellen.

Weitere Informationen finden Sie auch im Hilfethema Symbol für Onlinehilfe Funktionalität von RSx erweitern (RSx steht für RSA, RSM oder RSD).

Die nachfolgend genannten 6 Schritte dienen zur Orientierung, falls Sie Ihre eigenen Muster erstellen möchten:

  1. Erstellen Sie eine Musterbibliothek.
  2. Fügen Sie Muster zur Musterbibliothek hinzu.
  3. Fügen Sie dem Muster Vorlagenparameter hinzu.
  4. Geben Sie Abhängigkeiten zwischen Vorlagenparametern an.
  5. Implementieren Sie musterspezifisches Verhalten.
  6. Testen Sie das Muster.

Wiederverwendbare Profile identifizieren

Überprüfen Sie den Bestand an vorhandenen Profilen und überlegen Sie, ob Sie diesen Bestand erhöhen müssen. Profile unterstützen Sie dabei, Ihr Modell auszuarbeiten und zu präzisieren, ohne dass Sie an eine bestimmte Implementierung gebunden sind. Ein weiterer zu berücksichtigender Gesichtspunkt sind die Beziehungen zwischen den Mustern, Umsetzungen und Profilen. Sie können diese Mechanismen unabhängig voneinander verwenden, Sie können jedoch Ihre Produktivität gegebenenfalls erhöhen, wenn Sie sie zusammen einsetzen.

Wiederverwendbare Modelle und Codeelemente identifizieren

Der Architekt muss die Wiederverwendung vorhandener Assets berücksichtigen, einschließlich vorhandener Modelle. Das Tool stellt außerdem umfassende Unterstützung für eine automatisierte Architekturanalyse bereit, durch die der Benutzer die Architekturerkennung über Softwarevisualisierung auf hoher Ebene und Muster-/Antimustererkennung durchführen kann. Nähere Informationen finden Sie in den Richtlinien Architekturerkennung, Analyse und Steuerung. .

Mit Hilfe des Lernprogramms Symbol für OnlinehilfeCreating Architectural Control Rules and Creating Architectural Control Rules and Reviewing the Architecture of an Application lernen Sie einige der Automatisierungsfeatures im Tool besser kennen, um vorhandene Assets bewerten zu können.

Assets in IBM developerWorks suchen

Die technische Bibliothek von Rational, IBM developerWorks, enthält Assets, die für Sie nützlich sein können.

RAS und Asset-Explorer verwenden

Wenn Sie mit RAS (Reusable Asset Specification) arbeiten, sollten Sie in der Tool-Workbench die RAS-Perspektive verwenden. Eine wichtige Sicht in dieser Perspektive ist der Asset-Explorer, in dem Sie eine Verbindung zu einem vorhandenen Repository herstellen, die Repositorys durchsuchen oder Repositorys mit RAS-Assets erstellen können. Außerdem können in einem Repository gespeicherte Assets von den Systembenutzern mit Kommentaren versehen werden und Ihnen auf diese Weise bei der Auswahl der Assets helfen.

Nähere Informationen finden Sie in den folgenden Quellen:

  • Symbol für OnlinehilfeRAS-Assets - RAS-Assets für den Import/Export 
  • Symbol für OnlinehilfeLernprogramme und Beispiele zum Importieren und Exportieren von RAS-Assets 
  • Symbol für OnlinehilfeAssets zur Wiederverwendung packen
  • Symbol für OnlinehilfeRAS-Assets finden

Übergeordnete Organisation der Subsysteme definieren

Ihre Entscheidung zur Organisation der Lösungen in Komponenten, Services und Subsysteme wird im Designmodell (z. B. ein EIT-Designmodell) festgehalten und stützt sich auf Überlegungen wie die folgenden:
  • Schichtenstrategie
  • Komponentenstrategie (kann sowohl vom Gedanken an funktionelle Kohäsion als auch an lose Verbindungen getragen sein)
  • Projektspezifische Aufteilung der Arbeit

Bei der modellorientierten Entwicklung (MDD, Model Driven Development) mit automatisierten Umsetzungen müssen bei den Umsetzungen "Modell-zu-Modell" und "Modell-zu-Code" weitere Überlegungen hinsichtlich der Modellstruktur berücksichtigt werden. Ordnen Sie beispielsweise die Pakete Ihres Designmodells so an, dass sie die Projekte widerspiegeln, in denen Sie die Implementierung entwickeln. Sie können alternativ auch ein "Zuordnungsmodell" verwenden, um festzulegen, wie die Implementierungsartefakte der Lösung in Projekten und Ordnern organisiert werden sollen und wie die Designmodellkonstrukte diesen Projekten und Ordnern zugeordnet werden. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeSpecifying Alternate File Names for the Output of a Transformation Generates.

Wenn Sie bei der modellorientierten Entwicklung (MDD) keine automatisierten Umsetzungen verwenden, müssen Sie die entsprechenden Schritte einleiten, um die in der automatisierten Umsetzung enthaltenen Informationen bereitzustellen:

  • Zusätzliche Diagramme
  • Anmerkungen zu Diagrammen
  • Benutzerprofile
  • Einschränkungen in der Verwendung
  • Zusätzliche Dokumentation mit Einzelangaben zur Zuordnung

Das Tool unterstützt Sie auch bei der Organisation von Elementen, so dass alle Stakeholder und deren Anliegen berücksichtigt werden können. Verwenden Sie hierfür die <<Perspective>>-Pakete, die die Organisation der Designmodellelemente von den Diagrammansichten des Modelinhalts trennen, so dass Sie so viele Sichten wie notwendig erstellen können. Diese Sichten können auch Ansätze orthogonaler Organisationsstrukturen widerspiegeln. Dieser Ansatz unterstützt Sie nicht nur bei der Vermittlung der Designideen, die in Ihrem Modell dargestellt sind, sondern auch dabei, ein besseres Verständnis der zum Lösungsansatz gehörenden Elemente zu bekommen.

Nähere Informationen zur Strukturierung von Modellen finden Sie in den Abschnitten zu den folgenden Themen:

Schlüsselabstraktionen identifizieren 

Erfassen Sie die Schlüsselabstraktionen in Klassendiagrammen mit einer Kurzbeschreibung jeder einzelnen Klasse. Gehen Sie dazu wie folgt vor:

  1. Öffnen Sie das Designmodell. Wenn Sie beabsichtigen, ein separates Analysemodell zu pflegen, sollten Sie dieselben Informationen auch in diesem Modell erfassen.
  2. Navigieren Sie zu dem Paket mit den Schlüsselabstraktionen. Alternativ können Sie ein <<Perspective>>-Paket für Schlüsselabstraktionen verwenden. Nähere Informationen finden Sie im White Paper Model Structure Guidelines for RSx.
  3. Fügen Sie ein Klassendiagramm hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme zu Modellelementen hinzufügen.
  4. Fügen Sie dem Diagramm Klassen mit dem Stereotyp <<Entity>> (Entität) hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme erstellen und ändern und Symbol für OnlinehilfeStereotype auf Modellelemente anwenden.
  5. Fügen Sie für jede Klasse eine Beschreibung hinzu. Dazu verwenden Sie die Registerkarte 'Dokumentation' in der Sicht 'Eigenschaften'. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente dokumentieren.
  6. Ordnen Sie der Klasse optional ein Dokument zu: Klicken Sie im Modellexplorer mit der rechten Maustaste auf das Modellelement, mit dem Sie eine Datei verknüpfen möchten, und klicken Sie dann auf "Add UML > URL". Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente mit externen Dateien verknüpfen.
  7. Definieren Sie alle Beziehungen, die zwischen den Klassen existieren. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeBeziehungen.
    • Fügen Sie Assoziationsbeziehungen hinzu.
    • Geben Sie die Typen der Assoziationsbeziehungen an.
    • Fügen Sie Generalisierungsbeziehungen hinzu.

Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeStatische Struktur mit Klassendiagrammen modellieren.

Stereotype Interaktionen identifizieren

Dieser Schritt muss nur während der Konzeptionsphase ausgeführt werden.

Mit diesem Schritt werden die Interaktionen zwischen Schlüsselabstraktionen im System ermittelt, die relevante Arten von Aktivitäten im System charakterisieren bzw. darstellen. Diese Interaktionen werden als Anwendungsfallrealisierungen erfasst.

Anleitungen zur Erstellung von Anwendungsfallrealisierungen finden Sie in Anwendungsfallanalyse.

Wenn Sie mit Iterationsdiagrammen arbeiten, können Sie einfach und schnell zwischen den Sichten "Kommunikationsdiagramm" und "Ablaufdiagramm" hin- und herschalten:

  1. Fügen Sie Ihrem Modell ein Ablauf- oder ein Kommunikationsdiagramm hinzu. Es wird ein Diagramm innerhalb einer Eigner-Interaktion erstellt.
  2. Fügen Sie dem erstellten Diagramm bei Bedarf Modellelemente hinzu, um die Interaktion darzustellen.
  3. Um das Begleitdiagramm hinzuzufügen, klicken Sie mit der rechten Maustaste auf die Interaktion und wählen Sie "Diagramm hinzufügen > Kommunikationsdiagramm" aus.
  4. Wenn Sie mit einem Kommunikationsdiagramm begonnen haben, bleibt der Ablauf bis auf einen Schritt gleich. Wenn Sie mit der rechten Maustaste auf die Interaktion geklickt haben, wählen Sie jetzt "Diagramm hinzufügen > Ablaufdiagramm" aus.

Deployment-Übersicht entwickeln

  1. Fügen Sie dem Deployment-Modell ein Deployment-Diagramm hinzu.
  2. Fügen Sie dem Diagramm Knoten hinzu.
  3. Verwenden Sie in der Palette aus dem Fach zu Deployment den Stereotypknoten und wählen Sie einen der vordefinierten Knotentypen aus. Beachten Sie, dass die meisten vordefinierten Knoten benutzerdefinierte grafische Darstellungen haben, die sich auf den Knotentyp beziehen.
  4. Fügen Sie Assoziationen zwischen Knoten hinzu.

Weitere Hinweise:

  1. Ziehen Sie mit Hilfe von Hinweisen und Farben die Aufmerksamkeit auf wichtige Features in Ihrem Diagramm.
  2. Fügen Sie Details hinzu, die mit der erforderlichen Abstraktionsebene übereinstimmen. Machen Sie nur die Details zugänglich, die für das Verständnis wichtig sind.
    1. Wählen Sie "Aus Diagramm löschen" aus, um nicht gewünschte Elemente aus einem Diagramm zu löschen. Die Elemente werden aus dem Diagramm gelöscht, es hat jedoch keine Auswirkungen auf das zu Grunde liegende Modell.
    2. Verwenden Sie Filter, um Details auszublenden\einzublenden. Klicken Sie mit der rechten Maustaste auf Modellelemente in einem Diagramm und wählen Sie "Filter" aus, um auf diese Funktion zuzugreifen.
  3. Verwenden Sie Elemente aus dem Fach zu den geometrischen Formen, um zusätzliche Informationen hinzuzufügen, die erfasst werden müssen, die jedoch über die Elemente im Fach zu Deployment nicht auf geeignete Weise dargestellt werden können.
  4. Konzentrieren Sie sich darauf, einen Aspekt der statischen Deployment-Sicht des Systems zu erfassen. Es ist nicht erforderlich, dass ein Deployment-Diagramm alle Aspekte der Deployment-Sicht eines Systems erfasst.
  5. Verwenden Sie bei Bedarf die <<Perspective>>-Pakete, um Modellelemente für eine zusätzliche oder alternative Sicht zusammenzustellen.
  6. Wenn das Diagramm ausführlicher sein muss, verwenden Sie Profile, Integritätsbedingungen, Hinweise und die Registerkarte "Dokumentation", um die Informationen zu erfassen.

Analysemechanismen identifizieren

Einige Features und Leistungsmerkmale des Tools tragen zur Bottom-Up-Erkennung einiger Analysemechanismen über die Unterstützung für Architekturanalyse (Muster-/Antimustererkennung) bei. Das RAS-Repository eignet sich sehr gut für die Zusammenstellung aller potenzieller Wiederverwendungskandidaten. Eine vollständige Übersicht zu den Anforderungen für die Zusammenstellung wiederverwendbarer Assets finden Sie in den Abschnitten Symbol für OnlinehilfeSoftwaremodellierungsartefakte zur Wiederverwendung erstellen und Symbol für OnlinehilfeMuster anwenden.

Wenn Sie Muster, Umsetzungen, Modelle, schriftliche Anleitungen oder andere Artefakte haben, die Sie innerhalb der Organisation gemeinsam benutzen oder wiederverwenden möchten, können Sie auch hier RAS einsetzen. Es ermöglicht Ihnen, ein wiederverwendbares Asset in einer Lösung zu suchen, zu überprüfen, Feedback zu geben und zu integrieren. Ausführliche Anleitungen zur Arbeit mit RAS und Assets, die mit dieser Spezifikation gepackt wurden, finden Sie in den folgenden Themen:

  • Symbol für OnlinehilfeRAS-Assets - RAS-Assets für den Import/Export 
  • Symbol für OnlinehilfeLernprogramm und Beispiele zum Importieren und Exportieren von RAS-Assets 
  • Symbol für OnlinehilfeAssets zur Wiederverwendung packen
  • Symbol für OnlinehilfeRAS-Assets finden 

Dokumentieren Sie jeden Analysemechanismus und die zugehörigen Clients, während Sie diesen Schritt bearbeiten. Das Tool kann Sie auf verschiedene Weise dabei unterstützen, diese Informationen zu finden und darzustellen:

  • Sie finden Clients, indem Sie mit der rechten Maustaste auf den Mechanismus und dann auf "Filter > Verwandte Elemente einblenden" klicken.
  • Verwenden Sie ein Themendiagramm. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeThemendiagramme.
  • Verwenden Sie ein Anzeigediagramm. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeAnzeigediagramme .
  • Verwenden Sie die <<Perspective>>-Pakete, um eine Sicht der verwendeten Mechanismen bereitzustellen.
  • Mit den <<Framework>>-Paketen können Sie darstellen, wie die Mechanismen umgesetzt werden. 

Ergebnisse überprüfen

Da die Ergebnisse der Architekturanalyse vorläufig und relativ informell sind, sollten die Überprüfungen ebenfalls formlos sein. Es kann hilfreich sein, die Modelle im HTML-Format zu veröffentlichen. Beachten Sie, dass Diagramme in Microsoft Word und andere Programme kopiert werden können.

Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModelle veröffentlichen und im Lernprogramm Symbol für OnlinehilfeModell in einem Web veröffentlichen.

Zusätzliche Toolinformationen

Lernprogramme:

  • Symbol für OnlinehilfeMuster anwenden
  • Symbol für OnlinehilfeMuster erstellen
  • Symbol für OnlinehilfeDie UML-Modellierungshierarchie verstehen 
  • Symbol für OnlinehilfeEinführung in die Perspektive "Modellierung"

Beispiele:

  • Symbol für OnlinehilfeMuster - Einfaches UML-Modell