440 likes | 687 Views
Modellierung und Schnit t stelle zu UML. Pro-Seminar GIS II WS 2004/2005 Christoph Römer. Übersicht. UML - eine kurze Wiederholung Motivation: UML in ArcGis Erstellen von UML-Diagrammen in Visio Importieren von UML-Diagrammen in ArcGis. Klassen. Objekte werden durch Klassen modelliert
E N D
Modellierung und Schnittstelle zu UML Pro-Seminar GIS II WS 2004/2005 Christoph Römer
Übersicht • UML - eine kurze Wiederholung • Motivation: UML in ArcGis • Erstellen von UML-Diagrammen in Visio • Importieren von UML-Diagrammen in ArcGis
Klassen • Objekte werden durch Klassen modelliert • Identifizierung über Klassennamen • Eigenschaften der Klassen mit Attributen dargestellt • Methoden greifen auf Attribute zu und liefern Ergebnis
Attribute • Verschiedene Typen • Text (string..) • Zahl (integer, float..) • Boolsche Operatoren • Sichtbarkeit • nur innerhalb der Klasse sichtbar (private) • von außerhalb der Klasse sichtbar (public)
Multiplizität Name Beziehungen • Beziehungen zwischen Klassen sind charakterisiert durch: • Namen • Zweck: Zuordnung der Beziehung • Multiplizität • Zweck: Quantisierung der Beziehung
Beziehungen • Aggregation • Klassen gehen „Ganzes-Teil“ Beziehung ein • (Bsp.: Klasse Zimmer ist Teil von Klasse Haus) • Vererbung • GeomFigur ist Oberklasse • Dreieck ist Unterklasse • Unterklasse erbt Attribute von Oberklasse und fügt evtl. neue hinzu
UML Diagramme • Mit UML Diagrammen modellieren wir also Ausschnitte aus der realen Welt, indem wir mit Klassen Objekte und deren Beziehungen untereinander darstellen
Kurzer Rückblick: Geodatabase • „Eine Geodatabase soll einen Ausschnitt aus der realen Welt modellieren • Aufgabe: die richtige Zuordnung von Objekten in der Geodatabase zu Realweltobjekten“ • (Jean-Michel Fischer, Domänen-Subtypen-Relationen, ProSeminar GIS II, 2004) • UML Diagramme und Geodatabases haben gleiche Zielsetzung • Wir könnten also eine Geodatabase auch mit einem UML Diagramm modellieren
Wenn es doch das „gleiche“ ist... • ...warum nehmen wir dann UML Diagramme statt einer Geodatabase? • Geodatabases eignen sich sehr schlecht für Präsentationen, da sie ArcGis spezifisch sind • UML Diagramme dagegen werden von einem größeren Publikum verstanden • UML Diagramme eignen sich aufgrund ihres simplen Aufbaus sehr gut, um schnell komplexe Gegebenheiten zu Überblicken und zu planen
Visio • Um die UML Diagramme in ArcGis einlesen zu können, benötigen wir ein Programm, mit dem man UML Diagramme digital erstellen kann • Visio
Erzeugen von Packages • Rechtsklick auf Workspace • New • Package • Name eingeben • OK • Rechtsklick auf neue Package • Static Structure Diagramm
Feature Datasets • Für ArcGis werden Feature Datasets benötigt • Doppelklick auf Package • Feature Datasets unter Stereotypen auswählen
Erzeugen von Klassen • Class anklicken • auf Diagramm ziehen • Doppelklick auf Klasse im Diagramm • Name eingeben
Attribute einfügen • Kategorie Attributes auswählen • New • Neues Attribut auswählen • Properties
Attribute editieren • Namen eingeben • Type Drop Down Arrow • zuweisen des Attributtyps
Tagged Values Mit Tagged Values werden zusätzliche Eigenschaften (Properties) verschiedener UML Elemente (Klassen, Attribute, Assoziationen) gesetzt. z.B. mit Length die max. Chars aus denen ein string field bestehen darf
Tagged Values (Attribute) • Attribut auswählen • Properties • Kategorie Tagged Values auswählen • New • Typ eingeben • Wert zuweisen
Feature Classes • UML Navigator ESRI Classes Feature auswählen und auf Diagramm ziehen • Doppelklick zum Editieren siehe Klassen und Attribute
Feature Classes • Neue Klasse erzeugen • Generalization auswählen und auf Diagramm ziehen • Enden mit Klassen verbinden
Subtypes • Subtypes sind Unterklassen • Um Subtypes zuzuweisen müssen diese das Attribut SubtypeField haben, welches später zur Identifizierung dient • SubtypeFields müssen vom Typ EsriFieldTypeInteger sein • Jedes SubtypeField muss eine andere Nummer haben
Subtypes • ParentClass (Feature Class) anwählen • Attribut einfügen Properties • Stereotyp SubtypeField auswählen • InitialValue zuweisen
Subtypes • Feature Class kopieren • Namen ändern • InitialValue des SubtypeFields ändern
Subtypes • BinaryAssociation einfügen • Mit Klassen verbinden • Stereotype Subtype auswählen
Methoden einfügen • Kategorie Operations auswählen • New • Properties • Namen eingeben • Wiedergabetyp auswählen
Binary Associations erstellen • Binary Associations auswählen und auf Diagramm ziehen • Enden mit Klassen verbinden • Doppelklick auf B.S. • Namen eingeben
Binary Association bearbeiten • Endpunkt auswählen • Properties • Namen eingeben • Multiplizitäten auswählen oder eingeben • Rechtsklick auf B.S. • Shape Display Options • Anzeigeoptionen einstellen
Shape Display Options Legt fest, welche Parameter im Diagramm angezeigt werden sollen (z.B. Name, Typ der Verbindung oder Beschriftung der Enden ausblenden)
Aggregation und Komposition • Composition auswählen und auf Diagramm ziehen • Enden verknüpfen • Doppelklick zum editieren • Endpunkt markieren Properties
Aggregation und Komposition • Aggregation im Drop Down Menu auswählen shared für Aggregation composite für Komposition
Range Domains Mit Range Domains werden neue Attributstypen eines Referenztypen erstellt, welche einen Minimal und einen Maximalwert (Range) haben Bsp: Es gibt keine negativen Flächen (Mindestwert 0)
Range Domains • Rechtsklick auf Template Range Domain Duplicate eine neue Klasse wird als Kopie der Range Domain erzeugt • Doppelklick auf neue Klasse • Neue Klasse auf Diagramm ziehen
Range Domains • Doppelklick auf neue Klasse • Name eingeben • Name wird nachher benutzt um einem Attribut eine Range Domain zuzuweisen
Range Domains • Kategorie Attribute auswählen • FieldType anwählen Properties • Bezugstypen für die Range Domain auswählen
Range Domains • Attribute MinValue und MaxValue markieren Properties • Bei Initial Values Mindest, bzw. Maximalwert eingeben
Coded Value Domains Coded Value Domains haben im Vergleich zu Range Domains kein Minimum oder Maximum, sondern eine beliebige Anzahl vordefinierter Optionen z.B.: Ist der Kunde Männlich oder Weiblich?
Coded Value Domains • Wähle Template Coded Value Domain Duplicate • (Einstellungen siehe Range Domains) • Unterschied statt MinValue oder MaxValue Werte der Attribute Code1 .. Code n ändern
Geometric Networks • Rechtsklick auf TemplateGeometric Network Duplicate • Kopie per drag & drop in der gewünschten Package ablegen Wichtig Geometric Networks funktionieren nur innerhalb einer Package (Feature Datasets)
Geometric Networks • Neues Geometric Network auf Diagramm ziehen • Doppelklick für Optionen Namen eingeben • Geometric Network über Binary Associations mit Network Classes verbinden
Geometric Networks Edge Junction Rule • Binary Association auf Diagramm ziehen • Enden verknüpfen • Doppelklick für Properties • Stereotyp Drop Down Arrow • ConnRule wählen • Restliche Einstellungen siehe Binary Associations
Geometric Networks Edge Edge Rule • N Aray Association markieren und auf Diagramm ziehen Properties • ConnRule auswählen • Anzahl der Links einstellen • Mit den Shape Display Options Name und Stereotyp anzeigen lassen und Kardinalitäten verstecken
Visio nach ArcGis • Speichern als Repository Files (.mdb) • UML Repository Export • Als .mdb Datei speichern
Schema Wizard • ArcCatalog öffnen • Tools • Cumstomize • Commands • Case Tools auswählen • Mit drag & drop auf Toolbar ziehen
Importieren von Visio Dateien • Feature Dataset auswählen Schema Wizard • Elemente auswählen fertig stellen
Quellenverzeichnis • Vorlesungsfolien Geoinformation I, Universität Bonn • Prof. Dr. Lutz Plümer, WS 03/04 • Domänen-Subtypen-Relationen, • Jean-Michel Fischer, ProSeminar GIS II, 2004 • Building a Geodatabase, • GIS by ESRI, Kap. 13