As we're planning to start quite a lot of work shortly in a sandbox, but with the intend to later merge this into the 'mainstream' Rave life-cycle, I think this is a good moment to further discuss how to track and manage sandbox projects from a (P)PMC perspective.

Right now we have two sandbox 'projects': rave-extensions (with 2 sub modules) and science-gateways (with 4 sub modules).

So far, some (but definitely not all) activities in these sandboxes have been recorded in JIRA, but with no tracking/marking of any status, version(s) or related components. IMO this is not preferred as it kind of 'pollutes' JIRA and makes it more difficult to assess the status of these sandbox projects.

I think we can improve on this and that the (P)PMC should take more responsibility or at least oversight on the ongoing work in these sandboxes.

First of all, IMO these sandbox projects should have a specific goal and intended lifespan. As being part of our SVN tree, the PMC is formally responsible of its content and its relevance to the project and an open-ended or indefinite scope isn't really meaningful.

As a minimum we can at least track the ongoing work in JIRA and label it appropriately.

One way we might do this is using of the JIRA 'Component' classification.
My proposal is to define a separate Component for each sandbox (module) and include a sandbox- prefix to separate them from 'endorsed' components, like:

  sandbox-extension-sso
  sandbox-vanilla-extension
  sandbox-science-gateways-gadgets
  sandbox-science-gateways-gridship-extensions
  ...

Furthermore, we can mark the non-versionable characteristic of these sandbox components and thereby also prevent end up with endless un-versioned issues. As JIRA versions are plain strings, we can simply introduce a 'sandbox' version and use that for all JIRA issues concerning these sandbox projects. One 'sandbox' version should suffice IMO as there shouldn't be sandbox 'releases' anyway.

And maybe we should even use this 'sandbox' version for artifacts within the sandbox, e.g. rave-vanilla-extension-sandbox-SNAPSHOT instead of rave-vanilla-extension-0.10-SNAPSHOT. That'll make it very clear sandbox projects are not endorsed nor life-cycle managed. Once a sandbox project becomes really useful this will also help 'drive' it out of the sandbox, just to get rid of the annoying 'sandbox' label ;)

And if a sandbox project doesn't build up traction, gets too far out-of-sync with or behind the main project, or its testing/exploration purpose has been fulfilled, sandbox projects probably should either be 'retired' (moved to a rave 'attic' svn folder?) or else simply deleted. I definitely don't like sandbox projects (like I do see in other TLP projects) which are abandoned and left to 'rot'.

Assuming lazy consensus on the JIRA part of this proposal as it is easily revertible at any rate, I'll add to JIRA a 'sandbox' version and new 'sandbox-' prefixed components for the new content services proposal. And if there is general agreement on this, we should do the same for the other sandbox projects.

WDYT?

Ate

Reply via email to