Skip to content

atlanmod/mondo-itmfactory-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 

Repository files navigation

ITM Factory Benchmark

This benchmark contains two transformations and a set of queries, each addressing a different phase in a model-driven reverse engineering process. The use case for this benchmark is taken from the Eclipse MoDisco project.

Thanks to the MoDisco Java discoverer, we are able to extract Java models up to 1.3GB, that conform to the Java metamodel defined in MoDisco (refinement of the JDTAST metamodel). We kindly invite you to follow this link to get more familiar with MoDisco Java Discoverer(y).

Below an incremental list of JDT plugins, as they appear in the Eclipse Juno Distribtion.

Sets Plugings
Set1 org.eclipse.jdt.apt.pluggable.core
Set2 Set1 + org.eclipse.jdt.apt.pluggable.core
Set3 Set2 + org.eclipse.jdt.core+ org.eclipse.jdt.compiler + org.eclipse.jdt.apt.core
Set4 Set3 + org.eclipse.jdt.core.manipulation + org.eclipse.jdt.launching + org.eclipse.jdt.ui + org.eclipse.jdt.debug
Set5 org.eclipse.jdt.* (all jdt plugins)

Use cases description

Transformations

Java2KDM

This transformation takes place at beginning of almost every modernization process of a Java legacy system, it comes just after the discovery of the Java model from Java projects (plugins) using the MoDisco Java Discoverer. This transformation generates a KDM (Knowledge Discovery Metamodel) model that defines common metadata required for deep semantic integration of application life-cycle management tools. Based on the previously generated model, this transformation generates a UML diagram in order to allow integrating KDM-compliant tools (i. e., discoverers) with UML-compliant tools (e.g. modelers, model transformation tools, code generators, etc.).

KDM2UML

Based on the previously generated model, this transformation generates a UML diagram in order to allow integrating KDM-compliant tools (i. e., discoverers) with UML-compliant tools (e.g. modelers, model transformation tools, code generators,etc.).

The transformations can be launched from the ant files contained in the build folder. Please note that the input and output models path should be edited before launching the transformation

Queries

Java code quality

This set of code quality transformations identify well-known anti-patterns in Java source code and fix the corresponding issues by a model transformation. The input format of the transformations is a model conforming to the Java metamodel. For a specification for the transformations we refer the reader to the implementations of these fixes in well-known codeanalysis tools like CheckStyle and PMD. References to the documentation for each code fix considered in this benchmark can be found here.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published