Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Erschließung domänenübergreifender Informationsräume mit Multimodellen Java User Group Saxony Dresden, 01.02.2016 Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Firmenporträt IT-Beratung Partner Dr.-Ing. Sebastian Fuchs Standorte Fachlich: Bauinformatik, Multimodelle Dr.-Ing. Frank Purtak Dipl.-Ing. Wolfgang Döking Methodisch: Software-Factories, MDSD Technologisch: Java, Eclipse RCP Mitarbeiter 01.02.2016 Java User Group Saxony Dresden Stuttgart Sebastian Fuchs TragWerk Consult Motivation und Ansatz Ingenieure S.Fuchs GbR Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Domänenübergreifender Informationsbedarf • Aufgabenspezifscher & Information interdisziplinärer Ingenieur Informationsbedarf Fachmodell A • Repräsentation durch Fachmodell B separate & heterogene Fachmodelle Fachmodell … • Problem: Erschließung der modell-, format- und domänenübergreifenden Information ? • Beispiel: Berechnung eines Zahlungsplans 01.02.2016 Java User Group Saxony Ingenieur TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Ziel: Singulärer Informationsraum Gesteigertes Informationspotential durch verknüpfte Daten Nutzungsweise Domäne A‘ Domäne A‘ Domäne B‘ Informationspotential Domäne B‘ Domäne C‘ Domäne C‘ Baufachanwendung Fachmodell A Fachmodell A a1 a1 a2 Fachmodell B b1 b2 Datenbasis b3 Fachmodell B b1 b2 b3 Fachmodell … Fachmodell … … … 01.02.2016 a2 … Java User Group Saxony … Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Das Multimodell-Konzept Übertragbar, domänenneutral, kompatibel zu bestehenden Anwendungen MD(MM) MD(EM) Elementarmodell A MD(LM) L1 a1 a2 Linkmodell 1 MD(L) Elementarmodell B b1 L4 L5 … • Keine Beschränkung auf bestimmte Domänen • Explizite, externe Links L2 L3 • Unveränderte Daten im Originalformat • Optionale Metadaten (MD(x)) b3 b2 Beispiel-Link: Elementarmodell … … … • LV-Position • Vorgang • Stütze 01.02.2016 Java User Group Saxony TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Die Multimodell-Methode Metadaten-Kataloge Prozessorientierte Arbeitsweise EM A EM B EM … EM A EM A LM 1…n Metadaten LM 1…n Metadaten EM B EM … Informationsverarbeitung Multimodell-Engine 01.02.2016 EM … Multimodell-Views Linkerzeugung MMQL EM B Java User Group Saxony MMQL Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Grundlagen der Multimodell-Methode Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Explizite, externe Linkobjekte ID=1.3.10 L1 Linkmodell 1 L2 L3 Links sind ID-basiert a1 ID=02.005 b1 L4 L5 … • Ermöglicht unveränderte Elementarmodelle Links sind mehrwertig • Mehr als 2 verlinkte Elemente möglich • Mehr als 2 Elementarmodelle möglich ID=i$aQq12 c2 Links sind aufgabenspezifisch • Gruppierung von Links mit gleichem Zweck Linkmodell 01.02.2016 Java User Group Saxony Ingenieure S.Fuchs GbR Erschließung domänenübergreifender Informationsräume mit Multimodellen Das Generische Multimodell Datenschema eines universellen Multimodells • Domänenneutral: beliebige Elementarmodelle • Interne Repräsentation in einer universellen Multimodell-Software • Serialisierung: neutrales Datenaustauschformat (MM-Container) Elementarmodell 1..n * Element 2..n Multimodell * Linkmodell 1..n Link Generisches Multimodell 01.02.2016 Java User Group Saxony TragWerk Consult Ingenieure S.Fuchs GbR Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Das Ideelle Elementarmodell Homogener Zugriff auf beliebige Originalformate • Virtuelle Struktur: Zugriffsschnittstelle auf traditionelle Parser • Idealisierte Abbildung gängiger Datenmodelle: Aggregation primitiver Daten zu komplexen Typen • Bisher ist kein Baufachmodell bekannt, welches nicht im Multimodell anwendbar ist Elementar -modell 1..n * Element • id:String • type:String 2..n Multimodell * Linkmodel l 1..n Link Generisches Multimodell 01.02.2016 Java User Group Saxony * Property 0..1 <<String>> Value Ideelles Elementarmodell Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Multi-Model Query Language (MMQL) Erzeugung von Links & Multimodell-Views • Sprachparadigma: mengenorientiert, deklarativ • Syntax und Semantik in Anlehnung an SQL • Beliebig tief verschachtelte Kriterien Zeige alle Wände mit der Expositionsklasse XC1, welche vor dem 01.03.2013 fertiggestellt werden 01.02.2016 Java User Group Saxony Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Multimodell-Views Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Ingenieure S.Fuchs GbR Voraussetzung: Linkerzeugung Kombination der Elemente Filtern mittels Property-Kriterien Elementarmodell A a2 a1 b1 … a1 b2 … Elementarmodell B b1 a1 b3 … b1 b2 a2 b1 … ⁞ ⁞ ⁞ a2 b3 … b3 b2 … b3 Elementarmodell … … a1 a2 … … Zusammenfassung zu mehrwertigen Links im Nachgang möglich 01.02.2016 Java User Group Saxony L1 Linkmodell 1 a1 L2 … TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Prinzip des Multimodell-Filterns Kombination aus Elementarmodell-Filtern und Linkauswertung EM-Filter A LM 1…n EM A EM-Filter B EM B EM-Filter … EM … Domäne A‘ Linkauswertung Übertragung auf tabellarisches ResultSet • Projektion (Definition der Spalten) • Selektion (Reduktion der Zeilen) • Filtern von Elementarmodellen • Property-Kriterien • Benannte Elementmengen • Modellübergreifendes Filtern • Linkauswertung Neu • Elementkombination • Linkinterpretation • Elementarmodellübergreifende Property-Kriterien 01.02.2016 Java User Group Saxony Domäne B‘ Domäne C‘ TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Strukturelle Linksemantik - Elementkombination Elementkombination • Zu betrachtende Element-Typen • Unverlinkte Elemente im Ergebnis ? Linkmodell 1 Elementarmodell A L1 a1 L2 a1 a1 b1 a2 Elementarmodell B b2 b1 Natural (3) L1 L2 a1 b1 a1 b2 a2 b2 b2 b3 Full Cross Product (6) Right Outer (4) L1 L2 Ø 01.02.2016 a2 a1 b1 Ø a1 b1 a1 b2 Ø a1 b2 a2 b2 ⁞ ⁞ ⁞ null b3 Ø a2 b3 Java User Group Saxony TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Strukturelle Linksemantik Prinzipielle Deutungsmöglichkeit nicht/vorhandener mehrwertiger Links • Fachliche Entscheidung auf Nutzerebene Linkinterpretation Natural Elementkombination Right Outer Strict Standard Transitive strict linkedwith linkedwith trans linkedwith strict right linkedwith right linkedwith trans right linkedwith Full Cross Product cross linkedwith Modifikatoren der MMQL-linkedwith-Anweisung In allen Systemen mit mehrwertiger Linkauswertung relevant 01.02.2016 Java User Group Saxony Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Fallstudie Erschließung domänenübergreifender Informationsräume mit Multimodellen M2A2 – Universelle Multimodellsoftware Multimodell-Struktur MMQL-Editor 01.02.2016 Elementarmodell-Viewer MMQL-ResultSet Java User Group Saxony TragWerk Consult Ingenieure S.Fuchs GbR TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Fallstudie Zahlungsplan - Design 1. Elementarmodelle MMQL create 2. Links erzeugen 1 3 L1 (3. MM austauschen) n MMQL select 4. MM-View erzeugen [€] ResultSet (Tabelle) 5. Auswertung in Tabellenkalkulation 01.02.2016 Java User Group Saxony TragWerk Consult Erschließung domänenübergreifender Informationsräume mit Multimodellen Ingenieure S.Fuchs GbR Fallstudie Zahlungsplan - Ergebnisse Ausführungsdauern der Datenzusammenstellung [min] Multimodell-Methode Manuell Programmierung MMQL 60,0 Ausführung Verlinkung (0,430)* 0,88 Ausführung MM-View (0,005)* 0,10 ∑ (0,435)* 0,98 * bei geparsten Elementarmodellen Quantitatives Ergebnis: • Geschwindigkeitsgewinn Faktor: (483)* 215 Qualitatives Ergebnis: • MMQL-Query ist wiederverwendbar • MM: Reproduzierbare Ergebnisse 01.02.2016 Java User Group Saxony 210,0 Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Fazit Erschließung domänenübergreifender Informationsräume mit Multimodellen TragWerk Consult Multimodell-Methode Zusammenfassung • Neutraler, domänenübergreifender Datenaustausch • Kompatibel zu bestehenden Baufachanwendungen • Methoden und Implementierung zur domänenübergreifenden Erschließung • Auch auf zukünftige interdisziplinäre Aufgabenstellungen anwendbar Mögliche Weiterentwicklungen • Filterergebnisse als neues Multimodell • Multimodell-Templates / Metadaten-Management Überführung in Praxis • Standardisierung: buildingSMART Projektgruppe „Multimodelle“, gegründet 08.10.2013 • TU Dresden stellt M2A2 kostenfrei für nicht kommerzielle Anwendung zur Verfügung 01.02.2016 Java User Group Saxony Ingenieure S.Fuchs GbR Sebastian Fuchs TragWerk Consult Ingenieure S.Fuchs GbR Danke Fragen ? Erschließung domänenübergreifender Informationsräume mit Multimodellen