Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

MoDisco/IndigoReview

< To: MDT

LogoMoDiscoSmall.jpg
MoDisco
Website
Download
Community
Mailing ListForums
Bugzilla
Open
Help Wanted
Bug Day
Contribute
Browse SourceProject Set File

This page provides the required Docuware for the MoDisco v0.9.0 Release Review, as part of the upcoming Indigo Simultaneous Release.

Overview

MoDisco stands for Model Discovery.
It provides a generic and extensible MDE framework to support different reverse engineering scenarios such as modernization, quality assurance, retro-documentation, architecture improvement, etc.
Thus, the focus of MoDisco is on Model Driven Reverse Engineering.
It is an Eclipse Model Development Tools (MDT) project, inside the Eclipse Modeling Project (EMP).

Features

In this release

For the second time, MoDisco is part of an Eclipse Simultaneous Release. The different features provided by MoDisco v0.9.0, as part of Indigo, are of two categories.

Infrastructure

  • The EMF reference implementation of the core of Abstract Syntax Tree Metamodel (ASTM, an OMG/ADM standard) (NEW);
  • The EMF reference implementation of Knowledge Discovery Metamodel (KDM, an OMG/ADM standard), corresponding discoverers, a KDM extension for weaving models of code with models of physical resources, a transformation to UML2;
  • The EMF reference implementation of Software Metrics Metamodel (SMM, an OMG/ADM standard);
  • The customizable Model Browser for more efficiently navigating large and complex models discovered from legacy systems;
  • The Discovery Manager for fastest integration of new or existing discoverers;
  • The Discovery Workflow for more easily building discovery chains (including discoverers and transformations);
  • The Query Manager for allowing language-independent querying on models of legacy systems;
  • The Facet Manager for dynamically extending the metamodels used at different steps of the processes;
  • The Metrics Visualization Builder for automatically generating HTML, SVG or Excel representations of metrics stored in a model.

Technologies

  • Java
    • The EMF implementation of a metamodel for the full Java language;
    • The corresponding specific Model Browser customization;
    • The complete discoverer for automatically creating Java models from Java source code;
    • An additional discoverer for automatically creating composite models mixing models of Java source code and models of Java physical resources (NEW);
    • The complete generator for automatically creating Java source code from Java models;
    • The transformation from Java models to KDM models.
  • JEE (NEW)
    • The EMF implementation of a metamodel for JSP;
    • The corresponding specific Model Browser customization;
    • The complete discoverer for automatically creating JSP models from JSP source code;
    • A complete discoverer for automatically creating models from web.xml files and ejb-jar.xml (multiple versions);
    • Facilities for developing new discoverers for project deployment descriptor files;
    • A library of queries and facets based on the Java metamodel but dedicated to the extraction of JEE information.
  • XML
    • The EMF implementation of a metamodel for XML (W3C definition);
    • The corresponding specific Model Browser customization;
    • The complete discoverer for automatically creating XML models from XML documents/files.

Accordance with project plan themes and priorities

  • Provide the required service and support on the available components in order to ensure the quality and reliability of the platform.
    • Infrastructure layer (generic components)
    • Technologies & Use Cases layers (technology-specific components)
  • Perform the refactoring of the Discovery Manager to enhance the capabilities of the overall platform, as well as its usability.
  • Extend the support to other legacy technologies (with the new support for JSP and several JEE frameworks).

See http://www.eclipse.org/projects/project-plan.php?projectid=modeling.mdt.modisco

Non-Code Aspects

The complete MoDisco documentation is available from the MoDisco Wiki page:

  • Project's general information;
  • Reference documentation on the various components;
  • Version specific information;
  • Additional information on available use cases, as well as incubation and deprecated components;
  • Complementary resources and useful links.

The Help plugins are automatically generated from the content of the Wiki.
The MoDisco website provides a direct access to all the related resources.

APIs

The current MoDisco API situation is detailed in this report. The MoDisco team will work at fixing the corresponding bugs #344241, #344243 and #344244 in the coming MoDisco Indigo SR builds.

Architecture

The MoDisco architecture is detailed in http://wiki.eclipse.org/MoDisco/Architecture.

Testing & Packaging

MoDisco uses a Buckminster-based system to build and promote versions.
Each new build is tested at least with Eclipse 3.7 (Indigo).
Core plugins are provided with dedicated test plugins checking their valid behavior.
MoDisco is integrated into the Indigo Release Train since the beginning.
It is also part of the Amalgamation Modeling Package for Indigo.

Tool Usability

MoDisco is used for building Model Driven Reverse Engineering solutions to different scenarios such as:

  • Legacy Modernization
  • Quality Assurance
  • Retro-documentation
  • Architecture Improvement
  • Etc

End-of-Life

Some components from the MoDisco previous release builds are now deprecated.

Bugzilla

  • Bugs (snapshot taken on the 24th of May 2011):

MoDisco IndigoReview BugReport.PNG

  • Enhancement requests (snapshot taken on the 24th of May 2011):

MoDisco IndigoReview EnhancementReport.PNG

Standards

The MoDisco project is working in close collaboration with the OMG Architecture Driven Modernization (ADM) Task Force, which results in the EMF implementation of the Abstract Syntax Tree Metamodel (ASTM), Knowledge Discovery Metamodel (KDM) and Software Metrics Metamodel (SMM) specifications.

UI Usability

MDT MoDisco intends to conform to the User Interface Guidelines. The missing items to be fixed in the next version are summarized in http://wiki.eclipse.org/MoDisco/UI_Accessibility_Issues.

Schedule

MDT MoDisco is a "+3" project in the simultaneous release

M1	08/18/2010
M2	09/29/2010
M3	11/10/2010
M4	12/15/2010
M5	02/02/2011	
M6	03/16/2011	API freeze
M7	05/04/2011	Feature Freeze
RC1	05/18/2011	
RC2	05/25/2011	
RC3	06/01/2011	
RC4	06/08/2011		
Indigo	06/09/2011	

Communities

Committer Changes

Gregoire Dupe (Mia-Software) has replaced Frederic Madiot as co-leader of the project. Frederic Madiot has moved from Mia-Software to Obeo. Gabriel Barbier has moved from Mia-Software to Thales.

IP Issues

The Eclipse IP Process has been strictly followed and all plugins contain the appropriate about.html and license files.
The MoDisco IP Log is available from http://www.eclipse.org/projects/ip_log.php?projectid=modeling.mdt.modisco

  • Some third-party libraries are used (cf. corresponding validated CQs)

All MoDisco content is released under EPL.

Project Plan

The current project plan is available from http://www.eclipse.org/projects/project-plan.php?projectid=modeling.mdt.modisco.
Graduating to v1.0.0 for the Juno Simultaneous Release is already planned. This next MoDisco version will imply:

  • Upgrades on the various existing components (e.g. bug fixing, performance increase, etc);
  • Final migration of the Facet and Customization mechanisms in the EMFT-EMF Facet project.

Back to the top