Informationsmanagement u. Numerische Methoden

Ähnliche Dokumente
Informationsmanagement u. Numerische Methoden

Informationsmanagement u. Numerische Methoden

2. Übung. Systemobjektmodell. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1

Datenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier

Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation

Kapitel 6: Das E/R-Modell

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Kapitel 3: Datenbanksysteme

Teil III Entity-Relationship-Modell

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke

Kapitel 3: Datenbanksysteme

WP4-33: Systementwicklung 7.Semester Übung 4: Entwicklung einer Software zur Extraktion von IFC-Daten

Bauinformatik Informationsmanagement

IFC Format (Teil 1) Technologie. Dr. Matthias Weise. AEC3 Deutschland GmbH. OKSTRA/IFC-Workshop (19./ )

Geoinformation I Datenmodellierung

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

5.2 Entity-Relationship-Modell

Java Einführung Objektorientierte Grundkonzepte

Kapitel 3: Datenbanksysteme

Kurzeinführung in UML

Konzeptueller Entwurf

Kapitel 6: Das E/R-Modell

7. Objektorientierung. Informatik II für Verkehrsingenieure

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

Auf einen Blick. 1 Einleitung Die Basis der Objektorientierung Die Prinzipien des objektorientierten Entwurfs...

Objektorientierte Modellierung (1)

Glossar für das Fach Informatik

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich

Objektorientiertes Programmieren

Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel

Programmieren in Java

Objektorientierte Programmierung OOP

Objektorientierte Modellierung

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014

6.3 Entity-Relationship-Modell. Einführendes Beispiel

Die Unified Modeling Language (UML)

PRG2 Folien Zicari Teil 2 Einführung in Datenbanken SS 2007

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl

Vorlesung Informationssysteme

Anwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie

Geoinformation Abbildung auf Tabellen

Veranstaltung Pr.-Nr.: Datenmodellierung. Veronika Waue WS 07/08. Phasenschema der Datenbankentwicklung (grob) Informationsanalyse

Theorie zur Übung 8 Datenbanken

UML -Klassendiagramme

Praxisbuch Objektorientierung

Arbeiten mit einer Datenbank 1

Lernmodul 2 Modelle des Raumes

WP4-33: Systementwicklung 7.Semester Vorlesung 6: IFC Objektmodell II

Zweite Klassenarbeit der Jahrgangsstufe 1 (Wirtschaftsgymnasium) Thema: Relationale Datenbanken

7. Programmierungs- Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik

Analyse und Design mituml2

Objektorientierte Programmierung

Repetitorium Informatik (Java)

StR C. Müller/Dr. M. Ehmann. Objektorientierung in den (Grund-) Modulen

Programmierung Paradigmen und Konzepte

Inhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD

Hands-on-Workshop Datenmodellierung mit dem neuen Innovator for Database Architects. MID Insight Nürnberg,

Praktische Eine Einführung

15 Unified Modeling Language (UML) 7 UML und Java Informatik 2 (SS 07) 595

Unified Modelling Language

Informationssysteme für Ingenieure

Einführung in die objektorientierte Programmierung

Objektorientierte Programmierung

Modellierungstipps für die Anwendungsfallmodellierung

SE Besprechung. Übung 1 Programmverständnis, Dokumentation

Objektkatalog für das Straßen- und Verkehrswesen

10. Programmierungs-Phase: Objektorientierung Software Engineering

Analyse und Design mituml2.1

Objektorientierte Programmierung Studiengang Medieninformatik

Lernmodul 2 Topologie. Lernmodul 2: Geoobjekte und ihre Modellierung - Topologie

Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt.

Gliederung der Folien

NACHRICHTENTECHNISCHER SYSTEME

Kapitel

Einführung in die Programmierung

Vorlesung Programmieren

Transkript:

Fakultät Bauingenieurwesen Institut für Bauinformatik, Prof. Dr.-Ing. Raimar J. Scherer Informationsmanagement u. Numerische Methoden Relationale und Objekt-orientierte Datenstrukturen 6. Semester 5. Übung: Objekt-orientierte Datenstrukturen I

