Retour : Page Principale > sommaire méthodologie

Méthode de développement informatique

On utilise une version adaptée de la méthode agile Scrum.

Les grandes lignes

DĂ©jĂ  y a celle-ci :

lol

Sinon, en vrai :
  • unâ‹…e scrum master / scrum mistress : garantâ‹…e de la bonne application de la mĂ©thode (ponctualitĂ©, respect des dates de rĂ©union, initie le daily-scrum…)
  • des product-owners : en gĂ©nĂ©ral des non-informaticienâ‹…neâ‹…s, garantâ‹…eâ‹…s de la cohĂ©rence des dĂ©veloppements pour un projet (logiciel) donnĂ© (doivent dĂ©finir les prioritĂ©s de dĂ©veloppement pour ce logiciel)
  • unâ‹…e super-product-owner : actuellement la patronne, qui dĂ©finit les prioritĂ©s de dĂ©veloppement parmi tous les projets
  • tous les lundis Ă  10h00 : un pseudo-daily-scrum
    • toute l'Ă©quipe (y compris les non-informaticienâ‹…neâ‹…s) se rĂ©unit debout en cercle dans une grande pièce
    • le scrum-master dĂ©signe une personne pour commencer en lui "passant la patate" symboliquement (un petit mime de lancer de lĂ©gume est le bienvenu)
    • cette personne prĂ©sente brièvement (3mn maxi) ce qu'elle a fait la semaine prĂ©cĂ©dente, et ce qu'elle fera cette semaine, en insistant sur les Ă©lĂ©ments intĂ©ressants pour le groupe (ex : "j'ai corrigĂ© un bug" / "j'ai eu une rĂ©union avec un partenaire potentiel" => oui, "j'ai rĂ©pondu au tĂ©lĂ©phone" / "j'ai mangĂ© des crĂŞpes" => non)
    • on n'interrompt jamais la personne qui parle, et on garde ses remarques pour la fin
    • la personne "passe la patate" au suivant, et ainsi de suite
    • le scrum-master clĂ´t la sĂ©ance et chacunâ‹…e peut continuer les discussions dans son coin
  • chaque fin de mois : un bilan de sprint
    • on met Ă  jour les sprints en cours sur Taiga (pour chaque projet)
    • on met en ligne les nouvelles fonctionnalitĂ©s dĂ©veloppĂ©es durant le sprint du mois (si nĂ©cessaire on fait une nouvelle release des logiciels : tag Git ou branche SVN)
    • on planifie, prĂ©pare et exĂ©cute une dĂ©monstration rapide (1h maximum) des nouvelles fonctionnalitĂ©s, pour toute l'Ă©quipe (tant pis s'il y a des absents)
  • chaque dĂ©but de mois : une planif' (peut ĂŞtre faite dans la foulĂ©e du bilan de fin de mois)
    • on Ă©pluche Taiga avec les product-owners et la super-product-owner, et on dĂ©finit les stories Ă  traiter dans le sprint du mois qui dĂ©bute, et les prioritĂ©s parmi celles-ci
    • on crĂ©e les sprints correspondants dans Taiga, et on reporte Ă©ventuellement le tout sur le tableau Ă  cartons (voir ci-dessous)
  • un suivi des dĂ©veloppements sur Taiga
    • on formalise toute nouvelle proposition de fonctionnalitĂ© retenue par une story dans le projet correspondant, et on la dĂ©coupe autant que possible en tâches
    • on note les bugs au fur et Ă  mesure de leur dĂ©couverte sous forme de tickets, dans le projet correspondant
    • on commente abondamment les stories, tâches, tickets, au fur et Ă  mesure du travail
    • on tient tout cela Ă  jour : statut "Ă  tester" lors de la mise en ligne en test, statut "fermĂ©" lors de la mise en prod (au moment du bilan de fin de sprint)
  • un tableau avec des cartons
    • Ă©lĂ©ment historique; si on a vraiment du temps Ă  perdre on peut y reporter sous forme de cartons de couleur l'ensemble des stories planifiĂ©es pour le sprint du mois, ce qui permet Ă  l'Ă©quipe d'avoir une vision matĂ©rialisĂ©e trans-projet de la planification (Taiga ne propose pas cette vue…)

Différences avec le Scrum orthodoxe

  • il y a moins de dĂ©veloppeurâ‹…seâ‹…s que de projets, par consĂ©quent tous les projets sont rĂ©unis dans un mĂŞme Scrum, afin de pouvoir dĂ©finir les prioritĂ©s
  • une super-product-owner dĂ©finit ces prioritĂ©s trans-projets
  • nos sprints durent 1 mois, du premier au dernier jour du mois, car c'est plus facile de caler les rĂ©unions (entre autres)
  • on ne fait de "daily scrum" que le lundi Ă  10h00, et les non-informaticienâ‹…neâ‹…s participent aussi

Appliquer la maxime KISS

KISS est une maxime invoquant la simplicité en toute chose. C'est en lien avec le principe de raisonnement du Rasoir d'Occam.
Quelques citations :
  • « On devrait tout rendre aussi simple que possible, mais pas plus » [Albert Einstein]
  • « La simplicitĂ© est la sophistication suprĂŞme » [LĂ©onard de Vinci]
  • « Il semble que la perfection soit atteinte non quand il n'y a plus rien Ă  ajouter, mais quand il n'y a plus rien Ă  retrancher » [Antoine de Saint-ExupĂ©ry]
  • « Pourquoi faire simple quand on peut faire compliquĂ© ? » [Les Shadoks]
  • « ArrĂŞtez de m'emm*rder et laissez-moi coder comme je veux » [Mathias]

Vrac

Mise en place d'un développement piloté par les tests
Il serait intéressant de progressivement développer des applications en se basant sur des tests. La méthode de développement pilotée par les tests permet d'avoir un meilleur suivi de la qualité des projets quand ceux-ci s'amplifient avec le temps.