Deux videos du dernier SigmaT, le 8ème du nom, sont en ligne. Celle de Claude Aubry n'est pas encore disponible car il est AFK.
Il y a donc celle de Pascal Roques qui nous a parlé de modélisation agile et que j'ai vraiment apprécié. Surtout quand elle permet de mettre en avant une idée toute simple : l'activité de modélisation en elle-même est au moins aussi importante que le résultat car elle permet à l'équipe de communiquer et de se forger une vision partagée.
Je pense avoir quelques trucs intéressants à raconter mais je préfère prévenir que cela risque de ne pas être aussi passionnant que le retour d'expérience XP chez Igeoss. Je viens d'ailleurs de mettre en ligne la prestation de David Desmarest que j'avais filmée lors de l'Agile Tour.
Les autres interventions filmées le 16 octobre ne sont malheureusement pas encore disponibles pour des raisons techniques (mon camescope m'a laché avant que je puisse les récupérer).
Je ne sais pas si c'est dû au cycle lunaire ou à quelque chose du même genre mais j'observe une floraison de billets "polémiques" sur les blogs traitant de méthodes agiles. Là, il s'agit de l'éternelle méfiance des agilistes envers les phases trop grosses de modélisation (le Big Design Up Front comme on dit) et, par extension, envers les approches de "développement piloté par les modèles".
La raison ? L'engouement pour Scrum a fait que nombre d'équipes insuffisamment préparées se retrouvent dans des situation inextricables de dette technique. Ils ont naïvement cru que l'on pouvait tirer bénéfice d'une gestion de projet agile sans en payer le prix.
Les adeptes de méthodes agiles utilisateurs de la version française de wikipédia auront peut être remarqué un assez curieux historique sur les entrées concernant les méthodes agiles et Scrum en particulier : la méthode "RAD" de James Martin serait à l'origine des méthodes agiles !
Claude Aubry explique comment cette information a induit en erreur un très sérieux journal d'informatique.
J'ai pris l'initiative de supprimer la plupart des références abusives sur la fiche de Scrum. L'auteur de ces références n'a visiblement pas aimé la manoeuvre.
Une des règles de base du TDD, le dévelopement piloté par les tests, est "avant d'écrire une ligne de code, écrire un test qui ne passe pas". Le ligne de code sert ainsi à faire passer le test. Cette approche permet d'écrire le code le plus simple possible, au sens où celui-ci n'a aucune ligne superflue, et de découvrir facilement le code à écrire puisque celui-ci découle du test.
Tout ceci serait très facile si le problème de l'inception de code n'était pas repoussé vers les tests. Certes, on découvre facilement le code à écrire. Encore faut-il trouver le bon test à faire passer !
Le BDD, le développement piloté par le comportement ("behaviour") apporte une réponse à ce problème en proposant une structure des tests basée sur le comportement observable des éléments du système.
L'étape toulousaine de l'Agile Tour 2008 a attiré plus de 200 personnes. Un des points culminants de l'après-midi était la présentation par Claude Aubry et Philippe Krutchen de l'agilité en situation qui traitait del'adaptation des méthodes agiles à un contexte.
De nombreuses personnes ont assisté à cette présentation. Certaines connaissaient déjà bien les méthodes agiles, d'autres les découvraient. Quel impact a pu avoir une telle présentation ?
Le prochain SigmaT, 7ème du nom, aura lieu le 16 octobre prochain. Ce sera une édition spéciale : les festivités démarreront dès le début de l'après midi et ce sera l'occasion d'accueilir à Toulouse, l'Agile Tour.
Pour plus d'informations, il suffit de suivre l'actualité sur les sites sigmat.fr et agiletour.com. Et pour être sûr de ne pas rater l'évènement, on peut déjà s'inscrire (et c'est toujours gratuit).
Jeremy shows through multiple examples the kind of design issues you inevitably face during an project and explains how to handle them in an agile way.
Au SigmaT 5, Benjamin Böhle-Roitelet a présenté un retour d'expérience sur l'utilisation de Scrum par la société Ekito dans un cadre contractuel à l'occasion d'un forfait pour Milan Presse.
Pour ceux qui ne seraient pas encore au courant, les 5 et 6 mai 2008 à Paris se déroule XP Day France 2008, les Journées d'XP et de l'agilité : http://www.xpday.fr/
Pour diverses raisons, je n'y serai toujours pas cette année mais je ne désespère pas de pouvoir m'y rendre un jour...
Un petit billet sur ce blog en sommeil depuis bien longtemps pour signaler que le vendredi 28 mars se tiendra la 5ème édition du Séminaire d'Information Gratuit sur les Méthodes Agiles de Toulouse.
Depuis notre précédente livraison, notre logiciel peut être considéré comme acceptable pour une utilisation basique : lister le contenu d'un podcast audio, sélectionner un morceau et l'écouter. C'est là une des forces de l'agilité : fournir rapidement un système ayant une réelle utilité tout en garantissant que ce système va pouvoir aisément évoluer par rajout (sans douleur) de nouvelle fonctionnalités.
C'est ce que nous allons faire aujourd'hui pour continuer notre aventure de conception émergente. Le problème récurrent de notre utilisateur est qu'il doive sans cesse saisir l'URL de son podcast à chaque lancement du logiciel. Cela devient vite laborieux et son besoin le plus prioritaire est donc que le logiciel mémorise cette URL.
Septembre, la fin de l'été (a-t-il vraiment commencé ?), la rentrée des classes...
Les agilistes du sud-ouest font aussi leur rentrée. Cela se passera le 21 septembre dans un amphi de l'université Paul Sabatier pour le 3ème "Séminaire d'Information Gratuit sur les Méthodes Agiles de Toulouse".
Toutes les informations utiles sont chez Claude Aubry avec entre autres le programme bien garni de cette rencontre. J'aurai, par ailleurs, le plaisir d'y faire une intervention sur la conception émergente.
Après avoir terminé l'implémentation de notre 1er scénario, nous sommes presque sur le point de pouvoir livrer une 1ère version de notre logiciel. Notre client ayant mis en évidence un cas d'utilisation non couvert par nos tests, nous allons nous empresser de rectifier le tir. J'entends déjà les esprits chagrins se lamenter "Voilà ce qui arrive quand on veut laisser émerger la conception au lieu de bien réfléchir avant de se lancer dans le codage !" J'ai envie de leur répondre que, permièrement, en se contentant de réfléchir sur papier, on a bien peu de chances de découvrir les cas limites. En l'occurrence, le client n'a vu le problème que parce qu'il avait le logiciel définitif devant lui et non pas des diagrammes à l'exécutabilité hypothétique ou une vulgaire maquette. Deuxièmement, moi, au moins, j'ai déjà un logiciel près d'être livré. Si j'avais passé mon temps à "concevoir" dans un état de pure abstraction, j'aurais gaspillé une bonne partie de mon temps.
Ceci étant dit, retournons au travail. Une URL invalide saisie comme source pour notre podcast fait planter le logiciel et cela n'est pas acceptable.
Troisième volet de la saga sur la conception émergente. Après avoir implémenté la logique de notre premier scénario, il est temps d'obtenir une première version utilisable de notre application.
Pour cela, il suffit de donner corps aux composants d'interaction avec l'environnement du logiciel, l'interface utilisateur et l'accès à des documents XML, puis d'intégrer l'ensemble de nos composants au sein d'un exécutable.
L'utilisation de TDD pour la réalisation de composants d'interaction externe est toujours un point délicat. Si le monde extérieur est lourd à simuler, les tests unitaires perdent de leur intérêt car le temps passé à mettre en oeuvre l'environnement de test devient prohibitif. En même temps, si les composants ne sont pas suffisamment testés, la mise au point de l'ensemble après intégration peut rapidement devenir fastidieuse.
Commentaires / Comments