Bauinformatik Vertiefte Grundlagen Systemtheorie 5. Semester 5. Vorlesung Formalisierte Kommunikation Prof. Dr.-Ing. R. J. Scherer 1 TU Dresden - Institut für Bauinformatik Nürnberger Str. 31a 2. OG, Raum 204 Allgemeiner Prozess einer ingenieurmäßigen Systembetrachtung 1. Systembetrachtung Grobe Definition von Zweck, Funktion, Prozessen und Verhalten Formale Repräsentation des Systems (IDEF0) auf hoher Ebene 2. Systemobjektmodell = Datenstruktur = {O, R} basierend auf einem Metamodell (= O-O-Modell / E-R-Modell) Entwicklung eines Datenmodells als O-O-/E-R-Schema 3. Implementierung des Schemas in einer Software Umsetzen in ein vereinfachtes E-R-Modell Implementieren in MS ACCESS 4. Instanziierung eines Ingenieurmodells = Konfiguration des domänenspezifischen Ingenieurmodells aus dem Datenmodell 5. Numerisches Programm zur Berechnung des Systemverhaltens = Simulation = Prognose basierend auf einem Modell + Modellannahmen + quantitativen Werten (Statistik) 6. Kommunikation M2M Maschine mit Maschine, M2H Maschine mit Mensch 7. Monitoring, Evaluation und Bericht TU Dresden - Institut für Bauinformatik 2 H2H Kommunikation Beispiel Stütze Pfeiler Säule … Problem1 Synonyme Problem2 Unscharfe Formulierung d. h. weder sind Ausdrücke und Syntax ausreichend standardisiert noch werden Standards fehlerfrei angewandt Architektur- Kommunikationsmedien modell 1) Sprache - direkt - Telefon 2) Schrift - Brief - Fax Stütze - E-Mail mit Anhängen eine - Zeichnungen gemeinsame - Skizzen Sprache - Berichte Tragwerksmodell Tragwerksplaner TU Dresden - Institut für Bauinformatik Architekt Achtung: E-Mail ist keine M2M Kommunikation 3 M2M Kommunikation Tragwerksmodell Problem: Modelle sind nicht harmonisiert, d. h. unabhängig voneinander entwickelt Interoperable Semantik = eine gemeinsame Sprache Problem 1 untersch. Semantik Problem 2 untersch. Kontext und Bedeutung (=>Ontologie) Architekturmodell Tragwerksplaner TU Dresden - Institut für Bauinformatik Architekt 4 H2M Kommunikation Daten Output • Grafische Repräsentation • Alphanumerische Repräsentation • Multimediale Repräsentation Daten Input • Grafisch-interaktive Werkzeuge • Intelligente Werkzeuge Kurven, Diagramme, Isolinien, Tabellen, Berichte TU Dresden - Institut für Bauinformatik 5 M2M Kommunikation - Notwendigkeiten • Ein Datenmodell für jede Domäne (=Fachmodelle) zur Formulierung unserer Ingenieurmodelle • Eine formale Sprache zur Kommunikation unserer Ingenieurmodelle • Abbildungsvorschriften zur Übersetzung des Ingenieurmodells von einer Domäne in eine andere Domäne TU Dresden - Institut für Bauinformatik 6 M2M Kommunikation – Realisierung DomänenDatenmodell Virtuelles Gemeinsames Datenmodell XML-Schema (EXPRESS, EXPRESS-G) DomänenDatenmodell XML-Schema Beschreibungssprache z.B. XML-format (EXPRESS, EXPRESS-G) (SPF: STEP physical File) AUTOCAD intern .DWG ProgrammierSchnittstelle (API) X-CAD externes Datenformat Programmier- intern Schnittstelle .DXX (API) Ziel: Die 2 API und das externe Datenformat müssen eine homogene Einheit werden! TU Dresden - Institut für Bauinformatik 7 M2M: Abbildungen (Mapping) • In der Programmierschnittstelle (API) erfolgt eine Daten-Abbildung (Mapping), die Daten und die Datenstrukturen aus einem Quelldatenmodell in die eines Zieldatenmodell überführt – Transformation von Datentypen (string integer) – Transformation von Koordinatensystemen (global x,y lokal x‘,y‘) – Transformation von Einheiten (m mm) – Transformation von Datenstrukturen (Objekt Attribut) TU Dresden - Institut für Bauinformatik 8 Integration von Werkzeugen = Client-Server-System Werkzeug zu Werkzeug Kommunikation Kommunikation der Werkzeuge mit einer gemeinsamen Datenbank mit individuellen Sprachen mit einer standardisierten Sprache Architect Architect Civil Engineer Civil Engineer Structural Engineer Building Owner HVAC Engineer Facilities Manager Controls Engineer Constr. Manager Großes Problem: Wer pflegt die Daten? Building Owner Structural Engineer HVAC Engineer Filtern Facilities Manager Controls Engineer Constr. Manager CIO* pflegt die Daten *) Chief Information Officer TU Dresden - Institut für Bauinformatik 9 Informationsraum Client 1 Client 2 …………….. Client 5 ………. Client n Server 2 Information (Daten) ist verteilt Server 1 …………….. Server 6 ………. Server m Server 3 WebService 1 Werkzeuge sind auch verteilt WebService 2 …………………….……………… Web-Service k TU Dresden - Institut für Bauinformatik 10 Strukturierter Informationsraum ….. Client-Layer C1 Middle-Ware-Layer (Corba), GRID / Cloud, P2P Service Layer Services Server Layer Server C2 TU Dresden - Institut für Bauinformatik Cn = Browser (= GUI) = intelligentes Internet = Wasservers.programm (bei uns EXCEL) = Datenbank (bei uns ACCESS) 11 Unser Wasserleitungsbeispiel Wasserleitung planen: CD gemeinsame Datenbank mit einer standardisierten Sprache Architect Civil Engineer Building Owner Structural Engineer HVAC Engineer Filtern Facilities Manager Controls Engineer Constr. Manager TU Dresden - Institut für Bauinformatik 12 XML XML (Extensible Markup Language) • • • • ist eine Erweiterung von SGML (Standard Generalized Markup Language, ISO....) wird genutzt um Text zu strukturieren basiert auf Tagging (Markup) Methode wurde entwickelt um das Layout von Text zu beschreiben, d. h. um Text vom Layout (Ausdruck) zu trennen. Beispiel <main header> Wassersystem</main header> <first subheader> Wasserversorgung</first subheader> Jede Software/Drucker kann jetzt instruiert werden, welche Schriftgröße, Schriftart, Numerierung, etc. genutzt werden soll. Dies a) kann die Gleiche sein, oder b) unterschiedlich. Dies ist definiert in einer DTD (Data Type Definition) oder XML-Schema (XSD) 13 TU Dresden - Institut für Bauinformatik XML • Die Tagging-Methode kann für jede Art von Text genutzt werden, d. h. auch für Daten (Austausch) und für Daten Schemata (DTD, XML-Schema) • Nachteil: Die Dateien werde sehr groß. Die Zeichenanzahl für die Tagging-Zeichenketten ist mehr als für die Daten. Jedoch, Rechenleistung und Bandweiten haben die Nutzung möglich gemacht. • Informationen (Bibliotheken etc.) aus Dateien, die irgendwo im Web liegen, können in die XML-Datei durch Nutzung einer URL eingebunden werden. • Schema-Dateien können ebenfalls ausgetausch werden. Zum Beispiel können sie genutzt werden, um Standard-Schemata zu überschreiben und damit Sonderfälle nach Bedarf zu erzeugen. • Für Jedermann ist es einfach, die Arbeit mit XML direkt zu beginnen. Probleme kommen später Erfolg von XML • Web Service Technologie basiert auf XML 14 TU Dresden - Institut für Bauinformatik Repräsentation in EXPRESS-G Beispiel Knoten REAL REAL REAL x nr y INTEGER (ABS) Knoten z Output_Knoten TU Dresden - Institut für Bauinformatik Verbrauch REAL 15 Schema Repräsentation in XML Beispiel: Knoten <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.tu-dresden.de/WVSchema“> <xs:element name=“Knoten” abstract=“true”> <xs:complexType> <xs:sequence> <xs:simpleType name=“nr” type="xs:integer"/> <xs:simpleType name=“x“ type ="xs:double"/> <xs:simpleType name=“y“ type ="xs:double"/> <xs:simpleType name=“z“ type ="xs:double"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name=“Output_Knoten” abstract=“false”> <xs:complexType> <xs:complexContent> <xs:extension base=“Knoten"> <xs:simpleType name=“Verbrauch”> <xs:restriction base=“xs:double”> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> </xs:schema> TU Dresden - Institut für Bauinformatik 16 Daten-Repräsentation in XML Beispiel: Output-Knoten Output-Knoten(nr=1, x=0.0, y=3.5, z=0.5, Verbrauch=10); Nutzung der XML Datei <root xmlns:wvs=„http://www.tu-dresden.de/WVSchema“> <wvs:Output_Knoten> <wvs:nr>1</wvs:nr> <wvs:x>0.0</wvs:x> <wvs:y>3.5</wvs:y> <wvs:z>0.5</wvs:z> <wvs:Verbrauch>10</wvs:Verbrauch> </wvs:Output_Knoten> </root> TU Dresden - Institut für Bauinformatik 17 EXPRESS und EXPRESS-G EXPRESS(-G): • ISO Norm 10303 (STEP – Standard for the Exchange of Product Model Data) EXPRESS = ISO-10303 Teil 11 • Definition objektorientierter Datenmodelle • ISO Norm definiert, wie mit EXPRESS-basierten Datenmodellen zu verfahren ist (dateibasierter Datenaustausch: ISO-10303 Teil 21- STEP Physical File Format Datenzugriff: ISO-10303 Teil 22 – Standard Data Access Interface Transformation in Programmiersprachen: ISO-10303 Teil 22 – Einbindung in C++ … • Werkzeuge zur Handhabung EXPRESS-basierter Datenmodelle sind verfügbar (Unterstützung der Modelldefinition, Transformation für Datenbanken und Programmiersprachen) TU Dresden - Institut für Bauinformatik 18 Nutzung von XML anstelle von EXPRESS Zusammenhang zwischen XML und EXPRESS • definiert durch das World Wide Web Consortium (W3C) • XML ist ein Weg um Daten zu beschreiben. Eine XML kann außerdem Daten enthalten (XML, ISO…… ist eine Erweiterung von SGML,ISO….) • viele (freie) Werkzeugen verfügbar, die XML unterstützen • Gegenstück zu EXPRESS = XML Schema (XSD) • Gegenstück zu Step Physical File = XML Datei • Beziehung zwischen XML und EXPRESS definiert in ISO-10303 Teil 28 (“Implementation method: XML representation of EXPRESS schemas and data“) TU Dresden - Institut für Bauinformatik 19 Implementierung eines Wasserversorgungssystem mit ACCESS und EXCEL Server = Datenbank in Access • Filtern von Daten = Selektion von Objekten Access: Generierung einer große Ausgabetabelle (=Vereinigung aller selektierter Objekte) • Export von Daten als XML-Datei Werkzeug = Berechnung in EXCEL • Importierte Daten aus XML-Datei Sheet 1 • Transformation der Dimensionen Sheet 2 • Transformation der Datenstruktur Sheet 3 • Berechnungsprogramm Sheet 4 TU Dresden - Institut für Bauinformatik 20