Geodatenbankenentwurf mit UML und Visio - allgem. Aufbau - Überblick: UML und Visio
Vortrag I Geodatenbanken Das Entstehen von Geodatenbanken UML (Unified Modeling Language) - kurzer Rückblick CASE - Tools in ArcInfo
Geodatenbanken Was ist eine Geodatenbank ? Geodatenbanken sind die Datengrundlagen eines jeden GIS (engl.: geodatabase) Beispiel: Verkehrsnetz für einen Routenplaner
Zwei Fragestellungen zu Beginn Was macht eine gute Datenbank aus ? Wofür soll die spezielle Geodatenbank verwendet werden ?
Alle nötigen Daten sind vorhanden Gute Organisation der Daten ( mehrere Benutzer sollten auf dieselben Daten zugreifen können) Flexible und übersichtliche Nutzungsmöglichkeiten Möglichst wenig Speicheraufwand Zukunftsorientierte Nutzbarkeit
Modellentwicklung Zielsetzung: Welche Funktionen sollen mit Hilfe der Datenbank ausgeführt werden Ermittlung oder zusammentragen der benötigten Daten Organisieren der Daten in logische Gruppen
Zielsetzungen und Datengrundlagen Routenplanung Straßennetz Kataster Flurstücke, Besitzer Bodenordnung Bodenschätzung Bauleitplanung ...
Datenquellen
Zusammenfassen Straßen Geländearten Gewässer Grundstücke Objektklassen (UML)
Definieren von Objekten Bsp.: Gebäudeinformationssystem Raum: Arbeitsplatz für Person Flur: verbindet 2 oder mehr Räume Etage: Komposition aus Räumen und Fluren Labor: Spezialfall eines Raumes (Unterklasse)
Beziehungen Viele Klassen haben direkte Beziehungen zueinander Bsp.: Gebäudeinformationssystem Ein Raum listet einen einen bestimmten „Benutzer“ auf Eine Person arbeitet in einem bestimmten Raum
Dokumentation in UML (Geoinformation I) Kardinalität Name Flur Raum Verbindet 2...* 0...* Oberklasse Raum Labor Büro Unterklasse
Beachte: Kardinalitäten: Unterklassen: 1 genau 1 0...4 0 bis 4 3,7 3 oder 7 0...* größer oder gleich null 0...3,7...9 ... Unterklassen: ... Spezialisieren das Konzept einer Oberklasse ... „erben“ Attribute und Methoden der jeweiligen Oberklasse
Aggregation vs. Komposition Aggegation: eine Aggregation ist eine spezielle Assoziation, deren beteiligte Klassen eine Ganzes - Teile Hierarchie darstellen Komposition: eine Komposition ist strenge Form der Aggregation, bei der die Teile vom Ganzen existenzabhängig sind
... In Visio Aggregation in Visio (UML-Darstellung) Komposition: Ganzes und Teile sind existenzabhängig
Attribute und Methoden Attribute stellen die speziellen „Eigenschaften“ einer Klasse dar. Bsp.: Länge, Breite, XY-Koordinaten ... Attribute sind nur innerhalb der Klasse sichtbar privat vs. public Methoden: Methoden stellen die „Operatoren“ einer Klasse dar Bsp.: getLänge, getBreite, anzeigen, verschieben, entfernen ...
Klassen und Methoden Kreis Klassenname Attribute Methoden - Mittelpunkt - Radius + anzeigen + entfernen + verschieben Klassenname Attribute Methoden
Nach öffnen von neuem Dokument zur Schablonenauswahl zurückkehren Visio
Aber Vorsicht... Symbolik für „Aggregat“ und „Verfeinerung“ sind vertauscht Erkennbar an: Kardinalitäten Pfeil- / Rautensymbol !
Verfeinerung Unterklasse) mit Pfeilsymbol und ohne Kardinalitäten Aggregat (bzw. hier eine Komposition) mit Rautensymbol und Kardinalitäten
Aber... „Oh glücklich wer noch Hoffen kann, aus diesem Meer des Irrtums aufzutauchen!“ Goethe, Faust (Der Tragödie erster Teil), Vor dem Tore
Idee: Übersichtliche Planung und einfache Veranschaulichung für Mitarbeiter und Kunden bzw. User
Darstellung der Objekte Unterschiedliche Repräsentierung der unterschiedlichen Klassen Alphanumerisch repräsentierte Klassen Geometrisch repräsentierte Klassen Alphanumerisch: Texte, Werte, Zahlen...
Geometrische Darstellungen von Klassen Punkt: repräsentiert die Lage eines Objekts mit min. Ausdehnung Linie: repräsentiert die Lage eines Objekt welches zu schmal für eine Fläche ist Fläche: repräsentiert ein Polygon Oberfläche: wie Fläche, jedoch auch Erhebungen (Berg) Raster: ... Eine Fläche die in rechteckige Felder unterteilt ist (für Analysen brauchbar) Bild/Photo: ...jedes andere digitale Bild
Hefte raus: Klassenarbeit (Aufgabe 1) Pünktlich zum neuen Semester will die Uni Bonn zur Orientierung der Erstsemester einen Routenplaner für die Poppelsdorfer Institute. Welche Daten werden zur Routenplanung benötigt und aus welchen Quellen können diese Daten gewonnen werden? Dokumentiert die Ergebnisse in einfachen UML - Diagrammen
Problem: Leider ist Visio nur auf „Wolga“ installiert Vorschlag: bastelt die UML - Diagramme in PowerPoint zusammen Beispielklassen und Relationen findet Ihr unter V:/Dennis/Aufgabe 1, Kardinalitäten müssen mit Textfeldern ergänzt werden Vervollständigt das UML - Diagramm mit eigenen Klassen und Relationen
Erstellen von Datenpaketen Wie sollen Daten in ArcInfo repräsentiert werden ? Umsetzen der Benutzeransprüche in ein Datenbank Schema
Möglichkeiten in ArcInfo Punktklassen: Punkt: ein nichtverbundener Punkt (Statuen etc.) Knoten: ein verbundener Punkt (Straßenkreuzungen etc.) Komplexer Knoten: ein verbundener Punkt mit eigener inneren Topologie (Wasseraufbereitungsanlagen etc.)
Möglichkeiten in ArcInfo Punkt: Knoten: Komplexer Knoten:
Möglichkeiten in ArcInfo Linienhafte Klassen: Linie: alleinstehende Linie (Zäune etc.) Kante: ein verbundenes Teil eines Liniensystems (wie in einem Straßennetz) Komplexe Kante: Lineare Klasse mit verbundenen Sektionen (Polylinie)
Möglichkeiten in ArcInfo Linie: Kante: Komplexe Kante:
Möglichkeiten in ArcInfo Flächenhafte Klassen: Polygon: alleinstehende Fläche (Parks etc.) Auch für platzausfüllende Gebiete, wie ausgebreitete Vegetation (Wälder etc.)
Möglichkeiten in ArcInfo Oberflächenklassen: TIN (Triangulated Irregular Network) (siehe Vortrag): detaillierte Darstellung des Terrains Raster: geeignet für größere Gebiete (gröbere Auflösung, geringere Datenmengen)
Organisieren der Struktur (Schritt 1) Gruppierung der Klassen in logische Zusammenhänge (Datensätze) Eine einzelne Klasse kann durchaus eine eigene Gruppe sein, falls sie sich nicht zuordnen läßt
Datensatz „Straßen“
Topologische Regeln Alle Klassen eines geometrischen Netzwerkes müssen sich im gleichen Datensatz befinden (Straßen vs. Wasserleitungen) Klassen, die ganze Flächen einnehmen, oder wenn sich überschneidende Elemente eine Kreuzung haben sollen, sollten sie im selben Datensatz gespeichert werden.
Mögliche Topologien Fall 1: Fall 2: sich kreuzende Linien haben Kreuzungsknoten Fall 2: Linien können „untereinander“ verlaufen ohne sich zu schneiden
Organisieren der Struktur (Schritt 2) Zusammenfassen der einzelnen Datensätze in Geodatenbanken Geodatenbank enthält schließlich alles um einen speziellen Bereich zu Modellieren (siehe Beispiel: Stadt)
Einbetten in Geodatenbanken Umgebung Grundstücke Straßen Stadt Geodatenbank Datensatz
UML in ArcInfo: CASE - Tools CASE - Tools: Computer Aided Software Engineering Software - Entwicklungsumgebung CASE - Tools fassen sonst isolierte Software -Entwicklungswerkzeuge (z.B. Editoren, Übersetzer, Verwaltungsprogramme) in einer vollständigen benutzerfreundlichen Arbeitsumgebung zusammen
... Und nicht nur für UML Weitere Einsatzmöglichkeiten: Datenflußpläne, Netze ... In Visio auch Modellierung von Kartenobjekten möglich
Die Strategie von CASE - Tools (1) Das hier angewandte: 1. Entwurf der Geodatenbank in UML - Diagrammen 2. Benutzen des Creation Wizard in ArcCatalog um Schema der Geodatenbank Aufgrund des UML - Diagramms zu erstellen 3. Benutzen von ArcMap - Tools zur Integration ins Programm
Die Strategie von CASE - Tools (2) Der umgekehrte Ansatz: 1. Importieren bereits vorhandener Daten (ArcCatalog, ArcToolbox) 2. Aufbau des geometrischen Netzwerkes 3. Hinzufügen des UML - Diagramms zu den existierenden Daten mittels des CreationWizards
Erstellen des UML-Schemas Graphisch: MS Repository Erstellen des UML-Schemas Import von Daten CreationWizard Hinzufügen des UML Geodatenbank Shape Files Coverages
... Das war´s für´s erste Vielen Dank für Eure Aufmerksamkeit Viel Spaß mit Till