Difference between revisions of "5-star-rating"

From OSGeo
Jump to navigation Jump to search
Line 74: Line 74:
 
#* <span id="open.2a">[open.2a]</span> The project should have a community of developers and users who actively collaborate and support each other in a healthy way. <br/><i>Eg. collaboration on project activities such as testing, release and feature development.</i>
 
#* <span id="open.2a">[open.2a]</span> The project should have a community of developers and users who actively collaborate and support each other in a healthy way. <br/><i>Eg. collaboration on project activities such as testing, release and feature development.</i>
 
#* <span id="open.2b">[open.2b]</span> Long term viability of the project is demonstrated by showing participation, <span style="color:red">support</span> and direction from multiple developers, <span style="color:red">and/or power users, and/or sponsors</span>, who come from multiple organisations. <br/><i>Eg. The project is resilient enough to sustain loss of a developer or supporting organisation, often referred to as having a high [http://en.wikipedia.org/wiki/Bus_factor bus factor].</i>
 
#* <span id="open.2b">[open.2b]</span> Long term viability of the project is demonstrated by showing participation, <span style="color:red">support</span> and direction from multiple developers, <span style="color:red">and/or power users, and/or sponsors</span>, who come from multiple organisations. <br/><i>Eg. The project is resilient enough to sustain loss of a developer or supporting organisation, often referred to as having a high [http://en.wikipedia.org/wiki/Bus_factor bus factor].</i>
 +
 +
 +
# <span id="release.1">[release.1]</span> The project follows a defined release process:
 +
#* <span id="release.1a" style="color:red">[release.1a] Which supports both stable and development releases.</span>
 +
#* <span id="release.1b">[release.1b]</span> Which includes execution of the testing process before releasing a stable release.
 +
# <span id="release.2">[release.2]</span> The project follows a documented testing process.
 +
#* <span id="release.2a">[release.2a]</span> <i>Ideally, this includes both automated and manual testing.</i>
 +
#* <span id="release.2b">[release.2b]</span> <i>Ideally this includes documented conformance to set quality goals, such as reporting Percentage Code Coverage of Unit Tests.</i>
 +
# <span id="release.3">[release.3]</span> Release and testing processes provide sufficient detail for an experienced programmer to follow.
 +
# <span id="release.4" style="color:red">[release.4] The project has released stable, feature complete releases.
 +
#* <i>Ideally this is demonstrated by describing risk adverse organisations who have deployed releases into production systems.</i></span>
  
 
==**** mature==
 
==**** mature==

Revision as of 02:50, 5 March 2015

Mail list discussion http://lists.osgeo.org/pipermail/discuss/2010-June/thread.html

History http://wiki.osgeo.org/index.php?title=Marketing_Artefacts&oldid=51118#Maturity_Rating

Compilation

NOTE: The ckecklist is adopted from original Project_Graduation_Checklist wiki page

Purpose

The purpose of this checklist is to determine whether in our "Start rating system" the new OSGeo project is to be sorted.

See also the Incubation Application Questionnaire

* alfa

One star or "alfa" stage project is project, which barely has running code, but it is open source software with relation to geo spatial problematic.

Open

The project has demonstrated that it has an open, active and healthy user and developer community:

  1. [open.1] Open: projects are expected to function in an open and public manner and include:
    • [open.1a] Open source license(s),
  2. [geospatial.2] Geo-spatial: project has some relationship to geo, spatial and similar topics


    • [open.2a] The project should have a community of developers and users who actively collaborate and support each other in a healthy way.
      Eg. collaboration on project activities such as testing, release and feature development.
    • [open.2b] Long term viability of the project is demonstrated by showing participation, support and direction from multiple developers, and/or power users, and/or sponsors, who come from multiple organisations.
      Eg. The project is resilient enough to sustain loss of a developer or supporting organisation, often referred to as having a high bus factor.
    • [open.2d] Users are supported and encouraged, via an email list or similar.


** beta

