Découverte de Codendi

| Codendi | Manon Midy |

Codendi est une plateforme collaborative de développement et de suivi des activités (usine logicielle) qui permet de suivre tout le cycle de vie des applications logicielles (ALM). Cet article vous permet de découvrir Codendi version 4.2, ses fonctionnalités, son installation, sa communauté.

N'hésitez pas à nous faire part de votre avis sur cet article : Commentez

- Titre : Découverte de Codendi

- Auteurs : Codendi, Manon Midy

- Parution : 28 octobre 2010

- Mise à jour : 27 janvier 2020

- Licence : Copyright ® 2010 Codendi. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Présentation

- II. Éditions

- III. Fonctionnalités de Codendi 4.2

- III-A. Suivi de projet

- III-B. Développement

- III-C. Gestion documentaire

- III-D. Collaboration et communication

- IV. Architecture

- V. Installation de Codendi 4.2 RC

- V-A. Prérequis

- V-A-1. Distribution GNU Linux

- V-A-2. Image ISO Codendi

- V-A-3. Propriétés d'installation

- V-B. Installation

- V-C. Après l'installation

- V-D. Installation et configuration avancée

- VI. Communauté

I - Présentation

Codendi est une plateforme collaborative de développement et de suivi des activités (usine logicielle) qui permet de suivre tout le cycle de vie des applications logicielles (ALM). À partir d'une même interface Web, Codendi rassemble tous les outils dont les équipes de développement logiciel ont besoin : tableaux de bord, graphique de Gantt, trackers, SVN, GIT, gestion des documents, Wiki, messagerie instantanée… Codendi est un outil 100 % open source, sous licence GNU General Public License.

L'intérêt d'un tel produit est de permettre à tous les membres d'un projet (chefs de projet, développeurs, clients…) de travailler avec un même outil qui organise le processus du projet logiciel, améliore la qualité des logiciels livrés et facilite la collaboration.

Voici les différents outils intégrés dans Codendi qui vont intervenir au cours du cycle de vie d'un projet logiciel.

II - Éditions

Codendi est disponible en deux éditions :

- une version communautaire Codendi Community Edition, librement téléchargeable ;

- une version professionnelle, Codendi ProEdition, testée et sécurisée. C'est la version commerciale sur laquelle sont assurés les services Codendi (conseil, migration, support…).

Voir la comparaison entre les deux versions.

III - Fonctionnalités de Codendi 4.2

Voici les fonctionnalités que fournit la dernière version, Codendi 4.2.

III-A - Suivi de projet

Tracker universel (outil de suivi): tâches, risques, exigences, bugs, demandes de support, tests…

- Trackers et champs très finement personnalisables

- Trackers illimités pour chaque projet

- Trackers préconfigurés

- Dépendances entre champs

- Workflow entièrement paramétrable

- Puissants outils de recherche et de tri

- Notifications personnalisables

- Import/export de données

- Édition de masse

- Permissions très fines sur les trackers, artefacts et même les champs

- Traçabilité des accès

Menu d'administration et personnalisation des trackers

Exemple d'un rapport de tracker de bugs

Exemple de tracker Scrum

Rapports et graphiques

- Créez vos rapports et graphiques d'état d'avancement de votre projet : graphique de Gantt, camemberts, tableaux.

- Ajoutez-les à vos tableaux de bord projet et personnel

Exemple de tableau de bord d'un projet

Modèles de projets

- Normalisez vos projets et implémentez les méthodologies en créant des modèles de projets qui reprennent la configuration de vos outils.

III-B - Développement

Gestionnaires de code source : SVN, CVS, GIT

- Dépôts Subversion, CVS ou GIT centralisés pour chaque projet.

- Recherche dans les dépôts : par mot-clé, par utilisateur, etc.

- Navigation dans les dépôts.

- Visualisation graphique des différences de fichiers

Recherche dans un dépôt Subversion

Intégration continue avec Hudson

- Contrôlez et visualisez l'état d'avancement de vos projets. Plusieurs indicateurs liés à l'intégration continue sont proposés : statut des différents builds, tendance des projets, résultats des tests, accès direct à toutes les informations de l'outil Hudson depuis Codendi.

Interface avec Hudson

Gestionnaire de fichiers (packages)

- Organisez vos livrables en paquets : fichiers d'installation du logiciel, binaires, sources, documentation utilisateur, etc.

III-C - Gestion documentaire

Gestionnaire de documents

- Workflow et versioning.

- Plusieurs vues possibles : vues en icônes, vue arborescente…

- Gestion fine des permissions et des accès sur les répertoires et les documents.

- Notification des évènements.

- Intégration des documents et du Wiki.

- Wiki par projet (édition collaborative).

Gestionnaire de documents

III-D - Collaboration et communication

- Recherche de projet.

- Librairie de composants.

- Listes de distribution.

- Messagerie instantanée.

- Forums.

- Sondages.

- Annonces.

