1. HOW TO POSITION MDE IN
THE LANDSCAPE OF
SOFTWARE ENGINEERING
METHODS?
MODELSWARD’2017, Porto
Juan de Lara
Modelling&Software Engineering Research Group
http://miso.es @miso_uam
3. WHICH
MDE FLAVOUR?
OMG’s MDA
• UML-based, profiles
• CIM, PIM, PSM and transformations
Domain Specific Languages
• Domain meta-models
• Textual or graphical notations
3
xtext
StopWatch
«Clock»
OSVersion=“3.32”
startOperation=Click
«Clock»
Sirius
4. COMPARISON:
APPROACH
4
OMG’s MDA
• Heavy weight
• Underlying use of UML
• Specifications in the solution space
• More generally applicable
Domain Specific Languages
• Light weight
• Good for narrow, well understood domains
• Specifications in the problem space
5. COMPARISON:
COST
5
OMG’s MDA
• Less costly if using standard UML tooling
• Less benefits if using just diagramming capabilities
Domain Specific Languages
• High initial cost
• Creating a DSL environment is costly
• Powerful generative environments can be built
6. COMPARISON:
TOOLING
6
OMG’s MDA
• Strong tools like MagicDraw, Papyrus, and many others
• Flexibilitiy?
Domain Specific Languages
• Rich Eclipse-based ecosystem
• Still in a “do-it yourself” stage
• Flexibilitiy?
7. SUMMARY
Limits of MDE approach
• High initial investment cost
• Applicability
• Acceptance by developers
• Inflexibility (of code generators, notations, tools, etc)
• Tools and notations seen as a straitjacket
Strenghts of MDE approach
• Powerful approaches, when appropriate tooling is developed
• Less development time, higher quality
• Focus on domain aspects
• Everyone can be a programmer (end-user development)
7
8. CHALLENGES
Reduce investment cost
• Reusability of MDE artefacts
• Make MDE simpler!
Improve applicability
• Further scenarios: dynamicity, mobility
• Scalability
• End-user development
Make MDE more flexible
• Make models closer to code
• Flexible reuse
• Flexible modelling tools
8