SysML, l’UML de l’analyse système

Voici un court papier écrit en 2005. Les reflexions qu’il soulève restent pertinentes. Je me suis bien éloigné de ces considérations depuis une dizaine d’années. Si les efforts pour structurer les exigences paraissent louables, je ne peux m’empêcher de les trouver vains. Ou tout au moins aurait-il falu les compléter par une structuration des tests (via des stéréotypes ?) à différents niveaux…

Je ferais certainement l’effort d’une note de lecture sur l’ouvrage de Pascal Roques un de ces jours. En attendant : enjoy !

Une transition agile en 12 leçons apprises

J’avais évoqué il y a peu le Printemps Agile 2015. J’y ai présenté un retour d’expérience sur le projet Linky en 12 « patterns » pratiques pour accompagner cette transition. Voici le support de ma présentation, en attendant la mise en ligne de la vidéo et une hypothétique version rédigée.

Linky, c’est le grand projet ERDF de mise en place du « compteur intelligent ». Une grande aventure qui a amené le plateau de développement Parisien (12 équipes de développement) à basculer vers un fonctionnement agile. Cette présentation ne raconte pas l’histoire du projet : Jean-Hugues Hamelin et Nadim Elbaba qui la vive de l’intérieur depuis un bout de temps l’ont raconté avec plus de pertinence et d’intérêt que je n’aurais pu le faire lors du ScrumDay 2015. Non, ici c’est de mon point de vue de coach accompagnant ces équipes que je parle.

Note de lecture : Making Sense of NoSQL, par Dan McCreary & Ann Kelly

Note 4 ; NoSQL plus ou moins décrypté pour le manager

Voici un ouvrage « à priori » destiné aux managers. En tout cas son objectif est de donner une image du paysage NoSQL sans nécessité de voir une ligne de code. Dans le principe, le livre atteint son objectif : il couvre les différents types de bases NoSQL, avec toutefois un biais marqué vers les bases XML (qui ne sont généralement pas considérées comme des bases NoSQL), ces dernières ayant droit à leur propre chapitre contrairement aux autres ! Mais le texte me laisse quand même un sentiment d’inachevé, il ne permet pas vraiment de comprendre les patterns d’usage des différentes bases par manque de parti pris.

L’ouvrage est assez conséquent pour une introduction. Il compte 275 pages réparties sur 12 chapitres. Ceux-ci sont eux-mêmes regroupés en 4 parties. La première d’entre-elle est une introduction, courte d’un peu plus de 30 pages et de deux chapitres. Le premier répond au « pourquoi » en exposant succinctement quelques cas d’études des grands du Web, c’est hélas très superficiel. Le second s’attaque aux concepts : documents, sharding, théorème de CAP, cache, etc… C’est un peu brouillon et j’aurais préféré y voir une bonne exposition des typologies de bases.

La seconde partie a trait aux patterns de bases de données, à mon avis le sujet central. Nous avons 90 pages réparties sur 3 chapitres. Le chapitre 3 est en théorie consacrée aux patterns architecturaux. Dans la pratique, ses 24 pages couvrent surtout les concepts relationnels et un peu l’OLAP, bref de quoi être bien déçus ! C’est en fait le chapitre 4 qui a la lourde tâche de faire le tour des différents paradigmes de bases NoSQL : clé-valeur, big table et orienté document, sur 33 pages. Nous avons de la chance : ce chapitre est remarquablement bien fait. Vient l’alien au chapitre 5, celui consacré aux bases XML. On sent que le sujet tient au cœur des auteurs car sur ses 27 pages, le sujet est creusé bien plus en profondeur que pour les autres bases. On aborde même la construction d’application avec Exist !

