riedquat - valueable resource for those who seek.
Home Blog Technical Reports Art Articles RapiDocs Coding Links Reviews Projects: CherBot Daimonin Gridarta

Open Source Project Management Tools

This article describes open source tools for open source project management.

Introduction

What's a project?

The open source interpretation of the term project differs significantly from its definition as used in the industry. The ↗German Wikipedia defines the term Project as follows:

Ein Projekt ist nach DIN 69901 ein Vorhaben, bei dem innerhalb einer definierten Zeitspanne ein definiertes Ziel erreicht werden soll, und das sich dadurch auszeichnet, dass es im Wesentlichen ein einmaliges Vorhaben ist.

This roughly translates to: According to DIN 69901 a project is an enterprise with a limited time, a defined goal to be reached and being essentially unique.

In contrast to that definition, open source projects usually do not have a limited time. And unlike proper industry projects, open source projects are allowed to change their goals, use only vaguely defined goals or no real goals at all.

There are other things that qualify an open source project. An open source project has a certain scope. There are source code artifacts that belong to the project. And these source code artifacts are logically grouped. Usually open source projects also have a goal, e.g. providing a piece of software that serves a specific purpose.

What's open source project management?

Open Source Projects need project management just like any other project. Yet there are some differences. Usually, the time spent for open source projects is very limited compared to the time industry spends for commercial projects. Remember, most people that participate in open source projects do so in their spare time. That means with low priority and only little time because they got their real lifes: job, family, and that's got higher priority.

So what's already true for normal projects, that overhead must be kept as low as possible and project management must be efficient, applies to open source projects just even more.

Aspects of Project Management

Project management has many aspects. Political aspects focus on decisions regarding the market and competition. Social aspects concern developers and customers and their characters. Communicational aspects are about the flow of communication between project managers, developers and users. The realization like the exchange of code, prevention of regression etc. belong to the technical aspects.

Applications Overview

Most tools belong to a kind of application solving a specific task. This glossary explains these applications and the tasks they solve.

Project Hosting
Project Hosting sites provide infrastructure for open source projects. Usually they provide remote access to a combination of other fundamental services, such as version control systems, mailing lists, forums, file areas, a project website, a bug tracker and more.
Announcement, Statistics and Tracking
Announcement sites are used by project maintainers to announce new software releases to the community. Statistics sites follow a project and generate statistics for it. Tracking sites track projects to provide information on recent changes.
Version Control Systems
A version control system tracks the changes made to the source code of a project.

Version Control Systems

The Version Control System is the most fundamental part for any kind of serious software development. The minimum required features for open source projects are normal version tracking plus branching and merging. Additionally, a web interface that allows accessing the contents of the version control system via a web browser is strongly recommended.

The two most popular version control systems amongst open source projects are CVS and Subversion.

CVS

CVS was originally based on RCS and added remote features plus optimistic (non-(b)locking) access to it. Nowadays all that CVS shares with RCS is the repository file format, the ,v-files. CVS was the number one version control system for quite a long time but it lacks certain features like versioning directories and tracking file renames.

Subversion

Subversion was developed to be a successor of CVS. It behaves as similar to CVS as possible, especially regarding its look and feel resp. its usage, but it implements all the features people were so painfully missing in CVS. No wonder, Subversion is taking over and about to become the worlds number one version control system.

Issue Tracking

Issue tracking, aka Change Request Management or Bug Tracking, is an important element of project management. The most important issues tracked are feature requests and bugs. Issue Tracking software helps tracking these issues. Typical features of issue tracking software are:

The three most popular issue tracking systems are Bugzilla, Mantis and the SourceForge Issue Tracker.

Project Hosting

* Open Source Project Hosting Sites
** SourceForge
** Tigris
** CollabNet
* Open Source Version Control Systems
** CVS
** Subversion
* Open Source Bugtrackers
** SF Bugtracker
** Mantis
** Bugzilla
** Issuezilla
** Scarab
** http://linas.org/linux/pm.html
* Open Source Project Statistics
** SF Project Statistics
** CIA Bot
** ohloh.net
* Open Source News Sites
** Freshmeat
* Open Source Project Automation
** CIA hook
** Freshmeat XML-RPC, Ant-Task
* Open Source Project Communication
** Forums
** SF Project RSS/Atom Feeds
** CIA Bots and RSS/Atom Feeds
** Mailing Lists
** News
** Newsgroups
        

Example / Checklist: CherBot

show
 . 
..: