Aline’s Tech Blog

All my geekness is here :-)

Pour être en forme, soyez agiles October 13, 2008

Filed under: Software — Aline @ 9:41 pm
Tags: , , , , ,

Voici un petit résumé de ce que j’ai retenu des 4 + 1 conférences auxquelles j’ai eu la chance d’assister Jeudi dernier : l’Agile Tour à Grenoble.

1. Le prof de management de l’école de Grenoble: Jérôme Barrand

Alors, en gros, l’entreprise et son système d’information, grâce aux informaticiens (je ne fais pas partie des coupables, je suis bien trop jeune ;) ), c’est devenu un gros truc innommable, avec tout le monde qui est en relation avec tout le monde, où tout va à fond la caisse et bouge tout le temps.

Et puis malgré ça, on reste (trop) souvent dans une structure d’entreprise hiérarchique, avec tout en haut le grand chef qui réfléchit et qui détient l’information et le pouvoir, et qui donne des choses à faire à des exécutants en bas. Et ça c’est historique, c’était comme ça au vieux temps…

C’est pour ça qu’il faut trouver un nouveau truc. Un nouveau mode de pensée et de management des entreprises. Eh oui, l’agilité ce n’est pas que des geeks dans un bureau qui ont une super machine de build qui s’allume en rose. C’est aussi tout un mode de “pensée au boulot”, admis et recommandé, et même par des gens qui en ont vu, des choses, dans leur vie.

Note pour plus tard : Waouh… j’aimerais bien être capable de faire un show comme le sien !

2. Introduction à Scrum

Résumé : Bon ben voilà, c’est bon, je n’ai plus peur. En fait, on peut se faire le truc à notre sauce ! Pas besoin d’en faire trop d’un coup.

J’ai surtout noté des infos concernant les pratiques d’équipe plutôt que les techniques de gestion de projet avec sprints, backlogs et compagnie (parce qu’on avait vu ça en cours).

L’agilité pour une équipe c’est Partage, Responsabilité, Confiance (etc). Effectivement, pour une équipe de basket ou d’impro, c’est une évidence. Mais pour du dev… On n’aurait pas imaginé… Ben si, en fait c’est pareil ! Et on verra aussi dans la conf suivante, que c’est aussi un peu le même fonctionnement qu’en famille…

  • Ce qui passe en premier c’est pas les outils et les procédures compliquées, c’est les gens. Le socle, c’est les individus et l’esprit d’équipe.
  • Avoir quelque chose qui marche, c’est mieux qu’une doc super compliquée avec des 1.1.2.a.iv.B) alinéa 3.
  • Le client c’est notre partenaire (parce qu’on est motivés en vrai pour lui, on cherche pas à l’avoir).
  • On est capable de s’adapter au changement.

Et en fait tout ça, ça existe depuis longtemps, et les premiers à avoir imaginé quelque chose qui s’appelait “Lean Thinking”, c’est des américains. Lean Thinking a été mis en place par Toyota en 1950 pour la première fois. Et en 1987, il a été inventé un processus de développement “en spirale”.

Dernière chose que j’ai notée, c’est que la réunion quotidienne préconisée par Scrum, c’est (< 15′) :

  • Qu’est ce qui s’est passé la veille ?
  • Qu’est ce qui va se passer aujourd’hui ?
  • Quelles sont mes difficultés ?

3. Aspects Psychologiques (Ψ) des méthodes Agiles

(oh mon Dieu, là on a peur d’être tombé dans une secte bizarre !)

(et on n’en est pas loin…)

Il y a des aspects psychologiques bien sûr, car les méthodes agiles, comme on l’a vu, sont tournées vers l’être humain. Et l’objectif, c’est notre bien-être à tous !

Test-Driven Development = l’Apprentissage

“Comme dans les réseaux Neuronaux”, dit-il.

(no comment)…

Effectivement, commencer par le test, et s’améliorer pour réussir le test, c’est un entraînement ou un apprentissage. Cela permet de reconnaître notre objectif et de ne pas le lâcher, ne pas partir dans une autre direction non plus. “Amélioration Continue”.

Binôme = Accepter de l’aide, échanger (commentaire personnel: = tous à poil !)

“Vérifier” devient “S’entraider”, “Concevoir” devient “Echanger avec l’autre”… Que de belles choses !

Une alternative (vient de la méthode “Crystal”): le “Side By Side”. On a chacun deux écrans, de manière à ce que le voisin puisse voir ce qui se passe chez l’autre et éventuellement intervenir.

Avantages du binôme :

  • Concentration soutenue (peut être aussi un inconvénient parce que ça fatigue)
  • Biorythmes psychologiques cumulés (en gros, si y’en a un qui est fatigué c’est l’autre qui gère. ça fait les vases communiquants, comme dans un couple !)
  • Transparence
  • Assurance avec la relecture
  • Consensus, capacité à trouver un terrain d’entente
  • Apprentissage, partage de connaissance, erreurs

