Geodatenbankenentwurf mit UML und Visio
Download
Report
Transcript Geodatenbankenentwurf mit UML und Visio
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
Daten
Datenquelle
Grundstück
Katasteramt
Grundstücksbeschrei- Landtitel
bung
Besitzer
Grundbuch
Adresse
Telefonbuch
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
0...*
Raum
Verbindet 2...*
Raum
Oberklasse
Unterklasse
Labor
Büro
Beachte:
Kardinalitäten:
genau 1
0 bis 4
3 oder 7
größer oder
gleich null
0...3,7...9 ...
1
0...4
3,7
0...*
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:
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
- Mittelpunkt
- Radius
Attribute
+ anzeigen
+ entfernen
+ verschieben
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“
Klasse Bezug zu
Straße
Brücke
Name
Straße
Ampel
Bus Route
-
Typ
Linie
Punkt
Text
Punkt
Linie
Haltestelle
Punkt
-
ArcInfo
Kante
Knoten
Text
Punkt
Kompl.
Kante
Punkt
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:
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
Geodatenbank
Stadt
Datensatz
Umgebung
Grundstücke
Straßen
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
Graphisch:
MS Repository
Erstellen des
Import
UML-Schemas
von Daten
CreationWizard
Hinzufügen
Shape Files
Coverages
des UML
Geodatenbank
... Das war´s für´s erste
Vielen Dank für Eure Aufmerksamkeit
Viel Spaß mit Till