La troisième partie est intitulée « SQL solutions ». Elle est longue de 82 pages et compte 4 chapitres. Le big data est bien sûr un sujet d’importance. On y consacre joyeusement les 27 pages du chapitre 6. Malheureusement, le traitement est d’avantage digne de 01 Informatique que d’un ouvrage sérieux. On y apprend pas grand chose, sauf si vous ignorez que map-reduce est la clé de voute de cette thématique… La recherche est un sujet inattendu mais bienvenu. On reste aussi à haut niveau au long des 17 pages de ce chapitre 7, mais le contenu est un peu plus éclairé que pour le sujet précédent et les auteurs nous y exposent au moins plusieurs typologies de recherche. La haute disponibilité est le sujet des 19 pages du chapitre 8. A mon avis, les auteurs échouent à rendre cela passionnant. Au chapitre 9, on parle d’agilité. Ou plutôt on passe complètement à côté du sujet. De nouveau, les auteurs en profitent pour nous caser un sujet complètement exotique qui leur tient à cœur : un moteur XForm appelé XRX. J’aime bien XForm, même si la norme n’a jamais prise et a aujourd’hui rejoint le cimetière des éléphants, mais que fout ce sujet ici ?

Très classiquement la quatrième partie est dévolue aux « sujets avancés ». Il s’agit de 70 pages sur 3 chapitres. Le chapitre 10 est pour le moins original, car il fait le lien entre programmation fonctionnel et bases NoSQL. Les 22 pages de ce sujet sont plutôt inattendues. Cela concerne surtout les big table, mais c’est plutôt bien construit et sympathique. C’est de sécurité qu’il s’agit au chapitre 11. Nous en prenons pour une vingtaine de pages, mais les auteurs maitrisent vraiment bien leur sujet. C’est un plaisir. On ne peut pas en dire autant du dernier chapitre dédié à la sélection d’une base. Les 20 pages qui y sont consacrées nous proposent un processus bien relou à l’ancienne. C’est idiot et pénible à lire.

Tout n’est pas mauvais dans cet ouvrage, loin s’en faut. Il est hélas souvent un peu trop stratosphérique et bien trop verbeux. Bref, un peu frustrant.

image

Référence complète : Making Sense of NoSQL – Dan McCreary & Ann Kelly – Manning 2013 – ISBN : 978 1 617291 07 4

Making Sense of NoSQL

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

Water – Scrum – Fall … la réalité d’aujourd’hui ?

Le constat

Oui, l’agilité gagne en popularité dans les organisations ! Du moins, apparemment. Les idées qui en sont à la base comme le « people centric » génèrent un réel intérêt. Aujourd’hui plus encore qu’hier, « agile » rime avec « Scrum ». Cet article met en exergue ce qui était déjà un soupçon fort, ce que j’appelle le Scrum « Canada Dry » dans mon article Scrum Shu Ha Ri :

  • La MOA rebaptisée « Product Owner ».
  • L’organisation matricielle, avec les développeurs devant partager leur temps sur plusieurs projets (je l’avait raté celle-ci)
  • Des itérations qui ne couvrent que partiellement le cycle logiciel
  • La « culture projet » où les équipes se font et se défont régulièrement au grée des projets.

Les organisations elle-même créent un carcan dans lequel inscrire un projet agile devient compliqué, à moins d’en pervertir la logique : logique budgétaire, silotage des activités, prédominance de la « logique document » et des releases parcimonieuses pour d’apparentes raisons économiques et culturelles.

Pourquoi ?

Ce constat met en relief un aspect quasi schizophrénique de l’adoption de l’agilité (d’où le titre de l’article). Celui-ci s’explique du fait de l’adoption des processus agiles par les praticiens qui tend à cloisonner l’agilité dans les équipes de développement, les équipes connexes restant attachées à leurs anciens processus. La réalité du « water-scrum-fall » se traduit par :

  • En amont : de lourds processus budgétaire et cadrage qui engagent les développements sur des besoins mal connus ou erronnés mais définis à l’avance. Non seulement ce passage de relai anihile la flexibilité que l’on attend des processus agiles, mais il démobilise les équipes.
  • Un développement « agile » mais au mandat amendé :
    • Moins de « cross-fonctionnalité » car les besoins sont traités ailleurs.
    • Pas réellement de « potentiellement déployable » car le test est déféré hors du sprint.
    • Pas d’interaction avec le client, car c’est l’objet du cycle amont.
    • Pas d’adaptation au changement car le plan est fixé quand le développement arrive à l’équipe.
  • En aval : Une ligne de démarcation importante stigmatisée par une « séparation des responsabilités » qui crée une situation de confrontation entre développement et opérations conduisant à des releases moins fréquentes. Ces deux équipes ont par ailleurs des objectifs différents : la réponse aux besoins du business pour l’un, la stabilité et le maintient en conditions opérationnelle pour l’autre.

