Il n’est pas de vent favorable pour celui qui ne sait pas où il va

Sénèque

Les fondations de l’approche waterfall

L’article qui suit, écrit en 1970 par Winston Royce, le père d’auteur du Software Project Management dont j’ai écrit la note de lecture est réputé comme l’article original décrivant le processus en cascade.
Il est aussi pointé du doigt comme dénigrant en fait cette approche en cascade !
La vérité est entre les deux, car Winston Royce dit bien qu’il croit dans le fameux diagramme de la figure 2, mais qu’il le trouve “très risqué”. Le reste de l’article est une description de ce que l’auteur propose pour dé-risquer cette approche. Cela comprends :

  • Des documentations à différentes étapes.
  • L’injection de simili-itératif entre étapes adjacentes.
  • L’implication des utilisateurs

Bien sûr les concepts sont passés de mode et l’article n’est pas non plus extrêmement facile à lire. Mais ça se fait quand même…

Carnet de route : Agile Tour Rennes en Images (2/2)

Nous nous sommes quitté lors du premier post à l’heure du déjeuner. En fait cette heure du déjeuner était réservée aux lightning talks, chacun sur son créneau horaire afin de permettre de les voir tous au besoin !
Hélas cette méthode n’est pas très efficace. Seuls les derniers lightning talks rencontreront un public. Pas facile de gérer cela. Seul l’Agile Tour Nantes m’a convaincu sur ce point l’an dernier. Mais les organisateurs de l’Agile Tour Rennes restent très loin du fiasco du Scrum Day !
On en termine donc rapidement avec la pause déjeuner pour voir cela.

AT Rennes 2013 : Lunch (8)

Prélude au second mouvement : Le Podojo par Emilie Esposito et Damien Sainte

Un Ligtning Talk, c’est déjà court. J’arrive pourtant à en rater la moitié. C’est quoi le PO Dojo ? Un atelier construit collaborativement pour les PO et un groupe Google pour le faire vivre ! Ce qui semble remarquable, c’est l’aspect complètement communautaire, sans PO donc. Sans roadmap non plus, avec un catalogue d’ateliers qui évolue au fil des besoins et des idées.

AT Rennes 2013 : PO Dojo (1)

Alors que le concept de PO promeut que quelqu’un tienne la barre, ces PO ont su s’affranchir de l’idée d’avoir un chef (quelque soit la forme qu’on lui donne), une roadmap prévue à l’avance et tout et tout. Chapeau à eux !

Avant de me rendre à la session de Laurent Morisseau, je passe rapidement la tête dans la salle où officie Dov…

AT Rennes 2013 : Dov

Reprise : #OMG, mon équipe fait son haka en Kanban style ! Par Laurent Morisseau

Un petit challenge pour notre ami Laurent en ce début d’après-midi : faire bouger le public à l’heure de la digestion…

Et d’abord, c’est quoi Kanban dans un projet agile ? De l’amélioration continue + de la gestion de projets !

Commençons avec Scrum

Quand l’on part de Scrum, le point de départ, c’est le tableau des tâches : à faire, en cours, fait… MAIS on met un nom sur une tâche ! C’est un antipattern. Le stand-up devient un reporting !

AT Rennes 2013 : Scrum et Kanban (2)

Améliorer les choses

  • En utilisant les “classes de service”, pour traiter les bugs urgent, par exemple
  • En régulant le flux des stories et des tâches en cours en utilisant des limites de WIP (work in progress) à chaque niveau.

Bref, l’idée est de rendre les problèmes visibles dès qu’ils sont évoqués et de poser des limites hautes et basses.

Quand le PO est dépassé…

Que dire d’un backlog de 70 user stories pour 7 développeurs ?
C’est bien trop, ou bien trop détaillé ! Scrum en tant que process met la contrainte sur l’équipe de développement. En amont, le PO doit travailler en flux, donc sans faire trop de stock.
On peut remédier à cela en matérialisant ce flux tiré et en étendant le Kanban aux activités amont et un matérialisant les états des stories.
Vous pourrez en savoir plus sur le site de Laurent, où vous trouverez non seulement une video mais le matériel de cette présentation sous forme de podcast.

Entracte : Zenika à l’Agile Tour Rennes

Je vous l’ai dit, nous étions présent en force à cet Agile Tour Rennes, pour représenter Zenika. Non seulement depuis l’agence de Rennes, mais aussi de Paris et de Nantes ! Cela valait bien une petite photo de famille.

AT Rennes 2013 : Staf Zenika (4)

Pour une fois, ce n’est pas moi qui prend la photo, cela me donne l’occasion d’y avoir l’air d’un niais. Et tant que j’y suis, j’en profite pour remercier Allison qui s’est dépensée sans compter pour préparer notre présence ici.

AT Rennes 2013 : Allison (2)

