EDBT 2026 Demo / reviewers in the wild / expert
Djamel Eddine Khelladi
dblp:163/0131
· DBLP profile ↗
35ranked-venue papers
12as first author
19since 2021 · last 2026
0000-0002-2218-650XORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 34 · 11 first-author · 19 since 2021Databases, data management, data science and information retrieval · 3 · 2 first-author · 1 since 2021Systems, architecture and hardware · 1 · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | PyroBuildS: Speeding up the exploration of large configuration spaces with incremental build
Georges Aaron Randrianaina, Djamel Eddine Khelladi, Olivier Zendra, Mathieu Acher |
J. Syst. Softw. | 2 |
| 2025 | Multi-Partner Project: A Model-Driven Engineering Framework for Federated Digital Twins of Industrial Systems (MATISSE)abstractDigital twins are virtual representations of real-world entities or systems. Their primary goal is to help organizations understand and predict the behaviour and properties of these entities or systems. Additionally, digital twins enhance activities such as monitoring, verification, validation, and testing. However, the inherent complexity of digital twins implies challenges throughout the systems engineering process. This notably includes design, development, and analysis phases, as well as deployment, execution, and maintenance. Moreover, existing approaches, methods, techniques, and tools for modelling, simulating, validating, and monitoring single digital twins must now address the increased complexity in federation scenarios. These scenarios introduce new challenges, such as digital twin identification, shared metadata, cross-digital twin communication and synchronization, and federation governance. The KDT Joint Undertaking MATISSE project tackles these challenges by aiming to provide a model-driven framework for the continuous engineering of federated digital twins. It leverages model-driven engineering techniques and practices as the core enabling technology, with traceability serving as an essential infrastructural service for the digital twins federation. In this paper, we introduce the MATISSE conceptual framework for digital twins, highlighting both the novelty of the project's concept and its technical objectives. As the project is still in its initial phase, we identify key research challenges relevant to the DATE community and propose a preliminary research roadmap. This roadmap addresses traceability and federation mechanisms, the required continuous engineering strategy, and the development of digital twin-based services for verification, validation, prediction, and monitoring. To illustrate our approach, we present two concrete scenarios that demonstrate practical applications of the MATISSE conceptual framework. Alessio Bucaioni, Romina Eramo, Luca Berardinelli, Hugo Bruneliere, Benoît Combemale, Djamel Eddine Khelladi, Vittoriano Muttillo, Andrey Sadovykh, Manuel Wimmer |
DATE | 6 |
| 2025 | Linux Kernel Configurations at Scale: A Dataset for Performance and Evolution Analysis
Heraldo Borges, Juliana Alves Pereira, Djamel Eddine Khelladi, Mathieu Acher |
EASE | 3 |
| 2025 | LLM Code Customization with Visual Results: A Benchmark on TikZabstractWith the rise of AI-based code generation, customizing existing code out of natural language instructions to modify visual results – such as figures or images – has become possible, promising to reduce the need for deep programming expertise. However, even experienced developers can struggle with this task, as it requires identifying relevant code regions (feature location), generating valid code variants, and ensuring the modifications reliably align with user intent. In this paper, we introduce vTikZ, the first benchmark designed to evaluate the ability of Large Language Models (LLMs) to customize code while preserving coherent visual outcomes. Our benchmark consists of carefully curated vTikZ editing scenarios, parameterized ground truths, and a reviewing tool that leverages visual feedback to assess correctness. Empirical evaluation with state-of-the-art LLMs shows that existing solutions struggle to reliably modify code in alignment with visual intent, highlighting a gap in current AI-assisted code editing approaches. We argue that vTikZ opens new research directions for integrating LLMs with visual feedback mechanisms to improve code customization tasks in various domains beyond TikZ, including image processing, art creation, Web design, and 3D modeling. Charly Reux, Mathieu Acher, Djamel Eddine Khelladi, Clément Quinton, Olivier Barais |
EASE | 3 |
| 2025 | Re-evaluating metamorphic testing of chess engines: A replication study
Axel Martin, Djamel Eddine Khelladi, Théo Matricon, Mathieu Acher |
Inf. Softw. Technol. | 2 |
| 2025 | Piloting Copilot, Codex, and StarCoder2: Hot temperature, cold prompts, or black magic?
Jean-Baptiste Döderlein, Nguessan Hermann Kouadio, Mathieu Acher, Djamel Eddine Khelladi, Benoît Combemale |
J. Syst. Softw. | 4 |
| 2025 | Automated testing of metamodels and code co-evolution
Zohra Kaouter Kebaili, Djamel Eddine Khelladi, Mathieu Acher, Olivier Barais |
Softw. Syst. Model. | 2 |
| 2025 | Editorial to the theme section on model-driven engineering for digital twins
Djamel Eddine Khelladi, Tony Clark 0001, Vinay Kulkarni 0001, Steffen Zschaler |
Softw. Syst. Model. | 1 |
| 2025 | A language-parametric test amplification framework for executable domain-specific languages
Faezeh Khorram, Erwan Bousse, Jean-Marie Mottu, Gerson Sunyé, Djamel Eddine Khelladi, Pablo Gómez-Abajo, Pablo C. Cañizares, Esther Guerra, Juan de Lara |
Softw. Syst. Model. | 5 |
| 2025 | Automated Co-Evolution of Metamodels and CodeabstractContext.In Software Engineering, Model-Driven Engineering (MDE) is a methodology that considers Metamodels as a cornerstone. As an abstract artifact, a metamodel plays a significant role in the specification of a software language, particularly, in generating other artifacts of lower abstraction level, such as code. Developers then enrich the generated code to build their language services and tooling, e.g., editors, and checkers.Problem.When a metamodel evolves, the generated code is automatically updated. As a consequence, the developers’ additional code is impacted and needs to be co-evolved accordingly.Contribution.This paper proposes a new fully automatic code co-evolution approach with the evolution of the Ecore metamodel. The approach relies on pattern matching of the additional code errors. This process aims to analyze the abstraction gap between the evolved metamodel elements and the code errors to co-evolve them.Evaluation and Results.We evaluated our approach on nine Eclipse projects from OCL, Modisco, and Papyrus over several evolved versions of three metamodels. Results show that we automatically co-evolved 771 errors due to metamodel evolution with 631 matched and applied resolutions. Our approach reached an average of 82% of precision and 81% of recall, varying from 48% to 100% for precision and recall respectively. To check the effect of the co-evolution and its behavioral correctness, we rely on generated test cases before and after co-evolution. We observed that the percentage of passing, failing, and erroneous tests remained the same with insignificant variations in some projects. Thus, suggesting the behavioral correctness of the co-evolution Moreover, we conducted a comparison with the use of quick fixes that represent a usual tool for correcting code errors in an IDE. We found that our automatic co-evolution approach outperforms the use of quick fixes that lacked the context of metamodel evolution. Finally, we also compared our approach with the state-of-the-art semi-automatic co-evolution approach. As expected, precision and recall are slightly better with semi-automation, but with the burden of manual intervention, which is alleviated with our automatic co-evolution. Zohra Kaouter Kebaili, Djamel Eddine Khelladi, Mathieu Acher, Olivier Barais |
IEEE Trans. Software Eng. | 2 |
| 2024 | Options Matter: Documenting and Fixing Non-Reproducible Builds in Highly-Configurable SystemsabstractA critical aspect of software development, build reproducibility, ensures the dependability, security, and maintainability of software systems. Although several factors, including the build environment, have been investigated in the context of non-reproducible builds, to the best of our knowledge the precise influence of configuration options in configurable systems has not been thoroughly investigated. This paper aims at filling this gap. Georges Aaron Randrianaina, Djamel Eddine Khelladi, Olivier Zendra, Mathieu Acher |
MSR | 2 |
| 2023 | Polyglot AST: Towards Enabling Polyglot Code AnalysisabstractToday, a plethora of programming languages exists, each better suited for a particular concern. For example, Python is suited for data analysis but not web development, whereas JavaScript is the inverse. As software complexity grows and needs to address multiple concerns, different programming languages are often used in combination, despite the burden of bridging them (e.g., using Java Native Interface). Polyglot programming emerged as a solution allowing the seamless mixing of multiple programming languages. GraalVM and PolyNote are examples of runtimes allowing polyglot programming. However, there is a striking lack of support at design time for building and analyzing polyglot code. To the best of our knowledge, there is no uniform language-agnostic way of reasoning over multiple languages to provide seamless code analysis, since each language comes with its own form of Abstract Syntax Trees (AST). In this paper, we present an approach to build a uniform yet polyglot AST over polyglot code, so that it is easier to perform global analysis. We first motivate this challenge and identify the main requirements for building a polyglot AST. We then propose a proof of concept implementation of our solutions on GraalVM’s polyglot API. On top of the polyglot AST, we demonstrate the ability to implement several polyglot-specific analysis services, namely auto-completion, consistency checking, type inference, and rename refactoring. Our evaluation on three polyglot projects taken from GitHub, and involving JavaScript and Python code, shows that we can build a polyglot AST without significant overhead. We also demonstrate the usefulness of the polyglot analysis services through the provided automation, as well as their scalability. Philémon Houdaille, Djamel Eddine Khelladi, Romain Briend, Robbert Jongeling, Benoît Combemale |
ICECCS | 2 |
| 2023 | HyperDiff: Computing Source Code Diffs at ScaleabstractWith the advent of fast software evolution and multistage releases, temporal code analysis is becoming useful for various purposes, such as bug cause identification, bug prediction or code evolution analysis. Temporal code analyses can consist in analyzing multiple Abstract Syntax Trees (ASTs) extracted from code evolutions, e.g. one AST for each commit or release. Core feature to temporal analysis is code differencing: the computation of the so-called Diff or edit script between two given versions of the code. However, jointly analyzing and computing the difference on thousands versions of code faces scalability issues. Mainly because of the cost of: 1) parsing the original and evolved code in two source and target ASTs; 2) wasting resources by not reusing intermediate computation results that can be shared between versions. This paper details a novel approach based on time-oriented data structures that makes code differencing scale up to large software codebases. In particular, we leverage on the HyperAST, a novel representation of code histories, to propose an incremental and memory efficient approach by lazifying the well known GumTree diffing algorithms, a mainstream code differencing algorithm and tool. We evaluated our approach on a curated list of 19 large software projects and compared it to GumTree. Our approach outperforms it in scalability both in time and memory. We observed an order-of-magnitude difference: 1) in CPU time from x1.2 to x12.7 for the total time of diff computation and up to x226 in intermediate phases of the diff computation, and 2) in memory footprint of x4.5 per AST node. The approach produced 99.3% of identical diffs with respect to GumTree. Quentin Le Dilavrec, Djamel Eddine Khelladi, Arnaud Blouin, Jean-Marc Jézéquel |
ESEC/SIGSOFT FSE | 2 |
| 2022 | On the Benefits and Limits of Incremental Build of Software Configurations: An Exploratory StudyabstractSoftware projects use build systems to automate the compilation, testing, and continuous deployment of their software products. As software becomes increasingly configurable, the build of multiple configurations is a pressing need, but expensive and challenging to implement. The current state of practice is to build independently (a.k.a., clean build) a software for a subset of configurations. While incremental build has been studied for software evolution and relatively small changes of the source code, it has surprisingly not been considered for software configurations. In this exploratory study, we examine the benefits and limits of building software configurations incrementally, rather than always building them cleanly. By using five real-life configurable systems as subjects, we explore whether incremental build works, outperforms a sequence of clean builds, is correct w.r.t. clean build, and can be used to find an optimal ordering for building configurations. Our results show that incremental build is feasible in 100% of the times in four subjects and in 78% of the times in one subject. In average, 88.5% of the configurations could be built faster with incremental build while also finding several alternatives faster incremental builds. However, only 60% of faster incremental builds are correct. Still, when considering those correct incremental builds with clean builds, we could always find an optimal order that is faster than just a collection of clean builds with a gain up to 11.76%. Georges Aaron Randrianaina, Xhevahire Tërnava, Djamel Eddine Khelladi, Mathieu Acher |
ICSE | 3 |
| 2022 | HyperAST: Enabling Efficient Analysis of Software Histories at ScaleabstractAbstract Syntax Trees (ASTs) are widely used beyond compilers in many tools that measure and improve code quality, such as code analysis, bug detection, mining code metrics, refactoring. With the advent of fast software evolution and multistage releases, the temporal analysis of an AST history is becoming useful to understand and maintain code. Quentin Le Dilavrec, Djamel Eddine Khelladi, Arnaud Blouin, Jean-Marc Jézéquel |
ASE | 2 |
| 2022 | Transfer Learning Across Variants and Versions: The Case of Linux Kernel SizeabstractWith large scale and complex configurable systems, it is hard for users to choose the right combination of options (i.e., configurations) in order to obtain the wanted trade-off between functionality and performance goals such as speed or size. Machine learning can help in relating these goals to the configurable system options, and thus, predict the effect of options on the outcome, typically after a costly training step. However, many configurable systems evolve at such a rapid pace that it is impractical to retrain a new model from scratch for each new version. In this paper, we propose a new method to enable transfer learning of binary size predictions among versions of the same configurable system. Taking the extreme case of the Linux kernel with its$\approx 14,500$configuration options, we first investigate how binary size predictions of kernel size degrade over successive versions. We show that the direct reuse of an accurate prediction model from 2017 quickly becomes inaccurate when Linux evolves, up to a 32% mean error by August 2020. We thus propose a new approach for transfer evolution-aware model shifting (tEAMS). It leverages the structure of a configurable system to transfer an initial predictive model towards its future versions with a minimal amount of extra processing for each version. We show thattEAMSvastly outperforms state of the art approaches over the 3 years history of Linux kernels, from 4.13 to 5.8. Hugo Martin 0003, Mathieu Acher, Juliana Alves Pereira, Luc Lesoil, Jean-Marc Jézéquel, Djamel Eddine Khelladi |
IEEE Trans. Software Eng. | 6 |
| 2021 | Untangling Spaghetti of Evolutions in Software Histories to Identify Code and Test Co-evolutionsabstractVersion Control Systems are key elements of modern software development. They provide the history of software systems, serialized as lists of commits. Practitioners may rely on this history to understand and study the evolutions of software systems, including the co-evolution amongst strongly coupled development artifacts such as production code and their tests. However, a precise identification of code and test co-evolutions requires practitioners to manually untangle spaghetti of evolutions. In this paper, we propose an automated approach for detecting co-evolutions between code and test, independently of the commit history. The approach creates a sound knowledge base of code and test co-evolutions that practitioners can use for various purposes in their projects. We conducted an empirical study on a curated set of 45 open-source systems having Git histories. Our approach exhibits a precision of 100 % and an underestimated recall of 37.5 % in detecting the code and test co-evolutions. Our approach also spotted different kinds of code and test co-evolutions, including some of those researchers manually identified in previous work. Quentin Le Dilavrec, Djamel Eddine Khelladi, Arnaud Blouin, Jean-Marc Jézéquel |
ICSME | 2 |
| 2021 | Transforming abstract to concrete repairs with a generative approach of repair values
Roland Kretschmer, Djamel Eddine Khelladi, Alexander Egyed |
J. Syst. Softw. | 2 |
| 2021 | Consistent change propagation within modelsabstractDevelopers change models with clear intentions-e.g., for refactoring, defects removal, or evolution. However, in doing so, developers are often unaware of the consequences of their changes. Changes to one part of a model may affect other parts of the same model and/or even other models, possibly created and maintained by other developers. The consequences are incomplete changes and with it inconsistencies within or across models. Extensive works exist on detecting and repairing inconsistencies. However, the literature tends to focus on inconsistencies as errors in need of repairs rather than on incomplete changes in need of further propagation. Many changes are non-trivial and require a series of coordinated model changes. As developers start changing the model, intermittent inconsistencies arise with other parts of the model that developers have not yet changed. These inconsistencies are cues for incomplete change propagation. Resolving these inconsistencies should be done in a manner that is consistent with the original changes. We speak of consistent change propagation. This paper leverages classical inconsistency repair mechanisms to explore the vast search space of change propagation. Our approach not only suggests changes to repair a given inconsistency but also changes to repair inconsistencies caused by the aforementioned repair. In doing so, our approach follows the developer's intent where subsequent changes may not contradict or backtrack earlier changes. We argue that consistent change propagation is essential for effective model-driven engineering. Our approach and its tool implementation were empirically assessed on 18 case studies from industry, academia, and GitHub to demonstrate its feasibility and scalability. A comparison with two versioned models shows that our approach identifies actual repair sequences that developers had chosen. Furthermore, an experiment involving 22 participants shows that our change propagation approach meets the workflow of how developers handle changes by always computing the sequence of repairs resulting from the change propagation. Roland Kretschmer, Djamel Eddine Khelladi, Roberto Erick Lopez-Herrejon, Alexander Egyed |
Softw. Syst. Model. | 2 |
| 2020 | Co-evolving code with evolving metamodelsabstractMetamodels play a significant role to describe and analyze the relations between domain concepts. They are also cornerstone to build a software language (SL) for a domain and its associated tooling. Metamodel definition generally drives code generation of a core API. The latter is further enriched by developers with additional code implementing advanced functionalities, e.g., checkers, recommenders, etc. When a SL is evolved to the next version, the metamodels are evolved as well before to re-generate the core API code. As a result, the developers added code both in the core API and the SL toolings may be impacted and thus may need to be co-evolved accordingly. Many approaches support the co-evolution of various artifacts when metamodels evolve. However, not the co-evolution of code. This paper fills this gap. We propose a semi-automatic co-evolution approach based on change propagation. The premise is that knowledge of the metamodel evolution changes can be propagated by means of resolutions to drive the code co-evolution. Our approach leverages on the abstraction level of metamodels where a given metamodel element has often different usages in the code. It supports alternative co-evaluations to meet different developers needs. Our work is evaluated on three Eclipse SL implementations, namely OCL, Modisco, and Papyrus over several evolved versions of metamodels and code. In response to five different evolved metamodels, we co-evolved 976 impacts over 18 projects.A comparison of our co-evolved code with the versioned ones shows the usefulness of our approach. Our approach was able to reach a weighted average of 87.4% and 88.9% respectively of precision and recall while supporting useful alternative co-evolution that developers have manually performed. Djamel Eddine Khelladi, Benoît Combemale, Mathieu Acher, Olivier Barais, Jean-Marc Jézéquel |
ICSE | 1 |
| 2019 | Supporting a flexible grouping mechanism for collaborating engineering teamsabstractMost engineering tools do not provide much support for collaborating teams and today's engineering knowledge repositories lack flexibility and are limited. Engineering teams have different needs and their team members have different preferences on how and when to collaborate. These needs may depend on the individual work style, the role an engineer has, and the tasks they have to perform within the collaborating group. However, individual collaboration is insufficient and engineers need to collaborate in groups. This work presents a collaboration framework for collaborating groups capable of providing synchronous and asynchronous mode of collaboration. Additionally, our approach enables engineers to mix these collaboration modes to meet the preferences of individual group members. We evaluate the scalability of this framework using four real life large collaboration projects. These projects were found from GitHub and they were under active development by the time of evaluation. We have tested our approach creating groups of different sizes for each project. The results showed that our approach scales to support every case for the groups created. Additionally, we scouted the literature and discovered studies that support the usefulness of different groups with collaboration styles. Georgios Kanakis, Stefan Fischer 0006, Djamel Eddine Khelladi, Alexander Egyed |
ICGSE | 3 |
| 2019 | Detecting and exploring side effects when repairing model inconsistenciesabstractWhen software models change, developers often fail in keeping them consistent. Automated support in repairing inconsistencies is widely addressed. Yet, merely enumerating repairs for developers is not enough. A repair can as a side effect cause new unexpected inconsistencies (negative) or even fix other inconsistencies as well (positive). To make matters worse, repairing negative side effects can in turn cause further side effects. Current approaches do not detect and track such side effects in depth, which can increase developers' effort and time spent in repairing inconsistencies. This paper presents an automated approach for detecting and tracking the consequences of repairs, i.e. side effects. It recursively explores in depth positive and negative side effects and identifies paths and cycles of repairs. This paper further ranks repairs based on side effect knowledge so that developers may quickly find the relevant ones. Our approach and its tool implementation have been empirically assessed on 14 case studies from industry, academia, and GitHub. Results show that both positive and negative side effects occur frequently. A comparison with three versioned models showed the usefulness of our ranking strategy based on side effects. It showed that our approach's top prioritized repairs are those that developers would indeed choose. A controlled experiment with 24 participants further highlights the significant influence of side effects and of our ranking of repairs on developers. Developers who received side effect knowledge chose far more repairs with positive side effects and far less with negative side effects, while being 12.3% faster, in contrast to developers who did not receive side effect knowledge. Djamel Eddine Khelladi, Roland Kretschmer, Alexander Egyed |
SLE | 1 |
| 2018 | Change Propagation-based and Composition-based Co-evolution of Transformations with Evolving MetamodelsabstractTransformations constitute significant key components of an automated model-driven engineering solution. As metamodels evolve, model transformations may need to be co-evolved accordingly. A conducted experiment on transformations' co-evolution highlighted the existing gap in the literature where only limited few co-evolution scenarios are covered without supporting alternatives that occur in practice. To make matters worse, when a developer needs to drift apart from the proposed co-evolution, no automatic support is provided to the developer. This paper first proposes a change propagation-based co-evolution of transformations. The premise is that knowledge of the metamodel evolution can be propagated by means of resolutions to drive the transformation co-evolution. To deal with particular cases where developers must drift from the proposed resolutions, we introduce a composition-based mechanism that allows developers to compose resolutions meeting their needs. Our work is evaluated on 14 case studies consisting in original and evolved metamodels and ETL Epsilon transformations. A comparison of our co-evolved transformations with the 14 versioned ones showed the usefulness of our approach that reached an average 96% of correct co-evolution. On three other case studies, our composition-based co-evolution showed to be useful to eight developers in selecting resolutions that best meet their needs. Among the applied resolutions, four developers applied six resolutions that were the direct result of a composition. Djamel Eddine Khelladi, Roland Kretschmer, Alexander Egyed |
MoDELS | 1 |
| 2017 | An Exploratory Experiment on Metamodel-Transformation Co-EvolutionabstractMetamodels, like any other software artifacts evolve throughout time. As a consequence, all dependent artifacts may need to be co-evolved accordingly, including model transformations. Transformations are a key component of an automated development solution, thus it is crucial to automate their co-evolution while guaranteeing that they remain correct. However, there is little known about what aspects and characteristics must be automated in a manual co-evolution and in particular how it should be correctly automated. Few approaches exist, but it is not clear to what extent those approaches are able to automate the manual co-evolution of model transformations. In this paper, we report on an exploratory experiment we conducted to better understand the co-evolution of transformations in practice and to assess the usefulness of the current existing techniques. 15 participants were involved in our experiment to monitor how they co-evolve transformation rules in response to metamodel evolution. Our analysis results show that while existing approaches support the user with an automatic impact analysis, they do not consider proposing a very large spectrum of alternative resolutions. Among the 14 resolutions that occurred in our experiment, on average only 4 (up to 6) were supported by the existing approaches. Djamel Eddine Khelladi, Horacio Hoyos, Roland Kretschmer, Alexander Egyed |
APSEC | 1 |
| 2017 | From Abstract to Concrete Repairs of Model Inconsistencies: An Automated ApproachabstractA common task performed in model-driven software engineering is evolving models. This task is typically performed manually during the design or implementation phase of software projects and is known to cause inconsistencies. Despite extensive research on consistency checking, existing approaches either provide abstract (i.e., incomplete) repairs only, or they require manually predefined strategies on how to repair inconsistencies. In this paper, we present a novel approach that provides concrete (i.e., executable) repairs without the need of predefined repair strategies. Furthermore, our approach proposes functions which automate the generation of concrete repairs at runtime. An empirical assessment of the approach on six case studies from industry, academia and GitHub demonstrates its feasibility, and shows that the provided concrete repairs are relevant and can fix their corresponding inconsistencies automatically. Roland Kretschmer, Djamel Eddine Khelladi, Andreas Demuth, Roberto Erick Lopez-Herrejon, Alexander Egyed |
APSEC | 2 |
| 2017 | A semi-automatic maintenance and co-evolution of OCL constraints with (meta)model evolution
Djamel Eddine Khelladi, Reda Bendraou, Regina Hebig, Marie-Pierre Gervais |
J. Syst. Softw. | 1 |
| 2017 | Coadapting multidimension process propertiesabstractAbstract In the last decades, process verification has been intensively addressed and has become an essential activity to correct and to remove errors before process execution. Typical process verification ecosystems propose to express properties to be verified on the process. A property expresses a desired behavior that must hold or not in the process execution. Processes during their lifespan are continuously adapted for several purposes: enriching, correcting, and refactoring the process. When a process is adapted, the existing properties must naturally be rechecked to ensure that no errors have been introduced, ie, the properties still hold. However, the properties may become outdated and must be coadapted w.r.t. the adapted process before to be rechecked. Otherwise, the verification may raise false alarms or may not detect newly introduced errors. In this paper, we propose a coadaptation approach of properties while considering process adaptation for the different dimensions, namely, control flow, object flow, resources, and timing. We systematically studied process changes in the multiple dimensions to identify those that do impact properties and for which we propose resolution strategies. Our preliminary evaluation shows that our resolutions strategies allow to support users in correctly coadapting impacted properties. Djamel Eddine Khelladi, Reda Bendraou, Regina Hebig, Marie-Pierre Gervais |
J. Softw. Evol. Process. | 1 |
| 2017 | Approaches to Co-Evolution of Metamodels and Models: A SurveyabstractModeling languages, just as all software artifacts, evolve. This poses the risk that legacy models of a company get lost, when they become incompatible with the new language version. To address this risk, a multitude of approaches for metamodel-model co-evolution were proposed in the last 10 years. However, the high number of solutions makes it difficult for practitioners to choose an appropriate approach. In this paper, we present a survey on 31 approaches to support metamodel-model co-evolution. We introduce a taxonomy of solution techniques and classify the existing approaches. To support researchers, we discuss the state of the art, in order to better identify open issues. Furthermore, we use the results to provide a decision support for practitioners, who aim to adopt solutions from research. Regina Hebig, Djamel Eddine Khelladi, Reda Bendraou |
IEEE Trans. Software Eng. | 2 |
| 2016 | Towards a User-Guided Difference-Based Detection of Atomic ChangesabstractDetecting metamodel atomic changes during evolution is prerequisite for co-evolution of models, constraints, and transformations. They are also essential to detect complex changes over the sequence of atomic ones. However when detecting atomic changes with a difference-based technique, the applied order of the atomic changes is not recovered and some hidden changes are undetected. Thus, the quality of the detected atomic change trace is reduced which could be harmful to both co-evolution and detection of complex changes. This paper proposes to identify potential hidden changes in order to add them to the trace of atomic changes, and also to order the atomic changes with ordering heuristics. Djamel Eddine Khelladi, Reda Bendraou, Marie-Pierre Gervais |
ICECCS | 1 |
| 2016 | Metamodel and Constraints Co-evolution: A Semi Automatic Maintenance of OCL Constraints
Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jacques Robin, Marie-Pierre Gervais |
ICSR | 1 |
| 2016 | Supporting the co-adaption of process propertiesabstractProcess verification has become an essential activity to correct and to remove errors before process execution. Typical process verification ecosystems propose to express properties to be verified on the process. When a process is adapted, the existing properties must naturally be re-checked to ensure that no errors have been introduced. However, the properties may become outdated and must be co-adapted w.r.t. the adapted process before to be re-checked. Otherwise, the verification may raise false alarms or may not detect newly introduced errors. In this paper, we propose a co-adaptation approach for control-flow process properties. We systematically studied control-flow process changes to identify those that do impact properties, and for which we propose resolution strategies. Our preliminary evaluation shows that our resolutions strategies allow to support users in correctly co-adapting impacted properties. Djamel Eddine Khelladi, Reda Bendraou, Regina Hebig, Marie-Pierre Gervais |
ICSSP | 1 |
| 2016 | Detecting complex changes and refactorings during (Meta)model evolution
Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jacques Robin, Marie-Pierre Gervais |
Inf. Syst. | 1 |
| 2015 | Surveying the Corpus of Model Resolution Strategies for Metamodel EvolutionabstractModeling languages evolve regularly. Companies need to maintain all those models that are used in running projects, which can cause these projects to fall back in their schedules. Since 10 years research addresses this issue with approaches for automating co-evolution. The dominant core of these approaches are model resolution strategies. They define 1) how models have to be changed in reaction to specific metamodel changes, 2) what degree of automation can be reached, and 3) to what extent the user can control the resolution outcome. In this paper, we survey existing co-evolution approaches and analyze model resolution strategies. We present a corpus of more than 200 resolution strategies for 116 types of metamodel changes and discuss degree of automation and choices that users have today. Regina Hebig, Djamel Eddine Khelladi, Reda Bendraou |
APSEC | 2 |
| 2015 | Detecting Complex Changes During Metamodel Evolution
Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jacques Robin, Marie-Pierre Gervais |
CAiSE | 1 |
| 2015 | On Lightweight Metamodel Extension to Support Modeling Tools Agility
Hugo Bruneliere, Jokin García, Philippe Desfray, Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jordi Cabot |
ECMFA | 4 |