Session animée par Guillaume SAINT ETIENNE qui, passionné pour le Web, tente aujourd'hui de faire adopter les bonnes pratiques issues des meilleurs départements R&D logiciels français au monde des sociétés de services. La production ou réalisation de logiciel n'est pas la science exacte que l'on aurait aimé qu'elle soit. Il convient donc de faire des ajustements. Les Sociétés de Services Logiciel sont une constituante majeure de cet univers et relient les hommes, du passeur d'ordre au réalisateur en passant par tous les intermédiaires possibles et imaginables. C'est donc avec eux, chez eux, que les démarches Agiles prendront tout leur sens. Pour autant, sont-ils prêts à entrer dans cette nouvelle ère, quel est l'état des lieux, et quels sont les obstacles qui nous attendent ?
5. Les ambitions de la
production logicielle
• La QUALITE INTRINSEQUE
• La SATISFACTION UTILISATEURS
• La REALISATION de l’EQUIPE
• La REDUCTION DES COUTS
• La PERTINENCE des EVALUATIONS
5
13. Le suivi
• En informatique, il y a
absence de métriques pour
déterminer l'état
d'avancement, la durée, et la
qualité du logiciel.
• Méthodes empiriques
13
14. Les demandes du
client
• Les spécifications sont au moins
TOUJOURS glissantes
• Et la plupart du temps incomplètes
ou trop interprétables
• Jamais les mêmes entre le début et
la fin du projet (le temps passe…)
14
17. GOUVERNANCE en
2010
• Ce que le client attend de la
gouvernance:
oQue le projet soit livré à la date
prévue!
oVaut-il mieux gouverner ou
prendre part au travail?
17
18. ALIGNEMENT
• Ce qui importe vraiment:
o Un logiciel qui répondent aux vraies
attentes
•
du METIER (ou du domaine)
• Est-ce que au moins on sait quelles
sont les vraies attentes?
18
21. Ce que l'agilité
n'est pas
• Une absence de méthode
oBien au contraire, le cadre de
conduite est plus rigoureux qu’un
cycle en « V »
oLe suivi est plus précis
21
24. COMMENT ON NE FAIT PAS!
• Pas de planification hasardeuse
• Ce qu’on ne sait pas prédire avec
exactitude n’est pas à planifier
• Fabriquer un logiciel est une somme
de procédés humains
• Restons toujours réalistes!
o Soyons responsables
24
37. On a pas peur de montrer comment on
travaille
• Donc on est 300% confiant dans la
méthode
• On joue la transparence
• On écoute les retours du client
• On accepte les critiques et les
demandes de changement
37
38. COMMENT ON NE FAIT PAS!
Ne jamais oublier de faire
de la gestion de risque...
38
39. Au contraire, le risque est
constamment cadré
• Backlog à chaque début de
SPRINT
• Mesure de la vélocité
• Rétrospective
25/02/2009 39
69. Choisir les fonctions
• Seulement les bonnes!
• Comme on ne peut pas tout prédire…
• …on assume que la 1ère estimation sera
globale
• On raffinera pendant le projet
• L’art est de ne pas sortir du périmètre
temps+ressources+qualité imposé
www.agiletour.com
71. Etablir les fonctions
• Ensemble
• Progressivement
• Itérativement
• De manière contrôlée et contrôlable
o Avec des TESTS!
• Ce travail fait partie du projet
• …et non plus de l’avant vente
www.agiletour.com
75. chaque partie doit
être responsable et
respectueuse
si le climat est au conflit avant la signature du
contrat, abandonnez!
22/10/09 www.agiletour.com
78. Avant
le CONTRAT
Liste des
fonctions
Prédiction de
réalisation
garanties
22/10/09 www.agiletour.com
79. Avant
le CONTRAT
Liste des
fonctions
Prédiction de
réalisation
garanties
22/10/09 www.agiletour.com
80. Le contrat agile
• Le contrat agile repose sur un triple
engagement mutuel du client et du
fournisseur
Collaboration Collaboration
Visibilité Transparence
Flexibilité Adaptation
80
81. Signature
le CONTRAT
prix
mesures
qualité
périmètre
22/10/09 www.agiletour.com
82. Livraison
le CONTRAT
prix
mesures
Liste des
qualité fonctions
+ tests !
périmètre
22/10/09 www.agiletour.com
83. •des fonctionnalités sans
qualité : NON
•de la qualité dans les
fonctionnalités: OUI
22/10/09 www.agiletour.com
86. Des contrats
• 1. le contrat au sprint
• 2. le forfait / périmètre figé
• 3. l’assistance technique
• 4. l’assistance technique avec un périmètre figé et
un budget limité
• 5. l’assistance technique avec un périmètre variable
et un budget limité
• 6. le développement par phase
• 7. les clauses de bonus / pénalités
• 8. le bénéfice fixé à l’avance
• 9. le profit pour rien, les changements à discrétion
• 10. le projet commun
86
87. FOCUS
•1 projet = 2 projets
o le « Avant projet »
o le « Pendant projet »
• Permet de murir le besoin
• = 2 contrats
87
88. Phase d’avant projet
• durée : max. 2 mois
o - rédaction des use cases (AMOA / client)
o - construction du backlog produit (PO / client)
o - développement du story board fonctionnel : low
fidelity (PO / client)
o - sprint 0 : réalisations de POCs
• - règles métier avec DSL ou RSPEC
• - composants graphiques évolués
89. projet en 2 parties
• 1) Projet de Préparation
• Chiffrage du projet de Réalisation
• Acceptation
• 2) Projet de Réalisation
• TMA
91. ATTENTION: RISQUE DE BRUF!
• Big
Requirements
Up Front
• BRUF Leads
to Significant
Wastage
91
92. Mélange forfait-régie
Temps estimé = TE (en jours x homme)
Taux journalier: TJ
Montant estimé dans le contrat ME = TE x TJ
Temps réel = TR, Montant Facturé = MF
• Si ( TR > TE), MF = ME + ( (TR-TE) x TJ / 2)
• Si ( TR < TE), MF = ME - ( (TE-TR) x TJ / 2)
Gagnant - Gagnant!
97. Il est préférable que
le Client admette que la recette
dure toute la durée du projet
les fins d'itérations sont autant de recettes
nécessaires au succès du projet
98. mieux vaut un client présent
1 jour par semaine,
plutôt que 2 mois par an
cycle itératifs d'une semaine si le client ne
peut être avec l'équipe.
101. Itérations forfaitaires
U.S #1
Vélocité Initiale 20 pts
U.S #3
connue 10 pts
50 U.S #2
#1
20 pts
pour Sprints de 2 semaines
Le client achète une série fixée de 10 semaines
102. Itérations de valeurs
U.S #1
20 pts
Vélocité Initiale valeur : 5 U.S #3
connue 10 pts
valeur : 15
50 U.S #2
U.S #1
20 pts
20 pts
pour Sprints de 2 semaines valeur : 10
Le client paye la valeur de chaque itération
103. Paiements à la livraison
• Le client paie pour ce qu'il a
• Possibilité de prévoir un crédit
initial pour éviter les multiples
factures
• Ce qui n'est pas dépensé est
remboursé
105. Une approche gagnant-
gagnant
• Itération => livraison
• Livraison => facture
• Liberté d’engagement
• Le client respecte son budget
• … ou le ré-attribue
• Le prestataire est payé pour son travail
105
106. • le client est d'abord libre de changer
d'avis
o de faire évoluer le périmètre
fonctionnel selon son besoin
106
107. Dans le contrat
client et fournisseur prévoient de
définir PENDANT LE PROJET
l'ordre de priorité de chaque
fonctionnalité basée sur sa
valeur ajoutée métier et étude
de sa complexité.
107
108. Définir des indicateurs
de pilotage
• indicateurs de qualité => productivité.
o Mesures des bugs et qualité du code
o Seuils d'anomalies très faibles
o Mesure de la couverture des
fonctionnalités (Product Backlog)
o Mesure de l’effort de développement
permanent (Sprint Burndown chart).
108
110. Engagements du
fournisseur
• Réactivité
• Livraisons d’éléments finis (exploitables)
• Bonne pratiques
o usine logicielle et tests
o architecture
o suivi de projet agiles
• Les impacts des évolutions sont partagés
110
111. Engagements du
client
• Disponibilité / Implication
• Vision
• Retours (feedback)
o rapides
o constructifs
o suivi de projet agiles
• Mesurer la valeur ajoutée de ce qu'il veut
111
112. Tout se mesure
• Valeur ajoutée
• mesurée
• Retour sur investissement
•mesuré
112
113. Adapté aux
projets à risques
Imposer la flexibilité pour
tenir compte des
changements
fonctionnels
113