MAREL: Models And Reuse Engineering, Languages

The MaREL team addresses several research issues in software engineering, going through different steps in the software life cycle, from design to maintenance and including code optimization and compilation. Our research goes from theoretical studies to real-world experimentations, and includes algorithms and software development.



No permanents

Research Topics

The team's activity focuses on three axes:

  • Model-Driven Engineering (MDE), by designing a novel formal method (Relational Concept Analysis, RCA), its experimentation on large-sized real-world data, and as a basis for learning model transformations;
  • Reuse and Variability Engineering, by extracting components or product lines starting from object-oriented systems, through the use of adapted metrics and combinatorial optimization algorithms;
  • Semantics and Implementation of Programming Languages, object-oriented or component-based ones: designing "pure" component-based languages, like Smalltalk is a "pure" object-oriented language, or for experimenting implementation techniques of object-oriented languages.

These three axes are at the same time well identified and tightly related. The concepts of "object" and "model" provide a common base, and components are studied from different points of view: programming languages, models, and their extraction from code. RCA is an object of study, in addition to being a formal basis for tool development.

External Collaborations

  • Industrial Partners:
    • Acelys (2013 to date): Software development methodologies (model-driven engineering and variability)
    • Berger-Levrault (2013 to date): Accessibility for Web pages for visually impaired persons, and Analysis of software traces
    • Cortus (2009 to date): Efficient compilation for low-end embedded processors
    • Pradeo (2013 to date): Static analysis for the security of mobile applications
  • Academic Partners:
    • University of Montréal: co-supervision of theses related to reuse and MDE
    • Ecoles des Mines of Alès and Douai: co-supervision of theses in the domain of software components and MDE with application on home automation
    • LORIA, Nancy and LATECE, UQAM, classification of Web services and PICS Project (RCA and ontologies)
    • RMOD, INRIA Lille (and MAORE team), ANR Project Cutter (software re-modularization).

Recent Major Publications

  • R. Ducournau
    Implementing statically typed object-oriented programming languages. ACM Comput. Surv. 43(3): 18 (2011).
  • R. Ducournau, F. Morandat
    Perfect class hashing and numbering for object-oriented implementation. Software Practice & Experience, 41(6) 661-694, John Wiley & Sons, 2011 doi: 10.1002/spe.1024.
  • Petr Spacek, Christophe Dony and Chouki Tibermacine.
    A Component-based meta-level architecture and prototypical implementation of a reflective Component-oriented Programming and Modeling language. In proceedings of the 17th International ACM SIGSOFT Symposium on Component-Based Software Engineering (CBSE'14), Lille, France, June-July 2014. ACM Press.
  • Okba Tibermacine, Chouki Tibermacine and Foudil Cherif.
    A Process to Identify Relevant Substitutes for Healing Failed WS-* Orchestrations. In the Journal of Systems and Software, volume 104, Pages 1-16, June 2015. Elsevier.
  • Anas Shatnawi, Abdelhak Seriai, Houari A. Sahraoui, Zakarea Al-Shara.
    Mining Software Components from Object-Oriented APIs. In Proceedings of the 14th International Conference on Software Reuse (ICSR'15), Miami, FL, USA, January 4-6, 2015, pp. 330-347
  • Hamzeh Eyal-Salman, Abdelhak Seriai and Christophe Dony.    
    Feature-Level Change Impact Analysis Using Formal Concept Analysis. In International Journal of Software Engineering and Knowledge Engineering 2015.
  • Mohamed Rouane-Hacene, Marianne Huchard, Amedeo Napoli, Petko Valtchev
     Relational Concept Analysis: Mining Concept Lattices From Multi-Relational Data. Annals of Mathematics and Artificial Intelligence, 67(1): 81-108 (2013)
  • Hajer Saada, Marianne Huchard, Clémentine Nebut, Houari A. Sahraoui
    Recovering model transformation traces using multi-objective optimization.  In proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering (ASE'13), Silicon Valley, CA, USA, November 11-15, 2013, pp. 688-693

See all team publications: click here


Model Driven Engineering, Programming Languages, Software Reuse, Object-Oriented approaches, components, Web services, Software Product Lines, Formal Concept Analysis, Reengineering, Compilation

Last update on 08/02/2017