Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Info
titleAbout this Page

This page is for information and comments on the proposed changes to the Sakai Development Process. A PDF of this content (which contains some additional information) is also available.

There were several webinars presenting this process:

2009 Dev Process Webinar 1 on Wednesday March 25, 2009

2009 Dev Process Webinar 2 on Wednesday April 1, 2009

A recording of this session is available.

A presentation was also made at the 10th Sakai conference in Boston. The slides are available for download. There is also a brief video interview of Michael Korcuska after this presentation.

Executive Summary

In response to demand from the community for more formalized development processes and a roadmap for Sakai development, the Sakai Foundation will use its resources to encourage the creation of:

...

Not all of the elements are fully developed and this document focuses mainly on the overall process and the product council, but work is ongoing to develop the full scheme. We want to publicize this 'manifesto' to gather comments and gauge support. Comments that help improve the plan are extremely important, but we are beginning to implement this approach as we seek suggestions for improvement.

You can read more about the Sakai Product Council here.

Background - Sakai Product Definition

...

  • Research and Development. This stage is where new ideas are generated and new technologies are tried. Many "contrib" projects in Sakai are essentially in this phase of the cycle for the purposes of this model. Other contrib projects are certainly much too mature to be considered R&D---they just choose to be independent of the Sakai release. The new model will allow this same sort of "independent" project.
  • Incubation.  This stage is for projects that intend to end up in a Sakai release. The goal in the incubation stage is to prove the desirability to the community, formalize project requirements, assemble a cross-institutional development team that includes functional expertise, build a project & maintenance plan and reduce development risks.
  • Product Development. Incubation should prove that a project is both desirable and feasible. The product development phase is essentially executing on that plan. It ends when the project becomes part of the Sakai release. We expect formal structures to ensure the reliable allocation of resources and that the operational decisions during the project are driven by end-user priorities.
  • Maintenance.  This phase is for bug fixes and feature enhancements to released product.
  • End of Life. Sooner or later things need to be taken out of the product. Or a new version needs to be built.

...

The degree of process formality differs with each stage.  In Research & Development, for example, a distributed model is best--one that doesn't require approval or decision-making from a central authority. We call this way of working "organic".   As ideas emerge from R&D that appear to have merit, it is crucial to increase communication about the project and begin to put together a more formal development team and plan. We call this "coordinated"--the idea is to bring together people who might want to work together to create a significant new capability in the Sakai release.  And once such a group of people is identified and their objectives clarified, a more traditional and formal project structure is beneficial. We call this "managed".

We also know that different institutions and individuals in Sakai will respond differently to each of these ways of getting work done. So the proposed model uses a different organizational strategy at each phase of development and therefore allows for different ways to engage in Sakai. While it keeps the ownership of Sakai's capabilities in the community, we believe it brings more oversight into the officially released product.
Finally, the Sakai Foundation's role in each of these phases will be different. The following table provides a summary of the style of work, the role of the foundation and the entry criteria for each stage.

Phase

...

Work

...

Style

Foundation

...

Role

Entry Criteria

Research and

...

Development

Organic

Infrastructure (svn, jira, confluence), communication and encouragement.

...

None. Anyone can have an R&D project.

Incubation

Coordinated

...

Infrastructure, communication & potential direct support from foundation resources; particularly in matchmaking institutional resources and communicating requirements of later stages.

...

Low. Anyone can declare that they would like their project to enter incubation. Foundation resources will not be able to support every project & a method will need to be established for any such prioritization.

Product

...

Development

Managed

Infrastructure, communication & potential direct support from foundation resources. Facilitation of the decision to include project outputs in a release.

...

Moderate: A strong plan & adequate resources. Transition to next phase has high barriers, so plan to attain those criteria is important.

Release

...

Maintenance

Managed or Coordinated (TBD)

...

Infrastructure, communication & potential support from foundation resources. Possible management of a centralized maintenance team.

...

Product Council. A small group that will decide if a project is ready be in the release. See below for details.

End of

...

Life

Coordinated or

...

Managed

Infrastructure, communication & potential support from foundation resources.

...

Product Council decision.

We feel strongly that this model is achievable by the Sakai community and will lead to the desired outcomes of an end-user driven set of development priorities, a more predictable and efficient development process and a useful roadmap of Sakai development. However, it will only work with the enthusiastic engagement of the community - we need your help.

...

To form the product council, the Sakai Board will communicate the role and desired contribution of the council. The Board will be open to suggestions and nominations from the community, but will seek to quickly identify the initial product council members. The product council and the Board will together identify a process to evolve council membership over time.

You can read more about the Product Council here.