SlideShare a Scribd company logo
Collaborative Model-Driven Software Engineering:
a Classification Framework and a Research Map
ICSE journal first paper
Transactions on Software Engineering (TSE)
Mirco Franzago - University of L’Aquila (Italy)
Davide Di Ruscio - University of L’Aquila (Italy)
Ivano Malavolta - Vrije Universiteit of Amsterdam (The Netherlands)
Henry Muccini - University of L’Aquila (Italy)
VRIJE
UNIVERSITEIT
AMSTERDAM
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Collaborative Software Engineering - CoSE
”[...] any software project with more than one person is created through a process
of collaborative software engineering”*
What makes CoSE growing so much:
● distributed agile
● open-source
● global software development
* I. Mistrık, J. Grundy, A. Hoek, and J. Whitehead, Eds., Collaborative Software Engineering. Springer Berlin Heidelberg, 2010.
2
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Collaborative Software Engineering - CoSE
* I. Mistrık, J. Grundy, A. Hoek, and J. Whitehead, Eds., Collaborative Software Engineering. Springer Berlin Heidelberg, 2010.
Communication Coordination
Cooperation
Awarenessdemands
arranges
tasks for
mediates/
fosters
mediates/
fosters
mediates/
fosters
generates
commitments
3
”[...] any software project with more than one person is created through a process
of collaborative software engineering”*
What makes CoSE growing so much:
● distributed agile
● open-source
● global software development
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Collaborating on what?
... on the code
... on documents
... on design artifacts
... on project management artifacts
This work focuses on specializing CoSE to Model-Driven Software
Engineering (MDSE)
4
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
5
Example
https://webgme.org
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
What is Collaborative Model-Driven Software Engineering?
6
Pilot studies about
CoSE+MDE
Secondary studies
about CoSE
Analysis and
open coding Preliminary
definition of
Collaborative MDE
Discussions with experts
Definition of
Collaborative MDE
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Modelmanagement
Collaboration
Communication
Models
Collaborative MDSE approach. A method or technique in which
multiple stakeholders manage, collaborate, and are aware of each
others’ work on a set of shared models.
7
Collaborative Model-Driven Software Engineering
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Problem
The body of scientific literature on Collaborative MDSE is
LARGE and SCATTERED
● Identify, classify, and understand
● the publication trends, characteristics, and challenges
● of existing collaborative MDSE approaches
● from a researcher’s viewpoint
GOAL
8
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Systematic mapping study
What are the characteristics of collaborative MDSE approaches?
What are the challenges and shortcomings of existing collaborative
MDSE approaches?
What are the publication trends that can be deduced from the scientific
publications about collaborative MDSE approaches over time?
RQ1
RQ2
RQ3
ACM Digital Library
IEEE Explore
ISI Web of Science
Science Direct
SpringerLink
Wiley InterScience
Initial
search
False
Positives
removal
Selection
criteria
Clustering Snowballing
3,047 78 20
1,462 900
175 175
1,047 1,047
62,238 317
59 59
48+
(collaborat∗ OR coordinat∗ OR
cooperat∗ OR concur∗ OR global)
AND
(MDE OR MDD OR MDA OR MDS∗ OR
EMF OR DSL OR DSML OR ”model
driven” OR ”eclipse modeling
framework” OR ”domain specific
language” OR ”domain specific
modeling language”)
1,066 1,008
9
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Elicited taxonomy
10
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
How to use the taxonomy?
As a classification framework
● for building a map of the state of
the art
● for putting YOUR approach into
context
Taxonomy for Collaborative MDSE
1
11
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
How to use the taxonomy – classification framework
Examples
1
12
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
How to use the taxonomy?
As a classification framework
● for building a map of the state of
the art
● for putting YOUR approach into
context
As a RADAR for research gaps
● for extracting current limitations
& challenges
● for identifying future research
directions
Taxonomy for Collaborative MDSE
1 2
13
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
What’s next?
Main future directions
● Better integrate the 3 dimensions of CoMDSE
● Support for custom collaboration workflows
● Tools interoperability
○ modeling, analysis, simulation tools, ...
● Model synchronization with change propagation
○ Conflicts management
● Performance and scalability
14
M. Franzago, D. Di Ruscio, I. Malavolta, H. Muccini. “Envisioning the Future of Collaborative Model-
Driven Software Engineering”. In Proceedings of the IEEE/ACM 39th International Conference on
Software Engineering Companion (ICSE-C), 2017.
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
What’s next?
A proposal
A Microservice-based ecosystem for Collaborative MDSE
Ivano Malavolta
VRIJE
UNIVERSITEIT
AMSTERDAM
What’s next?
Main future directions
● Better integrate the 3 dimensions of CoMDSE
● Conflicts management
● Model synchronization with change propagation
● Support for custom team collaboration workflows
● Tools interoperability
○ modeling, analysis, simulation tools, ...
● Performance and scalability
• Highly customizable
• Ecosystem of modeling artifacts and supporting services
o Loosely coupled and independently deployable microservices
• Distributed and light-weight model editors
• Multiple languages and multiple views
• Support for diverse stakeholders
Our taxonomy as domain model for guiding the definition
of the architecture of the ecosystem
3
15
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
The CoMDSE ecosystem
16
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Conclusions
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Systematic mapping study
What are the characteristics of collaborative MDSE approaches?
What are the challenges and shortcomings of existing collaborative
MDSE approaches?
What are the publication trends that can be deduced from the scientific
publications about collaborative MDSE approaches over time?
RQ1
RQ2
RQ3
ACM Digital Library
IEEE Explore
ISI Web of Science
Science Direct
SpringerLink
Wiley InterScience
Initial
search
False
Positives
removal
Selection
criteria
Clustering Snowballing
3,047 78 20
1,462 900
175 175
1,047 1,047
62,238 317
59 59
106
(48)
+
(collaborat∗ OR coordinat∗ OR
cooperat∗ OR concur∗ OR global)
AND
(MDE OR MDD OR MDA OR MDS∗ OR
EMF OR DSL OR DSML OR ”model
driven” OR ”eclipse modeling
framework” OR ”domain specific
language” OR ”domain specific
modeling language”)
1,066 1,008
7
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Elicited taxonomy
8 Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
The CoMDSE ecosystem
M. Franzago, D. Di Ruscio, I. Malavolta, H. Muccini. “Envisioning the Future of Collaborative
Model-Driven Software Engineering”. In Proceedings of the IEEE/ACM 39th International
Conference on Software Engineering Companion (ICSE-C), 2017.
3
14
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Collaborative Model-Driven Software Engineering
Modelmanagement
Collaboration
Communication
Models
Collaborative MDSE approach. A method or technique in which
multiple stakeholders manage, collaborate, and are aware of each
others’ work on a set of shared models.
6
Replication package:
http://www.di.univaq.it/mirco.franzago/collaborativeMDSE/
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
BACKUP SLIDES
18
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Community activities
Workshop @MODELS since 2016
Workshop paper submission deadline: July 17, 2018
IEEE Software Theme Issue
○ 31 Submitted papers
○ to appear on Nov/Dec 2018
http://cs.gssi.it/commitmde2018
19
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
How to use the taxonomy – radar for research gaps
Example
15
9
5
4
4
3
2
2
2
2
2
0 2 4 6 8 10 12 14 16
Conflicts management
Model synchronization and change propagation
Constraints specification, enforcing, and conformance checks
Support for collaboration workflows and integration with development…
Tool improvement
Support for versioning and models editing history
Support for combined asynchronous and synchronous collaboration
Independence from any specific modeling language
Interoperability with external tools
Better coverage of modeling languages concepts
Support for audio communication
Identified limitations and shortcomings
(as emerged from primary studies)
2
20
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Taxonomy – model management
21
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Taxonomy – collaboration
22
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Taxonomy – communication
23
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Findings about Model Management
Editors are mostly desktop-based
Prevalence of collaborative approaches supporting UML models (for any
application domain)
Collaborative model validation is only partially supported
Multi-view support is quite limited
Limited support to model versioning
24
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Findings about Collaboration
Collaborative infrastructure is mostly based on a star-like topology with data
stored in a central server
Collaboration is mostly based on a remote shared workspace
Versioning is mostly supported through a centralized versioning system
architecture
Branches creation is only sporadically supported while conflict detection is
employed by over half of the approaches
25
Ivano MalavoltaVRIJE
UNIVERSITEIT
AMSTERDAM
Findings about Communication
Chat and annotations are the most used communication means
Communication among technical stakeholders, with a unique approach designed
for non-technical ones
Workspace awareness
- real-time updates and notification systems
26
Vision Model Management
•Distributed modeling environment
•Technical and non-technical stakeholders
•Light-weight and multi-device modeling (mobility)
•Large scale modeling (scalability!)
•Cloud-based services, on-demand modeling, modeling-
as-a-service
•Extensibility/customizability
Vision Collaboration
•Seamless sync and async modeling
•Advanced inconsistency management
•Model repositories with high performance and capacity (efficient
model indexing and querying)
•Advanced engines for detecting and resolving inconsistencies
•Automation for branching and merging capabilities
•Multi-view and multi-DSL support
28
Vision Communication
•Improved usability and awareness
•Advanced roles management
•Design decision management and traceability
•Integration with external communication means/tools (social, wiki,
etc…)
29
Flexibility aspects
•Support for importing, linking, and editing models conforming to several and
integrated domain-specific modeling languages
•Pluggable external editors to edit modelling artifacts (e.g., models, metamodels)
•Support for including an open set of plugins providing vertical functionalities (e.g., for
performing a specific type of analysis)
•Traceability engines for external artifacts, possibly with links at the model element
level
•Concrete syntax redefinition or customization
•Pluggable domain-specific conflict detection/resolution engines
•Pluggable domain-specific consistency checkers, both within and across models
30