La rétrospective (le meeting quotidien de Scrum) = S’améliorer ensemble

A faciliter par un coach.

Equivalent à un conseil de famille où on propose des exercices à faire en famille pour s’améliorer (comprendre : le daily meeting de Scrum c’est comme Super Nanny !!!)

Impose le respect entre les membres de l’équipe… Ce que chacun dit est personnel et à prendre en compte.

Les artefacts… La machine de build qui s’allume en rose et la peluche sur l’ordi de ManUChenu ont un rôle !

Moi qui croyais que c’était juste pour le fun

Nous les informaticiens on “fabrique” du vent (des opérations mathématiques basiques, finalement) Contrairement à un vendeur de légumes, un artisan ou un ouvrier. Les artefacts sont là pour matérialiser ce qu’on a fait (notamment les postit avec les fonctionnalités à réaliser). Ce sont des symboles qui améliorent notre perception… Et donc on se sent mieux.

Le reste que j’ai noté en vrac

  • Communiquer face à face, ça permet de se rendre compte que ce qu’on dit et qu’on fait, c’est pas rien, pas anodin, et ça a des conséquences et des répercussions. Bien plus difficile que de mettre quelqu’un en copie sur un email mal rédigé et le plus vague possible !
  • Agile ça rejoint la méthode de développement personnel “Getting Things Done”. J’ai noté ça mais j’ai rien compris, je trouve ça réducteur, parce que en gros Getting Things Done c’est un truc qui nous dicte comment réagir quand on a un truc à faire… On devrait être capable de s’en sortir seul à mon avis.
  • On stresse jamais parce qu’on a plein de trucs à faire, mais on stresse quand on ne sait pas ce qui va se passer (ah oui, et donc Getting Things Done ça permet d’éloigner le stress et de libérer *oh mon Dieu* la RAM Psychique [David Allen]). Je vais arrêter avec ce Getting Things Done c’est horrible.
  • Agile permet d’améliorer la confiance en soi. Jean Garneau dit que ce qui améliore la confiance en soi c’est:
    • Expérience
    • Risques
    • Résultats
    • Le fait de renouveler des expériences difficiles volontairement.
  • Les 5 dysfonctionnements d’une équipe:
    • Absence de confiance
    • Crainte du conflit
    • Manque d’engagement
    • Manque de responsabilisation
    • Manque d’attention aux résultats
  • Attention à la pensée dite “pensée de groupe” ou “pensée de masse” dans une équipe, qui a des effets néfastes tels que:
    • Illusion d’invulnérabilité
    • Unanimité
    • Favoritisme
    • Partage incomplet d’informations
    • Pression
  • Petit + perso : Les 10 principes du théâtre d’improvisation (par Christophe Tournier) :
    • Accepte !
    • Ecoute !
    • Percute !
    • Anime !
    • Construis !
    • Joue le jeu !
    • Prépare !
    • Innove !
    • Amuse-toi !
    • Ose !

4. Mise en place d’outils pour industrialiser le développement

Ah j’avais mal lu. Je croyais qu’on allait parler d’agile dans l’industrie… On arrive en retard… ça parle Java, Maven 2, ant, Eclipse et NetBeans. Sympa, mais on a pas vu l’objectif du début parce qu’on était à la bourre… En gros:

  • Ils ont une chouette infrastructure, avec une appli web, de la doc en ligne, tout ça.
  • 5% des bugs (ceux découverts post-release) représentent 95% des coûts de production. Ah ben oui, là, on a peur.
  • Les outils qu’ils ont mis en place permettent d’avoir des retours les plus rapides possibles, et c’est la fin du “ça marche chez moi ! Dommage pour toi !!”

5. Agilité et avionique

Ben moi, XP ou pas XP, j’ai peur dans l’avion. Mais oui, malgré toute la complexité des normes imposées quand on fabrique un drône, un missile, un système de navigation GPS, ou toute machine de guerre destinée à être vendue pour ensuite aller tuer des millions d’innocents (ah oui pardon, on parlait *juste* des beaux systèmes pour les avions de ligne 1ère classe), une équipe d’irréductibles a réussi à appliquer de l’agilité, et ça marche mieux.

Ce que j’en retiens en tout cas c’est encore une fois que ce qui est primordial c’est d’avoir une équipe ultra motivée, qui a envie de faire ça.

… Et vous savez quoi ? ça a plu à mon chef, et il est super partant pour mettre ça en place, tous ensemble. C’est trop beau pour être vrai. Je suis super motivée et enthousiaste pour la suite ! Reste à voir ce qu’on arrivera à faire !