Vous êtes sur la page 1sur 13

Agile : XP, Scrum

Limportant : tre Agile

Thierry Cros 25.jan.08

http://agile.thierrycros.net

Cette prsentation a pour objectif de mettre en perspective les mthodes XP et Scrum, fers de lance de lAgile.

Sommaire
Agile : dfinition et principes Scrum Extreme Programming Scrum et XP Devenir Agile Exemple : binme

http://agile.thierrycros.net

Agile ?

http://agilemanifesto.org/

http://agile.thierrycros.net

Tout dabord, il sagit de revenir la base : agile cest quoi ? Je reviens donc au clbre Manifeste de lAgile, sur le site http://agilemanifesto.org Nous dcouvrons de nouvelles faons de dvelopper les logiciels en pratiquant et en aidant les autres pratiquer. Par ce travail, nous en sommes venus valoriser :

Les personnes et leurs interactions, plutt que les processus et les outils Un logiciel oprationnel plutt que des documentations exhaustives La collaboration effective avec le Client, plutt que les ngociations de contrats Rpondre et accueillir les changements, plutt que suivre le plan projet. Autrement dit, alors que nous accordons une certaine valeur aux items de droite, nous donnons plus de valeur ceux de gauche.
3

Principes agiles 1/3

http://agile.thierrycros.net

Ces valeurs cardinales de lAgile se dclinent alors en principes plus proches de la ralit du terrain et surtout qui nous permettent de comprendre ce que, concrtement, agile signifie. Je dirais donc que tre Agile signifie que nous appliquons ces principes, autrement dit, nos mthodes mettent en pratique, dclinent, ces principes structurants . Notez que la priorit la plus forte est de satisfaire le Client aux travers de ce que lon appelle parfois Versions frquentes , autrement dit, la livraison de versions incrmentales frquentes et ds que possible dans le projet. Ds que possible signifie ici : ds que le produit offre une Valeur Ajoute minimale et suffisante. Un autre point : accueillir les changements.

Principes agiles 2/3

http://agile.thierrycros.net

On retrouve ici le ct humanitaire de lAgile. Pour autant, il sagit de personnes motives, ce qui fait aussi rfrence au dveloppement responsable de Kent Beck. Working software : produit oprationnel. Et cela se traduit par des tests-client qui permettent de se forger une opinion .

Principes agiles 3/3

http://agile.thierrycros.net

Simplicit Auto gestion Rtrospective : lquipe sinscrit dans le cercle vertueux de la vie .

Pourquoi Agile ? (2001)


Lourd
Nombreux documents Nombreux rles Contrle Qualit Suivre les plans Jouer pour ne pas perdre Industrie du logiciel
http://agile.thierrycros.net

Agile
Jouer pour gagner

Crativit
Amliorer la V.A. Client =!= suivre strictement le plan

Les mthodes agiles taient dans un premier temps qualifies de lgres (light) par opposition aux approches traditionnelles bases sur -des gros documents -Des gros plans suivre - Je crois que ce qui en fait dcrit le mieux la diffrence dapproche est Jouer pour ne pas perdre vs Jouer pour gagner.

Scrum

http://agile.thierrycros.net

Une mthode galement itrative incrmentale, base sur la V.A. offerte au Client, sprint aprs sprint, autrement dit itration aprs itration.

Extreme Programming
Scrum simplifi

Ingnierie du dveloppement en quipe

http://agile.thierrycros.net

Jaime bien cette prsentation de XP en cercle concentriques, qui correspondent autant de facettes de la mthode. Le premier cercle est une adaptation de Scrum, les tests-client jouant un rle important dans XP.

XP & Scrum
Scrum : planification - version frquentes - quipe complte - user stories - Tests-Client XP : ingnierie - Test Driven Development - Conception mergente - Refactoring -
http://agile.thierrycros.net 10

XP et Scrum, un couple gagnant. En effet, Scrum ne prsente pas cet aspect extreme de XP tout en sadressant lensemble des acteurs Dveloppeurs Clients en particulier. XP et Scrum est mon sens un raccourci simplificateur de la ralit. Quid des pratiques XP telles que TDD, refactoring, conception mergente

