weaving variability into domain metamodels
TRANSCRIPT
![Page 1: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/1.jpg)
Weaving Variability into Domain Metamodels
Juan Antonio Martin-Checa (Advanced Component-Based Systems)
Master in Software Engineering & Artificial Intelligence
Weaving Variability into Weaving Variability into Domain MetamodelsDomain Metamodels
Juan Antonio MartinJuan Antonio Martin--Checa Checa (Advanced Component(Advanced Component--Based Systems)Based Systems)
Master in Software Engineering & Artificial IntelligenceMaster in Software Engineering & Artificial Intelligence
Computer Science DepartmentUniversity of Malaga, Spain
2011
Computer Science DepartmentUniversity of Malaga, Spain
2011
![Page 2: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/2.jpg)
2
Index of contentsIndex of contentsIndex of contents
1. Introduction
2. Variability as a (meta-) aspect
3. Applications on 2 domain metamodels
4. Related work
5. Conclusions
1. Introduction
2. Variability as a (meta-) aspect
3. Applications on 2 domain metamodels
4. Related work
5. Conclusions
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
![Page 3: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/3.jpg)
3
1. Introduction1. Introduction
![Page 4: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/4.jpg)
4
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
![Page 5: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/5.jpg)
5
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 6: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/6.jpg)
6
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 7: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/7.jpg)
7
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 8: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/8.jpg)
8
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 9: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/9.jpg)
9
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / motivation1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 10: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/10.jpg)
10
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 11: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/11.jpg)
11
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 12: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/12.jpg)
12
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 13: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/13.jpg)
13
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 14: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/14.jpg)
14
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / key ideas
Products should meet (changing) user requirementsTime-to-market is a critical concernDeveloping products from scratch is time consuming
1. Introduction / key ideas
Products should meet (changing) user requirementsTime-to-market is a critical concernDeveloping products from scratch is time consuming
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 15: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/15.jpg)
15
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / SPL and MDE in concert1. Introduction / SPL and MDE in concert
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 16: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/16.jpg)
16
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 17: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/17.jpg)
17
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / SPL
“A software product line (SPL) is a set of software-intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.”
1. Introduction / SPL
“A software product line (SPL) is a set of software-intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.”
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 18: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/18.jpg)
18
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / SPL / Benefits
INCREASED
Productivity
Quality
1. Introduction / SPL / Benefits
INCREASED
Productivity
Quality
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
DECREASED
Cost
Labor needs
Time to Market
![Page 19: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/19.jpg)
19
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / MDE
“Model-driven engineering (MDE) is a software development methodology which focuses on creating and exploiting domain models (that is, abstract representations of the knowledge and activities that govern a particular application domain), rather than on the computing (or algorithmic) concepts.”
1. Introduction / MDE
“Model-driven engineering (MDE) is a software development methodology which focuses on creating and exploiting domain models (that is, abstract representations of the knowledge and activities that govern a particular application domain), rather than on the computing (or algorithmic) concepts.”
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
![Page 20: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/20.jpg)
20
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
1. Introduction / MDE / Benefits
INCREASED
Productivity
Compatibility
Reusability
Team communications
1. Introduction / MDE / Benefits
INCREASED
Productivity
Compatibility
Reusability
Team communicationsWeaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction1. Introduction 2. Variability 2. Variability 3. Applications 4. Related Work 3. Applications 4. Related Work 5. Conclusions5. Conclusions
DECREASED
Design complexity
![Page 21: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/21.jpg)
21
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces) Exploits/benefits from commonalitiesManages variabilitiesDerives products depending on the needs
DSML (Domain Specific Modeling Languages)....Composition, transformation, code generation....
Early validation, simulation....
Exploits/benefits from commonalitiesManages variabilitiesDerives products depending on the needs
DSML (Domain Specific Modeling Languages)....Composition, transformation, code generation....
Early validation, simulation....
![Page 22: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/22.jpg)
22
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 23: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/23.jpg)
23
2. Variabilityas a (meta-) aspect
2. Variabilityas a (meta-) aspect
![Page 24: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/24.jpg)
24
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / goals
Reusable variability aspect
Describe models containing variability (based on the concepts defined in the domain metamodel)
2. Variability as a (meta-) aspect / goals
Reusable variability aspect
Describe models containing variability (based on the concepts defined in the domain metamodel)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 25: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/25.jpg)
25
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / approaches
Put variability inside the models
Put variability aside of the models
2. Variability as a (meta-) aspect / approaches
Put variability inside the models
Put variability aside of the models
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 26: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/26.jpg)
26
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces) variability inside the modelsvariability inside the models
![Page 27: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/27.jpg)
27
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces) variability aside of the modelsvariability aside of the models
![Page 28: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/28.jpg)
28
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces) variability inside Vs aside the modelsvariability inside Vs aside the models
![Page 29: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/29.jpg)
29
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / considerations
Orthogonal to a domain- Supported by DSMLs
Standard concepts- XOR, options, etc.- Not useful for all domains - Variability FIXED
2. Variability as a (meta-) aspect / considerations
Orthogonal to a domain- Supported by DSMLs
Standard concepts- XOR, options, etc.- Not useful for all domains - Variability FIXED
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 30: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/30.jpg)
30
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / metamodelfor variability
Founded upon previous workOperators
XOR, OR, AND, Vp, OptionalHomegeneous Vs Heterogeneous
ConstraintsREQUIRE, EXCLUDE, etc.
2. Variability as a (meta-) aspect / metamodelfor variability
Founded upon previous workOperators
XOR, OR, AND, Vp, OptionalHomegeneous Vs Heterogeneous
ConstraintsREQUIRE, EXCLUDE, etc.
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 31: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/31.jpg)
31
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / metamodelfor variability
2. Variability as a (meta-) aspect / metamodelfor variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 32: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/32.jpg)
32
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 33: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/33.jpg)
33
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / EMF metamodelwith variability
2. Variability as a (meta-) aspect / EMF metamodelwith variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 34: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/34.jpg)
34
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 35: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/35.jpg)
35
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 36: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/36.jpg)
36
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 37: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/37.jpg)
37
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 38: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/38.jpg)
38
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 39: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/39.jpg)
39
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / weaving variability
idea: insert variability controllers on the references
2. Variability as a (meta-) aspect / weaving variability
idea: insert variability controllers on the references
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 40: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/40.jpg)
40
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / AOMAOM (Aspect-Oriented Metamodeling)
Meta-Aspect: Aspect that applies to a metamodelMetamodels are models like others- A (meta)model conforms to a (meta-)metamodelAspect-Oriented Metamodeling (AOM)- Applied at the metamodel level- Metamodels == base models for the aspects
2. Variability as a (meta-) aspect / AOMAOM (Aspect-Oriented Metamodeling)
Meta-Aspect: Aspect that applies to a metamodelMetamodels are models like others- A (meta)model conforms to a (meta-)metamodelAspect-Oriented Metamodeling (AOM)- Applied at the metamodel level- Metamodels == base models for the aspects
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 41: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/41.jpg)
41
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / Smart Adapterweaving (meta-) aspects
ASPECT:- pointcut model (WHERE)- advice model (WHAT)- composition protocol (HOW)POINTCUT: contextualized before weaving- automatically: pattern matching, etc.
- semi-automatically: automatic detection, on-demand
- manually: mapping
2. Variability as a (meta-) aspect / Smart Adapterweaving (meta-) aspects
ASPECT:- pointcut model (WHERE)- advice model (WHAT)- composition protocol (HOW)POINTCUT: contextualized before weaving- automatically: pattern matching, etc.
- semi-automatically: automatic detection, on-demand
- manually: mappingWeaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 42: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/42.jpg)
42
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
2. Variability as a (meta-) aspect / variability(meta-) aspect
– Pointcut model matches any referencesbetween 2 meta-classes
– Useful homogeneous controllers are introduced on these references
– Useful heterogeneous controllers are introduced
– Constraints are attached to the root meta-class
2. Variability as a (meta-) aspect / variability(meta-) aspect
– Pointcut model matches any referencesbetween 2 meta-classes
– Useful homogeneous controllers are introduced on these references
– Useful heterogeneous controllers are introduced
– Constraints are attached to the root meta-class
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 1. Introduction 2. Variability2. Variability 3. Applications 3. Applications 4. Related Work 5. Conclusions4. Related Work 5. Conclusions
![Page 43: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/43.jpg)
43
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 44: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/44.jpg)
44
3. Applicationson 2 domainmetamodels
3. Applicationson 2 domainmetamodels
![Page 45: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/45.jpg)
45
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
3. Applications on 2 domain metamodels
Class diagram with VariabilityUse of UML constructs + profiles
Aspect model with VariabilityMatching variabilityComposition variability
3. Applications on 2 domain metamodels
Class diagram with VariabilityUse of UML constructs + profiles
Aspect model with VariabilityMatching variabilityComposition variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications3. Applications 4. Related Work 4. Related Work 5. Conclusions5. Conclusions
![Page 46: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/46.jpg)
46
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
Weaving variability into EMF/ECore Weaving variability into EMF/ECore
![Page 47: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/47.jpg)
47
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
Weaving variability into Smart AdaptersWeaving variability into Smart Adapters
![Page 48: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/48.jpg)
48
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
Weaving variability into Smart AdaptersWeaving variability into Smart Adapters
![Page 49: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/49.jpg)
49
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
3. Applications on 2 domain metamodels / derivation process
From the model (with variability)Maintain a FD (Feature Diagram)
SPL tools select productsPruned FD (only selected features)
Pruned FD derive the modelModel conforming to initial metamodel
3. Applications on 2 domain metamodels / derivation process
From the model (with variability)Maintain a FD (Feature Diagram)
SPL tools select productsPruned FD (only selected features)
Pruned FD derive the modelModel conforming to initial metamodel
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications3. Applications 4. Related Work 4. Related Work 5. Conclusions5. Conclusions
![Page 50: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/50.jpg)
50
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
3. Applications on 2 domain metamodels / key ideas
Normal model Vs
Derived model
3. Applications on 2 domain metamodels / key ideas
Normal model Vs
Derived modelWeaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications3. Applications 4. Related Work 4. Related Work 5. Conclusions5. Conclusions
![Page 51: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/51.jpg)
51
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 52: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/52.jpg)
52
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 53: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/53.jpg)
53
4. Related Work4. Related Work
![Page 54: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/54.jpg)
54
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
4. Related work / approaches
UML metamodel extension variability included in various UML diagrams
Variability techniquesengineering of DSMLs
Integrating model-driven & aspect-oriented software development
4. Related work / approaches
UML metamodel extension variability included in various UML diagrams
Variability techniquesengineering of DSMLs
Integrating model-driven & aspect-oriented software development
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 3. Applications 4. Related Work4. Related Work 5. Conclusions5. Conclusions
![Page 55: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/55.jpg)
55
5. Conclusions5. Conclusions
![Page 56: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/56.jpg)
56
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
5. Conclusions
Two approaches to combine SPL & DSMLvariability inside Vs variability asideboth have ++/--
Adopted approach: Variability Insidesystematic and flexible variability weavingthe variability you need, where you need it
5. Conclusions
Two approaches to combine SPL & DSMLvariability inside Vs variability asideboth have ++/--
Adopted approach: Variability Insidesystematic and flexible variability weavingthe variability you need, where you need it
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 4. Rela3. Applications 4. Related Work ted Work 5. Conclusions5. Conclusions
![Page 57: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/57.jpg)
57
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 58: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/58.jpg)
58
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 59: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/59.jpg)
59
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 60: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/60.jpg)
60
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 61: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/61.jpg)
61
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 62: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/62.jpg)
62
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 63: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/63.jpg)
63
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
5. Conclusions
Personal Reflections...
5. Conclusions
Personal Reflections...
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 4. Rela3. Applications 4. Related Work ted Work 5. Conclusions5. Conclusions
![Page 64: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/64.jpg)
64
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 65: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/65.jpg)
65
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 66: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/66.jpg)
66
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 67: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/67.jpg)
67
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 68: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/68.jpg)
68
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 69: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/69.jpg)
69
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
![Page 70: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/70.jpg)
70
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
5. Conclusions / Critique / PROSreusable variability aspectextends metamodel with variabilityindependent from any domain metamodelgeneric approach(applicable to any Ecore/EMOF meta-model, incl. UML)
variability aspect can be standardizedDSMLs can be designed without variabilityvariability is woven on demandapproach validated (Ecore / Smart Adapters)authors: wide experience in the field (↑publications)
5. Conclusions / Critique / PROSreusable variability aspectextends metamodel with variabilityindependent from any domain metamodelgeneric approach(applicable to any Ecore/EMOF meta-model, incl. UML)
variability aspect can be standardizedDSMLs can be designed without variabilityvariability is woven on demandapproach validated (Ecore / Smart Adapters)authors: wide experience in the field (↑publications)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 4. Rela3. Applications 4. Related Work ted Work 5. Conclusions5. Conclusions
![Page 71: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/71.jpg)
71
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
5. Conclusions / Critique / CONSconstraints: limited to ‘requires’ and ‘mutex’(does not contemplate other kinds of constraints) [2,6,7]article:
lacks of some concept definitionslacks of a clear, brief “step-by-step” summary of the approachlacks of a scheme/diagram summarizing the approach
there are other valid approaches:using UML + OO [2]extending UML metamodel with variability [20]variability techniques to assist the engineering of DSMLs [12]integrating model-driven & aspect-oriented sw evelopment [21](the last 2, introduce variability at the model level)
5. Conclusions / Critique / CONSconstraints: limited to ‘requires’ and ‘mutex’(does not contemplate other kinds of constraints) [2,6,7]article:
lacks of some concept definitionslacks of a clear, brief “step-by-step” summary of the approachlacks of a scheme/diagram summarizing the approach
there are other valid approaches:using UML + OO [2]extending UML metamodel with variability [20]variability techniques to assist the engineering of DSMLs [12]integrating model-driven & aspect-oriented sw evelopment [21](the last 2, introduce variability at the model level)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 4. Rela3. Applications 4. Related Work ted Work 5. Conclusions5. Conclusions
![Page 72: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/72.jpg)
72
1. Wigdor 2010 (Architecting ext-Generation User Interfaces) 1. 1. WigdorWigdor 20102010 (Architecting ext(Architecting ext--Generation User Interfaces) Generation User Interfaces)
5. Conclusions / Critique / Personal opinioninteresting approachcomplete: involves all steps (begining –to-end)detailedfounded upon previous research/studiesvalidatedexperimented authorsfuture research opportunities:
model checkingediting facilitiesetc.
5. Conclusions / Critique / Personal opinioninteresting approachcomplete: involves all steps (begining –to-end)detailedfounded upon previous research/studiesvalidatedexperimented authorsfuture research opportunities:
model checkingediting facilitiesetc.
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
1. Introduction 2. Variability 1. Introduction 2. Variability 3. Applications 4. Rela3. Applications 4. Related Work ted Work 5. Conclusions5. Conclusions
![Page 73: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/73.jpg)
73
ReferencesReferences
![Page 74: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/74.jpg)
74
1. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering:Foundations, Principles and Techniques. Springer-Verlag New York, Inc., Secaucus,NJ, USA (2005)
2. Perrouin, G., Klein, J., Guel, N., Jezequel, J.M.: Reconciling automation and exibilityin product derivation. In: 12th International Software Product Line Conference(SPLC 2008), Limerick, Ireland, IEEE Computer Society (2008) 339-348
3. OMG: OMG Unied Modeling Language OMG UML, Superstructure Version 2.2.Technical Report formal/2007-02-03, Object Management Group (2007)
4. Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jzquel, J.M.: Introducingvariability into aspect-oriented modeling approaches. In: In Proceedings ofACM/IEEE 10th International Conference on Model Driven Engineering Languagesand Systems (MoDELS 07), Nashville, TN, USA (2007)
5. Gray, J., Sztipanovits, J., Schmidt, D.C., Bapty, T., Neema, S., Gokhale, A.: Two levelaspect weaving to support evolution in model-driven synthesis. Addison-Wesley,Boston (2005) 681-709
6. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Feature Diagrams: ASurvey and A Formal Semantics. In: RE, Minneapolis, Minnesota, USA (2006)
7. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Generic semantics offeature diagrams. Computer Networks 51 (2007) 456-479
1. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering:Foundations, Principles and Techniques. Springer-Verlag New York, Inc., Secaucus,NJ, USA (2005)
2. Perrouin, G., Klein, J., Guel, N., Jezequel, J.M.: Reconciling automation and exibilityin product derivation. In: 12th International Software Product Line Conference(SPLC 2008), Limerick, Ireland, IEEE Computer Society (2008) 339-348
3. OMG: OMG Unied Modeling Language OMG UML, Superstructure Version 2.2.Technical Report formal/2007-02-03, Object Management Group (2007)
4. Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jzquel, J.M.: Introducingvariability into aspect-oriented modeling approaches. In: In Proceedings ofACM/IEEE 10th International Conference on Model Driven Engineering Languagesand Systems (MoDELS 07), Nashville, TN, USA (2007)
5. Gray, J., Sztipanovits, J., Schmidt, D.C., Bapty, T., Neema, S., Gokhale, A.: Two levelaspect weaving to support evolution in model-driven synthesis. Addison-Wesley,Boston (2005) 681-709
6. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Feature Diagrams: ASurvey and A Formal Semantics. In: RE, Minneapolis, Minnesota, USA (2006)
7. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Generic semantics offeature diagrams. Computer Networks 51 (2007) 456-479
![Page 75: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/75.jpg)
75
8. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented DomainAnalysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, SoftwareEngineering Institute (1990)
9. Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing Cardinality-based FeatureModels and their Specialization. Software Process Improvement and Practice 10(2005) 7-29
10. Griss, M.L., Favaro, J., d' Alessandro, M.: Integrating Feature Modeling with theRSEB. In: ICSR, Washington, DC, USA (1998)
11. Kang, K.C., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: FORM: A Feature-Oriented Reuse Method with Domain-Specic Reference Architectures. Ann. Softw. Eng. 5 (1998) 143-168
12. Haugen, O., Moller-Pedersen, B., Oldevik, J., Olsen, G., Svendsen, A.: Adding standardized variability to domain specic languages. In: Software Product Line Conference.(2008) 139-148
13. Ramos, R., Barais, O., Jzquel, J.M.: Matching model-snippets. In: In Proceedings of ACM/IEEE 10th International Conference on Model Driven Engineering Languages and Systems (MoDELS 07), Nashville, TN, USA (2007)
14. Batory, D.S.: Feature models, grammars, and propositional formulas. In Obbink,J.H., Pohl, K., eds.: SPLC. Volume 3714 of LNCS., Springer (2005) 7-20
8. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented DomainAnalysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, SoftwareEngineering Institute (1990)
9. Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing Cardinality-based FeatureModels and their Specialization. Software Process Improvement and Practice 10(2005) 7-29
10. Griss, M.L., Favaro, J., d' Alessandro, M.: Integrating Feature Modeling with theRSEB. In: ICSR, Washington, DC, USA (1998)
11. Kang, K.C., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: FORM: A Feature-Oriented Reuse Method with Domain-Specic Reference Architectures. Ann. Softw. Eng. 5 (1998) 143-168
12. Haugen, O., Moller-Pedersen, B., Oldevik, J., Olsen, G., Svendsen, A.: Adding standardized variability to domain specic languages. In: Software Product Line Conference.(2008) 139-148
13. Ramos, R., Barais, O., Jzquel, J.M.: Matching model-snippets. In: In Proceedings of ACM/IEEE 10th International Conference on Model Driven Engineering Languages and Systems (MoDELS 07), Nashville, TN, USA (2007)
14. Batory, D.S.: Feature models, grammars, and propositional formulas. In Obbink,J.H., Pohl, K., eds.: SPLC. Volume 3714 of LNCS., Springer (2005) 7-20
![Page 76: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/76.jpg)
76
15. PureSystems. Pure::Variants Website http://www.pure-systems.com/ (2006)
16. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approachbased on Superimposed Variants. In: Generative programming and component engineering(GPCE). Volume 3676 of LNCS., Springer-Verlag (2005) 422-437
17. Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortes, A.: FAMA: Tooling a frameworkfor the automated analysis of feature models. In: Proceeding of the First InternationalWorkshop on Variability Modelling of Software-intensive Systems (VAMOS). (2007)129-134
18. Metzger, A., Pohl, K., Heymans, P., Schobbens, P.Y., Saval, G.: Disambiguatingthe documentation of variability in software product lines: A separation of concerns,formalization and automated analysis. In: IEEE Conference on Requirements Engineering,Los Alamitos, CA, USA, IEEE Computer Society (2007) 243-253
19. Muller, P.A., Fleurey, F., Jezequel, J.M.: Weaving executability into object-orientedmeta-languages. In: Proc. of MODELS/UML'2005. LNCS, Jamaica, Springer (2005)
20. Ziadi, T., Jezequel, J.M.: Product Line Engineering with the UML: Deriving Products.In: Families Research Book. Springer (2006)
21. Voelter, M., Groher, I.: Product line implementation using aspect-oriented andmodel-driven software development. In: 11th International Software Product LineConference, Kyoto, Japan (2007) 10
15. PureSystems. Pure::Variants Website http://www.pure-systems.com/ (2006)
16. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approachbased on Superimposed Variants. In: Generative programming and component engineering(GPCE). Volume 3676 of LNCS., Springer-Verlag (2005) 422-437
17. Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortes, A.: FAMA: Tooling a frameworkfor the automated analysis of feature models. In: Proceeding of the First InternationalWorkshop on Variability Modelling of Software-intensive Systems (VAMOS). (2007)129-134
18. Metzger, A., Pohl, K., Heymans, P., Schobbens, P.Y., Saval, G.: Disambiguatingthe documentation of variability in software product lines: A separation of concerns,formalization and automated analysis. In: IEEE Conference on Requirements Engineering,Los Alamitos, CA, USA, IEEE Computer Society (2007) 243-253
19. Muller, P.A., Fleurey, F., Jezequel, J.M.: Weaving executability into object-orientedmeta-languages. In: Proc. of MODELS/UML'2005. LNCS, Jamaica, Springer (2005)
20. Ziadi, T., Jezequel, J.M.: Product Line Engineering with the UML: Deriving Products.In: Families Research Book. Springer (2006)
21. Voelter, M., Groher, I.: Product line implementation using aspect-oriented andmodel-driven software development. In: 11th International Software Product LineConference, Kyoto, Japan (2007) 10
![Page 77: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/77.jpg)
77
22. Lahire, P., Morin. B., Barais., O. Introducing Variability into Aspect-Oriented Modeling Approaches. Vanderbilt University, Springer-Verlag (2007)
23. Morin, B., Klein, J., Barains, O. A Generic Weaver for Supporting Product Lines. In: Early Aspects Workshops at ICSE (2008)
24. Morin, B., Fleurey, F., Bencomo, N. An Aspect-Oriented and Model-Driven Approach for Managing Dynamic Variability. In: ACM/IEEE MODELS’08. (2008)
22. Lahire, P., Morin. B., Barais., O. Introducing Variability into Aspect-Oriented Modeling Approaches. Vanderbilt University, Springer-Verlag (2007)
23. Morin, B., Klein, J., Barains, O. A Generic Weaver for Supporting Product Lines. In: Early Aspects Workshops at ICSE (2008)
24. Morin, B., Fleurey, F., Bencomo, N. An Aspect-Oriented and Model-Driven Approach for Managing Dynamic Variability. In: ACM/IEEE MODELS’08. (2008)
![Page 78: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/78.jpg)
78
You might be thinking...You might be thinking...You might be thinking...
Now you can impress your friends talking about WeavingVariability intoDomain Metamodels
please, ask!
Now you can impress your friends talking about WeavingVariability intoDomain Metamodels
please, ask!
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, SpainCS Dept. University of Malaga, Spain
![Page 79: Weaving Variability into Domain Metamodels](https://reader033.vdocuments.us/reader033/viewer/2022052821/554a0620b4c9055b7a8b5519/html5/thumbnails/79.jpg)
Weaving Variability into Domain Metamodels
Juan Antonio Martin-Checa (Advanced Component-Based Systems)
Master in Software Engineering & Artificial Intelligence
Weaving Variability into Weaving Variability into Domain MetamodelsDomain Metamodels
Juan Antonio MartinJuan Antonio Martin--Checa Checa (Advanced Component(Advanced Component--Based Systems)Based Systems)
Master in Software Engineering & Artificial IntelligenceMaster in Software Engineering & Artificial Intelligence
Computer Science DepartmentUniversity of Malaga, Spain
2011
Computer Science DepartmentUniversity of Malaga, Spain
2011