Oxfam GB Backs Open Source For Content Management
First project to grow an Open Source enterprise class CMS. ZEA and Reflab started working with Oxfam in 2004, aiming to develope on Plone an advanced multilingual CMS.
In January 2004 Oxfam International, a large UK based NGO, awarded a contract to Zope Europe Association. The purpose was to develop on Plone a multilingual CMS replacing the existing publication system. It integrates intranet capabilities for 2000 content contributors distributed worldwide. Requirements included the development of new generic open source modules and the integration of new functionalities within existing modules. Working with the creators of the technology enabled the projects development to be fully integrated in the core technology.
The main functionalities are: multilingual content (English, French, Spanish and Portuguese), versioning management and multi-site publishing. In its current phase, the infrastructure was designed for intranet of 2000 users and to handle 200 000 documents in multiple languages. The customers website counts 750 000 requests per days.
Plone was used as the CMS. Paul Everitt, co-founder of Zope, managed the project. Having the two founders of Plone involved in the Zope Europe consortium and project improved the process. The project also funded the creation of the following open source products:
- Kupu, the OSCOM.org project for a common in-browser rich editor.
- LinguaPlone, the Plone system for productively managing multilingual content in custom content types and integrating language preferences in search-based sites.
- PloneVersioning, a content versioning system for Plone.
- PloneMultisite, a single-repository approach to re-purposing content across multiple published Plone sites.
Methodologies and tools involved
This CMS project used an agile process with multiple brief milestones, each with working deliverables. At the onset of the project, the tender requirements were entered into an issue tracker and assigned control information: priority, effort, and which milestone for the work.
Each milestone was then defined by the contract deliverables to be satisfied in that milestone. Tasks were created and assigned within the milestone. Test scripts were written at the beginning of the milestone to define “acceptance” of each requirement. Each of the requirement and task issues, as well as bug reports, were tracked using an online tool that provided nightly reports and email discussion capabilities, as well as an audit history on all changes to any issue.
General discussions were managed using a mailing list. Requirements documents, screen mockups, and planning materials were shared using the Plone.
The customer asked that the maximum amount of work product be transitioned to the open source community. This approach provided durable impact: the Plone and Zope communities would support and enhance the software and the customer would not have a maintenance burden.
This required collaboration with the open source community. Since the project had the founders of these projects and key contributors involved in the work product, many of these goals were achieved. Without having the open source leaders involved, durable impact might have been improbable. Also, the project operated with some of the same approaches to test-driven quality as the open source community uses, thus easing compatibility.
Notes:
Zope Europe Association (ZEA) is an international network of companies involved in the development and business of Zope and Plone. ZEA delivers content management system (CMS) deployments and manages large Zope-based projects.
ZEA counts on numerous talents, including international open source personalities as Paul Everitt - co-founder of Zope, founder and product leader of ZEA - Alexander Limi and Alan Runyan - co-founders of Plone.
Reflab is the italian partner of ZEA and is involved in many ZEA projects worldwide.
See: www.zope-europe.org