Toolmentor: Designelemente mit Rational Software Architect identifizieren
Dieser Toolmentor beschreibt, wie Sie mit der Modellierungsumgebung von RSA Designelemente identifizieren.
Tool: Rational Software Architect
Erweiterung: Designelemente mit Rational Software Development identifizieren
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Überblick

In diesem Toolmentor werden die folgenden Schritte für die Anwendungsfälle ausgeführt, die in der aktuellen Iteration entworfen werden sollen:

Zusätzliche Toolinformationen

Architektonisch relevante Designelemente können in einer gesonderten logischen Sicht verwaltet werden, die im Einklang mit den identifizierten Designelementen verwaltet wird. Es wird empfohlen, die <<Perspective>>-Pakete zu verwenden. Nähere Informationen zu diesem Thema finden Sie im White Paper Model Structure Guidelines for RSx.

Ereignisse und Signale identifizieren

Die Merkmale von Ereignissen, die in UML 2.0 auch als Auslöser bezeichnet werden, sollten gegebenenfalls erfasst werden, um die Identifizierung der Designelemente zu steuern, die diese Ereignisse verarbeiten. Diese Informationen können formlos, z. B. in einem gesonderten Dokument, jedoch nicht im Rahmen eines Modells erfasst werden.

Asynchrone Kommunikationsereignisse können als Signale modelliert werden, um die Daten zu veranschaulichen, die sie übertragen, oder um Beziehungen zwischen Signalen, z. B. eine Generalisierungsbeziehung, auszudrücken. Die folgenden Teilschritte beschreiben, wie Signale modelliert werden:

  1. Erstellen Sie bei Bedarf Klassendiagramme. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme zu Modellelementen hinzufügen.
  2. Fügen Sie Signale hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme erstellen und modifizieren.
  3. Fügen Sie jedem Designelement eine Kurzbeschreibung hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente dokumentieren.
  4. Fügen Sie, sofern angebracht, Generalisierungsbeziehungen zwischen Signalen hinzu.  

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

Klassen, aktive Klassen und Subsysteme identifizieren

Designelemente werden in der Regel mit den folgenden drei Methoden erstellt:

  • Erweiterung eines Musters
  • Modellierung
  • Codierung und Rückentwicklung (Reverse-Engineering) 

Diese Methoden werden in den folgenden Abschnitten beschrieben.

Erweiterung eines Musters

Ein Muster ist eine besondere Form der Umsetzung. Es ist für die interaktive, schrittweise Ausarbeitung hauptsächlich in einem einzigen Metamodell und auf derselben Abstraktionsebene, oftmals innerhalb desselben Modells optimiert. Nähere Informationen finden Sie im Abschnitt Analysemechanismen.

Nähere Informationen finden Sie in der Onlinehilfe Symbol für OnlinehilfeMuster erstellen und Symbol für OnlinehilfeMuster anwenden.

Modellierung

Dieses Tool unterstützt die modellorientierte Softwareentwicklung (siehe MDD (Model Driven Development) und MDA (Model Driven Architecture) und Analysemechanismen). Hierbei entwickeln Sie eine Reihe von Modellen, zu denen auch ein Designmodell gehört und generieren Implementierungsartefakte (3GL-Code, Deskriptoren etc.). Diese werden aus dem Designmodell unter Verwendung von Umsetzungen abgeleitet. In einigen Fällen werden bei den Umsetzungen, die Code generieren, Analyseklassen als Eingabe verwendet. Hauptsächlich orientieren sie sich jedoch an Designelementen. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeUmsetzungen anwenden.

Bei einem traditionellen Entwicklungsansatz erstellen Sie Klassendiagramme im Designmodell, um Designelemente zu erfassen. Wenn Sie die Analyseklassen verwalten möchten, können Sie Rückverfolgbarkeitsabhängigkeiten zu den Analyseklassen einrichten.

  1. Erstellen Sie bei Bedarf Klassendiagramme. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme zu Modellelementen hinzufügen.
  2. Fügen Sie Subsysteme und Klassen hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeKlassendiagramme erstellen und modifizieren.
  3. Fügen Sie jedem Designelement eine Kurzbeschreibung hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente dokumentieren.
  4. Fügen Sie Rückverfolgbarkeit zu Analyseklassen hinzu (optional). Verwenden Sie die Rückverfolgbarkeitabhängigkeiten Ihrer Designelemente auf die Analyseklassen, auf denen sie basieren. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeAbstraktionsbeziehungen in der UML-Modellierung.
  5. Fassen Sie die Designelemente in Subsystemen und Paketen zusammen. Nähere Informationen finden Sie im White Paper Model Structure Guidelines for RSx.

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

Codierung und Reverse-Engineering (Rückentwicklung)

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

