ArgoUML Anwenderhandbuch

Eine Lernanleitung und eine Referenzbeschreibung

Alejandro Ramirez

Philippe Vanpeperstraete

Andreas Rueckert

Kunle Odutola

Jeremy Bennett

Linus Tolke

Michiel van der Wulp

Übersetzung: Harald Braun

Dieses Material darf nur nach den in der Open Publication Lizenz, Version 1.0 oder höher beschriebenen Regeln und Bedingungen weitergegeben werden. Eine Kopie dieser Lizenz finden Sie im Abschnitt Open Publication License . Die aktuelle Version ist unter http://www.opencontent.org/openpub/ verfügbar.

Zusammenfassung

Diese Version des Handbuches beschreibt die Version 0.30 von ArgoUML.


Inhaltsverzeichnis

1. Vorwort
1. Einleitung
1.1. Die Anfänge und ein Überblick über ArgoUML
1.1.1. Objektorientierte Analyse und Design
1.1.2. Die Entwicklung von ArgoUML
1.1.3. Mehr über das ArgoUML-Projekt
1.2. Der Bezugsbereich dieses Anwenderhandbuches
1.2.1. Der Leserkreis
1.2.2. Bezugsbereich
1.3. Überblick über das Anwenderhandbuch
1.3.1. Die Struktur des Übungshandbuches
1.3.2. Die Struktur des Referenzhandbuches
1.3.3. Anwender-Feedback
1.4. Annahmen
1. Übungsanleitung
2. Einleitung
3. UML basierte OOA&D
3.1. Hintergrundinformationen zu UML
3.2. UML basierter Prozess für OOA&D
3.2.1. Prozesstypen
3.2.2. Der Entwicklungsprozess für dieses Übungshandbuch
3.3. Warum ist ArgoUML anders
3.3.1. Kognitive Psychologie
3.3.2. Offene Standards
3.3.3. 100% reines Java
3.3.4. Offener Quellcode (Open Source)
3.4. ArgoUML Grundlagen
3.4.1. Erste Schritte
3.4.2. Die ArgoUML-Anwenderschnittstelle
3.4.3. Ausgabe
3.4.4. Arbeiten mit Design-Kritiken
3.5. Die Fallstudie (Noch zu schreiben)
4. Erfassen der Anforderungen
4.1. Einleitung
4.2. Der Anforderungs-Erfassungs-Prozess
4.2.1. Prozess-Schritte
4.3. Ergebnis des Anforderungs-Erfassungs-Prozesses
4.3.1. Visions-Dokument
4.3.2. Anwendungsfalldiagramm
4.3.3. Die Anwendungsfall-Spezifikation
4.3.4. Ergänzende Anforderungsspezifikation
4.4. Anwendungsfälle in ArgoUML verwenden
4.4.1. Akteure
4.4.2. Anwendungsfälle
4.4.3. Assoziationen
4.4.4. Hierarchische Anwendungsfälle
4.4.5. Stereotypen
4.4.6. Dokumentation
4.4.7. Systemgrenzen
4.5. Fallstudie
4.5.1. Das Dokument Vision
4.5.2. Akteure und Anwendungsfälle identifizieren
4.5.3. Assoziationen (Noch zu beschreiben)
4.5.4. Erweiterte Diagrammfunktionen (Noch zu beschreiben)
4.5.5. Anwendungsfallspezifikationen (Noch zu beschreiben)
4.5.6. Ergänzende Anforderungsspezifikation (Noch zu beschreiben)
5. Analyse
5.1. Der Analyseprozess
5.1.1. Klasse-, Verantwortlichkeits- und Zusammenarbeits-Karten (CRC)
5.1.2. Konzeptdiagramm (Noch zu beschreiben)
5.1.3. System-Sequenzdiagramm (Noch zu beschreiben)
5.1.4. System-Zustandsdiagramm (Noch zu beschreiben)
5.1.5. Anwendungsfalldiagramm realisieren (Noch zu beschreiben)
5.1.6. Dokumente (Noch zu beschreiben)
5.2. Klassendiagramme (Noch zu beschreiben)
5.2.1. Das Klassendiagramm (Noch zu beschreiben)
5.2.2. Erweiterte Klassendiagramme (Noch zu beschreiben)
5.3. Klassendiagramme in ArgoUML erzeugen
5.3.1. Klassen
5.3.2. Assoziationen (Noch zu beschreiben)
5.3.3. Klassenattribute und Operationen (Noch zu beschreiben)
5.3.4. Erweiterte Klasseneigenschaften (Noch zu beschreiben)
5.4. Sequenzdiagramme (Noch zu beschreiben)
5.4.1. Das Sequenzdiagramm (Noch zu beschreiben)
5.4.2. Aktionen identifizieren (Noch zu beschreiben)
5.4.3. Erweiterte Sequenzdiagramme (Noch zu beschreiben)
5.5. Sequenzdiagramme in ArgoUML erzeugen
5.5.1. Sequenzdiagramme
5.5.2. Aktionen (Noch zu beschreiben)
5.5.3. Erweiterte Sequenzdiagramme (Noch zu beschreiben)
5.6. Zustandsdiagramme (Noch zu beschreiben)
5.6.1. Das Zustandsdiagramm (Noch zu beschreiben)
5.6.2. Erweiterte Zustandsdiagramme (Noch zu beschreiben)
5.7. Zustandsdiagramme in ArgoUML erstellen
5.7.1. Zustandsdiagramme (Noch zu beschreiben)
5.7.2. Zustände (Noch zu beschreiben)
5.7.3. Transitionen (Noch zu beschreiben)
5.7.4. Aktionen (Noch zu beschreiben)
5.7.5. Erweiterte Zustandsdiagramme (Noch zu beschreiben)
5.8. Anwendungsfälle realisieren (Noch zu beschreiben)
5.9. Realisierungs-Anwendungsfälle in ArgoUML erstellen (Noch zu beschreiben)
5.10. Fallstudie (Noch zu beschreiben)
5.10.1. CRC Karten
5.10.2. Klassendiagramme konzipieren (Noch zu beschreiben)
5.10.3. System-Sequenzdiagramme (Noch zu beschreiben)
5.10.4. System-Zustandsdiagramme (Noch zu beschreiben)
5.10.5. Die Realisierung von Anwendungsfällen (Noch zu beschreiben)
6. Design
6.1. Der Designprozess (Noch zu beschreiben)
6.1.1. Klasse, Verantwortlichkeits- und Zusammenhänge- (CRC) Karten
6.1.2. Paketdiagramm (Noch zu beschreiben)
6.1.3. Klassendiagramme realisieren (Noch zu beschreiben)
6.1.4. Sequenz- und Kollaborationsdiagramme (Noch zu beschreiben)
6.1.5. Zustands- und Aktivitätsdiagramme (Noch zu beschreiben)
6.1.6. Verteilungsdiagramme (Noch zu beschreiben)
6.1.7. Dokumente (Noch zu beschreiben)
6.2. Paketdiagramme (Noch zu beschreiben)
6.2.1. Das Paketdiagramm (Noch zu beschreiben)
6.2.2. Erweiterte Paketdiagramme (Noch zu beschreiben)
6.3. Paketdiagramme in ArgoUML erstellen
6.3.1. Pakete
6.3.2. Beziehungen zwischen Paketen (Noch zu beschreiben)
6.3.3. Erweiterte Paketfunktionen (Noch zu beschreiben)
6.4. Mehr über Klassendiagramme (Noch zu beschreiben)
6.4.1. Das Klassendiagramm (Noch zu beschreiben)
6.4.2. Erweiterte Klassendiagramme (Noch zu beschreiben)
6.5. Mehr über Klassendiagramme in ArgoUML (Noch zu beschreiben)
6.5.1. Klassen (Noch zu beschreiben)
6.5.2. Klassenattribute und -operationen (Noch zu beschreiben)
6.5.3. Erweiterte Klassenfunktionen
6.6. Sequenz- und Kollaborationsdiagramme (Noch zu beschreiben)
6.6.1. Mehr über das Sequenzdiagramm (Noch zu beschreiben)
6.6.2. Das Kollaborationsdiagramm (Noch zu beschreiben)
6.6.3. Erweiterte Kollaborationsdiagramme (Noch zu beschreiben)
6.7. Kollaborationsdiagramme in ArgoUML erstellen (Noch zu beschreiben)
6.7.1. Kollaborationsdiagramme (Noch zu beschreiben)
6.7.2. Nachrichten (Noch zu beschreiben)
6.7.3. Erweiterte Kollaborationsdiagramme (Noch zu beschreiben)
6.8. Zustandsdiagramme (Noch zu beschreiben)
6.8.1. Das Zustandsdiagramm (Noch zu beschreiben)
6.8.2. Erweiterte Zustandsdiagramme (Noch zu beschreiben)
6.9. Zustandsdiagramme in ArgoUML erstellen (Noch zu beschreiben)
6.9.1. Zustandsdiagramme (Noch zu beschreiben)
6.9.2. Zustände (Noch zu beschreiben)
6.9.3. Transitionen (Noch zu beschreiben)
6.9.4. Aktionen (Noch zu beschreiben)
6.9.5. Erweiterte Zustandsdiagramme (Noch zu beschreiben)
6.10. Aktivitätsdiagramme (Noch zu beschreiben)
6.10.1. Das Aktivitätsdiagramm (Noch zu beschreiben)
6.11. Aktivitätsdiagramme in ArgoUML erstellen (Noch zu beschreiben)
6.11.1. Aktivitätsdiagramme (Noch zu beschreiben)
6.11.2. Aktionszustände (Noch zu beschreiben)
6.12. Verteilungsdiagramme (Noch zu beschreiben)
6.12.1. Das Verteilungsdiagramm (Noch zu beschreiben)
6.13. Verteilungsdiagramme in ArgoUML erstellen (Noch zu beschreiben)
6.13.1. Knoten (Noch zu beschreiben)
6.13.2. Komponenten (Noch zu beschreiben)
6.13.3. Beziehungen zwischen Knoten und Komponenten (Noch zu beschreiben)
6.14. System-Architektur (Noch zu beschreiben)
6.15. Fallstudie (Noch zu beschreiben)
6.15.1. CRC-Karten (Noch zu beschreiben)
6.15.2. Pakete (Noch zu beschreiben)
6.15.3. Klassendiagramme (Noch zu beschreiben)
6.15.4. Sequenzdiagramme (Noch zu beschreiben)
6.15.5. Kollaborationsdiagramme (Noch zu beschreiben)
6.15.6. Zustandsdiagramme (Noch zu beschreiben)
6.15.7. Aktivitätsdiagramme (Noch zu beschreiben)
6.15.8. Das Verteilungsdiagramm (Noch zu beschreiben)
6.15.9. Die System-Architektur (Noch zu beschreiben)
7. Codegenerierung, Reverse Engineering und Round Trip Engineering
7.1. Einleitung
7.2. Codegenerierung
7.2.1. Code aus der statischen Struktur generieren
7.2.2. Code aus Interaktionen und Zustandsautomaten generieren
7.3. Codegenerierung in ArgoUML
7.3.1. Statische Struktur
7.3.2. Interaktionen und Zustandsdiagramme
7.4. Reverse Engineering
7.5. Round-Trip Engineering
2. Referenz Anwenderschnittstelle
8. Einleitung
8.1. Überblick über das Fenster
8.2. Generelles Verhalten der Maus in ArgoUML
8.2.1. Maustasten-Terminologie
8.2.2. Taste 1 Klick
8.2.3. Taste 1-Doppelklick
8.2.4. Taste 1-Bewegung
8.2.5. Umschalt- und Strg- und die Taste 1
8.2.6. Alt mit Taste 1: Verschieben
8.2.7. Strg mit Taste 1: Bedingtes ziehen
8.2.8. Taste 2-Aktionen
8.2.9. Taste 2-Doppelklick
8.2.10. Taste 2-Bewegung
8.3. Generelle Informationen über Fenster
8.3.1. Fenstergrösse verändern
8.4. Die Statuszeile
9. Die Symbolleiste
9.1. Dateioperationen
9.2. Editieroperationen
9.3. Ansicht-Operationen
9.4. Neues Diagramm
10. Die Menüzeile
10.1. Einleitung
10.2. Das Mausverhalten in der Menüzeile
10.3. Das Menü Datei
10.3.1. Neu
10.3.2. Projekt öffnen...
10.3.3. Projekt speichern
10.3.4. Projekt speichern unter...
10.3.5. Projekt speichern rückgängig machen
10.3.6. XMI importieren...
10.3.7. Exportiere als XMI...
10.3.8. Quellcode importieren...
10.3.9. Seite einrichten...
10.3.10. Drucken...
10.3.11. Grafik exportieren...
10.3.12. Alle Grafiken exportieren...
10.3.13. Notation
10.3.14. Projekteinstellungen...
10.3.15. Am häufigsten verwendete Dateien
10.3.16. Beenden
10.4. Das Menü Bearbeiten
10.4.1. Markieren
10.4.2. Aus Diagramm entfernen
10.4.3. Aus Modell entfernen
10.4.4. Perspektiven konfigurieren...
10.4.5. Einstellungen...
10.5. Das Menü Ansicht
10.5.1. Gehezu Diagramm...
10.5.2. Suchen...
10.5.3. Zoom
10.5.4. Gitter einstellen
10.5.5. Einrasten einrichten
10.5.6. Seitenumbrüche
10.5.7. Symbolleisten
10.5.8. XML-Quelltext
10.6. Das Menü "Neues Diagramm"
10.6.1. Anwendungsfalldiagramm
10.6.2. Klassendiagramm
10.6.3. Sequenzdiagramm
10.6.4. Kollaborationsdiagramm
10.6.5. Zustandsübergangsdiagramm
10.6.6. Aktivitätsdiagramm
10.6.7. Verteilungsdiagramm
10.7. Das Menü Anordnen
10.7.1. Ausrichten
10.7.2. Anordnen
10.7.3. Reihenfolge
10.7.4. Grösse an Inhalt anpassen
10.7.5. Layout
10.8. Das Menü Generieren
10.8.1. Markierte Klassen generieren ...
10.8.2. Alle Klassen generieren...
10.8.3. Gesamtes Projekt generieren... (Noch zu beschreiben)
10.8.4. Einstellungen zur Codegenerierung im Projekt... (Noch zu beschreiben)
10.9. Das Menü Kritiken
10.9.1. Kritiken ein-/ausschalten
10.9.2. Design-Wichtungen...
10.9.3. Design Ziele...
10.9.4. Kritiken anzeigen...
10.10. Das Menü Werkzeuge
10.11. Das Menü Hilfe
10.11.1. Systeminformation
10.11.2. Über ArgoUML
11. Der Explorer
11.1. Einleitung
11.2. Das Verhalten der Maus im Explorer
11.2.1. Taste 1-Klick
11.2.2. Taste 1-Doppelklick
11.2.3. Taste 1-Bewegung
11.2.4. Taste 2-Aktionen
11.2.5. Taste 2-Doppelklick
11.3. Verhalten der Tastatur im Explorer
11.4. Auswahl der Perspektiven
11.5. Perspektiven konfigurieren
11.5.1. Der Dialog Perspektiven konfigurieren
11.6. Das kontextsensitive Menü
11.6.1. Erstelle neues
11.6.2. Erstelle Modellelement
11.6.3. Kopiere das Diagramm als Bild in die Zwischenablage
11.6.4. Zum Diagramm hinzufügen
11.6.5. Aus Modell entfernen
11.6.6. Einstellen des Quellpfades... (Noch zu beschreiben)
11.6.7. Paket hinzufügen
11.6.8. Neuer Stereotyp
11.6.9. Alle Klassen im Namensraum hinzufügen
12. Das Editierfenster
12.1. Einleitung
12.2. Das Verhalten der Maus im Editierfenster
12.2.1. Taste 1-Klick
12.2.2. Taste 1-Doppelklick
12.2.3. Taste 1-Bewegung
12.2.4. Umschalt- und Strg-Veränderungen mit Taste 1
12.2.5. Taste 2-Aktionen
12.2.6. Taste 2-Doppelklick
12.2.7. Taste 2-Bewegung
12.2.8. Alt Gr mit Taste 1-Bewegung
12.3. Das Verhalten der Tastatur im Editierfenster
12.3.1. Schrittweises Bewegen eines Modellelementes
12.3.2. Durch die Modellelemente bewegen
12.4. Die Symbolleiste
12.4.1. Layout-Symbole
12.4.2. Kommentierungs-Symbole
12.4.3. Zeichen-Symbole
12.4.4. Anwendungsfalldiagrammspezifische Symbole
12.4.5. Klassendiagrammspezifische Symbole
12.4.6. Sequenzdiagrammspezifische Symbole
12.4.7. Kollaborationsdiagrammspezifische Symbole
12.4.8. Zustandsdiagrammspezifische Symbole
12.4.9. Aktivitätsdiagrammspezifische Symbole
12.4.10. Verteilungsdiagrammspezifische Symbole
12.5. Der Besen
12.6. Auswahl-Aktionsschaltflächen
12.7. Erläuterungen (Clarifiers)
12.8. Das Zeichengitter
12.9. Das Register Diagramm
12.10. Pop-Up Menü's
12.10.1. Kritiken
12.10.2. Reihenfolge
12.10.3. Hinzufügen
12.10.4. Darstellung
12.10.5. Modifikatoren
12.10.6. Kardinalität
12.10.7. Aggregation
12.10.8. Navigierbarkeit
12.11. Notation
12.11.1. Notation Sprachen
12.11.2. Notation Editieren im Diagramm
12.11.3. Notation Parsen
13. Der Bereich Details
13.1. Einleitung
13.2. Das Register "Zu Bearbeiten"
13.2.1. Assistenten
13.2.2. Die Schaltfläche Hilfe
13.3. Das Register Eigenschaften
13.4. Das Register Dokumentation
13.5. Das Register Darstellung
13.6. Das Register Quellcode
13.7. Das Register Randbedingungen
13.7.1. Der Bedingungs-Editor
13.8. Das Register Stereotypen
13.9. Das Register Eigenschaftswerte
13.10. Das Register Checkliste
14. Der Bereich Zu-Bearbeiten
14.1. Einleitung
14.2. Das Verhalten der Maus im Bereich Zu-Bearbeiten
14.2.1. Taste 1-Klick
14.2.2. Taste 1-Doppelklick
14.2.3. Taste 2-Aktionen
14.2.4. Taste 2-Doppelklick
14.3. Auswahl der Darstellung
14.4. Element-Zähler
15. Die Kritiken
15.1. Einleitung
15.1.1. Terminologie
15.1.2. Design-Mangel
15.2. Unkategorisiert
15.3. Klassenauswahl
15.3.1. Datentyp verbergen
15.3.2. Veringere die Anzahl der Klassen im Namensraum <Namensraum>
15.3.3. Diagramm aufräumen
15.4. Benennung
15.4.1. Assoziations-Namenskonflikt auflösen
15.4.2. Überarbeite die Attributnamen, um einen Konflikt zu vermeiden
15.4.3. Ändere Namen oder Signaturen in einem Modellelement
15.4.4. Doppelte End- (Rollen-) Namen in einer Assoziation
15.4.5. Rollenname steht im Konflikt mit einem Element
15.4.6. Einen Namen auswählen (Klassen und Schnittstellen)
15.4.7. Namenskonflikt in einem Namensraum
15.4.8. Wählen Sie einen eindeutigen Namen für ein Modellelement aus (Klassen und Schnittstellen)
15.4.9. Wählen Sie einen Namen aus (Attribute)
15.4.10. Wählen Sie einen Namen aus (Operationen)
15.4.11. Wählen Sie einen Namen aus (Zustände)
15.4.12. Wählen Sie einen eindeutigen Namen für ein (zustandsbehaftetes) Modellelement aus.
15.4.13. Ändern Sie den Namen, um eine Konfusion zu verhindern
15.4.14. Wählen Sie einen gültigen Namen aus
15.4.15. Ändern Sie den Namen des Modellelementes in ein nicht-reserviertes Wort
15.4.16. Wählen Sie einen besseren Namen für die Operation aus
15.4.17. Wählen Sie einen besseren Attributnamen aus
15.4.18. Klassenname groß schreiben
15.4.19. Paketname überarbeiten
15.5. Speicher
15.5.1. Überarbeiten Sie die Attributnamen, um einen Konflikt zu vermeiden
15.5.2. Fügen Sie Instanzvariablen zu einer Klasse hinzu
15.5.3. Fügen Sie der Klasse einen Konstruktor hinzu
15.5.4. Reduzieren Sie die Zahl der Attribute in der Klasse
15.6. Geplante Erweiterungen
15.6.1. Operationen in Schnittstellen müssen public sein
15.6.2. Schnittstellen dürfen nur Operationen haben
15.6.3. Entferne die Referenz auf die spezifische Subklasse
15.7. Zustandsautomaten
15.7.1. Reduzieren Sie die Anzahl der Transitionen im <Zustand>
15.7.2. Reduzieren Sie die Anzahl der Zustände im Automaten <Automat>
15.7.3. Fügen Sie dem <Zustand> Transitionen hinzu
15.7.4. Fügen Sie dem Modellelement <Modellelement> ankommende Transitionen hinzu
15.7.5. Fügen Sie dem Modellelement <Modellelement> abgehende Transitionen hinzu
15.7.6. Entfernen Sie den zusätzlichen Initialzustand
15.7.7. Fügen Sie einen initialen Zustand ein
15.7.8. Fügen Sie der Transition ein Signal oder einen Wächter hinzu
15.7.9. Ändere Vereinigungs-Transitionen
15.7.10. Ändere Gabelungs-Transitionen
15.7.11. Fügen Sie Entscheidungs-/Kreuzungstransitionen hinzu
15.7.12. Fügen Sie der Transition einen Wächter hinzu
15.7.13. Das Diagramm aufräumen
15.7.14. Eine Kante sichtbarer machen
15.7.15. Zusammengesetztes Assoziationsende mit der Kardinalität >1
15.8. Designmuster
15.8.1. Ziehen Sie Nutzung des Singleton-Musters für eine <class> in Betracht.
15.8.2. Singleton Stereotyp-Verletzung in <Klasse>
15.8.3. Knoten haben normalerweise keine Hülle
15.8.4. Knoteninstanzen haben normalerweise keine Hülle
15.8.5. Komponenten befinden sich normalerweise innerhalb von Knoten
15.8.6. Komponenteninstanzen befinden sich normalerweise innerhalb von Knoten
15.8.7. Klassen befinden sich normalerweise innerhalb von Komponenten
15.8.8. Schnittstellen befinden sich normalerweise innerhalb von Komponenten
15.8.9. Objekte befinden sich normalerweise innerhalb von Komponenten
15.8.10. Verknüpfungsenden haben nicht die gleiche Ebene
15.8.11. Klassifizierung einstellen (Verteilungsdiagramm)
15.8.12. Return-Aktionen werden vermisst
15.8.13. Vermisse Aufruf(Sende)-Aktion
15.8.14. Kein Auslöseimpuls bei diesen Verknüpfungen
15.8.15. Klassifizierung einstellen (Sequenzdiagramm)
15.8.16. Falsche Position dieses Auslöseimpulses
15.9. Beziehungen
15.9.1. Zirkuläre Assoziation
15.9.2. <Assoziation> navigierbar machen
15.9.3. Entferne die Navigation von der Schnittstelle via <Assoziation>
15.9.4. Fügen Sie dem <Modellelement> eine Assoziation hinzu
15.9.5. Entfernen Sie die Referenz auf die spezifische Subklasse
15.9.6. Reduzieren Sie die Assoziationen des <Modellelementes>
15.9.7. Kante sichtbarer machen
15.10. Instanzen bilden
15.11. Modularität
15.11.1. Der Klassifizierer befindet sich nicht im Namensraum seiner Assoziation.
15.11.2. Fügen Sie Elemente zum Paket <Paket> hinzu.
15.12. Erwartete Verwendung
15.12.1. Diagramm aufräumen
15.13. Methoden
15.13.1. Ändere Namen oder Signaturen im <Modellelement>
15.13.2. Die Klasse muß abstrakt sein
15.13.3. Fügen Sie der <Klasse> Operationen hinzu
15.13.4. Reduzieren Sie die Anzahl der Operationen im <Modellelement>
15.14. Code-Generierung
15.14.1. Ändern Sie die Mehrfachvererbung in Schnittstellen
15.15. Stereotypen
15.16. Vererbung
15.16.1. Überprüfen Sie die Attributnamen, um einen Konflikt zu vermeiden.
15.16.2. Entfernen Sie die zirkuläre Vererbung der Klasse <Klasse>
15.16.3. Die Klasse muß abstrakt sein
15.16.4. Entfernen Sie das Schlüsselwort final oder entfernen Sie Subklassen
15.16.5. Illegale Generalisierung
15.16.6. Enferne unnötige Realisierungen aus der Klasse <Klasse>
15.16.7. Definiere eine konkrete (Sub-)Klasse
15.16.8. Definieren Sie eine Klasse, um die Schnittstelle <Schnittstelle> zu implementieren
15.16.9. Ändere Mehrfachvererbung in Schnittstellen
15.16.10. Machen Sie die Kante sichtbarer
15.17. Containment
15.17.1. Entferne zirkuläre Komposition
15.17.2. Duplizieren Sie den Parameternamen
15.17.3. Zwei Aggregatenden (Rollen) in binärer Assoziation
15.17.4. Aggregatende (Rolle) in 3-Wege (oder mehr) Assoziation
15.17.5. Verbergen Sie den Datentyp
3. Modellreferenz
16. Modellreferenz auf höchster Ebene
16.1. Einleitung
16.2. Das Modell
16.2.1. Register Modelldetails
16.2.2. Symbolleiste Modelleigenschaften
16.2.3. Eigenschaftsfelder des Modelles
16.3. Datatyp
16.3.1. Register Datentypdetails
16.3.2. Symbolleiste Datentypeigenschaften
16.3.3. Eigenschaftsfelder für den Datentyp
16.4. Enumeration (Aufzählung)
16.4.1. Die Detail-Register Enumeration
16.4.2. Eigenschaftssymbolleiste Enumeration
16.4.3. Eigenschaftsfelder für Enumerationen
16.5. Enumeration Literal
16.6. Stereotyp
16.6.1. Detail-Register Stereotyp
16.6.2. Eigenschaftssymbolleiste Stereotyp
16.6.3. Eigenschaftsfelder für Stereotypen
16.7. Eigenschaftsdefinition
16.8. Diagramm
16.8.1. Detail-Register Diagramm
16.8.2. Eigenschaftssymbolleiste Diagramm
16.8.3. Eigenschaftsfelder für Diagramme
17. Referenz der Modellelemente für Anwendungsfalldiagramme
17.1. Einleitung
17.1.1. ArgoUML-Einschränkungen, welche die Anwendungsfalldiagramme betreffen
17.2. Akteur
17.2.1. Detail-Register Akteur
17.2.2. Eigenschaftssymbolleiste Akteur
17.2.3. Eigenschaftsfelder für einen Akteur
17.3. Anwendungsfall
17.3.1. Detail-Register Anwendungsfall
17.3.2. Eigenschaftssymbolleiste Anwendungsfall
17.3.3. Eigenschaftsfelder für einen Anwendungsfall
17.4. Erweiterungspunkt
17.4.1. Detail-Register Erweiterungpunkt
17.4.2. Eigenschaftssymbolleiste Erweiterungspunkt
17.4.3. Eigenschaftsfelder des Erweiterungspunktes
17.5. Assoziation
17.6. Assoziationsenden
17.7. Abhängigkeit
17.8. Generalisierung
17.8.1. Detail-Register Generalisierung
17.8.2. Eigenschaftssymbolleiste Generalisierung
17.8.3. Eigenschaftsfelder der Generalisierung
17.9. Extend
17.9.1. Detail-Register Extend
17.9.2. Extend Eigenschaftssymbolleiste
17.9.3. Eigenschaftsfelder für Extend
17.10. Include
17.10.1. Detail-Register Include
17.10.2. Include Eigenschaftssymbolleiste
17.10.3. Eigenschaftsfelder für Include
18. Modellelement-Referenz Klassendiagramm
18.1. Einleitung
18.1.1. Einschränkungen bei Klassendiagrammen in ArgoUML
18.2. Paket
18.2.1. Detail-Register Paket
18.2.2. Paket Eigenschaftssymbolleiste
18.2.3. Eigenschaftsfelder für ein Paket
18.3. Datatyp
18.4. Enumeration (Aufzählung)
18.5. Stereotyp
18.6. Klasse
18.6.1. Detail-Register Klasse
18.6.2. Eigenschaftssymbolleiste Klasse
18.6.3. Eigenschaftsfelder für eine Klasse
18.7. Attribute
18.7.1. Detail-Register Attribut
18.7.2. Eigenschaftssymbolleiste Attribut
18.7.3. Eigenschaftsfelder für Attribute
18.8. Operation
18.8.1. Detail-Register Operation
18.8.2. Eigenschaftssymbolleiste Operation
18.8.3. Eigenschaftsfelder für Operation
18.9. Parameter
18.9.1. Detail-Register Parameter
18.9.2. Eigenschaftssymbolleiste Parameter
18.9.3. Eigenschaftsfelder für Parameter
18.10. Signal
18.10.1. Detail-Register Signal
18.10.2. Eigenschaftssymbolleiste Signal
18.10.3. Eigenschaftsfelder für ein Signal
18.11. Empfangssignal (noch zu beschreiben)
18.12. Assoziation
18.12.1. Drei-Wege und größere Assoziationen und Assoziationsklassen
18.12.2. Detail-Register Assoziation
18.12.3. Eigenschaftssymbolleiste Assoziation
18.12.4. Eigenschaftsfelder für eine Assoziation
18.13. Assoziationsende
18.13.1. Detail-Register Assoziationsenden
18.13.2. Eigenschaftssymbolleiste Assoziationsende
18.13.3. Eigenschaftsfelder für ein Assoziationsende
18.14. Abhängigkeit
18.14.1. Detail-Register Abhängigkeit
18.14.2. Eigenschaftssymbolleiste Abhängigkeit
18.14.3. Eigenschaftsfelder für eine Abhängigkeit
18.15. Generalisierung
18.16. Schnittstelle
18.16.1. Detail-Register Schnittstelle
18.16.2. Eigenschaftssymbolleiste Schnittstelle
18.16.3. Eigenschaftsfelder einer Schnittstelle
18.17. Abstraktion
18.17.1. Detail-Register Abstraktion
18.17.2. Eigenschaftssymbolleiste Abstraktion
18.17.3. Eigenschaftsfelder für eine Abstraktion
19. Modellelement-Referenz Sequenzdiagramm
19.1. Einleitung
19.1.1. Einschränkungen, die Sequenzdiagramme in ArgoUML betreffen
19.2. Objekt
19.2.1. Detail-Register Objekt
19.2.2. Eigenschaftssymbolleiste Objekt
19.2.3. Eigenschaftsfelder für ein Objekt
19.3. Impuls
19.3.1. Detail-Register Impuls
19.3.2. Eigenschaftssymbolleiste Impuls
19.3.3. Eigenschaftsfelder für einen Impuls
19.4. Impuls Aufrufen
19.5. Impuls Erzeugen
19.6. Impuls Zerstören
19.7. Impuls Senden
19.8. Impuls Rückgabe
19.9. Verknüpfung
19.9.1. Detail-Register Verknüpfung
19.9.2. Eigenschaftssymbolleiste Verknüpfung
19.9.3. Eigenschaftsfelder für die Verknüpfung
20. Modellelement-Referenz Zustandsdiagramm
20.1. Einleitung
20.1.1. Einschränkungen, die Zustandsdiagramme in ArgoUML betreffend
20.2. Zustand
20.2.1. Detail-Register Zustand
20.2.2. Eigenschaftssymbolleiste Zustand
20.2.3. Eigenschaftsfelder für einen Zustand
20.3. Aktion
20.3.1. Detail-Register Aktion
20.3.2. Eigenschaftssymbolleiste Aktion
20.3.3. Eigenschaftsfelder für eine Aktion
20.4. Zusammengesetzter Zustand
20.5. Nebenläufige Region
20.6. Subautomaten Zustand
20.7. Flacher Zustand
20.8. Transition
20.8.1. Detail-Register Transition
20.8.2. Eigenschaftssymbolleiste Transition
20.8.3. Eigenschaftsfelder für eine Transition
20.9. Ereignis
20.9.1. Detail-Register Ereignis
20.9.2. Eigenschaftssymbolleiste Ereignis
20.9.3. Eigenschaftsfelder für ein Ereignis
20.10. Wächeter
20.10.1. Detail-Register Wächter
20.10.2. Eigenschaftssymbolleiste Wächter
20.10.3. Eigenschaftsfelder für einen Wächter
20.11. Pseudozustand
20.11.1. Detail-Register Pseudozustand
20.11.2. Eigenschaftssymbolleiste Pseudozustand
20.11.3. Eigenschaftsfelder für einen Pseudozustand
20.12. Start-Zustand
20.13. Endezustand
20.13.1. Detail-Register Endezustand
20.13.2. Eigenschaftssymbolleiste Endzustand
20.13.3. Eigenschaftsfelder für einen Endzustand
20.14. Kreuzung
20.15. Entscheidung
20.16. Gabelung
20.17. Vereinigung
20.18. Flache Historie
20.19. Tiefe Historie
20.20. Synchronisationszustand
20.20.1. Detail-Register Synchronisationszustand
20.20.2. Eigenschaftssymbolleiste Synchronisationszustand
20.20.3. Eigenschaftsfelder für einen Synchronisationszustand
21. Modellelement-Referenz Kollaborationsdiagramm
21.1. Einleitung
21.1.1. Einschränkungen die Kollaborationsdiagramme in ArgoUML betreffend
21.2. Klassifizierer Rolle
21.2.1. Detail-Register Klassifizierer Rollen
21.2.2. Eigenschaftssymbolleiste Klassifierer Rolle
21.2.3. Eigenschaftsfelder für eine Klassifizierer Rolle
21.3. Assoziationsrolle
21.3.1. Detail-Register Assoziationsrolle
21.3.2. Eigenschaftssymbolleiste Assoziationsrolle
21.3.3. Eigenschaftsfelder für eine Assoziationsrolle
21.4. Rolle Assoziationsende
21.4.1. Detail-Register Rolle Assoziationsende
21.4.2. Eigenschaftssymbolleiste Rolle Assoziationsende
21.4.3. Eigenschaftsfelder für eine Rolle Assoziationsende
21.5. Nachricht
21.5.1. Detail-Register Nachricht
21.5.2. Eigenschaftssymbolleiste Nachricht
21.5.3. Eigenschaftsfelder für eine Nachricht
22. Modellelement-Referenz Aktivitätsdiagramm
22.1. Einleitung
22.1.1. Einschränkungen, die Aktivitätsdiagramme in ArgoUML betreffend
22.2. Aktionszustand
22.2.1. Detail-Register Aktionszustand
22.2.2. Eigenschaftssymbolleiste Aktionszustand
22.2.3. Eigenschaftsfelder für einen Aktionszustand
22.3. Aktion
22.4. Transition
22.5. Wächter
22.6. Startzustand
22.7. Endezustand
22.8. Kreuzung (Entscheidung)
22.9. Gabelung
22.10. Vereinigung
22.11. Objektflusszustand
23. Modellelement-Referenz Verteilungsdiagramm
23.1. Einleitung
23.1.1. Einschränkungen, Verteilungsdiagramme in ArgoUML betreffend
23.2. Knoten
23.2.1. Detail-Register Knoten
23.2.2. Eigenschaftssymbolleiste Knoten
23.2.3. Eigenschaftsfelder für einen Knoten
23.3. Knoteninstanz
23.3.1. Detail-Register Knoteninstanz
23.3.2. Eigenschaftssymbolleiste Konteninstanz
23.3.3. Eigenschaftsfelder für eine Knoteninstanz
23.4. Komponente
23.4.1. Detail-Register Komponente
23.4.2. Eigenschaftssymbolleiste Komponente
23.4.3. Eigenschaftsfelder für eine Komponente
23.5. Komponenteninstanz
23.5.1. Detail-Register Komponenteninstanz
23.5.2. Eigenschaftssymbolleiste Komponenteninstanz
23.5.3. Eigenschaftsfelder für eine Komponenteninstanz
23.6. Abhängigkeit
23.7. Klasse
23.8. Schnittstelle
23.9. Assoziation
23.10. Objekt
23.11. Verbindung
24. Profile
24.1. Einleitung
24.2. Das Profil UML 1.4 Standard-Elemente
24.2.1. Datatypen
24.2.2. Aufzählungen
24.2.3. Stereotypen
24.2.4. Tag-Definitionen
24.3. Das Javaprofil
24.3.1. Datentypen
24.3.2. Klassen
24.3.3. Interfaces
Glossar
A. Ergänzendes Material für die Fallstudie
A.1. Einleitung
A.2. Anforderungsdokumente (Noch zu beschreiben)
A.2.1. Visionsdokument (Noch zu beschreiben)
A.2.2. Anwendungsfall-Spezifikationen (Noch zu beschreiben)
A.2.3. Ergänzende Anforderungsspezifikation (Noch zu beschreiben)
B. UML-Ressourcen
B.1. Die UML-Spezifikationen (Noch zu beschreiben)
B.2. UML-Papiere (Noch zu beschreiben)
B.2.1. UML-Aktionsspezifikationen (Noch zu beschreiben)
B.3. UML-Webseiten (Noch zu beschreiben)
C. UML-konforme CASE Tools
C.1. Andere Open Source Projekte (Noch zu beschreiben)
C.2. Kommerzielle Werkzeuge (Noch zu beschreiben)
D. Das C++ Modul
D.1. Modellieren für C++
D.1.1. Eigenschaftswerte für eine Klasse
D.1.2. Eigenschaftswerte für Attribute
D.1.3. Parameter
D.1.4. Generalisierung
D.1.5. Realisierung
D.1.6. Geschützte Abschnitte
E. Beschränkungen und Mängel
E.1. Größe der Diagramm-Leinwand
E.2. Fehlende Funktionen
F. Open Publication Lizenz
F.1. Einleitung
F.2. Copyright
F.3. Bezugsbereich der Lizenz
F.4. Anforderungen an modifizierte Arbeiten
F.5. Empfehlungen für die gute Praxis
G. Die CRC-Karten Methode
G.1. Die Karte
G.2. Die Gruppe
G.3. Die Sitzung
G.4. Der Prozess
Stichwortverzeichnis

