Eine Lern- und Referenzbeschreibung
Alejandro Ramirez
Philippe Vanpeperstraete
Andreas Rueckert
Kunle Odutola
Jeremy Bennett
Linus Tolke
Michiel van der Wulp
??bersetzung: Harald Braun
Copyright © 2004, 2005, 2006, 2007, 2008 Michiel van der Wulp
Copyright © 2003 Linus Tolke
Copyright © 2001, 2002 Jeremy Bennett
Copyright © 2001 Kunle Odutola
Copyright © 2000 Philippe Vanpeperstraete
Copyright © 2000 Alejandro Ramirez
Copyright © 2000 Andreas Rueckert
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 letzte Version ist unter
http://www.opencontent.org/openpub/
verf??gbar.
Zusammenfassung
Diese Version des Handbuches beschreibt die Version
${argo.core.version} von ArgoUML.
Softwaredesign ist eine kognitiv herausfordernde T??tigkeit.
Designer m??ssen die Entw??rfe manuell eingeben, aber die prim??re
Schwierigkeit ist Entscheidungen zu treffen weniger Daten einzugeben.
Wenn Designer ihre F??higkeiten Entscheidungen zu treffen
verbesserten, w??rden bessere Entw??rfe dabei herauskommen.
Aktuelle CASE-Tools enthalten Automations- und grafische
Anwender-Schnittstellen, welche die manuelle Arbeit der Designeingabe
reduzieren und einen 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 Bereich der
Designunterst??tzung, der bisher noch nicht besonders gut unterst??tzt
wurde, 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 ??blicherweise mit einer leeren Seite und
m??ssen jeden Aspekt des Entwurfes aus dem Kopf ableiten.
ArgoUML ist eine dom??nenorientierte Desginumgebung mit kognitiver
Unterst??tzung des objektorientierten Entwurfes. ArgoUML enth??lt
einige der gleichen Automatismen wie kommerzielle CASE-Tools. Sein
Fokus liegt aber auf Funktionen, welche die kognitiven Bed??rfnisse
von Designern befriedigen. Diese kognitiven Bed??rfnisse werden durch
3 kognitive Theorien beschrieben:
Reflektion-w??hrend-Aktion;
Opportunistisches Design; und
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) und XMI (dem XML Model
Interchange format) bereitzustellen.
ArgoUML wurde urspr??nglich durch eine kleine Gruppe als
Forschungsprojekt entwickelt. ArgoUML hat viele Funktionen, die es
sehr speziell machen. Aber es implementiert nicht all die Funktionen,
die kommerzielle CASE-Tools enthalten.
Die aktuelle Version (${argo.core.version}) 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 2-Plattform von Java 1.4 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, wird
PGML durch die UML Diagram Interchange Spezifikation ersetzt.
Dieses Handbuch ist die gesammelte 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 Entwickler-Cookbook von Markus
Klink und Linus Tolke, der Kurzanleitung von Kunle Odutola sowie der 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 Mitarbeit, wie Review-Kommentare
oder Beobachtungen w??hrend des Lesens und der Anwendung des Handbuchs
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 Sourcecode 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 heisst alle willkommen, die sich beteiligen wollen.
Mehr finden Sie unter der
Projekt-Webseite.
Teilen Sie uns bitte mit, was Sie ??ber das Anwenderhandbuch denken!
Ihre Kommentare helfen uns, Dinge zu verbessern. Siehe
Abschnitt 1.3.3, „Anwender-Feedback“
.