RFG manipulation

Die folgenden Use-Cases beschreiben Operationen, die den RFG manipulieren. Sie können in einem Graph-Window angewendet werden, es sei denn, dass die betreffende View durch den Benutzer explizit oder durch eine gestartete Analyse implizit auf read-only gesetzt wurde. Die Basis-Views sind permanent auf read-only gesetzt. Aktionen, die auf den RFG agieren, aber als Einstiegspunkt den View-Master enthalten werden unter View-Master (Abschnitt namens View-Master in Kapitel 4) beschrieben.

Abbildung 5-3. Use Case Diagramm: RFG manipulation

Use Case Diagramm: RFG manipulation

Accept

Akzeptiert einen oder mehrere selektierte Knoten (d.h. verschiebt diese in die aktuelle User-View). Falls alle Knoten eines Fensters akzeptiert werden sollen, müssen auch alle Knoten selektiert werden.

Vorbedingungen

  • Es ist mindestens ein RFG-Objekt im Graph-Window selektiert.

  • Es dürfen nur Kanten selektiert sein, deren Start- und Endknoten selektiert sind.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE übernimmt den oder die selektierten Knoten in die aktuelle User-View und entfernt diese samt ihren Kanten aus der aktuellen View. Falls im Moment ein Fenster, das diese User-View zeigt, geöffnet ist, dann holt OpenCAGE dieses in den Vordergrund und selektiert die neu hinzugekommenen RFG-Objekte. Bei AC-Knoten werden auch die darunterliegenden RFG-Objekte verschoben.

Accept as

Akzeptiert genau einen selektierten Knoten (d.h. verschiebt diesen in die aktuelle User-View). Davor kann der Benutzer den einzelnen Knoten umbenennen.

Vorbedingungen

  • Es ist genau ein Knoten im aktuellen Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE öffnet den Dialog Rename Node (Abschnitt namens Rename Node in Kapitel 4)

  2. Der Benutzer gibt den neuen Namen ein.

  3. OpenCAGE übernimmt den selektierten Knoten in die aktuelle User-View und entfernt diesen samt seinen Kanten aus der aktuellen View. Falls im Moment ein Fenster, welches die User-View zeigt, geöffnet ist, holt OpenCAGE dieses in den Vordergrund und selektiert die neu hinzugekommenen RFG-Objekte.

Reject

Entfernt eine oder mehrere selektierte Kanten oder Knoten aus der aktuellen View und verschiebt diese in die Trashcan-View.

Vorbedingungen

  • Es ist mindestens ein RFG-Objekt in einem Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE löscht alle RFG-Objekte aus der Trashcan-View.

  2. Dann kopiert es in die Trashcan-View die selektierten Knoten, die Nachbarn der selektierten Knoten, die Kanten zwischen selektierten Knoten und ihren Nachbarknoten und die induzierten Kanten der selekierten Knoten.

  3. OpenCAGE entfernt die selektierten Kanten und/oder die selektierten Knoten mit ihren induzierten Kanten aus der aktuellen View.

Copy

Kopiert die selektierten Knoten mit ihren induzierten Kanten aus der aktuellen View in die Clipboard-View.

Vorbedingungen

  • Es ist mindestens ein Knoten selektiert.

  • Es dürfen nur Kanten selektiert sein, deren Start- und Endknoten selektiert sind.

  • Es sind nur RFG-Objekte aus demselben Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE löscht alle RFG-Objekte aus der Clipboard-View. Dann kopiert es die selektierten RFG-Objekte in die Clipboard-View.

Cut

Schneidet Knoten mit ihren induzierten Kanten aus der aktuellen View aus und fügt sie in die Clipboard-View ein.

Vorbedingungen

  • Es ist mindestens ein Knoten selektiert.

  • Es dürfen nur Kanten selektiert sein, deren Start- und Endknoten selektiert sind.

  • Es sind nur RFG-Objekte aus einer View und aus einem Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE löscht alle RFG-Objekte aus der Clipboard-View.

  2. Dann schneidet es die selektierten RFG-Objekte aus der aktuellen View aus und fügt sie in die Clipboard-View ein. Kanten zwischen nicht selektierten Knoten und selektierten Knoten, gehen dabei in der aktuellen View verloren.

Paste

Fügt die Knoten und Kanten aus der Clipboard-View in die aktuelle View ein.

Vorbedingungen

  • Es ist ein Graph-Window geöffnet.

  • In der Clipboard-View ist mindestens ein Knoten vorhanden.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE ändert das Aussehen des Mauszeigers in den Paste-Pointer.

  2. Der Benutzer wählt im aktuellen Graph-Window die entsprechende Position aus, an der die Knoten und Kanten aus der Clipboard-View eingefügt werden sollen.

  3. OpenCAGE fügt die Knoten und Kanten aus der Clipboard-View in das aktuelle Graph-Window an die Position des Mauszeigers ein.

Alternative Abläufe

erster alternativer Ablauf