10

Limportant : tre Agile


Une mthode cadre
cf. Dfinition de lAgile
Communication Feedback Simplicit Courage Respect

Shu Ha Ri
Pratiquer la Rgle Comprendre la Rgle Adapter les pratiques

Devenir Agile : grer le changement vers lAgile.


http://agile.thierrycros.net 11

Au del des diffrences entre mthodes, la question est celle de la mise en uvre dune mthode agile adapte lorganisation. A mon sens, plusieurs niveaux sont envisageables. i) Devenir plus agile

Par exemple, grer plus de rtroactions (feedback), mieux communiquer, crer la notion de collectif projet , dcider de faire plus simple ii) Choisir une mthode L, une approche Shu Ha Ri est prconise : en effet, on a tt fait de passer ct de la mthode et de son vritable intrt. Dailleurs, combien de fois entendons nous par exemple je fais du XP car je ne rdige pas de doc par exemple ! Des pratiques telles que le planning process, TDD, le refactoring, pair programming ne sont pas ncessairement videntes ; parfois cest mme leur rejet qui semble vident ! Do limportance de pratiquer strictement la Rgle pour en arriver une comprhension profonde et donc autoriser son adaptation.

11

Objectif : Agile
tat des lieux : symptmes et causes Objectifs et Effets de ces objectifs le Plan adaptatif
Qui (client ?) Quand, projets ? Comment
Faire Mesurer

Combien, budget ?

Position meta Prendre du recul et visiter rgulirement ces points de vue


12

http://agile.thierrycros.net

Devenir Agile est un vritable projet. Cest un projet qui comprend une part significative de changements : internes chez les dveloppeurs Surtout, au del, dans la relation au Client, dans les rles et responsabilits de chacun.

Nous pourrions utiliser la mtaphore du voyage. Pour pouvoir tablir notre route, mieux vaut savoir o nous en sommes et o nous voulons aller. Do cette stratgie en 4 temps : i) ltat des lieux : que se passe-t-il actuellement, quels sont les symptmes ou bien dsirs qui poussent devenir agile ?

ii) Quels sont alors les objectifs poursuivis, pour quel effet, quel bnfices ? Quelles valeurs ajoutes, pour le Client, le Management, lquipe, lorganisation.. ? iii) Quel est alors le plan pour atteindre cette destination depuis notre point de dpart, ce plan tant adaptatif. Quels sont les projets qui peuvent tre pilotes ? Quel Client pour participer ces projets pilotes ? Comment allons nous mesurer nos progrs ? Comment allons nous organiser ladaptation de ce plan ? Quel budget ? iv) Et puis prvoir des rtrospectives dans ce projet de passage lAgile. Ce que lon pourrait appeler une position de recul , une position meta partir de laquelle nous avons une vue globale de la situation, depuis le point de dpart jusqu la destination souhaite.

12

Exemple concret : binme


Pratiquer la Rgle
Raliser par binme Dveloppeurs et non-dveloppeurs e.g. Architecte (spcialiste) : intgre lquipe Pilote et partenaire Cycles

Comprendre* la Rgle
Proprit collective Monte en comptences Diminution du risque gourou indispensable Qualit de la production

Adapter binme
Qui (mtiers) ? Quand ? Comment ?
* Pourquoi a marche
13

http://agile.thierrycros.net

Prenons un exemple concret : la pratique pair programming traduite parfois par binme . Appliquons simplement Shu Ha Ri cette pratique. Donc, pratiquons vraiment. Pratiquons sans prjugs et en appliquant rellement les rgles de binme telles que les rles de pilote et partenaire, la relation dautres pratiques telles que conception mergente De l une comprhension concrte, base sur lexprience, des avantages de binme , voire des inconvnients dans certains cas particuliers Et enfin, une adaptation qui tient compte de cette comprhension prouve par lexprience.

13

Vous aimerez peut-être aussi