ProjectDefinition
What is the Zope Studio project and what will we be trying to accomplish? We'll keep this document up-to-date as we progress. Just in case you're wondering: This documentation structure is based on the Prince 2 project management methods.
Project Definition
Background
The current Zope object management environment is grounded in a central idea: anybody should be able to sit down at a web browser and manage Zope using standards. Competitive systems have taken a thick-client approach that focuses on productivity. Zope's management environment pays for the flexibility of an "Internet architecture" by being less productive than competitive "thick-client" environments.
Goals
The goal will be to create a management interface for Zope, built upon the Mozilla architecture. This interface should allow you to do the same things as the current HTML based Zope management interface, but should be more flexible, and more like a regular GUI application.
Reach
Zope Studio will be an extra product, an addition to Zope, not replace the current management interface.
Limitations
Zope Studio will be built on Mozilla, an Open Source web browser and web client framework. Replicating the functionality of the current management interface, but with more flexibility, will be priority.
Results
We will be building the following products:
- ZopeStudio
- The new IDE like interface.
- ZopeStudioServerComponent
- Supporting functionality on a managed server. It could be that some of this functionality should merge into the Zope core.
- ZopeStudioDocumentation
- Documentation for the Zope Studio Product.
- MozillaAppWidgets
- Possibly a new special purpose Mozilla skin defining widgets for 3rd party applications. Development is most likely going to take place in co-operation with Mozilla and other 3rd party developers.
Assumtions
Zope Studio will probably not need the use of C++ skills. Zope Studio can most probably be fully implemented using JavaScript alone. Also, we'll assume that any Python language additions to Mozilla will not be ready in time to be of use to the initial developent.
Relations with other projects
Need to clarify relationship with documentation and interfaces projects, and how and when functionality from the Zope Studio server component could be merged into core Zope
Zope Studio will be built upon Mozilla, and as such has a relationship with the Mozilla development effort.
Global Business Case
Global description on how Zope Studio fits in with the global Zope vision/targets. What are the interrelational expectations? This is the why of Zope Studio. This business case will be revisited at every stage to readjust, so Zope Studio will stay a relevant project
Quality Expectations
There will be some guidelines on coding standards. All Mozilla side code will be using Javascript 1.5, and development should loosely track the Mozilla development. We will set up some sessions to determine functionality groups, and priorities of functionality.
Acceptance Crtiteria
What functionality will be needed to make a Zope Studio version 1 will be determined after some initial functionality prioritisation has taken place. The priorities can of course later on still be shifted, but this should not happen without explicit discussion.
Risks log
There is a seperate page for RisksAndMitigation.