Retrospectiva

Retrospectiva est un web-logiciel de gestion de projets. Placé sous licence libre, il n’est pas possible de l’utiliser « directement » ; par contre, il est téléchargeable gratuitement et s’installe assez facilement sur n’importe quel système de type Unix (Linux, Mac OS X, BSD, …) pour peu que vous ayez un minimum de connaissances en administration de serveur.
Ce mode de fonctionnement est similaire à ce qu’on peut trouver du côté de Collabtive.

Fonctionnalités

Les fonctionnalités de Retrospectiva sont réparties en deux groupes : les fonctions de base, et celles qui sont apportées par des plug-ins.

Fonctions de base :

  • Gestion de tickets.
  • Revue de code.
  • Gestion de versions, avec deadlines et étapes d’avancement.

Fonctions additionnelles :

  • Wiki.
  • Blog.
  • Gestion de projet adaptée à la méthode Scrum.

On peut considérer que les fonctionnalités apportées par les plug-ins font parties intégrantes du logiciel. Parce que, de nos jours, un outil de gestion de projet qui ne contient même pas un wiki, c’est trop limité pour être intéressant.

Gestion de tickets

(image © retrospectiva.org)

Les tickets de Retrospectiva permettent de gérer aussi bien l’affectation de tâches (au sens classique du terme) que les relevés de bugs. C’est un des rares logiciels qui fournisse un système de gestion des tâches qui peut aussi convenir à la gestion des bugs, sans que l’ergonomie n’en souffre.

Gestion de sources, versions de logiciels

Lorsqu’on développe un logiciel, il est absolument nécessaire d’utiliser un outil de gestion de sources. Évidemment, il serait possible de stocker ses fichiers dans un répertoire. Mais si vous voulez travailler sérieusement, vous aurez besoin de stocker les différentes versions de vos sources, pour suivre leur évolution au fil du temps ; et si vous travaillez à plusieurs sur le même projet, cela devient impossible.

Les logiciels de gestion de sources permettent à plusieurs personnes de travailler sur les mêmes fichiers, chacun dans leur coin, puis de tout rassembler pour obtenir une version continuellement à jour des sources. Ils apportent des fonctions permettant de définir des versions globales. Il existe un grand nombre de ces systèmes :

  • Les ancêtres RCS et CVS ont laissé la place à Subversion, qui offre des fonctionnalités supplémentaires bien appréciables. Ce sont des systèmes centralisés faciles à appréhender et à installer, et sont sous licence libre.
  • De nouveaux système sont apparus, basés sur un modèle décentralisé. Parmi ceux-ci, ont peut noter que les plus connus dans le monde de l’open-source sont Bazaar (sponsorisé par Canonical, à l’origine de la distribution Linux Ubuntu), Git (utilisé pour le noyau Linux) et Mercurial.
  • Du côté des logiciels propriétaires, les plus connus sont Visual SourceSafe de Microsoft et BitKeeper (qui a été utilisé pour le noyau Linux jusqu’en 2005).

Je vais vous présenter l’utilisation de ces outils, en utilisant l’exemple de Subversion (SVN en abrégé) car c’est le système de plus répandu et celui que j’utilise ; mais ces concepts sont toujours valables.

Principes généraux

Gestion basique

A la base, les sources d’un projet sont disponibles sur la branche principale (trunk). Les développeurs y récupèrent les sources (checkout) sur leur propre environnement de travail, et y ajoutent leurs versions modifiées (commit).

SVN - checkout - commit