Quelles recommandations ?

Pour l’auteur, on peut enclencher les bénéfices de l’agilité avec ce modèle à 3 bandes :

  • Faire maigrir la phase amont. La plus grande partie de la production de cette phase est du gâchis.
  • Rendre l’équipe de développement réellement pluridisciplinaire. Donc en intégrant les capacité d’analyse et la relation avec l’utilisateur.
  • Accroitre la fréquence des déploiements en aval.

Petit Printemps est devenu grand !

Connaissez-vous Leanette ?

image

Leanette est la mascotte du Club Agile Caennais. Un club qui est né sous l’impulsion de Jean-Luc Lambert entouré de quelques passionnés. De rencontres en meetups, il ont organisé une rencontre en 2012. Le club n’était alors pas dans mon radar. Cette rencontre de 30 personnes s’est transformée en un petit évènement de 70 personnes l’année suivante. Celui-ci avait attiré mon attention par la présence exceptionnelle de Jurgen Appelo et j’avais relaté l’évènement ici et ici.

De 70, la rencontre est passée à 150 inscrits l’année suivante. Une édition où je figurais cette fois comme speaker et que vous retrouverez ici et ici, et bien entendu ici pour ma propre session.

Bienvenue à l’édition 2015 !

C’est de nouveau comme speaker que je suis venu cette année. Cette fois, il a fallu quitter les locaux de l’université pour accueillir les 300 inscrits. Un beau succès !

image

Par rapport aux autres conférences agiles, celle-ci présente 3 particularités :

  • Tout d’abord une importante présence étudiante. Jean-Luc Lambert est professeur à l’université, il n’y est pas étranger. Mais c’est un grand plaisir de les voir participer à l’organisation et à l’accueil, de les croiser dans les sessions et dans le hall où ils nous montrent leurs projets.
  • Le Printemps Agile est aussi une conférence où il n’y a pas de keynote. Même l’année où la conférence a accueilli Jurgen Appelo !
  • Enfin, depuis cette année, la conférence est aussi activement soutenue et sponsorisée par des organismes institutionnels.

S’il n’y a pas de keynote, Jean-Luc nous gratifie quand même d’un petit mot d’accueil.

image

De nombreuses sessions en parallèle se présentent à nous, conférences et jeux. Pas de chance, il va me falloir choisir entre Florent Lothon et Antoine Vernois ! C’est en fin de compte à la session de Florent que je me rendrais, cela faisait 2 ans que je voulais y assister.

image

Tribal Leadership, avec Florent Lothon

Pourquoi s’intéresser à ce sujet étrange ? Pour constituer des équipes capables de déplacer des montagnes ! Cette présentation de Florent s’adosse aux principes énoncés par Dave Logan dans son livre, fruit d’une étude de 10 ans dans différentes organisations, sur plus de 24000 personnes !

C’est avec une petite vidéo plutôt inspirante que Florent nous introduit la force du tribal leadership.

Une tribu, ce sont de 20 à 150 personnes partageant un lien social, une connexion qui est organique et non hiérarchique. Des personnes dont notre orateur dit « qu’elles se saluent quand elles se croisent dans la rue ». Pour Dave Logan, il y a 5 étapes à cette progression tribale, une progression où l’on ne peut sauter une classe !

