Skip to main content

Project administration which supports the eXtreme Programming methodology.

Project description

eXtreme Management Tool

This application provides project administration which supports the eXtreme Programming Methodology.


Version 2.1 works best on Plone 3, but adds rough support for Plone 4. Several pages are ugly there. The original authors at Zest Software are no longer actively using this product and are not interested in updating it fully for Plone 4. But others are stepping up. Contact us if you want to help. So handle with care on Plone 4, but on Plone 3 you should be fine.

Version 2.0 and lower only work on Plone 3.

Content Types

  • Project Multiple projects can be added by projectmanagers. For each project, iterations and stories can be added by both the customers and employees.

  • Iteration The project will be planned with iterations. An iteration is a period of 1 to 3 weeks in which a number of stories will be implemented.

  • Offer Contains the stories that a customer wants in this Project. It is used as a way to bundle the wishes of the client and give a first indication of the size of a project.

  • Story The customer can define new features by describing these feature in a story.

  • Task The employees can estimate the story by defining tasks.

  • Booking While working on tasks the employees can track time and easily book those at the end of the day.


Customers can create stories and submit them for estimating. The employees will find pending stories in the review portlet and provide a rough estimate and change the state by using the ‘mark estimated’ transition.

The customers are able to prioritize the stories based on value for the organisation and the rough estimate. When the team has committed to the number of stories, they can start writing tasks and provide estimates for each task.

After all tasks have been written and estimated the iteration can be started by following the transition ‘start working’. This will set the status of all tasks to ‘todo’, so employees will see their tasks in the todo list.

Activating tasks will send notification email to the assignees. When an iteration is activated, this could result in quite some mails to be sent. To prevent this from slowing down the activation of the iteration, one could consider adding MaildropHost in the instance.

When completing all tasks in a story the story itself will be set to ‘completed’.

Time Tracker

The time tracker allows the employees to track their work in real time. You can select a few tasks to work on from the list of assigned tasks. The tracker will display an input field for each task. Instead of using the punch-in, punch-out system we choose to start working by just starting the timer. After you have finished a task you describe your work in the input field and hit the ‘track’ button

The time spent on the task will be registered with your description and the timer will reset itself so you can start on the next task.

In case you get interrupted by a phone call or a colleague asking for help, you simply provide a quick note on what you were doing in the task input. Again this will reset the timer. At the bottom of the tracker an input field for unassigned tasks is available, to track interruptions like these. If you register the time here, you can later hit the ‘Add to task’ button, which allows you to browse through all open tasks and book the time there.

At the end of the day you can expand each task do any last changes to either the description or the time. In case you didn’t finish the task yet you can click the ‘book’ button to add a booking to the task with the total time. When you did finish the task you can click ‘book and close’, this will change the state of the task to completed.

Release Plan

The Release Plan provides the customer with an “Overall Plan”. At the start of a project all stories are added to the project. Depending on the velocity of the development team and the size and number of stories the expected number of iterations can be added. The customer can than prioritize the user stories using drag and drop and assign them to iterations.

Iteration Roundup

When the iteration is finished, some stories might not be completed. Using the close iteration option from the ‘action’ dropdown allows you to select or create the next iteration and copy over all unfinished stories, including unfinished tasks.


Make a backup of your site. You can never be too careful.

We strongly advise using buildout; it is certainly not impossibly to get it to work in other ways but this is not supported. Just add Products.eXtremeManagement in the main eggs section of your buildout.cfg.

Important: you need to install egenix-mx-base from Egenix. Either use the installers provided by them or use your own system tools (apt-get install python-egenix-mxdatetime works on Debian/Ubuntu) or use easy_install egenix-mx-base. On Windows the installers seem to be the easiest way. For mac users, do: sudo easy_install-2.4 egenix-mx-base Then open python terminal: python2.4 >>import mx.DateTime

Then restart your zope instance and use the Add/Remove products page in Site Setup to install eXtremeManagement.


For reference, here are the dependencies:

  • Plone: 3.1 or 3.2 with Zope 2.10.

  • Some xm.* and kss.* packages and pygooglechart (pulled in automatically via

  • Poi with its dependencies. Get a bundle with products fit for the Plone version you are using:

    With Poi installed, eXtremeManagement allows you to add an issue tracker in a project. And you can add PoiTasks to Stories, which lets you easily link to existing issues in the tracker of your project.

  • The mx.DateTime library from Egenix; see the Installation instructions above.

Optional extra

If you have a project management website you should seriously consider installing the xm.theme package. This gets rid of part of the default Plone UI so it fits a project management site more. Try this out locally before you use it in production. Note that this may become a real dependency in newer versions of Products.eXtremeManagement

Conflicting Products

  • eXtremeManagement is known not to work with ZEPP/PlonePM, another project management product. It uses a Task content type, just like eXtremeManagement does. This causes problems. If you want to try out both, do that in separate Zope instances.

  • Same is true for PloneBooking.


Jean-Paul Ladage <>

Maurits van Rees <>

Mirella van Teulingen <>

Jodok Batlogg <>

Harald Friessnegger <>

Daniel Nouri <>

Joris Slob <>

Mark van Lent <>

Hans-Peter Locher <>

Stefan Eletzhofer <>

Reinout van Rees <>

Jens Klein <>


2.1 (2016-08-01)

  • Minor package cleanup and pep8. Added compatibility note in readme. Briefly: works best in Plone 3. [maurits]

2.1a9 (2014-10-16)

2.1a8 (2014-08-04)

  • Add statuscheck page for all billable closed and invoiced iterations and list them if they still have open stories or tasks. Add this in the management portlet. [maurits]

  • Check status of iterations that are to be invoiced. In that list of iterations, warn when there are still open stories or tasks. [maurits]

2.1a7 (2014-04-07)

2.1a6 (2014-03-31)

2.1a5 (2013-12-06)

  • Do not send task emails to non-employees. We may have a customer as assignee of a PoiTask. The ticket is assigned to her, but as she is an employee, she should not get an email that she can work on the task. [maurits]

2.1a4 (2013-11-26)

  • Fix longstanding bug in reloading of task-form provider. When doing a transition on a story, we now refresh the ‘add task’ part. [maurits]

2.1a3 (2012-09-12)

2.1a2 (2011-02-03)

  • Added upgrade step to recatalog the Stories, as their size_estimate in the catalog was broken when using 2.0. [maurits]

  • Get KSS portal status messages translated correctly again in Plone 3. Not used in Plone 4; not sure yet if this is needed there. [maurits]

  • In the employees_overview also list members that are Employee because they are in a group that has the Employee role. Patch by Yuri and Mauro. [maurits]

  • In the employees_overview make the Employee name a link to see the task_overview for that Employee. Patch by Yuri and Mauro. [maurits]

2.1a1 (2010-09-24)

  • Added Plone 4 compatibility, while keeping Plone 3 compatibility. May have a few rough edges and has two failing tests on Plone 4 (including one in xm.tracker), so use with care. [maurits]

  • Avoid TraversalError in the xm.tracker when taskbrain2dict throws an AttributeError for a brain that fails getting its object. [maurits]

For older changes, see docs/HISTORY.txt.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Products.eXtremeManagement-2.1.tar.gz (350.2 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page