wiki:OSGeoIncubationChecklist

Version 10 (modified by dmisev, 4 years ago) (diff)

--

This page lists the OSGeo graduation checklist status for rasdaman, comments and discussion are welcome on the rasdaman-users mailing list (rasdaman-users _@ googlegroups.com).

Principles of OSGeo Projects (The OSGeo Way)

  • Projects should manage themselves, striving for consensus and encouraging participation from all contributors - from beginning users to advanced developers.
  • Contributors are the scarce resource and successful projects court and encourage them.
  • Projects are encouraged to adopt open standards and collaborate with other OSGeo projects.
  • Projects are responsible for reviewing and controlling their code bases to insure the integrity of the open source baselines.

Operating Principles

  • Projects should document how they manage themselves.
  • Projects should maintain developer and user documentation.
  • Projects should maintain a source code management system.
  • Projects should maintain an issue tracking system.
  • Projects should maintain project mailing lists.
  • Projects should actively promote their participation in OSGeo.
  • Projects are encouraged to adopt OSGeo look and feel, branding, logos on their project sites.
  • Projects are encouraged to participate in OSGeo standardization efforts to present a common interface for OSGeo visitors and members.
  • Projects should have automated build and smoke test systems.

Open activities

Open activities are listed at the beginning of the checklist sections they belong to, using the following format:

http://upload.wikimedia.org/wikipedia/commons/1/1d/Icons-mini-icon_user.gif (Task owner - email-address .at mail-domain .dot top-level-domain): Task to be performed/coordinated

  • TODO
    • list of actions to be performed
  • REF
    • List of links to relevant material to perform tasks
  • DUE BY estimate-date-of-completion

Requires:

  • list of tasks that we need to get completed for incubation

INCUBATION CHECKLIST

http://upload.wikimedia.org/wikipedia/commons/1/1d/Icons-mini-icon_user.gif (A. Beccati - a.beccati .at jacobs-university .dot de ) Overall process coordination.

Open

http://upload.wikimedia.org/wikipedia/commons/1/1d/Icons-mini-icon_user.gif (A. Beccati - a.beccati .at jacobs-university .dot de ) Project Steering Committee; Consider definition of a PSC to define project direction and overall desired (and undesired) features to better direct development efforts by volunteer contributors.

  • STATUS
    • we have actively been soliciting technical discussion directly through the dev list, puling dev'ers from bilateral communication to the list. Based on these improvements it seems we can keep with the overall regime for now.
    • we double checked the registration policy to the project trac and mailing lists and verified that these are open for registration although the lists are currently hosted on google groups hence their registration procedure has to be followed
  1. Open: projects are expected to function in an open and public manner and include:
    1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Open source license(s): GPL for server, LGPL for client components (various other for dependency packages)
    2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Open communication channels:
      1. rasdaman-dev list: https://groups.google.com/forum/?fromgroups#!forum/rasdaman-dev
      2. rasdaman-user list: https://groups.google.com/forum/?fromgroups#!forum/rasdaman-usersras
      3. issue tracker (trac): http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/report/1
    3. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Open decision making process: Feature table is maintained on wiki, new features can be openly discussed on the mailing lists.
  2. Active and healthy community:
    1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project should have a community of developers and users who actively collaborate and support each other in a healthy way.
      1. http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png List committers here? Would a link to oholo be sufficient? http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif
    2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Long term viability of the project is demonstrated by showing participation and direction from multiple developers, who come from multiple organisations.
      1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif As of early December 2012 five organizations are actively participating in code development:

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:

  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif All project source code is available under an Open Source license.
  2. http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png Project documentation is available under an open license (Eg. Creative Commons)
  3. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project code, documentation and data has been adequately vetted to assure it is all properly licensed, and a copyright notice included.
    1. Code Provenance Review: http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/OSGeoCodeProvenance
  4. http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif The project maintains a list of all copyright holders identified in the Provenance Review Document
    1. http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png List holders here?
  5. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif All code contributors have agreed to abide by the project's license policy, and this agreement has been documented and archived
    1. Code contribution agreement: http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/ContributorAgreement . *. In particular, from the contribution agreement: "Any contribution we make available under any license will also be made available under a suitable FSF (Free Software Foundation) or OSI (Open Source Initiative) approved license"

