Le management, c’est bien faire les choses.
Le leadership, c’est faire les bonnes choses.
Peter Drucker

Le management, c’est bien faire les choses.
Le leadership, c’est faire les bonnes choses.
Peter Drucker

Note : 6 ; La gestion de projets selon Unified Process.
Un ouvrage un peu dense et un peu difficile à lire, mais dont le contenu est indéniable, notamment sur les métriques de suivi de projet. Walker Royce porte un fardeau assez difficile : son père, Winston, est en effet l’auteur d’un article décrivant le cycle en cascade qui est à l’origine du « cycle en V »… à son corps défendant !
Les 4 parties constituées de 17 chapitres de la partie principale du livre couvrent un peu plus de 250 pages. Il faut y ajouter les très conséquentes 5 annexes de la 5ème partie qui totalisent à elles seules 150 pages !
La première partie « software management renaissance » comprend 4 chapitres et un peu moins de 70 pages. Bien entendu, le premier chapitre traite du modèle en cascade présenté dans l’article de 1970 de papa Royce. Plutôt que de critiquer son géniteur, Walker fustige, à juste titre je dois dire la manière dont le modèle a été mal compris. Le second chapitre, s’il est court avec sa dizaine de page, n’est pas une ballade de santé. Il présente l’évolution de l’économie du logiciel en terme de ROI, coût par SLOC, etc. En comparaison le 3ème chapitre qui présente logiquement l’amélioration de cette économie est nettement plus accrocheur. L’auteur y évoque l’influence de différents paramètres tels que le langage de programmation, l’utilisation de la conception orientée objet ou la pratique du peer review. Cette première partie se conclut par la comparaison des « anciens principes » contre les nouveaux (ceux de l’auteur). J’ai trouvé l’énoncé des 30 principes de Davis bien plus intéressante (même si certains sont clairement erronés), en regard des 10 principes de Royce.
La seconde partie « a software management process framework » rentre dans le dur de UP. 65 pages sur 5 chapitres y sont consacrés. Le chapitre 5 se focalise sur le concept de phase (vous savez, celui que l’on a abandonné avec agile…). Bien entendu ce sont les 4 phases d’UP qui y sont évoquées. C’est sans surprise que l’on aborde le chapitre 6 qui s’avère consacré à la question des artéfacts projet, les 25 pages de se chapitres évoque l’existence de nombre d’entre eux en les ventilant sur 5 pratiques d’ingénierie. Un chapitre que j’ai du mal à trouver passionnant, bien qu’il soit central dans les méthodes prescriptives et finalement bien abordé ici, y compris la discussion sur l’usage et l’apport d’artefacts formels. Les deux chapitres suivants sont étrangement courts. D’abord le chapitre 7 sur les modèles n’évoque que l’existence de 5 modèles (qui rappellent les 4 + 1 vues de Philippe Kruchten), mais sans aller plus avant parce que hors du sujet de l’ouvrage probablement. Ensuite le 8 chapitre 8 nous parle du workflow de l’itération, décrivant celle-ci comme un mini waterfall. Beurk ! Le dernier chapitre de cette seconde partie est plus ésotérique en évoquant les jalons majeurs et mineurs.
La troisième partie « software management disciplines » couvre 85 pages sur 5 chapitres. Il commence avec le chapitre 10 qui aborde la planification itératif et son outil phare : le WBS (Work Breakdown Structure). Encore un truc que l’on ne fait plus en agile. Toutefois si vous voulez rentrer dans le sujet, vous avez là une référence de première main. Non seulement il donne une méthode de découpage, mais évoque les répartitions budgétaires relatives et leur évolution en fonction des phases du projet ! Le chapitre 11 lui traite de l’organisation de projet, au sens « administratif ». C’est donc à des organigrammes qu’il nous faut faire face, avec des listes de responsabilités et tout et tout… Le chapitre 12 focalise sur l’automatisation du processus et notamment du change control. Bref, pas mal d’outillage « projet ». Fort logiquement, au chapitre 13, ce sont les indicateurs de management qui sont à l’honneur et principalement le fameux Erned Value Tracking (EVT). Le chapitre 14 aborde la customisation du processus (car UP se customise). Walker Royce aborde cela en classant les types de projet en 2 dimensions : la complexité technique sur un axe et la complexité de management sur l’autre. Chaque axe nécessite une emphase particulière sur certaines disciplines et certains artefacts. Il n’y a plus qu’à combiner les deux, hein ?
La dernière partie du corps du livre « looking forward » ne compte que 3 chapitres et se contente donc d’une trentaine de pages. Elle débute par le chapitre 15 qui évoque les projets dits « modernes ». C’est finalement là que l’on retrouve des choses qui se rapprochent le plus des projets agiles : des exigences qui évoluent, de l’intégration continue, mais le tout encore et toujours dans les fourches caudines d’XP aux forceps. Au chapitre 16, on tente de tourner notre regard vers un nouveau modèle économique des projets. Il s’agit en partie d’une remise en cause partielle des postulats de Boehm dans le cadre des développements actuels. La partie textuelle de cet ouvrage se conclu par un chapitre 17 assez courts évoquant les problèmes de transition vers ces processus…
La 5ème partie du livre est consacrée aux annexes. Comme je l’ai dit, elle est franchement volumineuse. L’annexe A évoque l’état des pratiques en s’appuyant sur des rapports. Hélas tout ce ceci n’est plus d’actualité, mais cette partie est au moins courte ! L’annexe B rentre dans le modèle COCOMO 2 de Boehm, et on s’en tire pour une vingtaine de pages. Une dizaine de pages sont consacrées à des métriques de changement qui à mon avis ne servent à rien. L’annexe D est un cas d’étude et franchement il faut être motivé pour s’en taper les 60 pages. Enfin, même si l’annexe D compte 30 pages, il est plus facile de s’y intéresser : challenger UP face à CMM peut s’avérer instructif.
Le livre est dense, très dense. Il traite de processus semi-prescriptif est déballant beaucoup de matériel, beaucoup de concepts et un niveau de technicité, en processus, en métriques et un petit peu dans tout, il faut bien le dire, qui est très élevé. Le vrai risque est d’être un peu noyé à force d’en vouloir pour notre argent. L’erreur de l’auteur est d’essayer d’augmenter le niveau de technicité, de finesse dans la maitrise et la gestion de projet, là où la clé serait plutôt la simplification.
Référence complète : Software Project Management: A Unified Framework – Walker Royce – Addison Wesley 1998 – ISBN: 0-201-30958-0
Ce 22 Septembre (oui, un dimanche), Christine Koehler nous a proposé de nous rassembler afin de réfléchir ensemble aux convergences entre forum ouvert et agilité. C’était aussi une opportunité d’échanger avec des orateurs du Scrum Gathering que Christine avait contacté pour l’occasion: Dan Mezick, Suzanne Daigle et Jasmina Nikolic. Suzanne nous a d’ailleurs gratifié d’un post pour l’occasion.
Zenika hébergeait ce rassemblement, je ne saurais trop remercier Carl Azoury d’être venu spécialement nous ouvrir les locaux ! Par contre l’aménagement spécifique à cette réunion nous était dû à Christine et entre la tenture d’affichage électrostatique, les posters répartis dans notre zLocalhost et la signalétique des points de rendez-vous, c’était de la mise en musique élaborée.
Parmi les appointés, quelques habitués des rendez-vous agiles.
Sur 22 inscrits, nous étions finalement 17, ce qui n’est finalement pas si mal. Le nombre ne fait pas la qualité de toute manière.
Christine et Suzanne ont ouvert la séance en rappelant le fonctionnement du forum ouvert. Je ne le rappelle pas ici, on trouve pas mal d’information sur le Web à ce sujet.
La première étape, c’est de proposer les sujets, bien sûr. Il n’y a pas de limite. On l’écrit sur un grand format…
… et on le présente devant tous.
Impact hub ? Cela ne me parle pas trop. L’occasion pour moi d’en apprendre plus…
Lorsque qu’on a fait le plein, on vient faire son marché.
D’ailleurs le lieux s’appelle bien la “place du marché”.
Dan Mezik et Jasmina Nikolic semblent assez pensifs devant les sujets. Le temps donné au groupe s’il est alloué ne veut pas dire que l’on s’y limite: Comme le dit Suzanne, la passion et l’énergie n’arrivent pas sur la base de la contrainte du temps.
J’en sais un peu plus maintenant sur l’impact hub ; le tout me laisse encore un peu dubitatif, bien que je sois à priori convaincu sur l’idée de croiser des champs d’activité différents pour faire germer des idées nouvelles. Mais pourquoi et comment ? L’idée fera peut-être son chemin avant de vraiment m’interpeler.
D’autres sessions en cours. pas très facile pour moi de m’insérer en cours de route, je passe.
Je passe aussi celle avec Dan Mezik !
Finalement je reste un peu sur une session consacrée au respect des règles et à la cohésion d’équipe !
Je ne suis pas sûr d’accrocher à la direction que prends la discussion. Assimiler les “valeurs agiles” à une spiritualité, c’est peut-être trop fort pour moi. Et oui, en bas de la feuille, c’est bien marqué “sexualité”.
Pour le coup, j’ai aussi manqué la discrète discussion menée par Jasmina autour du “oscrumban” ! Donc, je ne sais toujours pas ce que c’est !
Au risque de vous frustrer, je ne vais pas retranscrire les discussions. Un forum ouvert, ça se vit plus que ça ne se restitue. Même si le “grand journal” essaie de se faire l’écho de notre après-midi !
There’s no sense in being precise when you don’t even know what you’re talking about.
Le DevFest Nantes 2013 est une journée de conférences organisée par le GDG Nantes, qui s’inscrit dans un évènement mondial : les DevFests.
Les DevFests sont des événements communautaires de grande envergure à travers le monde, suivant la tradition des Google Developer Days et organisés par des groupes d’utilisateurs locaux. Ils constituent une occasion unique de partager et d’échanger autour des technologies du Web et du Cloud ! Et plus particulièrement sur Android, Dart, AppEngine, Angular JS, Chrome, HTML5, WebGL, Google Drive, Go, GWT… Cet événement sera suivi d’une AfterParty afin de discuter de manière conviviale et faire du networking !
Zenika est partenaire de longue date du Google Developers Group de Nantes et aussi l’un de cette manifestation.
Nous serons aussi parti prenante de l’évènement avec une session que je co-animerais avec Martin Mouterde. La session mérite bien sûr son petit teaser !
De l’agilité pour mon projet : pour quoi faire ?
Les développeurs ne sont pas tous des individus mal rasés, travaillant la nuit et jonchant leur sillage de boites de soda et d’emballages de pizzas.
L’agilité ne se réduit pas à des hurluberlus cherchant à couvrir chaque centimètre carré des murs de post-it multicolores.
Et d’ailleurs, l’agilité, qu’est-ce que c’est ? Vraiment !
Est-ce une nouvelle mode qu’il me faudra subir et passera à mon grand soulagement ? Ou est-ce une véritable réponse à la sclérose et l’inefficacité qui gangrènent nos projets ?
Durant cette session de découverte, nous allons voir ensemble ce qu’est réellement l’agilité, en quoi elle peut vous aider à réaliser des projets qui déchirent tout en y prenant plaisir ! Depuis les principes de base (adaptation aux changements, collaboration et transparence) jusqu’aux pratiques telles que le test-driven développement, le pair-programming, l’intégration continue, etc. nous iront à la rencontre des fondamentaux de l’univers agile.
Enfin, nous dérouleront un jour dans la vie du développeur agile pour comprendre comment les choses se passent. Réellement.
Rendez-vous à Nantes le 8 Novembre pour la DevFest !
I wasn’t able to follow the post. I got myself lost into the superb presentation built for it. Chess game replays. Dynamic graphs. Pure awesomeness.
This is by far the most entertaining blog entry presentation I’ve seen since I’ve start reading and writing about NoSQL.
Original title and link: Purely awesome – Chess Games and Neo4j (NoSQL database©myNoSQL)
Cedric Fauvet évoquait justement ce cas d’usage de Neo4J lors du meetup de mardi. Voici a chose mise en musique, hélas seuls les vrais amateurs d’échec sauront vraiment apprécier la chose, ce qui n’est pas non plus mon cas. Comme l’auteur du post, je me suis simplement laissé hypnotiser par ce très beau replay…
When you feel the need to write a comment, first try to refactor the code so that any comment becomes superfluous.
Martin Fowler in Refactoring

