| 1 | = Principles of OSGeo Projects (The OSGeo Way) = |
| 2 | * Projects should manage themselves, striving for consensus and encouraging participation from all contributors - from beginning users to advanced developers. |
| 3 | * Contributors are the scarce resource and successful projects court and encourage them. |
| 4 | * Projects are encouraged to adopt open standards and collaborate with other OSGeo projects. |
| 5 | * Projects are responsible for reviewing and controlling their code bases to insure the integrity of the open source baselines. |
| 6 | |
| 7 | = Operating Principles = |
| 8 | * Projects should document how they manage themselves. |
| 9 | * Projects should maintain developer and user documentation. |
| 10 | * Projects should maintain a source code management system. |
| 11 | * Projects should maintain an issue tracking system. |
| 12 | * Projects should maintain project mailing lists. |
| 13 | * Projects should actively promote their participation in OSGeo. |
| 14 | * Projects are encouraged to adopt OSGeo look and feel, branding, logos on their project sites. |
| 15 | * Projects are encouraged to participate in OSGeo standardization efforts to present a common interface for OSGeo visitors and members. |
| 16 | * Projects should have automated build and smoke test systems. |
| 17 | |
| 18 | |
| 19 | = Open activities = |
| 20 | == Format == |
| 21 | Owner: Activity description |
| 22 | * related links and status update |
| 23 | |
| 24 | Note: put in table format? |
| 25 | |
| 26 | == Project Steering Committee == |
| 27 | A. Beccati: Definition of a PSC to define project direction and overall desired (and undesired) features to better direct development efforts by volounteer contributors. |
| 28 | * Requirements collection ongoing, to open discussion and set up wiki page / tools / process for the PSC |
| 29 | * example of PSC policy at http://geomoose.org/trunk/rfc/rfc-1.html?highlight=rfc |
| 30 | |
| 31 | |
| 32 | |
| 33 | = INCUBATION CHECKLIST = |
| 34 | [[Image(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. |
| 35 | |
| 36 | |
| 37 | |
| 38 | == Open == |
| 39 | |
| 40 | 1. Open: projects are expected to function in an open and public manner and include: |
| 41 | a. [[Image(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) |
| 42 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] Open communication channels: |
| 43 | i. rasdaman-dev list: https://groups.google.com/forum/?fromgroups#!forum/rasdaman-dev |
| 44 | i. rasdaman-user list: https://groups.google.com/forum/?fromgroups#!forum/rasdaman-usersras |
| 45 | i. issue tracker (trac): http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/report/1 |
| 46 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif)]] Open decision making process: TBD |
| 47 | 1. Active and healthy community: |
| 48 | a. [[Image(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. |
| 49 | i. [[Image(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 |
| 50 | a. [[Image(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. |
| 51 | i. [[Image(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: |
| 52 | * Jacobs University Bremen - http://www.jacobs-university.de/ |
| 53 | * Rasdaman - http://rasdaman.com/ |
| 54 | * EOX IT Services - http://eox.at |
| 55 | * Landcare Research New Zeland - http://www.landcareresearch.co.nz/home |
| 56 | * Università degli Studi di Ferrara - http://www.unife.it/unife-en |
| 57 | |
| 58 | |
| 59 | == Copyright and License == |
| 60 | |
| 61 | We need to ensure that the project owns or otherwise has obtained the ability to release the project code by completing the following steps: |
| 62 | |
| 63 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] All project source code is available under an Open Source license. |
| 64 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Project documentation is available under an open license (Eg. Creative Commons) |
| 65 | 1. [[Image(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. |
| 66 | a. Code Provenance Review: http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/OSGeoCodeProvenance |
| 67 | 1. [[Image(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 |
| 68 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] List holders here? |
| 69 | 1. [[Image(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 |
| 70 | a. Code contribution agreement: http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/ContributorAgreement . |
| 71 | *. 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" |
| 72 | |
| 73 | |
| 74 | == Processes == |
| 75 | |
| 76 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] The project has code under configuration management. |
| 77 | a. Rasdaman git repository is established at git://kahlua.eecs.jacobs-university.de/rasdaman.git |
| 78 | 1. [[Image(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 |
| 79 | a. 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 |
| 80 | 1. [[Image(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. |
| 81 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif)]] (looks like duplicate of "Open" item 3) 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. |
| 82 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] (duplicate of Open item 2) 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. |
| 83 | |
| 84 | |
| 85 | |
| 86 | == Documentation == |
| 87 | |
| 88 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] The project has user documentation: |
| 89 | a. Including sufficient detail to guide a new user through performing the core functionality provided by the application. |
| 90 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] The project has developer documentation: |
| 91 | a. Including checkout and build instructions. |
| 92 | a. Including commented code, ideally published for developer use. NOTE: Examples: javadocs for Java applications, or Sphinx documentation for Python applications. |
| 93 | a. Providing sufficient detail for an experienced programmer to contribute patches or a new module in accordance with the project's programming conventions. |
| 94 | |
| 95 | |
| 96 | |
| 97 | |
| 98 | == Release Procedure == |
| 99 | |
| 100 | In order to maintain a consistent level of quality, the project should follow defined release and testing processes. |
| 101 | |
| 102 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]], [[Image(http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.gif)]] The project follows a defined release process: (patch revision in place, release policy review ongoing) |
| 103 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]], [[Image(http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.gif)]] Which includes execution of the testing process before releasing a stable release. (ongoing effort) |
| 104 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]], [[Image(http://upload.wikimedia.org/wikipedia/commons/9/90/Icons-mini-icon_alert.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 |
| 105 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Release and testing processes provide sufficient detail for an experienced programmer to follow. |
| 106 | |
| 107 | |
| 108 | == OSGeo Committees and Community == |
| 109 | |
| 110 | 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. |
| 111 | |
| 112 | === Board === |
| 113 | |
| 114 | The OSGeo Board holds ultimate responsibility for all OSGeo activities. The Board requests: |
| 115 | 1. [[Image(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?) |
| 116 | a. The Project Officer should be listed at Officers and Board of Directors and Contacts |
| 117 | a. This person is established when the incubation committee recommends the project for graduation |
| 118 | a. 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. |
| 119 | |
| 120 | |
| 121 | === Marketing === |
| 122 | |
| 123 | Access to OSGeo's [http://wiki.osgeo.org/wiki/Marketing_Committee Marketing_Committee] and associated [http://wiki.osgeo.org/wiki/Marketing_Pipeline Marketing_Pipeline] is one of the key benefits of joining the OSGeo foundation. The Marketing Committee requests: |
| 124 | |
| 125 | 1. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] (should be available from OSGeo Live) Marketing artefacts have been created about the project in line with the incubation criteria listed in the OSGeo Marketing Committee's [http://wiki.osgeo.org/wiki/Marketing_Artefacts Marketing Artefacts]. This lists the documentation requirements for OSGeo-Live. Marketing Artefacts include: |
| 126 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Application Overview |
| 127 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Application Quick Start |
| 128 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Logo |
| 129 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Graphical Image |
| 130 | 1. 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.) |
| 131 | |
| 132 | |
| 133 | === Projects === |
| 134 | |
| 135 | Projects do not exist in isolation; and are expected to communicate and collaborate on key issues. |
| 136 | As an example the PostGIS release procedure asks that the release be checked with MapServer, GeoServer and others. |
| 137 | [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] List related projects here |
| 138 | |
| 139 | |
| 140 | === SAC === |
| 141 | |
| 142 | The [http://wiki.osgeo.org/wiki/SAC System Administration Committee] is available to help infrastructure and facilities. Information for this committee is collected as part of the [http://wiki.osgeo.org/wiki/Project_Status_Template Project Status Template]. |
| 143 | 1. The following should be set up: |
| 144 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif)]] A http://projectname.osgeo.org domain name |
| 145 | 1. A project may optionally request SAC help to make use of: |
| 146 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] OSGeo issue tracker : not needed |
| 147 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] OSGeo mailing list : not needed |
| 148 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] OSGeo svn : not needed |
| 149 | a. [[Image(http://upload.wikimedia.org/wikipedia/commons/c/cc/Icons-mini-icon_accept.gif)]] http://downloads.osgeo.org : not needed |
| 150 | |
| 151 | |
| 152 | = Icon legend and media attribution = |
| 153 | [[Image(http://upload.wikimedia.org/wikipedia/commons/1/11/Hourglass.png)]] Waiting for verification. From http://commons.wikimedia.org/wiki/File:Hourglass.png |
| 154 | |
| 155 | [[Image(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 |
| 156 | |
| 157 | [[Image(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 |
| 158 | |
| 159 | [[Image(http://upload.wikimedia.org/wikipedia/commons/5/5a/Icons-mini-action_stop.gif)]] Not met, yet. From |
| 160 | http://commons.wikimedia.org/wiki/File:Icons-mini-action_stop.gif#file |
| 161 | |
| 162 | [[Image(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 |