Erweiterung einer DSL zur Simulationskopplung um die Domäne der Netzwerk Simulationen

Aus SDQ-Institutsseminar
Version vom 23. Mai 2019, 22:19 Uhr von Sandro Koch (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Vortragende(r) Jan Meurer
Vortragstyp Masterarbeit
Betreuer(in) Sandro Koch
Termin Fr 21. Juni 2019
Vortragsmodus
Kurzfassung Die Bestimmung von Qualitätsmerkmalen eines Software-Systems, wird typischerweise erst nach der Entwurfsphase ersichtlich. Diskrete-Event-Simulationen basierend auf Computer-Systemen können hier Aufschluss geben und Entscheidungen schon zu Beginn der Entwurfsphase beeinflussen. Mit verfügbarem Domänen-Wissen kann eine Abstrakte Repräsentation eines Software-Systems dargestellt werden, um bestimmte Aspekte für eine Analyse zu simulieren.

Mit der wachsenden Komplexität von Software-Systemen steigt auch der Bedarf der Skalierbarkeit, Wartbarkeit und damit auch die Anwendbarkeit von Simulationen. Dies verlangt das kombinieren von Simulationen aus unterschiedlichen Domänen, eine effiziente Wartbarkeit, so wie eine adäquate Wiederverwendbarkeit, die es dem Simulations-Anwender ermöglicht effektiv Simulationen zu Erstellen. Herkömmliche Simulations-Engines, die eine monolithische Vorgehensweise anwenden, können diesen Anforderungen nicht standhalten. Ein Lösungsansatz ist, ein Konzept zur Modularisierung der komplexe Simulationen, das mit einer Domänenspezifischen Sprache (DSL) umgesetzt wurde. Aus diesem Konzept resultiert die Herausforderung, das Simulations-Engines verschiedener Domänen über einen Kopplungsansatz, auf modularer Ebene kommunizieren zu können.

In dieser Arbeit wird der Ansatz hinsichtlich einer Simulations-Engine aus der Domäne der Netzwerk Simulationen analysiert und erweitert. Die Ausdrucksmächtigkeit der DSL hinsichtlich der Kopplung von Netzwerk Simulationen ist nicht bekannt und muss bestimmt werden. Als Grundlage der Untersuchung wird eine Fallstudie mit einem existierenden Kopplungsansatz angewendet, die die Kopplung einer Netzwerk-Simulation mit einer Simulation einer alternativen Simulations-Engine manuell implementiert und analysiert. Die Kopplung, der in der Fallstudie entstandene verteilte Simulation, wird mit der existierenden DSL beschrieben und deren Ausdrucksmächtigkeit bestimmt. Aus den Resultaten wird eine Erweiterung der DSL bestimmt, die nach dem selben Vorgehen auf die Ausdrucksmächtigkeit evaluiert wird. Die Evaluation selbst ist ein Vergleich von Elementen der Fallstudie und den beschriebenen Elementen der DSL. Aus den Ergebnissen der Analyse von Netzwerk Simulationen entsteht ein Kopplungs-Interface was als Annäherung an alle Simulations-Engines aus dem Bereich der Diskreten-Event-Simulationen. Durch Teil-Automatisierung des Kopplungs-Interface wird der Entwicklungsaufwand auf ein annäherndes Niveau von monolithischen Simulationen reduziert.

Die Ergebnisse der Arbeit zeigen, dass eine Beschreibung von Netzwerk-Simulationen mit der erweiterten DSL möglich ist. Da aber Elemente aus der Logik beschreibbar sind, diese aber für eine Kopplung irrelevant sind, nur ein Bruchteil der Fähigkeiten der DSL benötigt werden. Ebenfalls ist in Bezug zur manuellen Entwicklung einer verteilten Simulation eine Arbeitserleichterung durch Wiederverwendbarkeit und Abstraktion gegeben. Als Kern-Ergebnis ist, die bei hoch skalierenden verteilten Simulationen gesteigerte Attraktivität gegenüber der Verwendung einer monolithischen Variante.