Ein anderer Ansatz stellt den Code an erste Stelle. Der Code ist die treibende Kraft, da er entweder bereits vorhanden ist (z. B. in einem Entwicklungszyklus, der kein Green-Field-Entwicklungszyklus ist) oder das Team muss ein bestimmtes Projektrisiko in den Griff bekommen und hierfür einen Prototyp entwickeln, um ein komplexes Konzept zu validieren. Als Teil der Unterstützung für Architekturerkennung und -wiederherstellung (siehe Architekturerkennung, Analyse und Steuerung) können mit der Codevisualisierungsfunktion des Tools Themendiagramme, z. B. Paketstrukturen, Klasseninterna, Vererbungsbäume und Kollaborationen, automatisch gefüllt werden. Das Ziel dieser Aufgabe besteht nicht nur darin, den vorhandenen Code zu verstehen, sondern auch ein Modell der Anwendung zu extrahieren, das zusammen mit bestimmten anderen Modellen unter Verwendung von Umsetzungen für die Generierung der neuen Anwendungsversion verwendet werden könnte.

Nachdem Sie ein UML-Diagramm generiert bzw. erstellt haben, stehen Ihnen folgende Optionen für die Verwendung der Codedarstellungen als Teil Ihres Designmodells zur Verfügung:

  • Erzeugen Sie mittels Harvesting eine UML-Darstellung eines Codeelements in Ihrem Designmodell (als echtes semantisches Modell). Dabei wird in Ihrem Designmodell ein neues UML-Element erstellt, das keinen Bezug mehr zu dem Codelement hat, aus dem es mit Harvesting erzeugt wurde. Es hat jedoch Eigenschaften (zum Beispiel Attribute und Operationen), die die Eigenschaften des Codeelements widerspiegeln, aus dem es mittels Harvesting erzeugt wurde. Da es sich bei dem Element um ein echtes semantisches UML-Element handelt, kann daraus neuer Code generiert werden. (Anders ausgedrückt hat es im Designmodell denselben Status wie die Designelemente, die zuvor durch den Green-Field-Modellierungsprozess definiert wurden.)
  • Fügen Sie eine visuelle Referenz auf das Codeelement in ein Diagramm ein, das sich in Ihrem Designmodell befindet. Diese Referenz selbst hat keine semantische Bedeutung innerhalb des Designmodells und es wird kein neuer Code daraus generiert. Mit der Referenz wird lediglich auf das eigentliche Codeelement verwiesen. Sie können aber Beziehungen zwischen der Codereferenz und den semantischen Designelementen in das Designmodell einzeichnen. Diese Beziehungen haben im Designmodell semantischen Wert und beeinflussen die Codegenerierung.

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

Subsystemschnittstellen identifizieren

Die folgenden Schritte beziehen sich auf größere Subsysteme:

  1. Identifizieren Sie für jedes Subsystem eine Reihe geeigneter Schnittstellen. Wenn Sie bereits Analyseklassen erstellt und Anwendungsfälle auf Analyseebene realisiert haben, können Sie jetzt entscheiden, wie diese Operationen gruppiert und als Schnittstellen bestimmter Komponenten oder Services zugänglich gemacht werden müssen. Fügen Sie einem vorhandenen Komponentendiagramm Schnittstellen hinzu oder erstellen Sie bei Bedarf neue Komponentendiagramme. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeSchnittstellen zu Modelldiagrammen hinzufügen.
  2. Fügen Sie Schnittstellenabhängigkeiten hinzu.  
  3. Ordnen Sie den Schnittstellen Subsysteme hinzu, indem Sie eine Realisierungsbeziehung vom Subsystem zur Schnittstelle einrichten.
  4. Dokumentieren Sie die Schnittstelle, einschließlich des erforderlichen Verhaltens. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente dokumentieren.
  5. Fügen Sie Operationen zur Schnittstelle hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeOperationen zu Klassifikationsmerkmalen in Diagrammen hinzufügen.
  6. Fügen Sie jeder Operation eine Beschreibung hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeModellelemente dokumentieren.
  7. Fügen Sie jeder Operation Parameter hinzu. Nähere Informationen finden Sie im Onlinehilfethema Symbol für OnlinehilfeOperationen zu Klassifikationsmerkmalen in Diagrammen hinzufügen.
  8. Fassen Sie die Schnittstellen in Paketen zusammen.  

In UML 2.0 sind Subsysteme große Komponenten, die in strukturierten Klassen mit Ports und/oder Schnittstellen dargestellt werden können. Informationen hierzu finden Sie in der Onlinehilfe in den Themen zu UML 2.0. 

Kapselprotokolle identifizieren

Die Modellierung von Kapseln und Protokollen wird nicht unterstützt.

Zusätzliche Toolinformationen

Lernprogramme:

  • Symbol für OnlinehilfeMuster anwenden

Beispiele:

  • Symbol für OnlinehilfeMuster - Einfaches UML-Modell