Stade 1 : La vie est nulle (environ 2% de la population). Les personnes « piégées » ici ont une relation de sabotage, d’exclusion. Pour les en sortir (et passer au stade 2), il faut les faire aller là où est l’action en les coupant des autres personnes du stade 1. Leur montrer que la vie peut fonctionner.

Stade 2 : Ma vie est nulle (environ 25% de la population). Il y a un peu d’espoir. Ce sont généralement des personnes qui font « juste leur job ». Elles sont dans le groupe sans vraiment l’être. Pour les y inclure il faut créer des « relations dyadiques ».

image

Stade 3 : Je suis génial (environ 24% de la population). C’est un sentiment certes positif, mais pas une logique d’esprit d’équipe. Notre société moderne est construite pour former ce type d’individus. Au bout du chemin, cela conduit à des relations de domination personnelle (par de la rétention d’information, par exemple). Ici le levier serait celui des rencontres triadiques (à l’image des rencontres matrimoniales).

Stade 4 : Nous sommes géniaux (mais pas les autres ; environ 22% de la population). Pour passer au stade 5, il faudra envisager l’abandon de la « quincaillerie agile ». Les moteurs du passage seront des valeurs fondamentale associée à une noble cause. La stratégie pour atteindre cette noble cause doit venir de la tribu et non de son leader.

Stade 5 : La vie est géniale (2% de la population), on n’est plus en compétition. On croit en ce que l’on fait et on n’est plus en relation concurrence avec les autres.

Open-space et pause déjeuner

La grande salle était prévue pour former un grand lieu de rencontre. Véronique Duflot était l’instigatrice de cette idée. Et les idées ont cela en commun qu’il faut essayer pour voir si cela marche ou pas. En l’occurrence, pas un chat (ou presque) dans cet espace. J’y ai trainé durant le second créneau dans l’espoir de quelques discussions. Pas tout à fait en vain, toutefois : j’ai pu discuter RH agile avec Véronique.

L’heure du déjeuner arrive. Je me retrouve rapidement en conversation avec Florent Lothon et Antoine Vernois. Et bien sûr on évoque la difficulté d’introduire le craftsmanship et la culture de la qualité logicielle dans les équipes. Force m’est de constater que cette difficulté n’est pas seulement mienne. Cela doit-il me rassurer ?

image

Je n’ai jamais eu l’occasion de parler avec Florent précédemment. Nous parlons facilement de sujets tels que la culture agile, les valeurs et même la déontologie. Florent est aussi remarquable que je l’imaginais. Plus même en fait. J’espère avoir l’occasion de le rencontrer à nouveau, j’ai hâte de savoir comment évolue ce qu’il met en place chez Swiss Life.

Accompagner la transition d’un grand projet agile

C’est mon tour. Curieusement, pour une session plénière, je dispose d’un créneau de … 1 heure 30 ! Je décide donc de le couper en deux :

  • La session initialement prévue sur 40 minutes.
  • Une foire aux questions sur le reste du temps.

Vous trouverez bientôt ma présentation en ligne, et un article complet dès que j’en aurais le courage ! Je ne développerais donc pas le sujet ici.

J’utilise régulièrement le principe de la « foire aux questions ». Il est simple :

  • Accorder un peu de temps aux participants pour rédiger des questions.
  • Donner des points de vote à chaque participant, à utiliser librement.
  • Ranger le backlog des questions dans l’ordre des votes.
  • Utiliser chaque question pour initier une conversation.
  • Passer la question en « done » lorsque la personne à l’origine de celle-ci juge qu’elle a été traitée.

Le Lean Management pour libérer l’entreprise

Dernière session de l’évènement, Xavier Médard vient évoquer le Lean… mais aussi sa connexion avec l’entreprise libérée !

image

En effet, le Lean est aujourd’hui mal compris. Les entreprises occidentales ont saisi les notions de juste à temps et de gaspillage, mais en occultant la place de l’homme. Lean et entreprises libérées ne sont pas incompatibles, elles sont même complémentaires.

L’heure de se séparer