Bedingungen:

  • Im aktuellen Graph-Window existiert schon ein Teil der Knoten.

  • Die Knoten im aktuellen Graph-Window haben andere Attribute als die Knoten, die eingefügt werden sollen.

  1. Das OpenCAGE zeigt den Dialog Warning: Paste Conflict (Abschnitt namens Warning: Paste Conflict in Kapitel 4) an.

  2. Mit Hilfe dieses Dialogs kann der Benutzer auswählen, ob die Knoten im aktuellen Graph-Window erhalten bleiben sollen und dafür die Knoten aus der Clipboard-View verloren gehen, ob die Knoten im aktuellen Graph-Window von den Knoten aus der Clipboard-View überschrieben werden oder ob der Vorgang abgebrochen wird.

  3. Entscheidet sich der Benutzer dafür, den Vorgang abzubrechen, dann werden die Knoten, bei denen Konflikte aufgetreten sind, durch Conflict-Highlighting hervorgehoben.

Rename Node

Ändert den Namen eines Knotens.

Vorbedingungen

  • Genau ein Knoten ist im aktuellen Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE öffnet den Dialog Rename Node (Abschnitt namens Rename Node in Kapitel 4).

  2. OpenCAGE übernimmt den neuen Knotennamen im RFG und in der Darstellung.

Edit Attributes

Ändert die Attribute eines RFG-Objektes

Vorbedingungen

  • Es ist genau ein RFG-Objekt im aktuellen Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE öffnet den Dialog Edit Attributes (Abschnitt namens Edit Attributes in Kapitel 4).

  2. OpenCAGE hebt alle Attribute, die momentan sichtbar sind, graphisch hervor. OpenCAGE sortiert die Attributsliste alphabetisch.

  3. Der Benutzer klickt in ein Value-Feld und ändert den Text dieses Feldes. Dieser Schritt kann beliebig oft ausgeführt werden.

  4. Der Benutzer klickt auf den OK-Button.

  5. OpenCAGE speichert den geänderten Wert zum jeweiligen Attribut.

Analysis

Führt eine Analyse auf einer View aus.

Vorbedingungen

  • Es existiert mindestens ein Graph-Window.

mögliche Einstiegspunkte

  • Masterbar

  • Menüleiste

  • Skript

Ablauf

  1. OpenCAGE öffnet den Analysis-Master (Abschnitt namens Analysis-Master in Kapitel 4).

  2. Der Benutzer wählt die gewünschte Analyse aus. Der Benutzer drückt den To Window Button.

  3. OpenCAGE ändert den Mauszeiger in den Analyze-Window- Pointer (Abschnitt namens Pointer in Kapitel 4).

  4. Der Benutzer bewegt den Pointer in eine Graph-Area und klickt die linke Maustaste.

  5. OpenCAGE öffnet den Dialog New User-View (Abschnitt namens New User-View in Kapitel 4).

  6. Er vergibt einen Namen für die neue View, die das Ergebnis der Analyse enthält. Der Benutzer startet die Analyse mit dem Create Button.

  7. OpenCAGE sperrt sämtliche Use-Cases aus dem Bereich RFG Manipulation. Der Dialog Progress (Abschnitt namens Progress in Kapitel 4) wird angezeigt.

  8. Am Ende der Analyse bekommt der Benutzer ein neues Fenster mit der Graph-Window der neuen View. OpenCAGE erlaubt den Zugriff auf die gesperrten Use-Cases wieder.

Alternative Abläufe

erster alternativer Ablauf

Bedingung: Der Benutzer bricht die Analyse mit Hilfe des Dialogs Progress (Abschnitt namens Progress in Kapitel 4) ab.

  1. Der Analysevorgang wird wenn möglich abgebrochen und bleibt wirkungslos. Der Benutzer kann den Vorgang von neuem starten. OpenCAGE erlaubt den Zugriff auf die gesperrten Use-Cases wieder.

zweiter alternativer Ablauf

Bedingung: Der Benutzer benutzt anstelle des To Window Buttons den Button To RFG. Ab Schritt 5 wird der Use-Case regulär durchgeführt.

  1. Die Analyse wird auf dem ganzen RFG durchgeführt.

Collapse

Ein oder mehrere Knoten werden zu einem AC-Knoten zusammengefasst.

Vorbedingungen

  • Es ist mindestens ein Knoten im aktuellen Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE fragt den Benutzer mit dem Dialog Collapse (Abschnitt namens Collapse) nach einem Namen für den neuen Knoten.

  2. Der Benutzer gibt den neuen Knotennamen für den Knoten ein.

  3. OpenCAGE führt auf die selektierten Knoten eine Collapse-Operation aus. Die genaue Spezifikation dieser Operation ist der RFG-Spezifikation zu entnehmen.

Expand

Macht die Funktion Collapse rückgängig. Holt alle Knoten in dem selektierten Knoten eine Hierarchieebene hoch.

Vorbedingungen

Es ist genau ein AC-Knoten im aktuellen Graph-Window selektiert.

mögliche Einstiegspunkte

  • Kontextmenü

  • Skript

Ablauf

  1. OpenCAGE führt auf die selektierten Knoten eine Expand-Operation aus. Die genaue Spezifikation dieser Operation ist der RFG-Spezifikation zu entnehmen.