Web Tools Requirements 1.5
Eclipse Web Tools Project DRAFT 1.5 Plan
Revised draft January 24, 2006 (by Jochen Krause / WTP Requirements Group based on WTP Project 1.0 Plan and Eclipse Project DRAFT 3.2 Plan)
Please send comments about this draft plan to the firstname.lastname@example.org mailing list.
This document lays out the feature and API set for the next feature release of Eclipse Web Tools after 1.0, designated release 1.5. This document is a draft and is subject to change, we welcome all feedback.
Web Tools 1.5 will be compatible with Eclipse 3.2 Releases.
Plans do not materialize out of nowhere, nor are they entirely static. To ensure the planning process is transparent and open to the entire Eclipse community, we (the Eclipse Web Tools Requirement Group & the Web Tools PMC) post plans in an embryonic form and revise them throughout the release cycle.
The first part of the plan deals with the important matters of release deliverables, release milestones, target operating environments, and release-to-release compatibility. 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 two subprojects under the Eclipse Web Tools top-level project. The third subproject, JSF is not covered by this plan, as it is a technology project in the incubator state. Each plan item covers a feature or API that is to be added to Web Tools, or some aspect of Web Tools that is to be improved. Each plan item will have 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 Platform component; others may involve coordinated changes to several components; other may pervade the entire Platform. 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 current status of each plan item is noted:
High Priority plan item - A high priority plan item is one that we have decided to address for the release (committed).
Medium Priority plan item - A medium priority plan item is one that we are considering addressing for the release. Although we are actively investigating it, we are not yet in a position to commit to it, or to say that we won't be able to address it.
Low Priority plan item – A low priority plan item is one that we addressed for a release we will only address that item if one component has addressed all high and medium priority items
Deferred plan item - A reasonable proposal that will not make it in to this release for some reason is marked as deferred with a brief note as to why it was deferred. Deferred plan items may resurface as committed plan items at a later point.
The release deliverables have the same form as previous releases, namely:
- Source code release for Eclipse WTP Project, available as versions tagged "R1_5" in the Eclipse WTP Project
- CVS repository
- Eclipse WTP runtime binary and SDK download with all Eclipse pre-reqs (downloadable).
- Eclipse WTP runtime binary and SDK download (downloadable).
In addition, the Eclipse WTP runtime binary and SDK will be available as part of the "Callisto" update site.
Release milestones and release candidates
Release milestone occurring at roughly 6 week intervals in synchronisation with the Eclipse Platform milestone releases (starting early 2006 latest) and will be compatible with Eclipse 3.2 releases. See Callisto Simultaneous Release for the Eclipse Platform schedule.
The milestones and release candidates are:
* M4 - January 13, 2006 * M5 - March 3, 2006 (planned API freeeze) * M6/RC0 - April 14, 2006 (This is Feature Freeze except for JSF and Dali). (this 4/14 date is also called both RC0 and RC1 in Callisto plan). * RC1 - April 21, 2006 * RC2 - May 5, 2006 (tiny grace period where any safe fix can be made). * RC3 - May 19, 2006 (component lead approval required for all fixes) * RC4 - May 31, 2006 (component lead approval and wtp-dev notification required for all checkins) * Freeze June 14, 2006 (WTP "cooldown"; only PMC-approved, ship-stopping issues addressed hereafter) * RC5 - June 20, 2006 (PMC approval and adopter sign-off required for all fixes) * RC6 - June 28, 2006 Golden Master * Release - June 30, 2006 - WTP 1.5 Release (part of the "Callisto" joint release)
Target Operating Environments
Eclipse WTP is built on the Eclipse platform itself.
Most of the Eclipse WTP is "pure" Java™ code and has no direct dependence on the underlying operating system. The chief dependence is therefore on Eclipse. The 1.5 release of the Eclipse WTP Project is written and compiled against version 1.4 of the Java 2 Platform APIs, and targeted to run on version 1.4 and 5.0 (1.5) of the Java 2 Runtime Environment, Standard Edition.
Eclipse WTP is mainly tested and validated on Windows platforms, it should run on all platforms validated by the platform project:
Servers integrated into Eclipse WTP deliverables will be tested and validated on the same platforms listed above. Tests for other platforms will be relying on the community support.
The Eclipse WTP 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. Other language support, if any, will rely on the community support.
Compatibility with Other WTP Releases
- Full compatibility with 1.0 projects
Eclipse WTP deliverables will be compatible with Eclipse 3.2. No special attention will give for being compatible with previous Eclipse versions.
Eclipse WTP Subprojects
The Eclipse WTP consists of 3 subprojects. Each subproject is covered in its own section:
For the WST and JST subprojects items are listed, JSF is not covered as it currently is a technology project (in incubator state), the items listed reflect new features of the Web Tools Platform, or areas where existing features will be significantly reworked. Common goals are listed in the “Common goals” area.
TBD (Each item indicates the components likely affected by that work item (many items involve coordinated changes to several components). Numbers in parentheses link to bugzilla problem reports for that plan item)
Note that JSF and EJB (currently incubating in the technology project) will be present in WTP 1.5 in "provisional" status - APIs in these areas will be provisional, and the release number for these two areas of functionality should be considered "0.5" rather than the overall WTP release numbering of "1.5.". Users should expect API and tool refinements in these areas, with a likelihood for more rapid (and extensive) revisions than in the base WTP code.
- productization support 
- improve feature split Subsystem and Features document
- improve API coverage (convert additional provisional areas to APIs)
Web Standard Tools subproject
- Moving generic components to platform (common navigator , tabbed properties page )
- moving to the common undo stack (from the emf undo stack) 
Web Services Support
- WS Security [[deferred]
- upgrade to Axis 1.3 
- Axis 2.0 Support [optional item, help wanted]
- SOAP 1.2 Support
- Enhance validation framework [Proposal]
J2EE Standard Tools
- EJB3 (alignment with the DALI project - http://www.eclipse.org/dali/)
J2EE 1.5 Support (technlogy preview)
- EJB3 (by lightweight integration with the DALI project - http://www.eclipse.org/dali/)
- JSR 175 (Metadata) Support - only for new functionality: JSF, EJB3
- JSF Support (provided by the JSF subproject)
Web Services Support
- JSR 181 (Web Services) [optional item - help wanted]
- JSR 88 Support, Advanced Server Support for one/multiple open source J2EE server [[deferred]
- Restructure Generic Server Support RestructureGenericServerSupportProposal