Übersicht 1) Objekt-orientierte Datenstrukturen 2) Datenmodellierung Was muss modelliert werden? 3) Konzepte der O-O-Modellierung 4) Modellierungssprache EXPRESS-G 5) Aufgabe: Modell eines DLT Folie 2

Objektorientierte Datenstrukturen 1) Beschreibung der realen Welt anhand der sie repräsentierenden Objekte und deren Verhalten (Analogie zur menschl. Denkweise) 2) Definition der Objekte durch Klassen, Attribute, Beziehungen zwischen den Klassen und Methoden (Verhalten der Objekte) 3) Beziehungen zwischen Klassen sind Informationsträger 4) Anwendung des Konzeptes der Vererbung (Mehrfachvererbung - nicht in JAVA, Polymorphie) zur Beschreibung hierarchischer Strukturen (Generalisierung, Spezialisierung), Ableitung neuer aus vorhandenen Klassen 5) Prinzip der Objekt- bzw. Datenkapselung 6) Textuelle Modellierung EXPRESS, grafische Darstellung der Objekt- und Datenstruktur mittels EXPRESS-G (basierend auf der STEP-Datenstruktur, ISO 10303-11) oder UML 7) IFC Datenschema (zukünftig) wichtigste objektorientierte Datenstruktur im Bauwesen Folie 3

Was muss modelliert werden? welches Wissen, welche Information, welche Daten? Objekte Objektattribute Beziehung zwischen den Objekten Beziehungseigenschaften (z.b. Aggregation, Kardinalität) Verhalten der Objekte (Änderung des Objektzustandes) Prozess Die Steuerung (Steuerungsinformation) Schnittstelle (M2M) Graphisch interaktive Schnittstelle (M2H) Folie 4

Objektorientierte Datenmodellierung Grundkonzepte zur Definition von Datenstrukturen: - Objekte - Beziehungen - Attribute Erweiterte Konzepte: - Klassifikation - Vererbung (Wiederverwendung und Re-definition von Attributen) - Auswahltypen (select types) - Aufzählungstypen (Enumerationen) - Aggregationen (Array, Liste, Menge) Folie 5