Les session s’enchainent. Il est l’heure de celle de Géry

Interlude : Carpaccio Game avec Géry Derbier

Géry nous propose un grand classique : Le carpaccio game. Mais qu’il anime avec grand talent et tout autant d’énergie.

AT Rennes 2013 : Carpaccio Game (2)

C’est très studieux, car il s’agit de programmer le sujet proposé par tranches de 8 minutes et d’apporter de la valeur à chaque itération. Un exercice auquel je me suis d’ailleurs livré il y a peu.

AT Rennes 2013 : Carpaccio Game (3)

Acte 2 : Booster Scrum avec le Lean Startup par Olivier Lafontan

Là encore j’ai bel et bien raté une partie de la session, mais j’étais très curieux de la voir, car elle a eu une belle affluence au Scrum Day en Avril dernier.

Lean Startup nous apprends à mettre l’investissement là où il y a de la valeur. Scrum tend à se “débarrasser” de ces questions sur le PO qui se tape un peu tout sur cet aspect. Et celui-ci se trouve un peu démuni face à ce genre de problème avec pour seul appui le backlog… Lean startup apporte quelques outils :

  • Le Lean Canvas
  • Le Validation Board
AT Rennes 2013 : Olivier Lafontan (1)

La charnière entre Lean Startup et Scrum se trouve au niveau de ces outils. La priorisation du travail devient une priorisation des hypothèses à vérifier. Car Lean Startup ne parle pas de besoin … mais d’hypothèses. Tant que ces “besoins” n’ont pas été vérifiés ils sont en effet hypothétiques. Le cycle Scrum devient un cycle de validation des hypothèses.
A plus grande échelle, un gestion de portefeuille se traduit en portefeuille de Canvas.

Conclusion : Christophe Keromen

C’était ma dernière session de l’après-midi (même si en fait il y en avait une après).

Christophe nous offre une session rafraichissante pour nous ressourcer aux origines de l’agilité. Il remonte au manifeste agile et à l’invitation d’Alistair Cockburn. Non, en fait il remonte plus loin : à Henry Ford, Richard Denning et Taïcho Ohno…

AT Rennes 2013 : Christophe Keromen (1)

Je ne vais pas essayer de reconter la session de Christophe qui mérite plutôt d’être vue. Toutefois, je ne résiste pas au plaisir de dévoiler le Lean version Dan Brown : “Le Lean est un projet Franc-Maçon pour dominer le monde” ! Un grand moment…
Pour finir, Christophe nous propose un nouveau gourou agile : Bob l’éponge … pour absorber les pratiques qui marchent !

Tombée de rideau : A l’année prochaine !

Cet Agile Day était un peu marathonien, force est de l’avouer. Sur la durée, je dirais qu’il y avait une session de trop. Mais ce fut une excellente journée, aussi bien du point de vue de la qualité des sessions que de celle des échanges. Figurez-vous que j’y ai même rencontré l’un des fidèles lecteurs de mon blog (du coup, je le salue !).

AT Rennes 2013 : A l'accueil (1)

Il est temps de se quitter et de se donner rendez-vous à l’année prochaine. A moins qu’un coach retreat, entre-temps…

Andy Hunt: Uncomfortable with Agility: What has Ten+ Years got us?

La propriété fondamentale de l’agilité est l’aptitude au changement, la capacité d’évoluer en utilisant le feedback comme moteur de cette évolution.

Nous découvrons de meilleures façon de travailler … tels sont les premiers mots du manifeste agile. Ils ne disent pas “nous connaissons”. Alors pourquoi l’agilité a si peu évolué ces 12 dernières années ? Nous restons ancrés sur XP et Scrum, peut-être un peu mâtiné de Lean…

Andrew Hunt revient sur ce que signifie être agile, et non “faire agile”. Une présentation qui retourne au coeur de l’état d’esprit agile, par l’un des auteurs du manifeste.

Carnet de route : Agile Tour Rennes en images (1/2)

C’était cette année ma première visite à l’Agile Tour Rennes. Venu en renfort du staff Zenika local, je ne présentais aucune session, au contraire de Géry Derbier, animateur d’un atelier l’après-midi. Une journée que l’on pourrait donc qualifier de relax pour moi. J’en ai profité pour prendre pas mal de photos, ça va donc être encore plus “en images” que d’habitude !
Pas d’autre choix que d’arriver la veille : les organisateurs de cet Agile Tour avaient prévu une journée particulièrement dense débutant à 8h30, pas moins !

Lever de rideau

Première conséquence : l’ouverture des portes alors que le soleil n’est pas encore levé !

AT Rennes 2013 : début des festivités (1)

Et pour nous, la nécessité d’arriver encore une demi-heure avant pour nous installer.

AT Rennes 2013 : début des festivités (3)

