250 likes | 405 Views
Towards A Core Language for Separate Variability Modeling. Alexandru F. Iosif-Lazăr 1 , Ina Schaefer 2 and Andrzej Wąsowski 1 1 IT University of Copenhagen 2 Technische Universität Braunschweig 1 { afla|wasowski }@itu.dk 2 i.schaefer@tu-braunschweig.de.
E N D
Towards A Core Language for Separate Variability Modeling Alexandru F. Iosif-Lazăr1, Ina Schaefer2 and Andrzej Wąsowski1 1 IT University of Copenhagen 2TechnischeUniversitätBraunschweig 1 {afla|wasowski}@itu.dk 2 i.schaefer@tu-braunschweig.de VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • Outline • Towards A Core Language for Separate VariabilityModeling • Towards A Core Language for Separate Variability Modeling • Towards A Core Language for Separate Variability Modeling • Towards A Core Language for Separate Variability Modeling • Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling Orthogonal Variability Model (OVM) Delta Modeling Common Variability Language (CVL) VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling (placement, replacement, binding) fragment substitution VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer1 basic_printer2 VARIETE Workshop ITU basic_printer4 basic_printer3
Towards A Core Language for Separate Variability Modeling basic_printer1 basic_printer2 How do we execute this? VARIETE Workshop ITU basic_printer4 basic_printer3
Towards A Core Language for Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • ((), server, {}) • ((), basic_printer1, { cpu1->server }) • ((), basic_printer2, { cpu2->server }) • (bw2, color2, { printhead2->color2 }) • (lowres2, highres2, { printhead2->highres2 }) • ((), basic_printer3, { cpu3->server}) • ((), turner3, { turner3->feeder3; printhead3->turner3 }) • ((), basic_printer4, { cpu4->server }) • (bw4, color4, { printhead4->color4 }) VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • Fs : • ((), server, {}) • ((), basic_printer1, { cpu1->server }) • ((), basic_printer2, { cpu2->server }) • (bw2, color2, { printhead2->color2 }) • (lowres2, highres2, { printhead2->highres2 }) • ((), basic_printer3, { cpu3->server}) • ((), turner3, { turner3->feeder3; printhead3->turner3 }) • ((), basic_printer4, { cpu4->server }) • (bw4, color4, { printhead4->color4 }) VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • Fs : • ((), server, {}) • ((), basic_printer1, { cpu1->server }) • ((), basic_printer2, { cpu2->server }) • (bw2, color2, { printhead2->color2 }) • (lowres2, highres2, { printhead2->highres2 }) • ((), basic_printer3, { cpu3->server}) • ((), turner3, { turner3->feeder3; printhead3->turner3 }) • ((), basic_printer4, { cpu4->server }) • (bw4, color4, { printhead4->color4 }) VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer1 basic_printer2 This doesn’t look like real modeling... VARIETE Workshop ITU basic_printer4 basic_printer3
Towards A Core Languagefor Separate Variability Modeling VARIETE Workshop ITU
Towards A Core Languagefor Separate Variability Modeling basic_printer VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling basic_printer1 basic_printer2 VARIETE Workshop ITU basic_printer4 basic_printer3
Towards A Core Language for Separate Variability Modeling • Next step : Translation Validation [A. Pnueli, M. Siegel and E. Singerman, 1998] • a common semantic framework for both the input and the output; • a formalization of the notion of correct execution; • a proof method which allows to automatically verify that the output is correct. VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • Conclusions • We propose a very simple core language. • Concise and confluent copying semantics. • Facilitates verification and, possibly, certification of tools. VARIETE Workshop ITU
Towards A Core Language for Separate Variability Modeling • Thank you! • Questions? VARIETE Workshop ITU