Entwicklung einer domänenspezifischen Sprache zur Spezifikationsbeschreibung ereignisorientierter Simulationen

Aus SDQ-Institutsseminar
Version vom 19. März 2020, 15:34 Uhr von Sandro Koch (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Vortragende(r) Eric Hamann
Vortragstyp Bachelorarbeit
Betreuer(in) Sandro Koch
Termin Fr 3. April 2020
Vortragsmodus
Kurzfassung Im Bereich der modellgetriebenen Softwareentwicklung sind Simulationen ein wichtiges

Konzpet. Zum Beispiel erlaubt das Palladio Component Model (PCM) die Modellierung und der Palladio Simulator die Simulation von Softwarearchitekturen durch ereignisorientierte Simulationen, um Mängel in Softwarearchitekturen frühzeitig zu erkennen. Das Tool DesComp ermöglicht es, ereignisorientierte Simulationen zu modellieren und zu vergleichen. Vor der Implementierung einer neuen Simulation können so Ähnlichkeiten zu bestehenden Simulationen identifiziert werden, um diese wiederzuverwenden. Der DesComp-Ansatz modelliert das Simulations-Verhalten mittels Erfüllbarkeit prädikatenlogischer Formeln (Satisfiability Modulo Theories, kurz SMT). Die Spezifikation des Simulations-Verhaltens durch SMT-Code ist allerdings aufwändig und erfordert Hintergrundwissen zum SMT-LIB Standard. Im Rahmen dieser Arbeit wurde eine domänenspezifischen Sprache (DSL) zur Spezifikation der Simulations-Struktur und des Simulations-Verhaltens mit dem Xtext-Framework entwickelt. Auf Grundlage der Struktur-Spezifikation des DesComp-Ansatzes wurde dafür ein Metamodell zur Modellierung von Struktur und Verhalten ereignisorientierter Simulationen erstellt. Dieses Metamodell wurde als Grundlage der abstrakten Syntax der entwickelten Sprache verwendet. Das Metamodell dient dann als Ausgangspunkt für die weitere Verwendung und Analyse der Simulations-Spezifikation. Dazu wurde eine Transformation der Verhaltens-Spezifikation in SMT-Code implementiert, die zusammen mit der Simulations-Struktur in eine Graph-Datenbank exportiert werden kann, um die Simulation in DesComp zu analysieren oder mit anderen Simulationen zu vergleichen. Die entwickelte Sprache wurde anhand der Simulation BusSimulation und des Palladio-Simulators EventSim evaluiert, indem die Modellierungen der Simulationen mit DesComp und der Sprache anhand verschiedener Kriterien verglichen wurde.