Utveckling av självanpassad programvara kräver konstruktion av en anpassningsmotor som styr den underliggande anpassningsbara programvaran genom återkopplingsslingor. Motorn beskriver ofta anpassningen genom körtidsmodeller som representerar den anpassningsbara programvaran och genom aktiviteter som analys och planering som använder dessa modeller. För att systematiskt ta itu med samspelet mellan runtime-modeller och anpassningsaktiviteter har megamodeller för runtime föreslagits. En runtime megamodel är en specifik modell som fångar upp runtime-modeller och anpassningsaktiviteter. I den här artikeln går vi ett steg längre och presenterar ett körbart modelleringsspråk för ExecUtable RuntimE MegAmodeller (EUREMA) som underlättar utvecklingen av anpassningsmotorer genom att följa en modelldriven ingenjörsstrategi. Vi tillhandahåller ett domänspecifikt modelleringsspråk och en körtidstolk för anpassningsmotorer, särskilt återkopplingsslingor. Megamodeller hålls vid liv på runtime och genom att tolka dem utförs de direkt för att köra feedback loopar. Dessutom kan de anpassas dynamiskt för att anpassa återkopplingsslingor. Därför stöder EUREMA utvecklingen genom att göra återkopplingsslingor explicita på en högre abstraktionsnivå och det möjliggör lösningar där flera återkopplingsslingor interagerar eller fungerar ovanpå varandra och självanpassning samexisterar med off-line anpassning för evolution.
EUEMA REF-ramverket stöder utformning och anpassning av självanpassade system som kan omfatta flera återkopplingsslingor.
Model-Driven Engineering of Self-Adaptive Software with EUREMA
{'venue': 'In: ACM Trans. Auton. Adapt. Syst. 8.4 (2014), 18:1-18:33', 'journal': None, 'mag_field_of_study': ['Computer Science']}