Like all pages in this wiki you are welcome (and encouraged) to contribute to this page by filling in the many gaps, either by providing links to other resources or by providing discussion content.

Open Source Development

There is more to open source than a licence. It is also a development methodology. This page links to various resources about different aspects of open source development.




User Documentation

User documentation is aimed at those people wishing to either use the software in a production environment or wishing to quickly evaluate the software before using in a production environment or becoming a developer on the project.

The kinds of documentation we would expect to find in this section are:

Developer Documentation

Developer documentation is aimed at those people wishing to work with the source code of the project. They may be motivated by the need to work with the latest and greatest code, or they may be motivated by the need to add features or fix bugs. Developers are also users, so they will be interested in user docs as well as developer docs.

The kinds of documents we would expect to find in this section are:

Mailing Lists

Code Development

SoftwarePatch - Working with patches

IPR Management

ContributorLicenceAgreements - a contributor licence agreement helps ensure that all contributions to the project can legally be included

Build Automation

Dependency Management


Issue/Bug/Patch Tracking


== Release Early, Release Often ==

An important part of open source development is the creation of a release for users of the software. Whilst the source code is freely available and usually developed in an open manner, potential developers and users will usually want to be able to evaluate the code quickly and easily. Therefore, projects should frequently release their software in a form that is easily accessible.

"Release early, release often" is a well known mantra of open source development. There are many reasons why it is important to release early and release often. Some of the more important ones are:

Release Early, Release Often is part of building a sustainable open source project, releases produce users, users sometimes become contributors, contributors make the project stronger. The downside of releasing early and often is that you need to manage your user expectations. Be clear about the true status of your release and make any known bugs clear in your documentation.

Release Management

Release Management is the process of building, packaging, and deploying of software for consumption. It is a process that is controlled by a Release Manager. A Release Manager is:

The stakeholders in a release include:

[ Wikipedia on Release Management Method]

[ Release Management Within Open Source Projects by Justin R. Erenkrantz]

[ Software Release Practice HOWTO by Eric Steven Raymond]

Creative Commons License
The content of this wiki is licensed under the Creative Commons Attribution-ShareAlike 2.0 England & Wales Licence.

OSS Watch is funded by the Joint Information Systems Committee (JISC) and is situated within the Research Technologies Service (RTS) of the University of Oxford.