Download - Adoption de l'Agilité : principes et défis
Copyright Pyxis Technologies
Adopter le développement Agile dans nos organisations
François Beauregard - [email protected] Jean-René Rousseau - [email protected]
Copyright Pyxis Technologies
Sondage à main levée
Utilisez-vous une approche Agile
dans votre organisation?
2
Copyright Pyxis Technologies
Objectifs
Présenter les ressemblances et les différences entre l’approche Agile et l’approche de gestion classique ou en cascade
Souligner comment une entreprise peut passer à une approche Agile
Fournir des éléments de réflexion pour la mise en œuvre d'améliorations dans vos organisations
Soyez sceptique mais ouvert!
3
Copyright Pyxis Technologies
Déroulement
Un peu d’histoire
Approche Agile
Gestion de projet Agile
Passage à une approche Agile
Conclusion
4
Copyright Pyxis Technologies
Un peu d’histoire
Adopter le développement Agile dans nos organisations
Copyright Pyxis Technologies
1945 à 1965 – Les débuts
1965 à 1985 – La crise
Années 80 et 90 – On veut passer de l’artisanat à l’ingénierie logicielle, on cherche le silver bullet
Mai 1994 – Je suis un nouveau diplômé de Polytechnique
Septembre 2000 – Pyxis est née
Septembre 2002 – Le groupe d’utilisateurs Agile de Montréal est créé
Fin 2003 – Pas facile
…
2006 – On s’intéresse de plus en plus à l’Agilité
2007 – Le nombre de participants à la conférence Agile double pour une troisième année consécutive
2008 – On en parle trop?
Un peu d’histoire
6
Copyright Pyxis Technologies
Standish Group CHAOS Report, 2003
Réussite : Le projet se termine dans le respect du délai et du budget. Il comporte toutes les fonctionnalités prévues.
Défi : Le projet est en retard, il y a dépassement de budget ou il manque certaines fonctionnalités.
Échec : Le projet est annulé avant sa fin ou il est terminé mais ne sera jamais utilisé.
Nos projets doivent être une réussite
7
Copyright Pyxis Technologies
Jim Johnson, Standish Group, XP 2002
Never 45%
Rarely 19%
Sometimes 16%
Often 13%
Always 7%
Feature Usage within deployed ap-plications
Investissement dans les fonctionnalités de valeur
8
Copyright Pyxis Technologies
Approche Agile
Adopter le développement Agile dans nos organisations
Copyright Pyxis Technologies
Nous découvrons de meilleures manières de développer des logiciels en aidant les autres et en en développant nous-mêmes.
Par ce travail, nous en sommes venus à valoriser ce qui suit :
• les individus et les interactions plus que les processus et les outils
• les logiciels fonctionnels plus que la documentation exhaustive
• la collaboration avec le client plus que la négociation de contrat
• l’ouverture au changement plus que le suivi d’un plan
En fait, bien que les éléments de droite soient importants, nous considérons que les éléments de gauche le sont encore plus.
Manifeste pour le développement Agile de logiciel
10
Copyright Pyxis Technologies
Principes Agiles (un sous-ensemble)
La priorité est de satisfaire le client par la livraison rapide et continue de solutions logicielles utiles.
Il faut intégrer les changements, même ceux de dernière minute, car ils offriront un avantage compétitif à votre client.
Il faut élaborer des projets autour d’individus motivés. Il faut leur fournir le soutien nécessaire et leur faire confiance.
Les meilleures solutions émergent des équipes autoorganisées.
Régulièrement, l’équipe fait une réflexion sur les façons de devenir plus efficace, s’ajuste et modifie son comportement en conséquence.
Il faut porter une attention continue à l’excellence technique; un bon design améliore l’Agilité.
La simplicité est essentielle.
11
Copyright Pyxis Technologies
Principes vs Pratiques
Principe
• Vérité qui ne change pas dans le temps ou l’espace
Pratique
• Application d’un principe à une situation particulière
La compréhension des principes est essentiel pour en réussir l’implantation via un ensemble de pratiques
12
Copyright Pyxis Technologies
Scrum
Blocs de temps
Rôles
Règles
2 boucles de rétroaction pour mettre en
œuvre l’inspection et l’adaptation
5 artéfacts
• Carnet du produit
• Graphique d’avancement de la
livraison
• Carnet du sprint
• Graphique d’avancement du sprint
• Incrément de fonctionnalité prête à
livrer
13
Copyright Pyxis Technologies
Pourquoi Agile?
Réduire le temps de mise sur le marché
Améliorer la qualité
Réduire les activités sans valeur ajoutée
Travailler sur les éléments de plus grande valeur
Avoir une meilleure prévisibilité
Avoir du plaisir au travail
14
Copyright Pyxis Technologies
Gestion de projet
Adopter le développement Agile dans nos organisations
Copyright Pyxis Technologies
Modèle de gouvernance
Contraintes
Estimations
S'appuie sur le plan
Coût Calendrier
Exigences
Contraintes
Estimation
Processus en cascade
Du plan découleles estimations relatives au
coût et au calendrier.
S'appuie sur la valeur ou
vision
Coût Calendrier
Fonctionnalités
Processus Scrum
De la vision découleles estimations relatives aux
fonctionnnalités.
18
Copyright Pyxis Technologies
Rôle du gestionnaire de projet dans le contexte de projets Agiles
Trois principes de gestion de projet Agile :
• Favoriser l’alignement et la coopération
• Favoriser l’émergence et l’autoorganisation
Favoriser l’apprentissage et l’adaptation
« Les gestionnaires utilisent les gens pour faire le travail; Les leaders se servent du travail pour aider les gens à grandir. »
“Managers use people to accomplish work; leaders use work to grow people” Powerful Project Leadership, copyright©2002 par Wayne Strider
20
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Équipe organique
Petite équipe flexible où les
relations sont étroites, ce qui
favorise l’adaptation
La composition des équipes n’est pas limitée aux titres (généralistes-spécialistes).
Le gestionnaire de produit fait partie de l’équipe
…les testeurs aussi !!!
…les architectes aussi !!!
…les…
21
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Vision
S’assurer que les
membres de l’équipe ont un
modèle mental commun et
qu’ils s’alignent sur les
mêmes objectifs et
engagements
Les programmeurs ont
droit de comprendre ce
qu’ils font !!
22
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Règles simples
Établissement d’un ensemble de règles
génératives simples, qui doivent être
observées par toute l’équipe
Les règles d’aujourd’hui sont les fondations
des règles de demain (inspection –
adaptation)
23
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Transparence
Information complète
accessible par tous
Comment se cacher
lorsqu’on doit livrer du logiciel
fonctionnel à intervalles
réguliers?
24
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Light touch
Application d’un contrôle intelligent,
pour encourager la cohérence des
actions et maximiser la valeur
25
Copyright Pyxis Technologies
Pratiques de gestion de projet Agiles – Leadership adaptatif
Diriger le projet en maximisant les
apprentissages et en s’adaptant
de façon continue
26
Copyright Pyxis Technologies
Structure traditionnelle de découpage du projet
27
Copyright Pyxis Technologies
Structure de découpage des fonctionnalités
28
Copyright Pyxis Technologies
Passage à une approche Agile
Adopter le développement Agile dans nos organisations
Copyright Pyxis Technologies
Des questions importantes
Nos organisations sont-elles prêtes à changer?
… et les individus eux ?
30
Copyright Pyxis Technologies
Analyse d’impact
Impacts sur l’organisation
• Structure organisationnelle
• Système de rémunération
• Relation avec les clients et les fournisseurs
Impacts sur le processus
• Pilotage des projets
• Flux du travail
• Flux d’information
Impacts sur les technologies
• Nouveaux outils pour supporter les pratiques XP
Impacts physiques
• Configuration des locaux
31
Copyright Pyxis Technologies
Analyse d’impact
Impacts sur les individus
• Nouveaux rôles, nouvelles tâches
• Pertes de pouvoir
• Compétences
• Mentalité, façon de penser, valeurs, attitudes
• Motivation et engagement
32
Copyright Pyxis Technologies
Quels sont les changements requis?
Réduire la taille des équipes
Réduire les structures fonctionnelles pour adopter une structure par projet
Avoir une équipe pluridisciplinaire et encourager l’acquisition de nouvelles compétences
Favoriser les objectifs d’équipe plus qu’individuels
Avoir une équipe autoorganisée
Améliorer les pratiques de développement logiciel et favoriser l’automatisation
33
Copyright Pyxis Technologies
D’autres éléments à considérer
Avoir une forme contractuelle qui reconnaît qu’il n’est pas optimal (désiré) de chercher à connaître précisément l’ensemble des exigences au départ
Mettre en place des processus qui conservent un niveau de gouvernance adéquat, mais qui permettent les changements rapides
Avoir une forme documentaire simplifiée qui permette l’évolutivité de la documentation
Créer une culture de collaboration
34
Copyright Pyxis Technologies
Structure organisationnelle
Ent
repr
ise
de T
I mat
rici
elle
35
Copyright Pyxis Technologies
Une organisation AgileE
ntre
pris
e de
TI
adap
tati
ve
36
Copyright Pyxis Technologies
Une autre question importante
Le changement doit-il être mis en œuvre bottom-up ou top-down?
37
Copyright Pyxis Technologies
Pas si simple, le changement
Mode descendant
• Les leaders de haut niveau partagent une vision quant à l’utilisation de
Scrum.
Mode ascendant
• Quelques équipes commencent à utiliser Scrum. Les gens voient les
avantages de cette nouvelle approche et décident de l’adopter.
Pour assurer le succès, le changement doit se faire à la fois de bas en haut et
de haut en bas, simultanément.
38
Copyright Pyxis Technologies
Le passage à une approche Agile ne se fait pas du jour au lendemain
La période de transition sera longue et parfois délicate (inconfortable) avant que tous les intervenants des projets adoptent une approche axée sur la collaboration et l’autonomie.
39
Copyright Pyxis Technologies
Gestion du changement
Stratégie de gestion du changement
Vision
Portée du changement
Stratégies préconisées
Parties prenantes
Gouvernance
Impacts de haut niveau
Planification
Énoncé
Objectifs visés
Bénéfices à réaliser
Parrainage
CommunicationRôles
ResponsabilitésStructure élargie
Mécanismes de suivi
Adhésion
Alignement stratégique
Éducation & formation
Efforts
Échéancier
Risques humains
Conditions de réussite
Pourquoi changer?
Contexte
Forces & faiblesses
Opportunités et menaces
Activités & livrables
Ressources
Alignement organisationnel
40
Copyright Pyxis Technologies
Transitions
ACTIVITÉS
Reconnaître que les gens constituent le projet à plus long termeUtiliser le modèle CAS organique pour assurer la stabilité et la flexibilité
Remplacer l'ingénieur du logiciel par l'artisan du logiciel Se concentrer sur le contexte plutôt que sur le contenuUtiliser l'organigramme des fonctionnalités
Reconnaître que le plan parfait est un mytheRemplacer la planification prévisible par la planification adaptativeUtiliser les plans de livraison plutôt que les diagrammes de GanttMettre l'accent sur l'exécution plutôt que sur la planification
Opter pour un rythme fondé sur le temps plutôt que sur les événementsPréconiser la prise de décision participative plutôt qu'autoritaireCoordonner la réalisation des travaux par des engagements plutôt que par des ordresAugmenter les interactions personnelles surtout entre les diverses couches organisationnelles
Faire place au changement par des mesures adaptatives plutôt que correctivesPasser des leçons apprises aux réflexions sur les projetsDiriger en étant présent plutôt que par autorité
Favoriser l'alignement et la coopération
Favoriser l'émergence et l'autoorganisation
Favoriser l'apprentissage et l'adaptation
PRINCIPES DE GESTION DE PROJET AGILE
41
Copyright Pyxis Technologies
Ce n’est pas tout!
Il ne faut pas oublier de s’attarder aux pratiques d’ingénierie logicielle.
42
Copyright Pyxis Technologies
Approche pour le passage à Agile
43
Copyright Pyxis Technologies
C’est possible
Transparence!
44
Copyright Pyxis Technologies
C’est possible
9 livraisons en 6 mois!
45
Copyright Pyxis Technologies
Courage et persévérance
46
Copyright Pyxis Technologies
Conclusion
Adopter le développement Agile dans nos organisations
Copyright Pyxis Technologies
Conclusion
Le capital humain est votre plus gros actif.
L’adoption d’une approche Agile demande des changements significatifs, et la
nature des préoccupations des gens doit changer.
Tout changement nécessite du temps, du courage et de la persévérance.
48
Copyright Pyxis Technologies
Merci!
Des questions?
49
Copyright Pyxis Technologies
Centre de développement
• Développement sur mesure
• Architecture et conception
• Méthodes de test
• Évaluation et gestion de projet
• GreenPepper™ simplifie grandement la création concertée de spécifications exécutables et de tests de réception de scénarios exécutables. De plus, il offre de grandes capacités de traçabilité des exigences.
Accompagnement Agile
• Gestion du changement et formation
• Transition Agile
• Scrum
• Modélisation Agile
• Tests (stratégie, tests fonctionnels, TDD, etc.)
Services-conseils en développement
• Développeurs chevronnés
• Accompagnement technologique (Java, .NET, Ruby)
• Exploration de solutions d'amélioration
• Sélection et configuration d'outils
• Gestion de projet, évaluation de mandat
• Audit et recommandations
• Rétrospective
Besoin d’un coup de main?
50