Vorwort

Softwaredesign ist eine geistig herausfordernde Tätigkeit. Designer müssen Ihre Entwürfe manuell eingeben. Aber die grundlegende Schwierigkeit ist, entscheidungenorientiert statt dateneingabeorientiert zu arbeiten. Wenn Designer ihre entscheidungsorientierten Fähigkeiten verbesserten, würden bessere Entwürfe dabei herauskommen.

Aktuelle CASE-Tools enthalten Automations- und grafische Anwender-Schnittstellen, die die manuelle Arbeit der Designeingabe reduzieren und den Entwurf in Programmcode transformieren. Sie unterstützen die Designer bei ihren Entscheidungen hauptsächlich durch die Visualisierung des Entwurfes und einfachen syntaktischen Überprüfungen. Darüber hinaus weisen viele CASE-Tools auch substantielle Vorteile im Bereich der Versionskontrolle und nebenläufiger Designmechanismen auf. Ein, bisher nicht besonders gut unterstützter Bereich ist die Analyse von Designentscheidungen.

Aktuelle CASE-Tools haben eine Anwenderschnittstelle (GUI), die es den Designern ermöglicht, auf alle, durch das Tool angebotenen Funktionen zuzugreifen. Und sie unterstützen den Entwurfsprozess, indem sie es dem Designer erlauben, Diagramme im Stil populärer Design-Methoden einzugeben. Üblicherweise enthalten sie aber keine Prozessunterstützung, die den Designer durch die Designschritte führt. Designer beginnen normalerweise mit einer leeren Seite und müssen jeden Aspekt des Entwurfes aus dem Kopf ableiten.

ArgoUML ist eine domänenorientierte Designumgebung mit kognitiver Unterstützung des objektorientierten Entwurfes. ArgoUML enthält im Wesentlichen die gleichen Automatismen wie kommerzielle CASE-Tools. Sein Fokus liegt aber auf Funktionen, die die kognitiven Bedürfnisse von Designern befriedigen. Diese kognitiven Bedürfnisse werden durch 3 kognitive Theorien beschrieben:

  1. Reflektion-während-Aktion;

  2. Opportunistisches Design; und

  3. Verständnis und Problemlösung.

ArgoUML basiert direkt auf der UML 1.4-Spezifikation. Das zentrale Modell-Repository ist eine Implementierung der Java Metadaten Schnittstelle (JMI=Java Metadata Interface), welche MOF direkt unterstützt und die maschinenlesbare Version der UML 1.4-Spezifikation der OMG verwendet.

Darüber hinaus ist es unser Ziel, eine verständliche Unterstützung für OCL (die Object Constraint Language (Objekt-Bedingungs-Sprache)) und XMI (dem XML Model Interchange Format(XML-Modell-Austauschformat)) bereitzustellen.

ArgoUML wurde ursprünglich durch eine kleine Gruppe von Leuten als Forschungsprojekt entwickelt. ArgoUML hat viele Eigenschaften, die es besonders machen. Aber es implementiert nicht alle Funktionen, kommerzieller CASE-Tools.

Die aktuelle Version (0.30) von ArgoUML implementiert alle Diagrammtypen des UML 1.4 Standard (ArgoUML-Versionen vor 0.20 implementierten den UML 1.3 Standard). Sie ist in Java geschrieben und läuft auf jedem Rechner, der die Java-Plattform, Version 5 oder eine neuere Version aufweist. Es verwendet zum Speichern offene Dateiformate, wie XMI (XML Metadata Interchange Format) (für Modell- Informationen) und PGML (Precision Graphics Markup Language) (für grafische Informationen). Wenn ArgoUML UML 2.0 implementiert, wird PGML durch die UML Diagram Interchange Specifikation (Diagramm Austauschspezifikation) ersetzt.

Dieses Handbuch ist die kumulative Arbeit mehrerer Personen und entwickelte sich über mehrere Jahre. Im Zusammenhang mit der ArgoUML-Release 0.10 schrieb Jeremy Bennett eine Menge neues Material, was dem in früheren Versionen von Alejandro Ramirez, Philippe Vanpeperstraete und Andreas Rueckert geschriebenen hinzugefügt wurde. Er fügte auch einige Dinge aus anderen Dokumenten ein, namentlich aus dem Programmierhandbuch von Markus Klink und Linus Tolke, der Kurzanleitung von Kunle Odutola, sowie die FAQ von Denny Daniels. Im Zusammenhang mit der Version 0.14 wurden Änderungen durch Linus Tolke und Michiel van der Wulp vorgenommen. Diese Änderungen passten das Handbuch an die neuen Funktionen und das neue Erscheinungsbild von ArgoUML, Version 1.4 an und führten einen Index ein. Es sind zu viele Anwender und Entwickler, die diese Arbeit durch Ihre wertvollen Hinweise, wie Review-Kommentare oder Beobachtungen während des Lesens und der Anwendung dieses Handbuches unterstützten, um sie alle namentlich benennen zu können.

ArgoUML ist frei verfügbar und kann im kommerziellen Umfeld genutzt werden. Wenn Sie ArgoUML herunterladen, entnehmen Sie bitte die Nutzungsbedingungen den beigefügten Lizenzbedingungen. Wir bieten Ihnen den Quellcode von ArgoUML an, damit Sie sich diesen ansehen, an Ihre Bedürfnisse anpassen und verbessern können. Wir hoffen, dass sich ArgoUML nach und nach zu einem leistungsfähigen und nützlichen Tool für jedermann entwickelt.

Dieses Anwenderhandbuch ist für den Designer gedacht, der seine Entwürfe mit Hilfe von ArgoUML erstellen möchte. Das Handbuch setzt voraus, dass Sie mit UML vertraut sind. Eventuell unterstützt es aber auch diejenigen, für die UML neu ist.

Das Handbuch ist in DocBook/XML geschrieben und sowohl als HTML als auch als PDF verfügbar.

Das ArgoUML-Projekt begrüßt all diejenigen, die tiefer eingebunden werden wollen. Mehr finden Sie unter der Projekt-Webseite.

Teilen Sie uns bitte mit, was Sie über das Anwenderhandbuch denken! Ihre Kommentare helfen uns, es weiter zu verbessern. Siehe Abschnitt 1.3.3, „ Anwender-Feedback .