Processes

  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project has code under configuration management.
    1. Rasdaman git repository is established at git://kahlua.eecs.jacobs-university.de/rasdaman.git
  2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project uses an issue tracker and keeps the status of the issue tracker up to date
    1. Trac is used for that purpose and is constantly updated as issues are addressed. Ticket list is at http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/report/1
  3. http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png The project has documented its management processes. NOTE: This is typically done within a Developers Guide or Project Management Plan.
    1. http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.gif (looks like duplicate of "Open" item 1.c) The project has a suitable open governance policy ensuring decisions are made, documented and adhered to in a public manner. Note: 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.
    • developers are actively solicited to have technical discussion directly through the dev list. Based on these improvements it seems we can keep with the overall regime for now.
  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif (duplicate of Open item 1.b) The project uses public communication channels for decision making to maintain transparency. E.g. archived email list(s), archived IRC channel(s), public issue tracker.

Documentation

  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project has user documentation:
    1. Including sufficient detail to guide a new user through performing the core functionality provided by the application.
  2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project has developer documentation:
    1. Including checkout and build instructions.
    2. Including commented code, ideally published for developer use. NOTE: Examples: javadocs for Java applications, or Sphinx documentation for Python applications.
    3. Providing sufficient detail for an experienced programmer to contribute patches or a new module in accordance with the project's programming conventions.

Release Procedure

http://upload.wikimedia.org/wikipedia/commons/1/1d/Icons-mini-icon_user.gif (A.Beccati - a.beccati .at jacobs-university .dot de): setting up Release Line and semantic versioning adoption

  • TODO
    • Document release line for rasdaman and release process
    • Apply changes to git repository
    • Release rasdaman 8.4

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

  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project follows a defined release process: (patch revision in place, release policy review ongoing)
    1. http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.gif (manual process) Which includes execution of the testing process before releasing a stable release.
    • All patches submitted to the repository undergo review before being applied to the code base
    • Milestones and tickets are used to prepare releases
    • Releases adopt semantic versioning (starting from 8.4.0)
    • Systemtests are to be run by developers before submitting patches (automated test after patch application under work).
  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif The project follows a documented testing process. NOTE: Ideally, this includes both automated and manual testing. Ideally this includes documented conformance to set quality goals, such as reporting Percentage Code Coverage of Unit Tests
    • Release and regression testing has been improved, also with respect to its documentation on the wiki which is still work in progress but already gives the overall picture of the project's test method with systemtests. We encourage users to download forthcoming betas and run these tests on their environment to see it rasdaman can be successfully run there.
  2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Release and testing processes provide sufficient detail for an experienced programmer to follow.
    • Release process makes use of the project trac roadmap feature, paired with the ticket manager. The latter has been extended to support "feature" tickets to ease tracking high-level features and assign them to release milestones. Testing system has been documented on wiki.

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:

  1. http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif A project provide a Project Officer as a contact point: (Note: the template at OSGeo states "contract point", mistake?)
    1. The Project Officer should be listed at Officers and Board of Directors and Contacts
    2. This person is established when the incubation committee recommends the project for graduation
    3. Your community can change the project officer as needed. Note: Add an agenda item to the next board meeting so they can recognize 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:

  1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif (All material is available since rasdaman is already included in OSGeo Live) 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:
    1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Application Overview
    2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Application Quick Start
    3. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Logo
    4. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif Graphical Image
  2. Ideally, stable version(s) of executable applications are bundled with appropriate distributions. Note: In most cases, this will at least include OSGeo-Live, but may also include DebianGIS, UbuntuGIS, and/or osgeo4w, ms4w, etc.)

Projects

Projects do not exist in isolation; and are expected to communicate and collaborate on key issues. As an example the PostGIS release procedure asks that the release be checked with MapServer, GeoServer and others. http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png List related projects here

SAC

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

  1. The following should be set up:
    1. http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif A http://projectname.osgeo.org domain name
  2. A project may optionally request SAC help to make use of:
    1. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif OSGeo issue tracker : not needed
    2. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif OSGeo mailing list : not needed
    3. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif OSGeo svn : not needed
    4. http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif http://downloads.osgeo.org : not needed

Icon legend and media attribution

http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png Waiting for verification. From http://commons.wikimedia.org/wiki/File:Hourglass.png

http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif OK. From http://commons.wikimedia.org/wiki/File:Icons-mini-icon_accept.gif#file

http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.gif Warning Note. From http://commons.wikimedia.org/wiki/File:Icons-mini-icon_alert.gif

http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif Not met, yet. From http://commons.wikimedia.org/wiki/File:Icons-mini-action_stop.gif#file

http://upload.wikimedia.org/wikipedia/commons/1/1d/Icons-mini-icon_user.gif Assigned and ongoing. From http://commons.wikimedia.org/wiki/File:Icons-mini-icon_user.gif#file