- Flux RSS.

IV - Architecture

La plateforme est basée sur une architecture de type LAMP (Linux, Apache, MySQL, PHP). Codendi s'installe sur les distributions GNU/Linux RHEL et CentOS 5.x.

Codendi utilise le principe de plugins qui permet l'extension des fonctionnalités de l'outil à l'infini.

Codendi offre une API Web Service basée sur SOAP qui permet la communication entre applications et la possibilité d'exporter les données d'un projet au format CSV.

V - Installation de Codendi 4.2 RC

Si vous ne souhaitez pas installer la plateforme ou si vous avez des difficultés, vous pouvez la tester et créer vos propres projets en demandant ici un accès à un serveur de démo Codendi 4.2.

V-A - Prérequis

V-A-1 - Distribution GNU Linux

Codendi est compatible avec Red Hat Enterprise Linux 5.x et CentOS 5.x ; il est donc nécessaire d'installer cette distribution Linux en premier lieu.

Téléchargement libre de CentOS : http://www.centos.org/

V-A-2 - Image ISO Codendi

Télécharger une image ISO Codendi et la monter comme suit :

$> wget http://codendi.org/.../codendi-xxx.iso
$> mkdir /media/cdrom
$> mount -o loop codendi-xxx.iso /media/cdrom/

V-A-3 - Propriétés d'installation

Le script d'installation Codendi nécessite plusieurs directives de configuration. Vous devez rassembler :

- Codendi server fully qualified name : codendi.mydomain.com (server hostname) ;

- Codendi server IP(v4) address ;

- Passwords.

Voir les paramètres dans la section ci-dessous pour plus de détails.

V-B - Installation

Exécuter le script codendi_install.sh :

$> /media/cdrom/codendi_install.sh

Le script demande l'installation d'une liste de paquets prérequis (une connexion Internet peut être nécessaire).

Une fois ces paquets installés, le paramétrage de l'installation peut commencer.

Paramètres

Input

Example Value

Notes

Codendi Server fully qualified name

codendi.example.com

Nom du serveur

Your Company short name

My Company

Your Company long name

My Company Ltd

Codendi Server IP address

192.168.1.3

“Default? détection de la config eth0

LDAP server name

Laisser vide si vous n'utilisez pas d'annuaire LDAP

Proxy to access the Internet

Http://proxy.exemple.com:8080

host :port ou laisser vide si aucun proxy http n'est nécessaire

Activate user shell accounts? [y|n]

y

Les utilisateurs Codendi peuvent avoir besoin d'un accès shell

Generate a self-signed SSL certificate to enable HTTPS support? [y|n]

n

Pour un support https avec un certificat autosigné

Enable sub-domain management (DNS delegation)? [y|n]

n

Nous suggérons de ne pas installer de délégation DNS pour une installation minimale

Load default trackers templates during installation? [y|n]

y

Les modèles de trackers par défaut sont chargés à ce stade

Load your own tracker templates during installation? [y|n]

n

Vos propres modèles de tracker peuvent être chargés ici

Do you want this installer to insert iptables rules so that installed services could be accessed by clients in your LAN? [y|n]

y

Pour une installation Centos/RHEL 5 par défaut avec iptables support activé, ceci ouvre seulement les ports nécessaires

MySQL root password

xxxxx

Codendiadm user password

xxxxx

Mailman user password

xxxxx

Openfire DB user password

xxxxx

DB Authentication user password

xxxxx

Indiquer l'utilisateur MySQL qui sera utilisé pour l'authentification système des utilisateurs
Merci de ne pas réutiliser un mot de passe ici, étant donné que ce mot de passe sera enregistré en clair sur le filesystem et qu'il sera accessible à tous les utilisateurs logués

Une série de questions supplémentaires sont posées pour la génération des certificats SSL.

V-C - Après l'installation

Tout devrait fonctionner maintenant ! Vérifier que le nom de la machine codendi (codendi.mydomain.com), est connu de votre réseau, mettez à jour votre DNS ou vos fichiers hosts (hosts files).

V-D - Installation et configuration avancée

Consultez le guide d'installation détaillé (en anglais) pour l'installation et la configuration avancée de votre plateforme : comptes utilisateurs, configuration DNS, configuration d'Apache, installation de la base de données, configuration des emails, etc.

VI - Communauté

Le site communautaire codendi.org permet de télécharger les fichiers Codendi, suivre les développements en cours, consulter la documentation et participer à la vie de la communauté.

Si vous avez une question à propos de l'installation ou d'utilisation de Codendi, vous pouvez consulter la documentation, les forums et y poser vos questions.

Si vous rencontrer un bug, reportez-le dans le tracker dédié.

Voilà, vous avez désormais beaucoup d'informations à votre disposition pour tester et utiliser Codendi.

À bientôt sur Codendi.org.

Remerciements à Celira, Mahefasoa et Benj. pour la mise en forme et la relecture de l'article.