A distributed collaborative model editing framework for domain specific modeling languages

Student thesis: Doc typesDoctor of Sciences

Abstract

Nowadays software solutions are becoming complex due to inherent complexities of problems they are dealing with (for example, a safety critical systems like a flight controller). Besides time-to-market pressures, user requirement changes during and after a development of software products, and evolution of the underlying software platforms increase complexities to the already complex problems. To mitigate these complexities, the Model Driven Engineering approach has been adopted by the software engineering community. Model Driven Engineering adopts separation of concern principles that reduce complexity, improve reusability, and ensure simpler evolution of modeling languages. It raises the level of abstraction of software development from technological details (i.e., source code and underlying platforms) to the problem domain. Indeed, it brings a new era of software development by shifting trends of software engineering from code-centric to model-centric. Model Driven Engineering uses Domain Specific Modeling Languages to describe concepts in a specific domain.


Despite the fact that Domain Specific Modeling tools are becoming very powerful and more frequently used, the support for their cooperation has not reached its full strength, and demand for model management is growing. In cooperative work, the decision agents are semi-autonomous and therefore a solution for reconciliating DSM after a concurrent evolution is needed. Conflict detection and reconciliation are important steps for merging of concurrently evolved (meta)models in order to ensure collaboration. In this PhD thesis, we present a distributed collaborative model editing framework that supports concurrent editing of models and meta-models. This framework also supports a hierarchical collaboration among members of a collaborative ensemble. It captures edit operations of (meta-)model whenever users adapt (meta-)models using a modeling language defined to capture history of modifications. The sequence of edit operations are used as a means to communicate work among members of a cooperative ensemble. In addition, the framework uses these operations to compare (meta-)models and to detect conflicts. The framework detects syntactic and static semantic conflicts, and it provides facilities to capture rationale of modifications using multimedia files that could help the conflict reconciliation process. Besides, the framework supports a role-based conflict reconciliation mechanism, where the evolution of (meta-)models is supervised by a human controller. In this framework, roles are dynamic and easily assigned to different users.
Date of Award12 Jan 2016
Original languageEnglish
Awarding Institution
  • University of Namur
SupervisorVincent Englebert (Supervisor), Philippe Thiran (Co-Supervisor), Wim Vanhoof (President), Anthony Cleve (Jury), Tom Mens (Jury) & Pieter Van Gorp (Jury)

Keywords

  • Computer-supported Cooperative Work
  • Model Driven Engineering
  • Model Evolution

Attachment to an Research Institute in UNAMUR

  • NADI

Cite this

'