Aller au contenu

La "programmation extrême", vous connaissez ?


vincedo

Sujets conseillés

D'après Wikipedia, "l'Extreme Programming (XP) est une méthode agile de gestion de projet informatique, dont l'objectif est de permettre de gérer des projets de manière simple et efficace." (voir le très clair article de Wikipedia pour une définition plus précise).

J'aimerais connaître votre avis sur l'XP et notamment sur :

  • la programmation en binôme ;
  • peu de specs initiales mais des itérations et des releases fréquentes.

Avez-vous déjà essayé ? Convaincus ? Echaudés ? Juste tentés ?

Vincent

Modifié par vincedo
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Je suis chef de projet WEB dans une SSII et en régie chez de grands comptes (banques et industrie). J'utilise la méthode XP pour gérer mes projets depuis maintenant plus d'un an.

Tout n'est pas applicable facilement en entreprise (surtout quand on est en régie) : La programmation en binome, par exemple, est trés dure à faire comprendre et accepté par des DSI, surtout préoccupé par leur budget. Perso, j'utilise plus un chargé qualité du code qui travaille avec les différents développeurs. C'est un profil plus expérimenté qui fait un soutien technique aux autres. C'est un poste que je fait tourné sur toute l'équipe une fois que celle-ci devient roder. C'est plus facile à vendre (Assurance Qualité)...

Pour la découpe en faible itération, sans véritable spec comme on l'entend, j'utilise beaucoup cette méthode. La première raison est que, malgré les beaux discours, les MOA ne savent et ne veulent pas écrire des specs. La deuxième raison, c'est la réactivité vis à vis des changements d'opinion de la MOA sur ses besoins. Cette méthode marche trés sur de la maintenance évolutive ou du développement en régie. Par contre au forfait se pose le problème du dévis, difficile à établir sans spec. C'est pour cela que l'on garde le cahier de charge pour pouvoir calculer un budget. Aprés tout dépend des relations entretenus avec le client...

Pour les autres méthode, j'utilise le principe de réunion courte (debout à la machine à café), la dev piloté par les tests, etc.. Tout cela fonctionne trés bien. Perso j'utilisais déjà la plupart de ces méthode avant de connaître XP. Tout est une question de bon sens...

Benoit

Modifié par fuleran
Lien vers le commentaire
Partager sur d’autres sites

Lol tu as décidé à décidé à travers tes différents posts de faire un état de l'art "La conception WEB en 2006" ;)

[*] peu de specs initiales mais des itérations et des releases fréquentes.

<{POST_SNAPBACK}>

Je pense que la plupart des développeurs web sont contraints de travailler de cette façon. La question se pose certainement dans beaucoup d'autres branches de dev, pour nous ça me semble aller de soi ^^.

[*] la programmation en binôme ;

<{POST_SNAPBACK}>

Là il me semble que tout dépend des individus. Personnellement ça m'apporte beaucoup, peut-être que ça déplait à d'autres...

Lien vers le commentaire
Partager sur d’autres sites

- peu de specs initiales mais des itérations et des releases fréquentes.

Les méthodes de modélisation et gestion de projet ne sont pas adaptées aux petits projets, notemment les projets web dans leur majorité.

Je m'applique une règle, il ne faut pas passer plus de temps à préparer qu'à faire. Il faut donc adapter son niveau de formalisme à la taille du projet.

Par ailleurs, les habitudes de travail chef de projet / développeur sont necessaires pour alléger la formalisation des spécifications : langage et références communs, connaissance du niveau de qualité exigé...

J'ai oublié cette nécessité sur un projet avec un freelance que je ne connaissais pas encore... je le paye encore.

Lien vers le commentaire
Partager sur d’autres sites

Benoît : merci pour ta réaction, c'est très instructif.

Lol tu as décidé à décidé à travers tes différents posts de faire un état de l'art "La conception WEB en 2006" ;)

<{POST_SNAPBACK}>

On va dire que c'est l'enthousiasme du débutant (enfin, débutant sur ce forum, pas dans la conception web hein ;)).

la programmation en binôme ; Là il me semble que tout dépend des individus. Personnellement ça m'apporte beaucoup, peut-être que ça déplait à d'autres...

<{POST_SNAPBACK}>

Tu pourrais nous en dire plus dièse ? Sans vouloir entrer (trop) dans les détails de ta situation, es-tu dans une boîte qui t'impose la programmation en binôme, ou est-ce ton choix perso ? Comment ça se passe concrétement : vous êtes 100% du temps à 2 ? est-ce qu'il y en a un au clavier et un autre qui regarde ?...

Par ailleurs, les habitudes de travail chef de projet / développeur sont necessaires pour alléger la formalisation des spécifications : langage et références communs, connaissance du niveau de qualité exigé...

Oui, ça fait d'ailleurs partie des pratiques définies par l'XP, par exemple, "Convention de nommage : dans l'optique d'appropriation collective du code et de facilitation de la communication, il est indispensable d'établir et de respecter des normes de nommage pour les variables, méthodes, objets, classes, fichiers, etc. ;".

Sinon, tt à fait d'accord avec ta remarque sur l'adaptation de la méthode à la taille du projet.

Lien vers le commentaire
Partager sur d’autres sites

rien de bien nouveau dans tout cela, c'est une des méthodes itératives appliquées depuis longtemps aux projets où comme l'a dit fuleran les clients "ne savent et ne veulent pas écrire des specs" ou lorsque les specs peuvent difficilement être exhaustives (par exemple la spécification d'une IHM (design et interactivité)) et où les cycles en V ou elipse traditionnelles (quelques soient les méthodes, approches et outils) se prètent mal ...

ce type de développement ne peut s'appliquer, à mon avis, qu'à de petits projets traités essentiellement en interne (ou par délégation de personnels pour les SSII) mais pas vraiment en sous traitance car ces projet sne finissent en général jamais complètement ... ;)

Lien vers le commentaire
Partager sur d’autres sites

Tu pourrais nous en dire plus dièse ? Sans vouloir entrer (trop) dans les détails de ta situation, es-tu dans une boîte qui t'impose la programmation en binôme, ou est-ce ton choix perso ? Comment ça se passe concrétement : vous êtes 100% du temps à 2 ? est-ce qu'il y en a un au clavier et un autre qui regarde ?...

Non hélas nous ne pouvons pas nous le permettre... D'un autre côté si on travaillait tout le temps à 2 sur la même machine je ne pourrai pas répondre à tes nombreux posts :lol: .

Nous sommes 2 développeurs et on s'autorise de temps en temps à travailler de cette façon (Par exemple quand l'un de nous deux est dans une phase de saturation et n'avance plus :blush: ). Le côté positif du travail à 2 vient surtout des interactions entre les 2 personnes. Ca permet de réfléchir à beaucoup plus de choses qu'au simple bout de code que l'on a sous le nez.

Si la personne qui n'a pas le clavier se contente juste de corriger des bugs, ça n'a pas grand intérêt ;).

Modifié par dièse
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...