2006-05-18
| Revision History | ||
|---|---|---|
| Revision 1.2 | 2006-05-18 | AW |
| Dropped UC11 from M1 (reason: Mozilla Core Bug #102699). | ||
| Revision 1.1 | 2006-05-11 | AW |
| Added features to reflect specification. | ||
| Revision 1.0 | 2006-05-05 | AW |
| First initial draft. | ||
Abstract
Describes the roadmap of the Yulup project.
Table of Contents
The project consists of three components: the front end, the back end, and a connector component. The front end component is divided into three variants: the editor integrated in a web browser, as a standalone editor, and a web-based, browser-independent variant. The back end can be run either locally on the same client as the front end, or on a remote host if the connector component is available.
The front end component is responsible for the handling the view. FRONTEND performs tasks like rendering the document, supplying user interaction facilities, etc. Note that all thre front ends can work with either a local BACKEND or a remote BACKEND.
Note that the FRONTEND UI is separated from the document views entirely. This makes it possible to implement the UI using either XUL (for Mozilla Platform based browsers), JavaScript or e.g. Flash.
The browser integrated variant of FRONTEND is a XUL widget which integrates seamlessly into web browsers based on the Mozilla Platform. BROWSER must be able to work with up-to-date versions of Firefox and SeaMonkey (formerly Mozilla Suite).
The standalone variant of the FRONTEND can be used as a standalone editor, independent of a web browser. Like the browser integrated version, STANDALONE is based on XUL.
The back end component comprises the controller and the model. BACKEND contains the application logic and performs tasks like text insertion/deletion, ID tagging, XSLT processing, validation, etc. BACKEND runs either locally on the client, or remote on a different network host if a remote connector (CONNECTOR) is available.
BACKEND is also responsible for discovering and instantiating a suitable CONNECTOR, if the back end runs on a remote host. This must be completely transparent to FRONTEND.
The schedule consists of multiple mile stones, which are defined by the set of features which are to be implemented by this point.
Note that we are using Rolling Wave Planning, on the granularity of milestones, i.e. only the next milestone is currently planned in detail. Future milestones are kept as planning packages.
UC2. Feature F3, Feature F4, Feature B3.1, Feature B3.2, Feature B3.3, Feature B4.1, Feature B4.2, Feature B4.3
UC3. Feature F1, Feature F4, Feature B1.1, Feature B4.1, Feature B4.2, Feature B4.3
UC5.
UC6. Feature F1, Feature F2, Feature B1.1, Feature B1.2, Feature B2.1, Feature B2.2
UC7. Feature F6, Feature F8, Feature F12, Feature F13, Feature B6.1, Feature B6.2, Feature B6.3, Feature B6.4, Feature B6.5, Feature B8, Feature B15, Feature B16, Feature B17
UC8. Feature F7, Feature F8, Feature F12, Feature F13, Feature B7.1, Feature B7.2, Feature B7.3.1, Feature B7.3.2.1, Feature B7.3.2.2, Feature B7.4.1, Feature B7.4.2.1, Feature B7.4.2.2, Feature B7.4.2.3, Feature B8, Feature B9.1, Feature B9.2, Feature B10.1, Feature B10.2, Feature B15, Feature B16, Feature B17
UC9. Feature F9, Feature B11.1.1, Feature B11.1.2, Feature B11.1.3, Feature B11.2.1, Feature B11.2.2, Feature B11.2.3, Feature B11.3.1, Feature B11.3.2, Feature B11.3.3, Feature B12
These are the features that are acutally going to be implemented. They are derived from the use cases, but filtered by alternatives and schedule.
FRONTEND
BROWSER
STANDALONE
None.
WEB
None.
BACKEND
CONNECTOR
None.
Table 1. Schedule M1 (UniZurich)
| Task | Date | Description |
|---|---|---|
| 1. Preliminary Meeting | April 21, 2006 | Requirements of University of Zurich. Discussion of alternative solutions. |
| Product Specification | May 02, 2006 - May 05, 2006 | Requirements engineering, architecture specification, roadmap, schedule. |
| Implementation of Base Functionality | May 08, 2006 - June 02, 2006 | Open document, edit in source mode (no WYSIWYG nor validation), save document. |
| Implementation of Validator | June 05, 2006 - June 09, 2006 | RelaxNG validation (XML Schema validation optional). |
| Implementation of WYSIWYG mode | June 12, 2006 - June 30, 2006 | Basic Processing Loop, XSLT. |
| Slack | July 03, 2006 - July 07, 2006 | Minimal change requests. |