More Related Content

PDF
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
PDF
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
PDF
The Green Lab - [13 B] Future research challenges
PDF
The Green Lab - [01-B] Case study presentation
PDF
The Green Lab - [02 C] [case study] Progressive web apps
PDF
Collaborative model driven software engineering: a Systematic Mapping Study
PDF
SICOMORO
PDF
On the Customization of Model Management Systems for File-Centric IDEs
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
The Green Lab - [13 B] Future research challenges
The Green Lab - [01-B] Case study presentation
The Green Lab - [02 C] [case study] Progressive web apps
Collaborative model driven software engineering: a Systematic Mapping Study
SICOMORO
On the Customization of Model Management Systems for File-Centric IDEs

Similar to Collaborative Model-Driven Software Engineering: a Classification Framework and a Research Map [ICSE 2018 - journal first] (20)

PDF
Enriching Tool Support for Model-Driven Software Development
PDF
Topcased
PPTX
MBUID survey
PPTX
Cg 2011
PPT
Web technologies: Model Driven Engineering
PDF
Introduction to MDE
PDF
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
PDF
Miso-McGill
PDF
Presentation - "A comparison of component-based software engineering and mode...
PDF
Model-based Analysis of Large Scale Software Repositories
PDF
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
PPTX
Uncertainty and variability in industry-scale projects: Pearls, perils and p...
PDF
Quality management using mde - an overview
PPT
六合彩|香港六合彩 » SlideShare
PPT
香港六合彩 » SlideShare
PPT
香港六合彩 » SlideShare
PPT
tooba
PPT
香港六合彩|六合彩 » SlideShare
PPTX
Agile MDD
Enriching Tool Support for Model-Driven Software Development
Topcased
MBUID survey
Cg 2011
Web technologies: Model Driven Engineering
Introduction to MDE
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
Miso-McGill
Presentation - "A comparison of component-based software engineering and mode...
Model-based Analysis of Large Scale Software Repositories
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Uncertainty and variability in industry-scale projects: Pearls, perils and p...
Quality management using mde - an overview
六合彩|香港六合彩 » SlideShare
香港六合彩 » SlideShare
香港六合彩 » SlideShare
tooba
香港六合彩|六合彩 » SlideShare
Agile MDD
Ad

