Project Plan For modeling, version 1.0.0
This document lays out the feature and API set for the 2009 release of the Eclipse Modeling Project, to coincide with the Galileo release train. This "release" of the Modeling project primarily represents a roll-up of constituent project features and API, although there are some organizational themes called out at the top-level. With that, it is expected that Modeling projects will inherit elements of this plan in order to simplify their own, as was done for the Modeling project charter as it relates to the Standard Charter.
This project plan and associated requirements are the result of an open and transparent process and includes input from those who have expressed an interest in the project. That said, the success of the project and its deliverables is soley dependent upon the contributions from its community membership. If you are interested in contributing to the project in the delivery of its stated goals, you are more than welcome!
The first part of the plan deals with the important matters of release deliverables, release milestones, target operating environments, compatibilities and dependencies. These are all things that need to be clear for any release, even if no features were to change.
The remainder of the plan consists of plan items for the project. Each plan item covers a feature or API that is to be added, or some aspect that is to be improved. Each plan item has its own entry in the Eclipse bugzilla database, with a title and a concise summary (usually a single paragraph) that explains the work item at a suitably high enough level so that everyone can readily understand what the work item is without having to understand the nitty-gritty detail.
Not all plan items represent the same amount of work; some may be quite large, others, quite small. Some plan items may involve work that is localized to a single subsystem; others may involve coordinated changes across several projects within the same top-level project; and others may involve coordination with other top-level projects. Although some plan items are for work that is more pressing that others, the plan items appear in no particular order.
With the previous release as the starting point, this is the plan for how we will enhance and improve it. Fixing bugs, improving test coverage, documentation, examples, performance tuning, usability, etc. are considered routine ongoing maintenance activities and are not included in this plan unless they would also involve a significant change to the API or feature set, or involve a significant amount of work. The intent of the plan is to account for all interesting feature work.
The release deliverables have the same form as is found in most Eclipse projects, namely:
- Source code release, available as versions tagged appropriately in the project's CVS repository (e.g. "R2_0").
- SDK distribution (includes runtime and SDK components, with sources, examples, and documentation) (downloadable and update site).
- Runtime binary distribution (downloadable and update site).
- Test distribution (downloadable and update site).
Release milestone occurring at roughly 6 week intervals and follow the Platform milestone releases by approximately 3 weeks; that is, until the final 3.5 release of the Platform, upon which Galileo and other projects will release simultaneously.
The following projects/components are included in the Modeling contribution to the Galileo simultaneous release and are linked to their respective plans:
- Eclipse Modeling Framework (EMF)
- Graphical Modeling Framework (GMF)
- Model Development Tools (MDT)
- Model-to-Model Transformation (M2M)
- Model-to-Text Transformation (M2T)
- Textual Modeling Framework (TMF)
- Eclipse Modeling Framework Technology (EMFT)
- Modeling Amalgamation Project (Amalgam)
Additionally, the Modeling project contains the following projects/components:
In order to remain current, each Eclipse release targets reasonably current versions of the underlying operating environments. The Modeling project depends upon on the Platform and other projects, which are mostly "pure" Java. The 3.5 release of the Eclipse Platform Project is written and compiled against version 1.4 of the Java Platform APIs, and targeted to run on version 1.4 of the Java Runtime Environment, Standard Edition. Eclipse Platform SDK 3.5 will be tested and validated on a number of reference platforms. Modeling includes additional projects which currently require Java 5, such as EMF. Therefore, Modeling will be tested and validated against a subset of those listed for the platform, as outlined in their individual project plans. Those available will be presented on the Modeling download site.
The Eclipse Platform is designed as the basis for internationalized products. The user interface elements provided by the Eclipse SDK components, including dialogs and error messages, are externalized. The English strings are provided as the default resource bundles. As a result, the Galileo will provide English strings in its default bundles and be localized to a subset of those locales offered by the Babel project. This plan will be updated to indicate which locales will be provided and the time frame for availability.
As Modeling is a collection of projects, each with its own defined compatibility policy, look to each plan linked above for details.
The themes and priorites for Modeling projects are listed on their respective project plans. Use the links above to access each plan.