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

MDT/OCL/Reviews/Indigo

< MDT‎ | OCL

This page provides the required docuware for the Eclipse (MDT) OCL 3.1.0 Release Review, as part of the upcoming Indigo Simultaneous Release.

Overview

Eclipse OCL is an implementation of the Object Constraint Language (OCL) 2.3 OMG standard for EMF-based models.

The Eclipse OCL component provides the following capabilities to support OCL integration:

  • Defines APIs for parsing and evaluating OCL constraints and queries on EMF models.
  • Defines an Ecore implementation of the OCL abstract syntax model, including support for serialization of parsed OCL expressions.
  • Provides a Visitor API for analyzing/transforming the AST model of OCL expressions.
  • Provides an extensibility API for clients to customize the parsing and evaluation environments used by the parser.

The accompanying examples provide

  • A Console for interactive evaluation of OCL expression on models.

The accompanying examples also provide a preview of Juno functionality

  • (New) An Impact Analyzer to support analysis and optimised re-evaluation
  • An Xtext editor for OCL expressions (used by Papyrus and the Console)
  • An Xtext editor for OCL embedded within Ecore (OCLinEcore)
  • An Xtext editor for OCL documents complemementing meta-models (Complete OCL)
  • An Xtext editor for the OCL 'Standard' Library model
  • (New) A UML-aligned OCL meta-model supporting templates and reflection
  • (New) An OCL evaluator exploiting the extensible OCL library model
  • (New) An Xtext Console for interactive evaluation of OCL expression on models.

Features

New in this release

  • Elimination of many deviations from the OMG standard.
  • An Impact Analyzer to support analysis and optimised re-evaluation
  • OCL support for the EMF Query Delegate API
  • Semantic validation, hover text and navigation in the OCL editors
  • UML-aligned models and extensible evaluation integrated with the editors

See http://wiki.eclipse.org/MDT/OCL/New_and_Noteworthy/Indigo.

Accordance with project plan themes and priorities

  • Compliance - 32 committed, 1 deferred
  • Release Currency - 2 committed, 1 deferred
  • Usability - 16 committed, 14 deferred
  • Specification - 10 committed, 12 deferred

See http://www.eclipse.org/projects/project-plan.php?planurl=http://www.eclipse.org/modeling/mdt/ocl/project-info/plan_indigo.xml&component=OCL.

Non-Code Aspects

APIs

This release has not made breaking changes to the API.

  • The project lead certifies that the requirements for Eclipse Quality APIs have been met for this release.
  • Metamodel definitions and corresponding implementations are considered APIs.
  • Non-API classes are separated from the exposed API through an internal package in the namespace.
  • API Tooling is activated on all plugins to mark exceptions within the exposed API.

Architecture

  • OCL model-based library approach is in progress.
  • Extensibility features in Indigo are inherited from Helios.

Tool Usability

  • OCL is used for model validation as a constraint definition language as well as in downstream projects like QVTO where it is used for model navigation and extended for model updates.
  • OCL-based annotations in Ecore models increase applications of OCL.
  • OCL editors increase the usability of OCL.

Testing & Packaging

Eclipse OCL 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.
Eclipse OCL is part of the Indigo Release Train.

End-of-Life

A few API have been deprecated. See migration guide: http://wiki.eclipse.org/MDT/OCL/MDT-OCL_3.1.0_Migration_Guide.

Bugzilla

Bugzilla snapshot for Indigo as of 27 May 2010:

Bugzilla snapshot Indigo.png

Standards

Eclipse (MDT) OCL 3.1 is mostly compliant with [OCL OMG 2.3 standard | http://www.omg.org/technology/documents/modeling_spec_catalog.htm#OCL].

UI Usability

Eclipse (MDT) OCL is conforming to the user interface guidelines.

Schedule

Eclipse (MDT) OCL is a “+1” component in the simultaneous release.

3.1.0M1  Monday 18 August 2010
3.1.0M2  Monday 27 September 2010	
3.1.0M3  Monday 8 November 2010	
3.1.0M4  Monday 13 December 2010	
3.1.0M5  Monday 31 January 2011	
3.1.0M6  Monday 14 March 2011	API freeze
3.1.0M7  Monday 2 May 2011	Feature Freeze
3.1.0RC1 Monday 16 May 2011	
3.1.0RC2 Monday 23 May 2011	
3.1.0RC3 Monday 30 May 2011	
3.1.0RC4 Monday 6 June 2011	
Indigo   Monday 22 June 2011

Communities

  • Interaction in Bugzilla
  • Activity on the OCL newsgroup: roughly 550 messages from June 2010 to May 2011
  • Collaboration with other projects at Eclipse

Committer Changes

  • Axel Uhl joined and contributed the Impact Analyzer
  • Laurent Goubet was removed as inactive
  • Aleksandr Igdalov was removed as inactive

IP Issues

The Eclipse (MDT) OCL component leadership verifies that:

  • the about files and use licenses are in place as per the Guidelines to Legal Documentation.
  • all contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy.
  • all significant contributions have been reviewed by the Foundation's legal staff.
  • all non-Committer code contributions, including third-party libraries, have been documented in the release and reviewed by the Foundation's legal staff.
  • all Contribution Questionnaires have been completed.
  • the "provider" field of each plug-in is set to "Eclipse Modeling Project“.
  • the "copyright" field of each feature is set to the copyright owner (the Eclipse Foundation is rarely the copyright owner).
  • any third-party logos or trademarks included in the distribution (icons, help file logos, etc) have been licensed under the EPL.
  • any fonts or similar third-party images included in the distribution (e.g. in PDF or EPS files) have been licensed under the EPL.

The Eclipse (MDT) OCL Project IP log in located at http://www.eclipse.org/projects/ip_log.php?projectid=modeling.mdt.ocl

Project Plan

The current project plan is available from http://www.eclipse.org/projects/project-plan.php?planurl=http://www.eclipse.org/modeling/mdt/ocl/project-info/plan_indigo.xml&component=OCL.

Draft development plan for Eclipse (MDT) OCL 3.2.0 is not yet available.

Back to the top