Objektorientierte Datenmodellierung Bedingungen: - inverse Beziehungen - optionale oder obligatorische Attribute - Kardinalitäten für Aggregationen - Regeln (z.b. Definitionsbereich/Wertebereich - Abgeleitete Attribute (funktionale Abhängigkeiten) Funktionalität für Datenvalidierung (Konsistenzprüfung) Die zur Verfügung gestellte Funktionalität unterscheidet sich bei objektorientierten Modellierungssprachen (z.b. UML, EXPRESS) sowie bei Programmiersprachen (C++, Java, etc.) Folie 6

EXPRESS-G Modellierungselemente EXPRESS-G ist die grafische Notation der Sprache EXPRESS (ISO 10303-11) Klassenname Darstellung der Klassen (Menge von Objekten mit ähnlichen Eigenschaften) (ABS)Klassenname Abstrakte Klasse (nicht instanziierbar) Folie 7

EXPRESS-G Modellierungselemente Einfache Datentypen: Binary Eine Folge von 1 und 0 (bspw. 101110) Boolean WAHR(1) oder FALSCH(0) Integer Ganzzahlige Werte (ohne Komma) Logical WAHR, FALSCH oder UNBEKANNT Number Real oder Integer Real Fließkommazahl String Alphanumerische Zeichenkette Folie 8

EXPRESS-G Modellierungselemente Attribute und Beziehungen bezeichnung String obligatorisch Stütze länge Real fertigteil Boolean optional Folie 9

EXPRESS-G Modellierungselemente Beziehungen zwischen Klassen Stütze besitztmaterial Material Notation in EXPRESS: ENTITY Stuetze besitztmaterial ; END_ENTITY; : Material; Folie 10

EXPRESS-G Modellierungselemente Beziehungen zwischen Klassen Stütze besitztmaterial Material Notation in EXPRESS: ENTITY Stuetze besitztmaterial ; END_ENTITY; Attribut : Material; Wertebereich Material_1 Attributausprägung Stuetze_1 besitztmaterial : Material_1 Folie 11

EXPRESS-G Modellierungselemente Kardinalität und Aggregation Beschreibung L[1:?] String Raum besitztumgrenzung A[1:4] Wand besitztzugang S[1:?] Tür A[1:?] B[1:?] L[1:?] S[1:?] ARRAY geordnete Menge von Werten (Objekten, Attributwerten) mit fester (Feld-) Größe BAG ungeordnete Menge von Werten, Duplizität erlaubt LIST geordnete Menge von Werten SET ungeordnete Menge von Werten, Duplizität nicht erlaubt Folie 12

EXPRESS-G Modellierungselemente Superklasse und Subklasse (Vererbung) (ABS)Material 1 bezeichnung e-modul String Real (ABS)Beton 1 Stahl Holz Ortbeton Spritzbeton UW-Beton Walzbeton Folie 13

EXPRESS-G Modellierungselemente Inverse Beziehungen besitztumgrenzung A[3:4] (INV) umgrenzt S[1:2] Wand Raum ist_teil_von [1:?] (INV) hatraum S[1:?] Stockwerk Raum umgrenzt S[1:2] Wand Raum hatraum S[1:?] Stockwerk Folie 14

EXPRESS-G Modellierungselemente Aufzählungstypen (Enumeration Data Type) Raum TypNutzung NutzungTypeEnum Notation in EXPRESS: TYPE NutzungTypeEnum = ENUMERATION OF (BÜRO, WOHNEN, PARKEN, VERSAMMLUNG, NUTZERDEFINIERT, NICHTDEFINIERT); END_TYPE; Folie 15

EXPRESS-G Modellierungselemente Definierte Datentypen (Defined Type) beschreibung Text String Stütze fläche_querschnitt Flächenmaß Real Notation in EXPRESS: TYPE Text = STRING END_TYPE; TYPE Flaechenmass = END_TYPE; Folie 16

EXPRESS-G Modellierungselemente Auswahltypen (Select Data Type) Volumenmaß Real MessgrößeSelect Flächenmaß Notation in EXPRESS: TYPE MessgroesseSelect = SELECT (Volumenmass, Flaechenmass, Massenmass, ); END_TYPE; Spannung Kraft Flächenmaß Folie 17

EXPRESS-G Modellierungselemente Seiteeferenzen Zu Referenz: Von-Referenz: Source Target zuseite#, Index#, Target Seite#, Index# (vonseite#) Folie 18

EXPRESS-G Modellierungselemente Abgeleitete Wertebreiche: (DER)min Integer Listenobjekt max Integer usermin Integer Kreis (DER) Fläche x y Radius Real Real Real Real Notation in EXPRESS: ENTITY Kreis X : Real Y : Real Radius : Real DERIVE Fläche : Real:=PI*Radius**2 END_ENTITY Folie 19

EXPRESS-G Modellierungselemente Modell- (Schema-) Schnittstellen (Wird verwendet um die Elemente eines fremden Schemas für ein anderes Schema nutzbar zu machen.) Schema: Bauwerk Kalkulation Stütze Kalkulation.Epreis Bemerkung: Schemaschnittstellen sind erforderlich aufgrund der Modularisierung des Datenmodells: -eine Menge von Schemata bildet ein Modell -wiederverwendbare Schemata (ein Schema in mehreren Modellen) -effizientere Verwaltung des Datenmodells Folie 20

EXPRESS-G Modellierungselemente Klassenname String Enum Select Label Klasse (einfache) Datentypen Aufzählungen Selektionen Definierte Datentypen Relation Relation Relation S[1:?] Relation S[1:?] Relation (INV) Relation obligatorische Relation (exakt 1) optionale Relation (0 oder 1) Aggregations- Relation (1 oder n) Aggregationsrelation (0,1 oder n) Inverse Relation (1 oder n) S, Ref, Klasse S, Ref (vons) Schema.Klasse zu-referenz von-referenz Modellschnittstelle Definitionsverweis 1 Relation Regel-Relation exklusiv UNDODER Super/Subklasse Schema.Klasse Modellschnittstelle Definitionsverwendung Selektion Folie 21

Ausschnitt IFC-Schemaspezifikation IFC2x4 RC1: 801 (+148) Klassen, 67 (+21) Select Types, 203 (+39) Enumeration Types, 122 (+5) Defined Types (und unzählige Attribute und Relationen) (http://www.iai-tech.org/ifc/ifc2x4/rc1/html/index.htm) Folie 22

Aufgabe 5: Modellierung eines DLT Beschreibung aller Informationen die für - Stat. Berechnung, - Bemessung und - Konstruktive Ausbildung eines DLT erforderlich sind. Annahmen: - 2D-Modell (x-ko längs, y-ko senkrecht zur Trägerachse) - Unbegrenzte Anzahl an Feldern - Querschnitte feldweise konstant - zul. Lagerung: elastisch und starr Modellschema: EXPRESS-G Werkzeuge: z.b. Microsoft Visio, EDRAW Max (Trial-Version) Folie 23

Aufgabe 5: erf. Objekttypen Welche Elemente eines DLTs sollten als Klassen modelliert werden? Folie 24

Aufgabe 5: erf. Objekttypen Knoten Auflager Feld Last Querschnitt Folie 25

Aufgabe 5: Topologie Wie kann die Topologie eines DLT modelliert werden? Folie 26

Aufgabe 5: Topologie (Bsp.) Feld Start_Knoten End_Knoten Knoten Folie 27

Aufgabe 5: Topologie + Geometrie Wie können die topologischen Elemente um Geometrieinformationen erweitert werden? Feld Start_Knoten End_Knoten Knoten Folie 28

Aufgabe 5: Topologie + Geometrie (Bsp.) Feld Start_Knoten End_Knoten Knoten x länge y Folie 29

Aufgabe 5: Statik Welche Elemente sind erforderlich, damit eine statische Berechnung Durchgeführt werden kann? Feld Start_Knoten End_Knoten Knoten x länge y Folie 30

Aufgabe 5: Statik Feld Start_Knoten End_Knoten (ABS)Knoten x länge 1 y RandKnoten FeldKnoten Folie 31

Aufgabe 5: Statik Feld Start_Knoten End_Knoten (ABS)Knoten x länge 1 y RandKnoten FeldKnoten Start_Knoten End_Knoten Feld länge Folie 32

Aufgabe 5: Statik Feld Start_Knoten End_Knoten (ABS)Knoten x länge 1 y RandKnoten FeldKnoten Liegt_in Start_Knoten End_Knoten Feld länge Folie 33

Aufgabe 5: Statik (ABS)Knoten 1 x y RandKnoten 1 FeldKnoten (INV) enthält L[1:?] Liegt_in AuflagerStarr AuflagerEla Start_Knoten End_Knoten Feld länge Folie 34

Aufgabe 5: Statik (Bsp.) 35, 1 (37) (ABS)Knoten x y 1 drehbar BOOLEAN verschieblich BOOLEAN RandKnoten 1 FeldKnoten (INV) enthält L[1:?] Liegt_in AuflagerStarr AuflagerEla Start_Knoten End_Knoten Feld k länge Folie 35

Aufgabe 5: Querschnitt (Bsp.) Feld hat_querschnitt I x (ABS)Querschnitt besitzt_material (ABS)Material 1 Standardprofil FreiProfil Profiltyp ProfiltypenSelect DIN_HEB_Enum DIN_IPE_Enum DIN_HEA_Enum EXPRESS-Notation: TYPE DIN_HEB_Enum = ENUMERATION OF (HEB100, HEB150, HEB200); END_TYPE; Folie 36

Aufgabe 5: Lasten (Bsp.) lastgröße Lastwert STRING bezeichnung bel_knoten Einzellast 35, 1, Knoten 1 (ABS)Last Darstellbare Linienlast bel_knoten A[2:?] Linienlast lasttyp RK n FK n FK n+2 RK n+1 SBW-g Lastgröße L[2:?] Lastwert LasttypenEnum Lasttypen z.bsp: Eigenlast; Verkehrslast SBW-q Teil-sbw_select sicherheitsbeiwert Lastfall lasten L[1:?] SBW-q_red STRING bezeichnung lastfälle L[1:?] Lastfallkombination Folie 37