Eclipse is probably best known as a Java IDE, but it is more: it is an IDE framework, a tools framework, an open source project, a community, an eco-system, and a foundation.

EMF Refactor

EMF Refactor is an Eclipse open source tool environment conveniently supporting a structured model quality assurance process. In particular, EMF Refactor supports metrics reporting, smell detection, and refactoring for models being based on the Eclipse Modeling Framework, a widely used open source technology in model-based software development.

The following major functionalities are provided:

  • User-friendly support for project-specific configurations of model metrics, smells, and refactorings.
  • Calculation of model metrics, detection of model smells, and application of model refactorings.
  • Generation of model metrics and smell detection reports.
  • Suggestion of suitable refactorings in case of specific smell occurrences.
  • Provision of suitable information in cases where new model smells come in by applying a certain refactoring.
  • Support for the implementation of new model metrics, smells, and refactorings.

The tool environment mainly consists of two kinds of modules: For calculating model metrics, detecting smells, and executing refactorings there is an application module each. Similarly there are three specification modules for generating metrics, smell, and refactoring plugins containing Java code that can be used by the corresponding application module. Details on the design of EMF Refactor can be found here: EMF Refactor Architecture.


This component is currently in its Validation (Incubation) Phase.