L’occasion aussi de voir le point central avant l’arrivée de “la horde”. Profitez-en, vous n’allez plus jamais le voir comme ça !

AT Rennes 2013 : début des festivités (2)

Le comité d’organisation ouvre les festivités, c’est l’occasion de saluer cette équipe sympathique et dynamique !

AT Rennes 2013 : accueil (3)

Le programme est dense, aucun doute. Jugez-en !

Programme Agile Tour Rennes 2013

Prélude (Keynote) : Ensemble c’est tout, par Aurelien Morvant

… Où l’on parle de sociocratie. Un petit rappel pour moi, certes, mais Aurélien aborde le sujet de manière intéressante.

Petit rappel historique

Donc, ça commence au Jurassique … euh non, là on est quand même remontés un peu loin !
Avançons dans le temps : les monarchies. Sociales, je ne sais pas, elles semblent plutôt autocratiques. Apparues avant ou après selon les cas, les dictatures revêtent les mêmes habits !
Les démocraties semblent se rapprocher d’un modèle participatif. Oui mais la concertation se fait surtout à l’élection, guère après. Sauf lorsque l’on fait des référendums et encore est-ce fait avec des questions fermées.
Et le monde de l’entreprise, alors ? Celui-ci parait en fait également se caler sur le mode autocratique.

AT Rennes 2013 : Keynote

Comment ça marche ?

Edenburg définit les 4 piliers de la sociocratie comme suit :

  • Le consentement
  • L’élection sans candidat
  • Le double lien
  • Le cercle

Le cercle est la base du dispositif. Il existe aux différents niveaux hiérarchiques.
Le consentement est le mécanisme de décision qui permet d’aller dans une direction sans nécessairement satisfaire tout le monde, mais sans insatisfaire personne, du moins de manière rationnelle. Le consentement, c’est accepter une proposition à laquelle on n’oppose pas d’objection valide (je peux vivre avec…). Au contraire du consensus qui doit satisfaire tout le monde est finit généralement par être vidé de sa substance !
Le double lien, c’est la hiérarchie classique qui descend les décisions, mais un délégué du cercle inférieur qui accompagne ce supérieur hiérarchique pour remonter ce qu’en pense le cercle d’en dessous.

Mais dans la vraie vie ?

Ce dispositif est déjà bien implémenté au sein de milieux associatifs. Il commence à l’être dans des environnements tels que des mairies, des hôpitaux..
Certaines entreprises commencent aussi à mettre en place la sociocratie, du moins dans une certaine mesure.

Entracte : une pause avant de poursuivre la matinée

La matinée est longue. Profitons des pauses, qu’elles soient prévues ou non pour se désaltérer et revoir de vieilles connaissances comme Emilie, c’est toujours un grand plaisir.

AT Rennes 2013 : Pause matinée (1)

Etant venu à Rennes pour soutenir l’équipe Zenika, il m’est difficile de me joindre à une session pour sa durée entière et je dois donc limiter mes choix à certaines salles. En fait, à l’amphithéâtre principale où l’on accède par les derniers gradins.

Acte premier : Comment devenir agile et surtout le rester, par Aurélien Morvant et Sylvie Le Bail

C’est de changement culturel dont nous parlent Aurélien et Sylvie. Mon “keep away” de cette session (que j’ai prise en cours de route) tient sur 5 points :

Le manager devient le garant des valeurs et de la culture

Le changement est quelque chose de paradoxal. C’est à la fois “je veux y aller” et “je ne veux pas y aller”. C’est la manager qui a pour rôle de rassurer en garantissant que certaines choses vont être stables.

Donner du sens

C’est répondre à 3 questions :

  • Pour quoi ?
  • Comment ?
  • Quoi ?

Le “pourquoi” nous amène fatalement au fameux Start with the why de Simon Sinek. Cela se décline pour une organisation en :

  • Vision
  • Valeur
  • Mission
AT Rennes 2013 : Aurélien Morvant (1)

Donner de l’autonomie

Il faut passer à “l’entreprise du pourquoi”. 4 étapes pour y arriver :

  1. La dépendance.
  2. La contre-dépendance. On s’oppose en répondant “non”.
  3. La confrontation avec la réalité : l’indépendance. Mais l’indépendant ne communique pas !
  4. L’interdépendance. Elle implique des relations d’égal à égal avec les autres.

L’autonomie, c’est la capacité à travailler avec les personnes de l’étape 4 !

Nourrir la démarche

Le constat sur l’entreprise d’aujourd’hui n’est pas glorieux:

  • 11% se sentent “engagés” dans l’entreprise.
  • 61% sont désengagés.
  • 28% sont activement désengagés. Ce qui veut dire qu’ils dénigrent l’entreprise !

L’objectif est de récupérer l’énergie des désengagés. Autant dire que cela ne se fait pas tout seul ! On peut agir sur l’environnement, mais on ne peut pas agir sur les motivations, car les motivations sont des facteurs intrinsèques.

