Crystal clear

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Crystal clear est une méthode de gestion de projet considérée comme faisant partie des méthodes agiles. inventée par Alistair Cockburn. Elle se veut très fortement adaptable aux spécificités de chaque projet. La méthode a été formalisée par son auteur dans « Crystal Clear: A Human-Powered Methodology for Small Teams: A Human-Powered Methodology for Small Teams »[1].

Une équipe respectant la méthode peut être décrite comme suit [2] :

  • Un architecte et de 2 à 7 développeurs…
  • colocalisés dans une grande salle ou occupant des salles adjacentes…
  • utilisant des tableaux blancs ou des paperboards…
  • ayant un accès facile aux utilisateurs experts…
  • éloignés des distractions,
  • livrent fréquemment aux utilisateurs du code testé et utilisable
  • tous les mois ou tous les deux mois (3 mois au pire)
  • adaptant leurs propres conventions de travail régulièrement.

Le but de la méthode est que, par l'application des pratiques et principes, une équipe de développement apprenne de son propre fonctionnement et accède à une forme de compréhension d'elle-même (« self-awareness »), condition de son fonctionnement optimal[3].

Principes[modifier | modifier le code]

Ces conditions sont formulées en 7 principes, dont les 3 premiers sont obligatoires. Les membres de l'équipe de développement sont libres d'utiliser les pratiques de leur choix pour respecter tout ou partie de ces 7 « propriétés dé sécurité »[4] :

  1. Livraison fréquente
  2. Amélioration réflexive
  3. Communication osmotique
  4. Sécurité personnelle
  5. Focus
  6. Accès aisé aux experts fonctionnels
  7. Un environnement technique avec tests automatisés, gestion de configuration et intégration fréquente.

Caractéristiques[modifier | modifier le code]

Crystal reste très souple tant au niveau des procédures à suivre que des normes à utiliser (comme les normes de codage). Cette méthode possède une procédure découpée en différentes étapes :

  • La spécialisation consiste à observer les utilisateurs dans leur travail pour mieux connaître leurs besoins et leur environnement. Ensuite, les différents cas d'utilisation sont classés par ordre de priorité en collaboration avec les utilisateurs, ce qui permet de savoir quelles fonctionnalités ont le plus de valeur et doivent être développées en premier.
  • Une ébauche de conception est réalisée au tout début du projet, cela inclut les choix des technologies à utiliser et implique une ébauche d'architecture.
  • Le planning consiste à prévoir vers quelles dates les itérations vont se suivre, il est recommandé de définir des itérations d'une longueur de 2 à 3 mois, chacune produisant un produit à livrer fonctionnel.
  • Les itérations, c'est au cours de cette phase que se fait la réalisation proprement dite de l'application, en suivant un ordre de phase.

Crystal présente tous les avantages des méthodes agiles : flexibilité par rapport au changement, rapidité, livraisons fréquentes, etc. Elle convient tout à fait pour des petites structures (taille inférieure à 6 personnes), mais ce qui fait son efficacité dans les projets de petite taille cause son inadéquation pour des projets plus importants.

Notes et références[modifier | modifier le code]

  1. (en) Alistair Cockburn, Crystal Clear: A Human-Powered Methodology for Small Teams: A Human-Powered Methodology for Small Teams, Addison Wesley,‎ 2004, 1e éd., 336 p. (ISBN 978-0201699470)
  2. Crystal Clear Distilled, Alistair Cockburn, alistair.cockburn.us
  3. "Scrum is about self-organisation, XP is about self-discipline, Crystal is about self-awareness." Crystal is about self-awareness, Alistair Cockburn, alistair.cockburn.us
  4. 7 Properties of Highly Successful Projects from Crystal Clear, Alistair Cockburn, alistair.cockburn.us