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.
|