More from Ivano Malavolta (20)

PDF
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
PDF
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
PDF
The H2020 experience
PDF
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
PDF
Software sustainability and Green IT
PDF
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
PDF
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
PDF
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
PDF
Modeling behaviour via UML state machines [Software Design] [Computer Science...
PDF
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
PDF
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
PDF
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
PDF
Modeling and abstraction, software development process [Software Design] [Com...
PDF
[2017/2018] Agile development
PDF
Reconstructing microservice-based architectures
PDF
[2017/2018] AADL - Architecture Analysis and Design Language
PDF
[2017/2018] Architectural languages
PDF
[2017/2018] Introduction to Software Architecture
PDF
[2017/2018] RESEARCH in software engineering
PDF
Mobile Apps quality - a tale about energy, performance, and users’ perception
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
The H2020 experience
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
Software sustainability and Green IT
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Modeling and abstraction, software development process [Software Design] [Com...
[2017/2018] Agile development
Reconstructing microservice-based architectures
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] Architectural languages
[2017/2018] Introduction to Software Architecture
[2017/2018] RESEARCH in software engineering
Mobile Apps quality - a tale about energy, performance, and users’ perception
Ad

Recently uploaded (20)

PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
TLE Review Electricity (Electricity).pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Machine Learning_overview_presentation.pptx
PDF
Getting Started with Data Integration: FME Form 101
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Approach and Philosophy of On baking technology
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Spectroscopy.pptx food analysis technology
PPTX
1. Introduction to Computer Programming.pptx
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Mushroom cultivation and it's methods.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
cloud_computing_Infrastucture_as_cloud_p
Reach Out and Touch Someone: Haptics and Empathic Computing
Spectral efficient network and resource selection model in 5G networks
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Encapsulation_ Review paper, used for researhc scholars
TLE Review Electricity (Electricity).pptx
MIND Revenue Release Quarter 2 2025 Press Release
Machine Learning_overview_presentation.pptx
Getting Started with Data Integration: FME Form 101
SOPHOS-XG Firewall Administrator PPT.pptx
Approach and Philosophy of On baking technology
Digital-Transformation-Roadmap-for-Companies.pptx
Spectroscopy.pptx food analysis technology
1. Introduction to Computer Programming.pptx
Machine learning based COVID-19 study performance prediction
Programs and apps: productivity, graphics, security and other tools
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Mushroom cultivation and it's methods.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Advanced methodologies resolving dimensionality complications for autism neur...
cloud_computing_Infrastucture_as_cloud_p

Collaborative Model-Driven Software Engineering: a Classification Framework and a Research Map [ICSE 2018 - journal first]

  • 1. Collaborative Model-Driven Software Engineering: a Classification Framework and a Research Map ICSE journal first paper Transactions on Software Engineering (TSE) Mirco Franzago - University of L’Aquila (Italy) Davide Di Ruscio - University of L’Aquila (Italy) Ivano Malavolta - Vrije Universiteit of Amsterdam (The Netherlands) Henry Muccini - University of L’Aquila (Italy) VRIJE UNIVERSITEIT AMSTERDAM
  • 2. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Collaborative Software Engineering - CoSE ”[...] any software project with more than one person is created through a process of collaborative software engineering”* What makes CoSE growing so much: ● distributed agile ● open-source ● global software development * I. Mistrık, J. Grundy, A. Hoek, and J. Whitehead, Eds., Collaborative Software Engineering. Springer Berlin Heidelberg, 2010. 2
  • 3. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Collaborative Software Engineering - CoSE * I. Mistrık, J. Grundy, A. Hoek, and J. Whitehead, Eds., Collaborative Software Engineering. Springer Berlin Heidelberg, 2010. Communication Coordination Cooperation Awarenessdemands arranges tasks for mediates/ fosters mediates/ fosters mediates/ fosters generates commitments 3 ”[...] any software project with more than one person is created through a process of collaborative software engineering”* What makes CoSE growing so much: ● distributed agile ● open-source ● global software development
  • 4. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Collaborating on what? ... on the code ... on documents ... on design artifacts ... on project management artifacts This work focuses on specializing CoSE to Model-Driven Software Engineering (MDSE) 4
  • 6. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM What is Collaborative Model-Driven Software Engineering? 6 Pilot studies about CoSE+MDE Secondary studies about CoSE Analysis and open coding Preliminary definition of Collaborative MDE Discussions with experts Definition of Collaborative MDE
  • 7. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Modelmanagement Collaboration Communication Models Collaborative MDSE approach. A method or technique in which multiple stakeholders manage, collaborate, and are aware of each others’ work on a set of shared models. 7 Collaborative Model-Driven Software Engineering
  • 8. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Problem The body of scientific literature on Collaborative MDSE is LARGE and SCATTERED ● Identify, classify, and understand ● the publication trends, characteristics, and challenges ● of existing collaborative MDSE approaches ● from a researcher’s viewpoint GOAL 8
  • 9. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Systematic mapping study What are the characteristics of collaborative MDSE approaches? What are the challenges and shortcomings of existing collaborative MDSE approaches? What are the publication trends that can be deduced from the scientific publications about collaborative MDSE approaches over time? RQ1 RQ2 RQ3 ACM Digital Library IEEE Explore ISI Web of Science Science Direct SpringerLink Wiley InterScience Initial search False Positives removal Selection criteria Clustering Snowballing 3,047 78 20 1,462 900 175 175 1,047 1,047 62,238 317 59 59 48+ (collaborat∗ OR coordinat∗ OR cooperat∗ OR concur∗ OR global) AND (MDE OR MDD OR MDA OR MDS∗ OR EMF OR DSL OR DSML OR ”model driven” OR ”eclipse modeling framework” OR ”domain specific language” OR ”domain specific modeling language”) 1,066 1,008 9
  • 11. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM How to use the taxonomy? As a classification framework ● for building a map of the state of the art ● for putting YOUR approach into context Taxonomy for Collaborative MDSE 1 11
  • 12. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM How to use the taxonomy – classification framework Examples 1 12
  • 13. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM How to use the taxonomy? As a classification framework ● for building a map of the state of the art ● for putting YOUR approach into context As a RADAR for research gaps ● for extracting current limitations & challenges ● for identifying future research directions Taxonomy for Collaborative MDSE 1 2 13
  • 14. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM What’s next? Main future directions ● Better integrate the 3 dimensions of CoMDSE ● Support for custom collaboration workflows ● Tools interoperability ○ modeling, analysis, simulation tools, ... ● Model synchronization with change propagation ○ Conflicts management ● Performance and scalability 14 M. Franzago, D. Di Ruscio, I. Malavolta, H. Muccini. “Envisioning the Future of Collaborative Model- Driven Software Engineering”. In Proceedings of the IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C), 2017.
  • 15. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM What’s next? A proposal A Microservice-based ecosystem for Collaborative MDSE Ivano Malavolta VRIJE UNIVERSITEIT AMSTERDAM What’s next? Main future directions ● Better integrate the 3 dimensions of CoMDSE ● Conflicts management ● Model synchronization with change propagation ● Support for custom team collaboration workflows ● Tools interoperability ○ modeling, analysis, simulation tools, ... ● Performance and scalability • Highly customizable • Ecosystem of modeling artifacts and supporting services o Loosely coupled and independently deployable microservices • Distributed and light-weight model editors • Multiple languages and multiple views • Support for diverse stakeholders Our taxonomy as domain model for guiding the definition of the architecture of the ecosystem 3 15
  • 17. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Conclusions Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Systematic mapping study What are the characteristics of collaborative MDSE approaches? What are the challenges and shortcomings of existing collaborative MDSE approaches? What are the publication trends that can be deduced from the scientific publications about collaborative MDSE approaches over time? RQ1 RQ2 RQ3 ACM Digital Library IEEE Explore ISI Web of Science Science Direct SpringerLink Wiley InterScience Initial search False Positives removal Selection criteria Clustering Snowballing 3,047 78 20 1,462 900 175 175 1,047 1,047 62,238 317 59 59 106 (48) + (collaborat∗ OR coordinat∗ OR cooperat∗ OR concur∗ OR global) AND (MDE OR MDD OR MDA OR MDS∗ OR EMF OR DSL OR DSML OR ”model driven” OR ”eclipse modeling framework” OR ”domain specific language” OR ”domain specific modeling language”) 1,066 1,008 7 Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Elicited taxonomy 8 Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM The CoMDSE ecosystem M. Franzago, D. Di Ruscio, I. Malavolta, H. Muccini. “Envisioning the Future of Collaborative Model-Driven Software Engineering”. In Proceedings of the IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C), 2017. 3 14 Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Collaborative Model-Driven Software Engineering Modelmanagement Collaboration Communication Models Collaborative MDSE approach. A method or technique in which multiple stakeholders manage, collaborate, and are aware of each others’ work on a set of shared models. 6 Replication package: http://www.di.univaq.it/mirco.franzago/collaborativeMDSE/
  • 19. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Community activities Workshop @MODELS since 2016 Workshop paper submission deadline: July 17, 2018 IEEE Software Theme Issue ○ 31 Submitted papers ○ to appear on Nov/Dec 2018 http://cs.gssi.it/commitmde2018 19
  • 20. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM How to use the taxonomy – radar for research gaps Example 15 9 5 4 4 3 2 2 2 2 2 0 2 4 6 8 10 12 14 16 Conflicts management Model synchronization and change propagation Constraints specification, enforcing, and conformance checks Support for collaboration workflows and integration with development… Tool improvement Support for versioning and models editing history Support for combined asynchronous and synchronous collaboration Independence from any specific modeling language Interoperability with external tools Better coverage of modeling languages concepts Support for audio communication Identified limitations and shortcomings (as emerged from primary studies) 2 20
  • 24. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Findings about Model Management Editors are mostly desktop-based Prevalence of collaborative approaches supporting UML models (for any application domain) Collaborative model validation is only partially supported Multi-view support is quite limited Limited support to model versioning 24
  • 25. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Findings about Collaboration Collaborative infrastructure is mostly based on a star-like topology with data stored in a central server Collaboration is mostly based on a remote shared workspace Versioning is mostly supported through a centralized versioning system architecture Branches creation is only sporadically supported while conflict detection is employed by over half of the approaches 25
  • 26. Ivano MalavoltaVRIJE UNIVERSITEIT AMSTERDAM Findings about Communication Chat and annotations are the most used communication means Communication among technical stakeholders, with a unique approach designed for non-technical ones Workspace awareness - real-time updates and notification systems 26
  • 27. Vision Model Management •Distributed modeling environment •Technical and non-technical stakeholders •Light-weight and multi-device modeling (mobility) •Large scale modeling (scalability!) •Cloud-based services, on-demand modeling, modeling- as-a-service •Extensibility/customizability
  • 28. Vision Collaboration •Seamless sync and async modeling •Advanced inconsistency management •Model repositories with high performance and capacity (efficient model indexing and querying) •Advanced engines for detecting and resolving inconsistencies •Automation for branching and merging capabilities •Multi-view and multi-DSL support 28
  • 29. Vision Communication •Improved usability and awareness •Advanced roles management •Design decision management and traceability •Integration with external communication means/tools (social, wiki, etc…) 29
  • 30. Flexibility aspects •Support for importing, linking, and editing models conforming to several and integrated domain-specific modeling languages •Pluggable external editors to edit modelling artifacts (e.g., models, metamodels) •Support for including an open set of plugins providing vertical functionalities (e.g., for performing a specific type of analysis) •Traceability engines for external artifacts, possibly with links at the model element level •Concrete syntax redefinition or customization •Pluggable domain-specific conflict detection/resolution engines •Pluggable domain-specific consistency checkers, both within and across models 30