RedMine : Le petit frère de Trac en Ruby on Rails

Publié le 25/06/2007, par Romain Linsolas dans Uncategorized | 4 Commentaires

Article paru dans la newsletter #20 – Ete 2007

J’avais publié précédemment dans la newsletter un article présentant Trac, un outil web open source intégrant un wiki, une gestion d’issue, une gestion de milestones projets et un browser Subversion.

RedMine rentre exactement dans la même catégorie « portail projet pour une équipe de développement ».

RedMine est un outil Open-Source, réalisé sous Ruby on Rails (contrairement à Trac implémenté en python). L’interface de RedMine est très fortement inspirée de Trac : on retrouve quasiment les mêmes écrans pour la gestion des milestones, des tickets (bugs, features, etc.), le wiki, le browser subversion et la vue « timeline » (activité générale du projet).
En plus des fonctionnalités dans Trac, RedMine intègre aussi :

  • Forum de discussion et News.
  • Une vue « calendrier » de l’activité projet.
  • Des fonctionnalités de time-tracking, avec une vue « Gant ». (à quand le burn-down chart pour les projets scrum ?)
  • Un Changelog généré pour les releases du projet.
  • Un espace prévu pour la publication des releases, documentation des applications, etc.
  • Gestion native des multi-projets.

Sur les aspects déjà existants dans Trac, RedMine profite l’expérience Trac :
L’installation est assez simple, même si il y a encore moyen de mieux packager le produit. On s’en sort avec juste InstantRails + RedMine.
On peut noter que cet aspect a été amélioré dans les dernières versions de Trac.

Beaucoup d’aspects administration sont complètement intégrés dans l’interface graphique RedMine sans rajouter de plugins ni entrer dans une customisation complexe.
L’interface d’administration permet de gérer les utilisateurs et passwords ainsi que les permissions. Le workflow est aussi customisable : on peut définir les différents états existants et les transitions possibles, séparément pour chaque type de ticket (bug, feature, etc.) On peut aussi définir des transitions accessibles seulement pour certains utilisateurs ou rôles.
Chaque type de ticket peut aussi avoir des champs spécifiques, obligatoires ou non. On ne peut pas par contre définir des champs obligatoires uniquement dans certains états du workflow.
Trac est suffisamment extensible pour permettre ces fonctionnalités, mais il faut alors installer pas mal de plugins ou bien rentrer dans de la customisation avancée de Trac.
RedMine est beaucoup plus facile à maintenir du point de vue administration.

Pour l’intégration avec SVN, RedMine agit comme un client subversion, contrairement à Trac qui nécessite un accès direct au disque du serveur SVN. (Contrainte Trac qu’on peut contourner mais encore une fois au prix de solution plus complexe à maintenir.)
Toujours d’un point de vue technique, RedMine peut fonctionner avec diveres bases de données (MySQL, PostgreSQL, SQLite, Oracle ou SQL Server).

Par contre, RedMine est encore très jeune et certaines fonctionnalités pourraient être améliorées :

  • Les flux RSS ne sont pas utilisés autant que dans Trac (pas de flux RSS sur les commits SVN par exemple). Trac propose des flux RSS de façon quasi-systématique.
  • Les champs présents par défaut dans les tickets RedMine ne peuvent pas être supprimés simplement.
  • On peut ajouter des champs « custom », mais ils n’apparaissent pas comme critères de recherche.

Ces deux derniers points sont assez limitant pour la customisation de RedMine, en particulier pour des domaines autres que le développement software.
Trac est par exemple utilisé pour la gestion du staffing VTC avec des champs totalement différents des habituels « détecté en version », etc. et des critères de recherche totalement spécifiques au domaine métier.

Cependant, le fait de pouvoir utiliser des champs custom comme critère de recherche a déjà été implémenté et sera intégré dans la prochaine release.
Le développement général de l’outil semble très actif.

En terme d’adoption, Trac a maintenant une assez large communauté d’utilisateur et de contributeurs (contributeur au produit ou bien en terme de plugins). Trac est utilisé depuis un certain temps pour des sites tels que Ruby on Rails ou SpringIDE. Des sites d’hébergements de développement tels que MacOSForge, Python.org proposent un service Trac. De plus, un bon nombre d’autres outils proposent maintenant des intégrations avec Trac ou Jira.
RedMine est encore trop jeune pour avoir ce niveau de communauté. L’outil est aujourd’hui développé principalement par Jean-Philippe Lang (tout au moins au niveau des commits subversion), même si plusieurs autres personnes ont contribué à certaines parties.

Il suscite un intérêt important notamment dans la communauté Rails. A noter : L’une des fonctionnalités beaucoup demandées est un outil de migration de Trac vers RedMine.

RedMine propose un site de démo de l’outil. Pour se faire une idée plus complète, il est cependant intéressant d’installer RedMine afin d’accéder aux fonctionnalités d’administration.

Références :
http://www.redmine.org
http://demo.redmine.org

Guillaume Tardif

4 Responses to “RedMine : Le petit frère de Trac en Ruby on Rails”

  1. Frank DENIS says:

    Redmine est absolument excellent. Voilà longtemps que je cherchais une alternative moderne à Trac et Redmine, malgré sa jeunesse, est probablement l’outil opensource le plus abouti aujourd’hui. Aussi puissant que gForge avec une interface bien plus simple. Que demander de plus ?

  2. Samy SEGUIN says:

    Un outil de bien bonne qualité en effet. Il est simple et efficace.
    C’est l’outil opensource de gestion de projet que je préconise pour les petites et moyennes entreprises qui ont besoin de gérer leurs projets (autant dire toutes).

    La mise en place nécessite quand même un peu de réflexion dans la structuration des projets et l’organisation des équipes.

    Un trés bon outil.

  3. [...] summer I took a look at Redmine, an open source collaborative tool written in Ruby on Rails (cf article on Valtech Blog). I’m currently starting to use Redmine for one project I’m involved in, and I’m [...]

  4. PatrickZ says:

    Hello, pouvez vous m’indiquer su un plugin existe pour désactiver les champs par défaut des formulaires de demande ?

    Merci pour vos réponses, l’outil est excellent mais je me retrouve face à la limite exposée dans votre article.

    PZ

Leave a Reply