Travailler sur les motivations

On retourne vers un vieux modèle, mais qui marche toujours : la pyramide de Maslow.

Pyramide de Maslow

Entracte : faisons une pause déjeuner

Nous sommes arrivés doucement à la pause déjeuner. On fait dans le style “snack”. L’avantage, c’est que l’on n’a pas de longues queues pour accéder à sa pitance.

AT Rennes 2013 : Lunch (3)

Et on peut en profiter pour discuter.

atrennes13-09pause-matin03

Au détour d’un buffet je croise Oana qui s’attaque aux organisateurs plutôt qu’au buffet.

AT Rennes 2013 : Oana (4)

Toutefois, il est bien clair qu’elle a ses préférences…

AT Rennes 2013 : Oana (3)

C’est tout pour aujourd’hui. Nous reprendrons les sessions de l’après-midi dans un prochain post !

Note de lecture : Service Oriented Java Business Integration, par Binildas C. A.

Note : 7 ; Du concret sur l’ESB, mais un texte qui accuse aussi son âge…

Pas facile de s’y retrouver au sein du concept technico-marketing qu’est l’ESB ! Ce dont on a surtout besoin, c’est du concret. Et c’est exactement ce que l’auteur nous propose ici. Malgré son titre généraliste, le livre se focalise presqu’exclusivement sur la mise en œuvre de l’ESB open-source d’Apache, ServiceMix et de la norme JBI qu’il dessert.

En fait, les 2 premiers chapitres sont consacrés à la vue générale des problématiques d’intégration. Le premier chapitre présente les banalités habituelles sur l’ESB (mais plutôt bien présentées) et le second se focalise sur l’aspect plus technique en introduisant JBI et les « integration patterns ». Ce n’est qu’au chapitre 3 (on est déjà page 57) que ServiceMix, ou plutôt la vue globale de son architecture, est introduit.

A partir du chapitre 4, on passe en revue les différents types de binding, selon une complexité croissante. Tout d’abord un binding simple, dit conventionnel (chapitre 4), puis un binding « contract last » avec XFire (chapitre 5). Un binding plus complexe à trois niveaux est abordé au chapitre 8, mettant en œuvre des EJB, tandis que le binding de POJO est enfin abordé au chapitre 9. Puis c’est le tour de l’approche « gateway » ou « contract first » avec Axis (chapitre 10).

Les chapitres 6 et 7 font figure d’interludes. Il était difficile d’aller bien loin sans aborder les concepts de packaging et de déploiement des services ServiceMix, c’est chose faite au chapitre 6. De même, il est parfois utile de compléter la panoplie de bindings proposés par l’ESB, c’est l’objet du chapitre 7.

La problématique du transport est aussi un domaine où l’ESB permet une certaine souplesse. Le chapitre 11 montre comment accéder un Web Service au travers de JMS. Au chapitre 12, on voit comment effectuer le binding entre Java et XML (le langage natif de l’ESB) en utilisant en autre XStream. Enfin le chapitre 13 aborde le point plus complexe mais aussi plus exotique des proxys JBI.

Les derniers chapitres peuvent être vus comme des aspects avancés, donc pas forcément indispensables de prime abord. Le chapitre 14 aborde la problématique de versioning des Web Services, utile dans le cadre d’un SI « évolutif ». Le très long chapitre 15 traduit en services ServiceMix de nombreux integration patterns. L’agrégation de services est abordée au chapitre 16. Il s’agit d’un sujet plutôt avancé et c’est tant mieux car le propos n’est pas des plus clairs. On finit en ordre dispersé par un chapitre fourre-tout, avec les transactions, la sécurité le clustering et la vie des bêtes au chapitre 17. J’espère qu’il y a mieux ailleurs car ce n’est pas la joie.

Comme on le voit, c’est un tour d’horizon plutôt complet qui nous est proposé sur 400 pages. Il s’adresse clairement aux architectes. On y aborde les concepts et le code. Si le code Java est clair, il est fort dommage (et c’est mon reproche principal) que les configurations ServiceMix pourtant complexes soient aussi peu décortiquées. Leur compréhension reste ardue.

Ce type d’ouvrage est hélas sujet à l’obsolescence. Ne nous voilons pas la face, c’est bien le cas ici. ServiceMix (pour ne parler que de lui) a déjà changé de version majeure depuis un moment. Il n’a plus nécessairement la pertinence qu’il avait au moment de sa sortie…

service-oriented-java-bi

Référence complète : Service Oriented Java Business Integration – Binildas C. A. – Packt Publishing 2008 – EAN : 978 1 847194 40 4

Service-Oriented Java Business Integration

http://www.goodreads.com/book/add_to_books_widget_frame/1847194400?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on