Project Lifecycle
IMPORTANT: This 2013 document is a DRAFT and should not be considered final or official in any way.
Introduction
Credit: Much of this proposed project lifecycle has been initially adapted from the Eclipse Development Process.
The OpenMRS community is the sum of all of its constituent projects, including the OpenMRS core platform, add-on modules, distributions, and other tools and services used by the community. One of the OpenMRS community values is stated as, "We are open, honest, and transparent in both our processes and our software." In accordance with that value, we have adopted a stated process of how projects in the community can be created, how they can grow, and how they can be managed to help realize our values, mission, and vision. This project lifecycle process is intended to help projects:
- Communicate their project plans and feature roadmaps in a timely, open, and transparent way
- Create software that helps move the OpenMRS platform forward
- Provide technology tools that help meet the values, mission, and vision of OpenMRS
Phases of Projects
Pre-Proposal
This is not really a project phase per se, but describes the ideas that exist in the minds of one or more people in the OpenMRS community before they are documented.
Proposed
To be described.
Incubation
To be described.
Mature
To be described.
Top-Level
Projects that have demonstrated the characteristics of a Top-Level Project (e.g., consistent leadership in a technical area and the recruitment of a wider developer community) can be promoted to Top-Level Project status. This promotion occurs through a Promotion Review. Upon the successful completion of a Promotion Review, OpenMRS Leadership may recommend that the project be promoted and ask that its Charter be reviewed and approved.
Top-Level Project has a Charter which describes the purpose, Scope, and operational rules for the Top-Level Project. The Charter should refer to, and describe any refinements to, the provisions of this Development Process. The Board approves the Charter of each Top-Level Project.
Top-Level Projects cannot be incubated and can only be created from one or more existing Mature-phase Projects.
Archived
Projects that become inactive, either through dwindling resources or by reaching their natural conclusion, are archived. Projects can reach their natural conclusion in a number of ways: for example, a project might become so popular that it is absorbed into one of the other projects. Projects are moved to Archived status through a Termination Review. If there is sufficient community interest in reactivating an Archived Project, the Project will start again with Creation Review. As there must be good reasons to have moved a Project to the Archives, the Creation Review provides a sufficiently high bar to prove that those reasons are no longer valid.
Types of Reviews
Creation Review
Graduation Review
Promotion Review
Termination Review
Project Review