DOI: 10.5281/zenodo.12804566
title: ICSME 2024 Research Track: "What Happened to my Models?" History-Aware Co-Existence and Co-Evolution of Metamodels and Models

description:  

ICSME 2024 Research Track: “What Happened to my Models?” History-Aware Co-Existence and Co-Evolution of Metamodels and Models

 

This repository provides the dataset and results for the evaluation of the paper “What Happened to my Models?” of the ICSME 2024 Research track.The dataset consists of the following files:



RQ1-Type-Refactors.zip contains the operations and refactoring performed on each of the given metamodels used by our approach in RQ1.

RQ1-Type-Results.zip: contains the group results of RQ1 as shown in our paper with additional metrics of other operations not highlighted in our paper due to space limitations.

RQ2-3-PlantUML-Models.zip: contains the 250 PlantUML models and the metamodel. This folder contains the co-evolved PlantUML models, the operations performed during the co-evolution, their metrics and the state of the models bore and after the co-evolution. 

RQ2-3-PlantUML-Results.zip: contains the group results of RQ2 and RQ3 as shown in our paper with additional metrics of other operations not highlighted in our paper due to space limitations

RQ2-3-FHIR-Models.zip: contains the 1180 FHIR models and the metamodel. This folder contains the co-evolved FHIR models, the operations performed during the co-evolution, their metrics and the state of the models bore and after the co-evolution.

RQ2-3-Results.zip: contains the grouped results of RQ2 and RQ3 as presented in our paper.

Additionalnformation.pdf: contains additional information on how to read the files extracted by our approach, i.e., how to read the models and operations and how our executable refactoring catlaog works since we only focused on Property Refactorings in the paper.

Results.pdf: Contains an overview of the results (the results from our paper + additional results)

Tools.zip: Contains the tools used for the evalution. For an explaination how to use it read the Additionalnformation.pdf, see below or contact the authors


Running the tools:

Windows 10/11JDK 20 or above

The tools consist of two programs: 



importer.jarThis file is used to import a FHIR or PlantUML file into the server and co-evolve it.

server_FHIR_.jarThe server stores the models and co-evolves them. The files provided already have the metamodels preloaded, that are used in RQ2 and RQ3, i.e., FHIR_STU3 contains the FHIR metamodel version DSTU2 and STU3 and our hybrid PlantUML, while FHIR_ synthetic contains the FHIR metamodel DSTU2 and our synthetically created one.


How to use the Tools

First, start the server by starting the jar. The server also has an experimental GUI mode that allows engineers to check the types and instances that were created. Note: This mode is currently under development and is still unstable. The mode is accessible by adding -gui as a parameter.

java -jar server_FHIR_STU3.jar -gui

Otherwise, just run the server normally:

java -jar server_FHIR_STU3.jar

After the server has booted up, it exports InstanceTypes and operations created for the FHIR and PlantUML metamodels. Next, you start the importer. The importer has two modes: the PlantUML mode, where it imports a PlantUML state machine and co-evolves it and the FHIR mode, where it imports an FHIR file and co-evolves it into either STU3 or our synthetic version (depending on which of the preloaded servers is running). Just run the tool by providing either FHIR or PlantUML, the imported file and the path where the output should be stored.

FHIR-Mode:

java -jar importer.jar FHIR C:\Users\Admin\Desktop\Aaron697_Brekke496_2fa15bc7-8866-461a-9000-f739e425860a.json C:\Users\Admin\Desktop\results

PlantUML Mode:

java -jar importer.jar PlantUML C:\Users\Admin\Desktop\branch.puml C:\Users\Admin\Desktop\results

Note: Please run both the tool and the server in a command line to receive additional information about the importing and co-evolution since the tool is otherwise without a user interface.