Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Instance-Based Context Calculation of OCL Expressions.

Ähnliche Präsentationen


Präsentation zum Thema: "Instance-Based Context Calculation of OCL Expressions."—  Präsentation transkript:

1 Instance-Based Context Calculation of OCL Expressions

2 2 Gliederung der Bachelorarbeit Einleitung zu MDD, EMF, OCL, Impact Analyse Voraussetzungen für die instanzbasierte Kontextermittlung Filtersynthese Event Manager Bidirektionale Navigierbarkeit instanzbasierte Kontextermittlung Aufbau von Pfaden für Rückwärtsnavigation Ermittlung der Kontextobjekte Verbesserungsmöglichkeiten prototypische Implementierung

3 3 in Ecore: nur unidirektionale Referenzen Bidirektionalität durch 2 entgegen gesetzte Referenzen in OCL: Navigierbarkeit von nicht navigierbaren Assoziationen optional (laut Spec abhängig von Plattform) nicht von Ecore OCL unterstützt, in MOIN aber möglich Voraussetzungen: Navigierbarkeit 1/2 A B a2b A B b2a context A inv: self.a2b->notEmpty() context A inv: self.a2b.b2a->notEmpty() A B a2b context B inv: self.b2a->notEmpty() b2a

4 4 Voraussetzungen: Navigierbarkeit 2/2 Lösung des Problems der Navigierbarkeit: Ecore Annotationen Annotationen benennen Gegenrichtung Auffinden der referenzierten Objekte mit Model Query 2 Annotationen erweitern Ausdruckskraft von Ecore OCL Ausdruckskraft gleichmächtig zu MOIN OCL A B a2b @b2a context B inv: self.b2a->notEmpty()

5 5 Rückwärtsnavigation Analyse der Navigationspfade von OCL Ausdrücken Aufbau eines Navigationspfades für Rückwärtsnavigation context A inv: self.a2b.b2c.name = X OperationCall = StringLiteral X PropertyCall name PropertyCall b2c PropertyCall a2b Variable self OppositeProperty NavigationStep Association NavigationStep Identity NavigationStep Änderung des Attributs name

6 6 Ermittlung der Kontextobjekte OppositeProperty NavigationStep Association NavigationStep Identity NavigationStep c A B a2b b2a C b2c c c b b b b b a a a a a a

7 7 Ermittlung der Kontextobjekte OppositeProperty NavigationStep Association NavigationStep Identity NavigationStep c A B a2b b2a C b2c c c b b b b b a a a a a a

8 8 Ermittlung der Kontextobjekte OppositeProperty NavigationStep Association NavigationStep Identity NavigationStep c A B a2b b2a C b2c c c b b b b b a a a a a a

9 9 Verbesserungsmöglichkeiten Strategieauswahl anhand der Größe von Instanzmengen Annahme: Overhead InstanceScope Analyse > Auswertung auf gesamten Kontext Feststellung: auf keinem der Beispielmodelle aufgetreten partielle Evaluation von OCL Ausdrücken Vergleich der Ergebnisse der Vorwärtsauswertung vor und nach Änderung Wenn Ergebnis unverändert, Ergebnis des Gesamtausdrucks unverändert

10 10 Detaillierte Architektur

11 11 Performancemessungen Metamodell = Company Model Änderungen auf einer Instanz mit 5000 Elementen

12 12 Hinzufügen eines Departments 3 Events 14 Neuauswertungen

13 13 Löschen eines Departments 4 Events 19 Neuauswertungen


Herunterladen ppt "Instance-Based Context Calculation of OCL Expressions."

Ähnliche Präsentationen


Google-Anzeigen