Skip to content

ProjectGraduationChecklist

Tom Kralidis edited this page Mar 30, 2018 · 30 revisions

Project Graduation Checklist

Based on the OSGeo Project Graduation Checklist version 2.0.

Creation Date: 05 March 2016

Last Updated: 30 March 2018

Overview

This checklist is based on the PyWPS stable branch (pywps-3.2). While PyWPS 4 is near final, we choose to checklist against the stable branch.

Incubation Checklist

Open

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

  • Open: projects are expected to function in an open and public manner and include:

  • Open source license(s),

  • code: MIT (for previous version of PyWPS it was GNU GPL 2)

  • docs: Attribution 4.0 International (CC BY 4.0)

  • Open communication channels,

  • Mailing list

  • IRC

  • Google+

  • Twitter

  • Gitter

  • Open decision making process.

  • A Project Steering Committee exists which implements RFC1. A process for Request for Comments (RFC) for significant changes to the source code has been articulated and in operation.

  • Active and healthy community:

  • 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. PyWPS developers do attend regularly events such as FOSS4G conferences, giving talks and workshops. We also do actively attend code sprints organised by OSGeo or self-organised. We have regular meetings (using Hangout) and we are constantly in contact to analyse and deside on code contributions and new features development. Several developers have been successful Google Summer of Code mentors and continue to promote GSoC projects within our community. See http://pywps.org/community for more details.

  • Long term viability of the project is demonstrated by showing participation and direction from multiple developers, 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. 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.

  • PyWPS has numerous core contributors as well as additional contributors over time. Organizations represented include GeoCat, Meteorological Service of Canada, International Soil Reference and Information Centre, German Climate Computing Centre (DKRZ).

  • Some statistics (including number of contributors) for the project can be found at https://www.openhub.net/p/pywps

  • Professional services can be found at the OSGeo Service Provider Directory

  • In support of an inclusive and welcoming community, the PyWPS code of conduct can always be found at https://github.com/geopython/pywps/blob/develop/CODE_OF_CONDUCT.md

Copyright and License

We need to ensure that the project owns or otherwise has obtained the ability to release the project code by completing the following steps:

Processes

  • The project has code under configuration management (Eg, subversion, git.)
  • Git: https://github.com/geopython/pywps.git
  • The project uses an issue tracker and keeps the status of the issue tracker up to date
  • GitHub issues: https://github.com/geopython/pywps/issues
  • The project has documented its management processes. This is typically done within a Developers Guide or Project Management Plan.
  • Developer's Guide at ReadTheDocs: http://pywps.readthedocs.io/en/latest/development.html
  • The project has a suitable open governance policy ensuring decisions are made, documented and adhered to in a public manner. This typically means a Project Management Committee has been established with a process for adding new members. A robust Project Management Committee will typically draw upon developers, users and key stakeholders from multiple organisations as there will be a greater variety of technical visions and the project is more resilient to a sponsor leaving. A PSC as well an RFC framework exist.
  • The project uses public communication channels for decision making to maintain transparency. Yes, PyWPS mailing list, IRC Channel, Gitter channel and GitHub issue tracker/wiki. See http://pywps.org/community/ for more info.

Documentation

Release Procedure

In order to maintain a consistent level of quality, the project should follow defined release and testing processes.

  • The project follows a defined release process:
  • Which includes execution of the testing process before releasing a stable release
  • The project follows a documented testing process. Ideally, this includes both automated and manual testing. Ideally this includes documented conformance to set quality goals, such as reporting Percentage Code.
  • Release and testing processes provide sufficient detail for an experienced programmer to follow

OSGeo Committees and Community

The OSGeo Foundation is made up of a number of committees, projects and local chapters. This section gathers up information these groups have requested from OSGeo projects. These expectations are not mandatory requirements before graduation, but a project should be prepared to address them in order to be considered a good OSGeo citizen.

Board

The OSGeo Board holds ultimate responsibility for all OSGeo activities. The Board requests:

  • A project provide a Project Officer as primary contact
  • select a project officer jachym.cepicky at gmail com
  • The Project Officer should be listed at Officers and Board of Directors and Contacts
  • This person is established when the incubation committee recommends the project for graduation
  • Your community can change the project officer as needed
  • Add an agenda item to the next board meeting so they can recognise the change of officer.

Marketing

Access to OSGeo's Marketing_Committee and associated Marketing Pipeline is one of the key benefits of joining the OSGeo foundation. The Marketing Committee requests:

  • Marketing artefacts have been created about the project in line with the incubation criteria listed in the OSGeo Marketing Committee's Marketing Artefacts. This lists the documentation requirements for OSGeo-Live. Marketing Artefacts include:
  • Application
  • Application Quick Start
  • Logo
  • Graphical Image
  • PyWPS has stickers, t-shirts, logo
  • The materials for OSGeo-Live are available as of OSGeo-Live 10.5.

TODO/TBD: update/fix OSGeo Live

  • Ideally, stable version(s) of executable applications are bundled with appropriate distributions. In most cases, this will at least include OSGeo-Live, but may also include DebianGIS, UbuntuGIS, and/or osgeo4w, ms4w, etc.)
  • PyWPS 4.0 is available from PyPI and version 3 is pre-installed in OSGeo-Live 10.5. PyWPS 4.0 will be bundled with OSGeo-Live 11.x and OSGeo-Live 12.

Projects

  • Projects do not exist in isolation; and are expected to communicate and collaborate on key issues.

    • PyWPS PSC is in contact with 3Liz to facilitate the integration of PyWPS with Lizmap and QGIS-Server
    • PyWPS integrates GRASS GIS tools. It's recently supported by GRASS graphical modeler as output option
    • We are integrating support for MapServer and QGIS server as well as PostGIS projects in the GSoC program.

SAC

The System Administration Committee is available to help with infrastructure and facilities. Information for this committee is collected as part of the Project Graduation Checklist.