Chapter 1. Introduction to Savane

What it is

Free software has a particular engineering process,
involving decentralized collaboration of many people. Special
tools to allow collaborative work are needed to canalize these
decentralized efforts, and provide communication channels, such
as mail lists, version control and bug tracking systems. Web
platforms, offering these services without the need for client
installation, have become central points for free software
development.

Savane is such a web-based free
software hosting system. Through a web interface, and without the
need of client installation, it provides an environment for
collaborative work. It powers free software development platforms
such as Gna! and Savannah. However, its
project management tools, and high levels of customization, make
it an interesting general project hosting and management system,
having been chosen by CERN's
LCGsoftware process and infrastructure
project.

It integrates functionalities and artifacts implemented by
the own platform (account management, trackers, news system...)
as well as different external applications installed in the
system running Savane
(Mailman for mail lists, and
CVS/Subversion/Arch
for version control). In addition, system disk space can be
provided, for download area, repositories, or home page
hosting.

As a result, through a mere web browser anywhere, access
to a full set of collaborative work and project management tools
is provided:

Communication tools

Savane offers several
different kinds of fully customizable trackers. They are
explained in detail in the last chapter.

Mail notification
system.

Savane implements a
customizable mail notification system, making sure that
users keep up to date with information that affects them,
without the need of visiting the site. It is customizable
at different levels: system admin, project admin, personal account
configuration.

Development

Bug tracker

Version control systems

Through a
Savane platform, users can
potentially access different kinds of source code managers
installed in the system: CVS,
Subversion,
Arch. In addition, repository
and change browsing is provided through
viewcvs

Visibility

Through http download area, and the possibility to host or
link with project homepages.

Project management

Fast project setup

Default values for
project type will be predefined by the site administrator, so
that the project pages will be ready for use with almost no
additional configuration. In addition,
Savane offers the possibility to
copy tracker configuration from other projects hosted at the
site.

Task tracker

The
Savane trackers offer a series of
additional functionalities (see next chapters), useful for
project management:

Dependency system between tracker items (across
tracker kinds and projects)

Reassignation of items (to other trackers, to other projects)

Automatic fields update

For
example, if an item's severity field is set to "security",
it could automatically be set to "private", and be
assigned to a specific technician.

Item digest

Can be used to
generate release notes.

Request for inclusion

Users can
request to be included in a certain group, which might save
project admin's time in searching for users in the
database.