Note : 4 ; Hélas assez ennuyeux.
BPEL est, en quelque sorte, le modèle d’exposition du SOA. Ni les produits ni les ouvrages ne se bousculent pour autant au portillon, toutefois. J’étais donc assez content d’avoir mis la main sur un de ces livres, celui-ci étant traduit en français, en prime ! J’avoue ne pas en avoir eu pour mon argent (il faut aussi dire que le livre est particulièrement cher).
Le livre se découpe en deux grandes parties : la première est consacrée à la description de BPEL, avec une assez longue introduction sur les Web Services, la seconde est dédiée au survol de deux outils : Oracle BPEL Server et Microsoft Biztalk, ce dernier n’étant traité que de façon superficielle.
La première partie (celle sur BPEL), débute par 2 chapitres introductifs. Le premier introduit les concepts généraux de SOA, des ESB et de l’orchestration de services en général. Sans être un chef d’œuvre, il donne un bon panorama de la question. Le second introduit les normes liées au Web-Services et la pente est plutôt raide, j’ai fini par décrocher.
De cette première partie, ce sont en fait les chapitres 3 et 4 qui traitent réellement de la grammaire BPEL. Ils sont à mon sens les plus importants de l’ouvrage et me laissent un sentiment mitigé. Certes, le boulot est fait et la grammaire présentée, mais on sent l’auteur souvent plus pressé de présenter des fragments de XML que d’exposer l’explication correspondante. J’avoue que le propos est souvent difficile à suivre, à défaut d’être passionnant (ce qu’il n’est pas), et j’ai régulièrement perdu pied. Au final, le livre m’a quand même bien aidé à voir la « big picture ».
L’une des plus-values de ce livre est probablement de montrer comment tout cela se met en œuvre avec un serveur BPEL. Deux d’entre eux sont présentés, mais c’est surtout Oracle BPEL server qui illustrera le propos. Les chapitres 5 et 6 (soit 125 pages) sont consacrés à cela.
Le chapitre 5 est particulièrement intéressant car il expose non seulement l’architecture d’Oracle BPEL server mais explique également comment les fichiers sources sont organisés, comment s’effectue le déploiement, ainsi que l’utilisation des outils de développement (a.k.a. BPEL Designer). Le chapitre 6 consacré aux aspects avancés du produit est également intéressant, surtout grâce à la présentation de l’intégration de WSIF au sein de l’outil.
La partie dédiée à Biztalk server qui termine l’ouvrage (chapitre 7) est un ajout dont on aurait bien pu se passer : la présentation est inintéressante et présente essentiellement un défilé de copies d’écrans sans réellement exposer la philosophie et l’architecture du produit. On en ressort aussi ignorant qu’on y est entré.
Si vous cherchez un ouvrage traitant sérieusement de BPEL, soyez lucide, il y a peu de choix. Celui-ci n’est peut-être pas obligatoire, mais vous allez tomber (ou retomber) dessus assez vite. Mais le livre ne fait pas briller les yeux. Les middleware de workflow ne sont pas forcément non plus des sujets « trendy » d’où le déficit d’ouvrages…
Référence complète : BPEL pour les services Web 2ème édition, Orchestration de services web avec BPEL : guide pour architectes et développeurs – Matjaz B. Juric, Benny Mathew & Poornachandra Sarang – Packt publishing 2006 – EAN : 978 1 847192 16 5
Le prix est ce que vous payez. La valeur est ce que vous gagnez.
Jack Clark for TheRegister quoting Google senior systems engineer, Jeremy Cole’s talk at VLDB:
“Were running primarily on [MySQL] 5.1 which is a little outdated, and so we’re moving to MariaDB 10.0 at the moment,”
I’m wondering how much of this decision is technical and how much is political. While Jack Clark’s points to the previous “disagreements” between Google and Oracle, when I say political decisions I mean more than this: access to the various bits of the code (e.g. tests, security issues), control over the future of the product, etc.
Original title and link: Google moves from MySQL to MariaDB (NoSQL database©myNoSQL)
J’avais déjà évoqué la chose précédemment, aujourd’hui le mouvement est clairement enclenché : c’est la totalité des instances MySQL qui passent sur MariaDB !
Les raisons qui conduisant à ce changement n’ont probablement pas la limpidité de la déclaration officielle. Le “vieillissant” MySQL est certainement l’un des facteurs, cela m’étonnerait que ce soit le principal. Pour ma part j’évoquerais en priorité :
En contrepoint, le fait de travailler avec un petit éditeur qui a besoin d’une solide référence et qui est donc prêt à se plier au désidérata du géant de l’Internet a un intérêt évident…