Abbildungsverzeichnis

3.1. Der Wasserfall-Prozess
3.2. Zu erwartender Aufwand je Schritt des Wasserfallmodelles
3.3. Zu erwartender Aufwand je Schritt des iterativen Prozesses
3.4. Den Einstellungs-Assistenten finden
3.5. Die Sprache unter Erscheinungsbild einstellen
3.6. Das erste ArgoUML-Fenster
3.7. Das erste ArgoUML-Fenster
3.8. Projekt speichern unter... aufrufen
3.9. Der Dateiauswahl-Dialog
3.10. ArgoUML-Fenster mit gespeichertem Projekt ErstesProjekt.zargo
3.11. ArgoUML-Fenster zeigt das Kritik-Element Überprüfen Sie den Paketnamen unbenanntesModell
3.12. Das ArgoUML-Fenster zeigt den Kritik-Assistenten, zur Umbenennung des Paketes
4.1. Grundlegendes Anwendungsfalldiagramm für einen Geldautomaten
4.2. Anwendungsfalldiagramm für einen Geldautomaten mit Navigation.
4.3. Anwendungsfalldiagramm für einen Geldautomaten und dargestellter Kardinalität.
4.4. Anwendungsfalldiagramm für einen Geldautomaten mit include-Beziehungen.
4.5. Anwendungsfalldiagramm für einen Geldautomaten. Zeigt eine extend-Beziehung.
6.1. Auswählen des Werkzeuges Schnittstelle
6.2. Modellelement Schnittstelle im Klassendiagramm
6.3. Generalisierung über die Symbolleiste des Klassendiagrammes
6.4. Generalisierung zwischen zwei Schnittstellen.
8.1. Überblick über die ArgoUML-Fenster
9.1. Der Zoom-Schieberegler in der Symbolleiste
10.1. Der Bestätigungsdialog für Neu.
10.2. Der Dateiauswahldialog für Projekt öffnen... .
10.3. Der Warndialog für Projekt speichern rückgängig machen.
10.4. Der Bestätigungsdialog für XMI importieren....
10.5. Der Dialog für XMI importieren....
10.6. Der Dialog für Exportiere als XMI....
10.7. Der Dateiauswahldialog für Quellcode importieren....
10.8. Der Dialog: Das Diagramm überschreitet die Seitengrösse.
10.9. Der Dialog Projekteinstellungen: Das Register Benutzer.
10.10. Der Dialog Projekteinstellungen - Das Register Profile.
10.11. Der Dialog Projekteinstellungen: - Das Register Notationen.
10.12. Der Dialog Projekteinstellungen - Das Register Diagramm-Darstellung.
10.13. Der Dialog Änderungen speichern.
10.14. Der Bestätigungsdialog zu Aus Modell entfernen.
10.15. Der Dialog Einstellungen - Voreinstellungen.
10.16. Der Dialog Einstellungen - Umgebung.
10.17. Der Dialog für Einstellungen - Benutzer.
10.18. Der Dialog fürEinstellungen - Erscheinungsbild .
10.19. Der Dialog Einstellungen - Profile.
10.20. Der Dialog für Einstellungen - Tastenkombinationen konfigurieren.
10.21. Der Dialog für Einstellungen - Notationen.
10.22. Der Dialog für Einstellungen - Diagramm-Darstellung.
10.23. Der Dialog für Einstellungen - C++.
10.24. Der Dialog für Gehe zu Diagramm....
10.25. Der Dialog für Suchen....
10.26. Der Dialog für Markierte Klassen generieren ....
10.27. Der Dialog für Design-Wichtungen....
10.28. Der Dialog für Design Ziele....
10.29. Der Dialog für Kritiken anzeigen....
10.30. Der Dialog für Systeminformation.
10.31. Das Hilfefenster von ArgoUML
11.1. Überblick über den Explorer
11.2. Der Dialog Perspektiven konfigurieren
12.1. Überblick über das Editierfenster
12.2. Der Dialog für das Hinzufügen eines neuen Klassendiagrammes
12.3. Die Symbolauswahl Zeichen.
12.4. Die Symbolauswahl Assoziation.
12.5. Der Besen.
12.6. Einige Beispiele für „Auswahl-Aktionsschaltflächen“.
12.7. Eine Klasse in UML-Notation
12.8. Eine Klasse in Java-Notation
12.9. Eine Menge von Assoziationen mit Eingabefeldern
13.1. Überblick über den Bereich Details
13.2. Beispiel eines Zu-Bearbeiten-Elementes im Eigenschafts-Bereich
13.3. Dialogfenster für Neue Kritik
13.4. Dialogfenster für Kritik auflösen
13.5. Beispiel eines Assistenten
13.6. Ein typisches Register Eigenschaften im Bereich Details
13.7. Ein typisches Register Dokumentation im Bereich Details
13.8. Eine typisches Register Darstellung im Bereich Details
13.9. Der Dialog Benutzerdefinierte Füll-/Linienfarbe
13.10. Der Dialog Benutzerdefinierte Füll-/Linienfarbe
13.11. Der Dialog Benutzerdefinierte Füll-/Linienfarbe
13.12. Das Register Quellcode einer Klasse.
13.13. Ein C++ Beispiel.
13.14. Ein typisches Register Randbedingungen im Bereich Details
13.15. Dialog zum Konfigurieren von Bedingungen
13.16. Dialog für das Konfigurieren der Bedingungen
13.17. Ein Beispiel eines Registers Stereotypen für eine Klasse.
13.18. Ein Beispiel für eine Checkliste einer Klasse.
14.1. Überblick über den Bereich Zu-Bearbeiten
17.1. Typische Modellelemente in einem Anwendungsfalldiagramm.
17.2. Beispiel eines Diskrimintators mit Generalisierung
18.1. Denkbare Modellelemente in einem Klassendiagramm.
18.2. Denkbare Modellelemente in einem Paketdiagramm.
18.3. Denkbare Modellelemente in einem Datentypdiagramm.
18.4. Denkbare Modellelemente in einem Stereotyp-Definitionsdiagramm.
18.5. Das Dialogfenster „Kontext hinzufügen/entfernen
18.6. Das Dialogfenster „Spezifikationen hinzufügen/ entfernen
19.1. Denkbare Modellelemente in einem Sequenzdiagramm.
20.1. Modellelemente Zustandsdiagramm 1.
20.2. Modellelemente Zustandsdiagramm 2.
21.1. Denkbare Modellelemente in einem Kollaborationsdiagramm.
21.2. Das Dialogfenster „Kontext hinzufügen
21.3. Das Dialogfenster „Vorgänger hinzufügen
22.1. Denkbare Modellelemente in einem Aktivitätsdiagramm.
23.1. Denkbare Modellelemente in einem Komponentendiagramm.
23.2. Denkbare Modellelemente in einem Verteilungsdiagramm.
24.1. Hierarchie der Standardprofile innerhalb von ArgoUML
24.2. Hierarchie des Javaprofiles in ArgoUML

Tabellenverzeichnis

24.1. UML 1.4 und ArgoUML definierte Stereotypen