Project Plan For Sphinx, version 0.8.0

Introduction

Sphinx is an open source project under the Eclipse Modeling project to provide an extensible platform that eases the creation of integrated modeling tool environments supporting individual or multiple modeling languages (which can be UML-based or native DSLs) and has a particular focus on industrial strength and interoperability.

This document lays out the feature and API set for the Sphinx release 0.8.0. Comments on this plan can be can be posted on the forum or sent to the mailing list .

Release Deliverables

This release will be delivered via a p2 repository including SDK (runtime, sources and documentation), non-SDK (runtime only), examples and test utilities.

Table of Contents

Release Milestones

Sphinx milestones follow the Eclipse release milestones by an offset of +3 as set by the Kepler release schedule. This table lists all completed milestones and planned releases:

M311/20/2013
M412/25/2013
M502/05/2014
M603/19/2014
M705/14/2014
RC105/28/2014
RC206/04/2014
RC306/11/2014
RC406/18/2014
0.8.0 Final06/25/2014

Table of Contents

Target Environments

The Sphinx 0.8 targets a defined set of other Eclipse components (e.g. platform, EMF, etc.) originating from the following release trains:

  • Kepler (Eclipse 4.3)
  • Luna (Eclipse 4.4)

Sphinx builds and testing will always be based on latest available milestone build or service release of Eclipse (e.g. Eclipse 4.4M3, 4.4.1).

Sphinx will work with Java 5 or higher.

Internationalization

The Sphinx plug-ins are prepared for internalization using the usual Eclipse plugin.properties mechanism. Default language is English. Currently no other translations exist.

Table of Contents

Themes and Priorities

A list of project goals and agreed upon implementation time frames is found in this document. For the milestones listed in this document, a set of overall themes is used to indicate what major set of functionalities is expected to be the focus of each. These themes are presented below, while the goals of the associated Bugzilla entries are available for more detailed information.

Reusability, Interoperability and Performance

Initially driven by automotive functionality as such is generic and the Sphinx is meant to enable the reuse of this infrastructure for model-driven tool environments in others domains like aerospace, finance, etc.

Thus, the interoperability of sereral model-driven tool environments based on different Domain-Specific Languages (DSLs) will be facilitated by the Sphinx platform.

Sphinx already includes many optimizations to improve the runtime performance when it comes to handling and processing bigger models (e.g., file content type detection, model loading or unloading). Nevertheless, further and potentially quite significant performance improvements could be achieved by introducing a model indexing service in Sphinx and using index-backed queries to perform runtime-intensive operations on EMF models (e.g., proxy resolution, model validation, deletion of model elements).

Table of Contents

view raw xml of project plan
from project meta-data key "projectplanurl"