Gen AI in Business - Global Trends Report 2024.pdf
Weaving Variability into Domain Metamodels
1. Weaving Variability into
Weaving Variability into
Domain Metamodels
Domain Metamodels
Juan Antonio Martin-Checa
Juan Antonio Martin-Checa
(Advanced Component-Based Systems)
(Advanced Component-Based Systems)
Master in Software Engineering & Artificial Intelligence
Master in Software Engineering & Artificial Intelligence
Computer Science Department
University of Malaga, Spain
2011
2011
2. Index of contents
Index of contents
1. Introduction
1. Introduction
2. Variability as a (meta-) aspect
2. Variability as a (meta-) aspect
3. Applications on 2 domain metamodels
3. Applications on 2 domain metamodels
4. Related work
4. Related work
5. Conclusions
5. Conclusions
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 2
4. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 4
5. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 5
6. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 6
7. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 7
8. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 8
9. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / motivation
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 9
10. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
10
11. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
11
12. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
12
13. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
13
14. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / key ideas
Products should meet (changing)
user requirements
Time-to-market is a critical concern
Developing products from scratch is
time consuming
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 14
15. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / SPL and MDE in concert
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 15
16. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
16
17. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-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.”
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 17
18. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / SPL / Benefits
INCREASED DECREASED
Productivity Cost
Quality Labor needs
Time to Market
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 18
19. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-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.”
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 19
20. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Introduction / MDE / Benefits
INCREASED DECREASED
Productivity Design complexity
Compatibility
Reusability
Team communications
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 20
21. Exploits/benefits from commonalitiesUser Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation
Manages variabilities
Derives products depending on the needs
DSML (Domain Specific Modeling Languages)....
Composition, transformation, code generation....
Early validation, simulation....
21
22. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
22
24. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-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)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 24
25. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
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, Spain 25
29. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-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
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 29
30. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / metamodel
for variability
Founded upon previous work
Operators
XOR, OR, AND, Vp, Optional
Homegeneous Vs Heterogeneous
Constraints
REQUIRE, EXCLUDE, etc.
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 30
31. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / metamodel
for variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 31
32. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
32
33. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / EMF metamodel
with variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 33
34. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
34
35. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
35
36. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
36
37. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
37
38. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
38
39. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
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, Spain 39
40. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / AOM
AOM (Aspect-Oriented Metamodeling)
Meta-Aspect: Aspect that applies to a metamodel
Metamodels are models like others
- A (meta)model conforms to a (meta-)metamodel
Aspect-Oriented Metamodeling (AOM)
- Applied at the metamodel level
- Metamodels == base models for the aspects
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 40
41. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / Smart Adapter
weaving (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
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 41
42. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
2. Variability as a (meta-) aspect / variability
(meta-) aspect
– Pointcut model matches any references
between 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, Spain 42
43. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
43
45. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
3. Applications on 2 domain metamodels
Class diagram with Variability
Use of UML constructs + profiles
Aspect model with Variability
Matching variability
Composition variability
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 45
46. Weaving variability into EMF/ECore
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
46
47. Weaving variability into Smart Adapters
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
47
48. Weaving variability into Smart Adapters
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
48
49. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
3. Applications on 2 domain metamodels /
derivation process
From the model (with variability)
Maintain a FD (Feature Diagram)
SPL tools select products
Pruned FD (only selected features)
Pruned FD derive the model
Model conforming to initial metamodel
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 49
50. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
3. Applications on 2 domain metamodels /
key ideas
Normal model
Vs
Derived model
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 50
51. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
51
52. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
52
54. 1. Introduction 2. Variability 3. Applications 4. Related Work 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
4. Related work / approaches
UML metamodel extension
variability included in various UML diagrams
Variability techniques
engineering of DSMLs
Integrating model-driven & aspect-
oriented software development
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 54
56. 1. Introduction 2. Variability 3. Applications 4. Related Work
Related 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
5. Conclusions
Two approaches to combine SPL & DSML
variability inside Vs variability aside
both have ++/--
Adopted approach: Variability Inside
systematic and flexible variability weaving
the variability you need, where you need it
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 56
57. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
57
58. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
58
59. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
59
60. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
60
61. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
61
62. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
62
63. 1. Introduction 2. Variability 3. Applications 4. Related Work
Related 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
5. Conclusions
Personal
Reflections...
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 63
64. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
64
65. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
65
66. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
66
67. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
67
68. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
68
69. 1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
69
70. 1. Introduction 2. Variability 3. Applications 4. Related Work
Related 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
5. Conclusions / Critique / PROS
reusable variability aspect
extends metamodel with variability
independent from any domain metamodel
generic approach
(applicable to any Ecore/EMOF meta-model, incl. UML)
(applicable to any Ecore/EMOF meta-model, incl. UML)
variability aspect can be standardized
DSMLs can be designed without variability
variability is woven on demand
approach validated (Ecore / Smart Adapters)
authors: wide experience in the field (↑publications)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 70
71. 1. Introduction 2. Variability 3. Applications 4. Related Work
Related 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
5. Conclusions / Critique / CONS
constraints: limited to ‘requires’ and ‘mutex’
(does not contemplate other kinds of constraints) [2,6,7]
article:
lacks of some concept definitions
lacks of a clear, brief “step-by-step” summary of the approach
lacks of a scheme/diagram summarizing the approach
there are other valid approaches:
using UML + OO [2]
using UML + OO [2]
extending UML metamodel with variability [20]
extending UML metamodel with variability [20]
variability techniques to assist the engineering of DSMLs [12]
variability techniques to assist the engineering of DSMLs [12]
integrating model-driven & aspect-oriented sw evelopment [21]
integrating model-driven & aspect-oriented sw evelopment [21]
(the last 2, introduce variability at the model level)
(the last 2, introduce variability at the model level)
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 71
72. 1. Introduction 2. Variability 3. Applications 4. Related Work
Related 5. Conclusions
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
1. Wigdor 2010 (Architecting ext-Generation User Interfaces)
5. Conclusions / Critique / Personal opinion
interesting approach
complete: involves all steps (begining –to-end)
detailed
founded upon previous research/studies
validated
experimented authors
future research opportunities:
model checking
editing facilities
etc.
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 72
74. 1. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering:
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,
Foundations, Principles and Techniques. Springer-Verlag New York, Inc., Secaucus,
NJ, USA (2005)
NJ, USA (2005)
2. Perrouin, G., Klein, J., Guel, N., Jezequel, J.M.: Reconciling automation and exibility
2. Perrouin, G., Klein, J., Guel, N., Jezequel, J.M.: Reconciling automation and exibility
in product derivation. In: 12th International Software Product Line Conference
in product derivation. In: 12th International Software Product Line Conference
(SPLC 2008), Limerick, Ireland, IEEE Computer Society (2008) 339-348
(SPLC 2008), Limerick, Ireland, IEEE Computer Society (2008) 339-348
3. OMG: OMG Unied Modeling Language OMG UML, Superstructure Version 2.2.
3. OMG: OMG Unied Modeling Language OMG UML, Superstructure Version 2.2.
Technical Report formal/2007-02-03, Object Management Group (2007)
Technical Report formal/2007-02-03, Object Management Group (2007)
4. Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jzquel, J.M.: Introducing
4. Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jzquel, J.M.: Introducing
variability into aspect-oriented modeling approaches. In: In Proceedings of
variability into aspect-oriented modeling approaches. In: In Proceedings of
ACM/IEEE 10th International Conference on Model Driven Engineering Languages
ACM/IEEE 10th International Conference on Model Driven Engineering Languages
and Systems (MoDELS 07), Nashville, TN, USA (2007)
and Systems (MoDELS 07), Nashville, TN, USA (2007)
5. Gray, J., Sztipanovits, J., Schmidt, D.C., Bapty, T., Neema, S., Gokhale, A.: Two level
5. Gray, J., Sztipanovits, J., Schmidt, D.C., Bapty, T., Neema, S., Gokhale, A.: Two level
aspect weaving to support evolution in model-driven synthesis. Addison-Wesley,
aspect weaving to support evolution in model-driven synthesis. Addison-Wesley,
Boston (2005) 681-709
Boston (2005) 681-709
6. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Feature Diagrams: A
6. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Feature Diagrams: A
Survey and A Formal Semantics. In: RE, Minneapolis, Minnesota, USA (2006)
Survey and A Formal Semantics. In: RE, Minneapolis, Minnesota, USA (2006)
7. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Generic semantics of
7. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Generic semantics of
feature diagrams. Computer Networks 51 (2007) 456-479
feature diagrams. Computer Networks 51 (2007) 456-479 74
75. 8. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented Domain
8. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented Domain
Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software
Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software
Engineering Institute (1990)
Engineering Institute (1990)
9. Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing Cardinality-based Feature
9. Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing Cardinality-based Feature
Models and their Specialization. Software Process Improvement and Practice 10
Models and their Specialization. Software Process Improvement and Practice 10
(2005) 7-29
(2005) 7-29
10. Griss, M.L., Favaro, J., d' Alessandro, M.: Integrating Feature Modeling with the
10. Griss, M.L., Favaro, J., d' Alessandro, M.: Integrating Feature Modeling with the
RSEB. In: ICSR, Washington, DC, USA (1998)
RSEB. 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
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
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
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
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
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
ACM/IEEE 10th International Conference on Model Driven Engineering Languages and
Systems (MoDELS 07), Nashville, TN, USA (2007)
Systems (MoDELS 07), Nashville, TN, USA (2007)
14. Batory, D.S.: Feature models, grammars, and propositional formulas. In Obbink,
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
J.H., Pohl, K., eds.: SPLC. Volume 3714 of LNCS., Springer (2005) 7-20
75
76. 15. PureSystems. Pure::Variants Website http://www.pure-systems.com/ (2006)
15. PureSystems. Pure::Variants Website http://www.pure-systems.com/ (2006)
16. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach
16. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach
based on Superimposed Variants. In: Generative programming and component engineering
based on Superimposed Variants. In: Generative programming and component engineering
(GPCE). Volume 3676 of LNCS., Springer-Verlag (2005) 422-437
(GPCE). Volume 3676 of LNCS., Springer-Verlag (2005) 422-437
17. Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortes, A.: FAMA: Tooling a framework
17. Benavides, D., Segura, S., Trinidad, P., Ruiz-Cortes, A.: FAMA: Tooling a framework
for the automated analysis of feature models. In: Proceeding of the First International
for the automated analysis of feature models. In: Proceeding of the First International
Workshop on Variability Modelling of Software-intensive Systems (VAMOS). (2007)
Workshop on Variability Modelling of Software-intensive Systems (VAMOS). (2007)
129-134
129-134
18. Metzger, A., Pohl, K., Heymans, P., Schobbens, P.Y., Saval, G.: Disambiguating
18. Metzger, A., Pohl, K., Heymans, P., Schobbens, P.Y., Saval, G.: Disambiguating
the documentation of variability in software product lines: A separation of concerns,
the documentation of variability in software product lines: A separation of concerns,
formalization and automated analysis. In: IEEE Conference on Requirements Engineering,
formalization and automated analysis. In: IEEE Conference on Requirements Engineering,
Los Alamitos, CA, USA, IEEE Computer Society (2007) 243-253
Los Alamitos, CA, USA, IEEE Computer Society (2007) 243-253
19. Muller, P.A., Fleurey, F., Jezequel, J.M.: Weaving executability into object-oriented
19. Muller, P.A., Fleurey, F., Jezequel, J.M.: Weaving executability into object-oriented
meta-languages. In: Proc. of MODELS/UML'2005. LNCS, Jamaica, Springer (2005)
meta-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.
20. Ziadi, T., Jezequel, J.M.: Product Line Engineering with the UML: Deriving Products.
In: Families Research Book. Springer (2006)
In: Families Research Book. Springer (2006)
21. Voelter, M., Groher, I.: Product line implementation using aspect-oriented and
21. Voelter, M., Groher, I.: Product line implementation using aspect-oriented and
model-driven software development. In: 11th International Software Product Line
model-driven software development. In: 11th International Software Product Line
Conference, Kyoto, Japan (2007) 10
Conference, Kyoto, Japan (2007) 10 76
77. 22. Lahire, P., Morin. B., Barais., O. Introducing Variability into Aspect-Oriented Modeling
22. Lahire, P., Morin. B., Barais., O. Introducing Variability into Aspect-Oriented Modeling
Approaches. Vanderbilt University, Springer-Verlag (2007)
Approaches. Vanderbilt University, Springer-Verlag (2007)
23. Morin, B., Klein, J., Barains, O. A Generic Weaver for Supporting Product Lines. In: Early
23. Morin, B., Klein, J., Barains, O. A Generic Weaver for Supporting Product Lines. In: Early
Aspects Workshops at ICSE (2008)
Aspects Workshops at ICSE (2008)
24. Morin, B., Fleurey, F., Bencomo, N. An Aspect-Oriented and Model-Driven Approach for
24. Morin, B., Fleurey, F., Bencomo, N. An Aspect-Oriented and Model-Driven Approach for
Managing Dynamic Variability. In: ACM/IEEE MODELS’08. (2008)
Managing Dynamic Variability. In: ACM/IEEE MODELS’08. (2008)
77
78. You might be thinking...
You might be thinking...
Now you can
Now you can
impress your
impress your
friends talking
friends talking
about Weaving
about Weaving
Variability into
Variability into
Domain Metamodels
Domain Metamodels
please, ask!
please, ask!
Weaving Variability into Domain Metamodels CS Dept. University of Malaga, Spain 78
79. Weaving Variability into
Weaving Variability into
Domain Metamodels
Domain Metamodels
Juan Antonio Martin-Checa
Juan Antonio Martin-Checa
(Advanced Component-Based Systems)
(Advanced Component-Based Systems)
Master in Software Engineering & Artificial Intelligence
Master in Software Engineering & Artificial Intelligence
Computer Science Department
University of Malaga, Spain
2011
2011