Software is somehow established, produces new code, attracts new developers and users. Project still does not have to be described as "mature".

  1. [open.1] Open: projects are expected to function in an open and public manner and include:
    • [open.1b] Open communication channels,
    • [open.1c] Open decision making process,
  2. [open.2] Community:
    • [open.2c] Decisions are made openly instead of behind closed doors, which empowers all developers to take ownership of the project and facilitates spreading of knowledge between current and future team members.
    • [open.2d] Users are supported and encouraged, via an email list or similar.

** stable

  • Bundled software
  • updates
  • Training
  • etc. ...
  1. [open.1] Open: projects are expected to function in an open and public manner and include:
    • [open.1c] Open decision making process,
  2. [open.2] Active community:
    • [open.2a] The project should have a community of developers and users who actively collaborate and support each other in a healthy way.
      Eg. collaboration on project activities such as testing, release and feature development.
    • [open.2c] Decisions are made openly instead of behind closed doors, which empowers all developers to take ownership of the project and facilitates spreading of knowledge between current and future team members.
    • [open.2d] Users are supported and encouraged, via an email list or similar.
  1. [copyright.1] All project source code is available under an Open Source license.
  2. [copyright.2] Project documentation is available under an open license, such as Creative Commons.
  3. [copyright.3] [copyright.1] The project code, documentation and data has been adequately vetted to assure it is all properly licensed, and a copyright notice included, as per a Provenance Review.
  4. [copyright.4] The project maintains a list of all copyright holders identified in the Provenance Review Document.
  5. [copyright.5] All code contributors have agreed to abide by the project's license policy, and this agreement has been documented and archived.
  1. [documentation.1] The project has user documentation:
    • [documentation.1a] Including sufficient detail to guide a new user through performing the core functionality provided by the application.
  2. [documentation.2] The project has developer documentation:
    • [documentation.2a] Including checkout and build instructions.
    • [documentation.2b] Including commented code, ideally published for developer use.
      Examples: javadocs for Java applications, or Sphinx documentation for Python applications.
    • [documentation.2c] Providing sufficient detail for an experience programmer to contribute patches or a new module in accordance with the project's programming conventions.
  3. [documentation.3] The project has deployment documentation:
    • [documentation.3a] Including, where appropriate, how to deploy, configure and optimise the application.

*** Mature OSGeo project

  1. [open.2] Active and healthy community:
    • [open.2a] The project should have a community of developers and users who actively collaborate and support each other in a healthy way.
      Eg. collaboration on project activities such as testing, release and feature development.
    • [open.2b] Long term viability of the project is demonstrated by showing participation, support and direction from multiple developers, and/or power users, and/or sponsors, who come from multiple organisations.
      Eg. The project is resilient enough to sustain loss of a developer or supporting organisation, often referred to as having a high bus factor.


  1. [release.1] The project follows a defined release process:
    • [release.1a] Which supports both stable and development releases.
    • [release.1b] Which includes execution of the testing process before releasing a stable release.
  2. [release.2] The project follows a documented testing process.
    • [release.2a] Ideally, this includes both automated and manual testing.
    • [release.2b] Ideally this includes documented conformance to set quality goals, such as reporting Percentage Code Coverage of Unit Tests.
  3. [release.3] Release and testing processes provide sufficient detail for an experienced programmer to follow.
  4. [release.4] The project has released stable, feature complete releases.
    • Ideally this is demonstrated by describing risk adverse organisations who have deployed releases into production systems.

**** mature

  • Defined release procedure
  • Regular builds
  • Security updates
  • Training
  • Stable community


5 stars: This rating is yet to be defined, and will not be allocated to projects yet. Project includes bundled software, regular builds, security updates, training, etc. 4 stars (mature): 3.5 stars: Not to be used yet, but may later be introduced for projects which have entered incubation. 3 stars (established): Project has Stable Software, a Stable community, is deployed in production systems, and is ready to pass criteria to enter incubation, as per:http://www.osgeo.org/incubator/process/evaluation.html 2 stars (stable): Project has Stable Software. Project produces periodic releases of stable software which is used in production systems. 1 star (beta): Project has Beta software.