Pas de rétro en plénière cette année, mais une sorte de feedback wall. Beaucoup de positif et d’enthousiasme y est visible. Frédéric Leguédois et moi-même y allons du même post-it : Le Printemps Agile est la seule conférence sans keynote et cela doit continuer ainsi !

image

Il faut chercher les quelques points méritant une amélioration, mais il y en a au moins un : Il manquait un cursus pour débutant cette année, malgré la présence d’ateliers de jeux agiles. Il y a 2 ans, Frédéric s’était dévoué pour une session de ce genre. L’an dernier, j’avais présenté « Scrum Shu Ha Ri » destiné aux nouveaux-venus. Pourquoi pas un véritable « cursus découverte l’an prochain, avec des sessions spécialement consacré aux nouveaux venus, un livret, etc. ? Une idée à creuser avec le club, peut-être ?

Le campus universitaire ne pouvait accueillir le public grandissant de l’évènement, celui-ci a migré vers la chambre de commerce et de l’industrie. Le nouvel espace présente des salles regroupées autour d’un hall, c’est bien plus convivial et évite les grands déplacements entre étages, bien que la capacité du hall lui-même soit un peu juste.

Quoi qu’il en soit, l’organisation a encore progressé cette année en qualité, bien que nous n’ayons pas eu l’équivalent du « méga ice-breaker » de l’an dernier. C’était quelque chose ! Un grand merci à la sympathique équipe organisatrice !

image

Pas de 3ème mi-temps cette année : les uns devaient rentrer, les autres étaient fatigués. Le Printemps Agile joue désormais dans la cours des grands évènements, il garde pourtant ses spécificités, pour longtemps, j’espère.

Note de lecture : GIS for Web Developers, par Scott Davis

Note : 5 ; Un survol plaisant, mais aussi frustrant

Je pense l’avoir souvent dit, mais je le redis : « pragmatic bookshelf » est un excellent petit éditeur et j’en achète la plupart des titres sans regarder plus avant. C’est ce que j’ai fait pour celui-ci. De plus, bien que les GIS ne soient pas un de mes sujets du moment, ils provoquent chez moi des réminiscences de mon passé de géologue…

La caractéristique de ce livre de 240 pages que l’on remarque aussitôt est son impression quadrichromique (c’est certainement pour cela qu’il est imprimé en Chine). Il faut dire que l’ouvrage est émaillé de nombreuses cartes en couleur. Lorsque l’on en débute la lecture, la seconde chose que l’on remarque est sans aucun doute le style particulièrement vivant et agréable de l’auteur. En fait, il me rappelle celui de Scott Meyers (mais ce dernier garde un petit avantage). Le livre se veut une initiation au GIS pour les développeurs ne connaissant pas encore le domaine. L’auteur y consacre 9 chapitres.

Les 4 premiers chapitres sont consacrés aux standards géographiques : représentations vectorielles ou raster et surtout les différents types de projections et de conversion. Un des aspects particuliers du GIS est l’importance primordiale des sources de données et de la possibilité de les combiner. Sur l’aspect des standards de référentiels spatiaux et des conversions, je regrette cependant que l’auteur ait fait l’économie de diagrammes explicatifs. Les explications textuelles restent difficiles à conceptualiser…

Les 3 chapitres suivants évoquent les bases de données GIS, et plus précisément PostGIS, ainsi que les Web Services avec OGC. Ces chapitres ont plus directement que les précédant, la finalité de construire une véritable application Web GIS. Ils sont complétés par 2 chapitres traitant de sujets complémentaires.

J’ai finalement un peu de mal à donner une excellente note à ce livre, car il m’a un peu laissé sur ma fin. Il possède tout de même, pour le lecteur simplement curieux, d’être agréable à lire, ce qui permet de s’initier dans de bonnes conditions.

image

Référence complète : GIS for Web Developers, adding where to your Web Application – Scott Davis – Pragmatic Bookshelf 2007 – ISBN : 0-9745140-9-8 ; EAN : 978-0-9745140-9-3

GIS for Web Developers: Adding 'Where' to Your Web Applications

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