La gestion de projet agile propose une alternative crédible aux méthodes traditionnelles de gestion de projets.
La méthode SCRUM est à ce jour la plus utilisée des méthodes agiles. Réputée comme la plus simple à mettre en œuvre, elle définit un cadre précis d’organisation du projet qui doit être appliqué avec discipline mais qui se prête parfaitement à une adaptation au contexte métier de chaque entreprise.
1. LA GESTION DE PROJET AGILE
Eugène ZENGOMONA www.ezformation.fr
2. Présentation
EZ FORMATION La gestion de projet Agile 2
La gestion de projet agile propose une alternative crédible aux méthodes
traditionnelles de gestion de projets (ISO 21 500)
La méthode SCRUM est à ce jour la plus utilisée des méthodes agiles.
• Réputée comme la plus simple à mettre en œuvre, elle définit un cadre précis d’organisation
du projet qui doit être appliqué avec discipline mais qui se prête parfaitement à une
adaptation au contexte métier de chaque entreprise.
La transformation Agile : véritable changement à tous les niveaux de
l’entreprise qu’il faut aborder avec méthode, en appliquant au mieux les
principes de conduite du changement.
3. Les principales méthodes Agiles
Définitions - Historique
EZ FORMATION La gestion de projet Agile 3
4. C’est quoi être Agile ?
AGILITE
Prisme
Bien être et valeurs
(prévention de risques psycho-sociaux au
travail)
Faire les bonnes choses
(satisfaction client)
Faire les choses efficacement
(productivité)
ETC.
EZ FORMATION La gestion de projet Agile 4
5. Aujourd’hui, c’est de plus en plus
• Plus organique
• En petites structures auto organisées
• Apprenantes
• Respectueuses de leur écosystème
(gagnant/gagnant)
Évoluer vers
une
organisation
• De meilleurs résultats
• Un regain de sens dans le travail
(Problème générationnel ?)
Conséquences
EZ FORMATION La gestion de projet Agile 5
6. Et ça demande…
Une ouverture d’esprit
Du courage
• Remettre en question nos modes de pensées
• Réapprendre l’entreprise
• Dans notre contexte
• Au bénéfices de toutes les parties prenantes
• Un lâcher prise
• Manager
• mieux atteindre le « quoi » en contrôlant moins le « comment »
• Acteur : avoir plus de pouvoir
• mais avec de grands pouvoirs viennent de grandes responsabilités
EZ FORMATION La gestion de projet Agile 6
7. Origines des méthodes Agiles
EZ FORMATION La gestion de projet Agile 7
Gantt / PERT : Cascade (Waterfall, V Model, etc)
Process
Focus
1900 1950 1980 1990 2000 2010
Méthodes Agiles
People
Focus
8. Modèle en cascade (Waterfall)
Spécification • Validation
Conception
générale • Vérification
Conception
détaillé
• Vérification
Codage • Vérification
Intégration • Tests unitaires
Mise en
production
• Test
d’intégration
Maintenance • Validation
EZ FORMATION La gestion de projet Agile 8
9. Cycle en V
EZ FORMATION La gestion de projet Agile 9
Temps
Spécification
Conception générale
Conception détaillée
Programmation
Tests unitaires
Intégration
Qualification
10. Des outils plus ou moins normatifs
RUP
• RUP est assez
normatif avec
plus de 30 rôles,
plus de 20
activités et plus
de 70 artefacts ;
une énorme
quantité de
choses à
apprendre.
XP
• XP (eXtreme
Programming)
inclut une
majorité des
règles de Scrum
plus un
ensemble de
pratiques
d'ingénierie bien
spécifiques
comme le
développement
piloté par les
tests et la
programmation
en binôme.
SCRUM
• Scrum est moins
normatif que XP
puisqu'il ne
recommande
aucune pratique
d'ingénierie
particulière.
Scrum est plus
normatif que
Kanban
cependant, car il
impose des
choses comme
les itérations et
les équipes
multidisciplinaire
s
KANBAN
• Kanban laisse
tout ouvert. Les
seules
contraintes sont
de Visualiser
Votre Workflow
et de Limiter
Votre TAF. Tout
près du "Faire
N'importe
Quoi", mais
étonnamment
puissant.
Faites ce que
vous voulez
• Faites
ce que
vous
voulez
EZ FORMATION La gestion de projet Agile 10
Plus Normatif Plus adaptatif
11. Méthodes agiles et Cycle en V
AGILE
Personnes et interactions
Logiciel qui fonctionne
Collaboration avec le client
Adaptation au changement
V
Processus et outils
Documentation
Négociation sur le contrat
Suivi d’un plan pré-établi
EZ FORMATION La gestion de projet Agile 11
12. Le modèle Agile
EZ FORMATION La gestion de projet Agile 12
• Faciliter l’expression des besoins
• Aider à l’acceptation du changementPourquoi ?
• Organiser l’expression des besoins
• Intégrer le client
• Démarche itérative
Comment ?
•Besoin rapide de mise à disposition du produit
•Imprévisibilité des besoins du client
•Nécessité de changements fréquents
•Besoin de visibilité du client sur l'avancement des développements
•Présence de l'utilisateur assurant un feedback immédiat
Quels projets
favoriser ?
•Indisponibilité du client ou de l'utilisateur
•Dispersion géographique des ressources humaines
•Inertie des acteurs du projet ou refus des changements
•Gouvernance complexe de la DSI
Quels projets éviter ?
13. Les valeurs fondamentales
L'équipe
« Les individus et leurs
interactions, plus que les
processus et les outils »
L'application
« Des logiciels opérationnels,
plus qu’une documentation
exhaustive »
La collaboration
« La collaboration avec les
clients, plus que la négociation
contractuelle »
L'acceptation du changement
« L'adaptation au changement,
plus que le suivi d'un plan »
Les 4 valeurs
fondamentales
EZ FORMATION La gestion de projet Agile 13
14. Les 12 principes généraux
User
Focus
1
Un modèle
itératif
3
Un modèle
Collaboratif
4
Focus on
quality
4
EZ FORMATION La gestion de projet Agile 14
15. Les 12 principes généraux
USER FOCUS
1. La plus haute priorité est de satisfaire le client
(l’utilisateur final du produit) en livrant rapidement
et régulièrement des fonctionnalités à forte valeur
ajoutée.
EZ FORMATION La gestion de projet Agile 15
16. Les 12 principes généraux
UN MODELE ITERATIF
2. La livraison s’applique à
une application
fonctionnelle, toutes les deux
semaines à deux mois, avec
une préférence pour la
période la plus courte.
3. L’unité de mesure de la
progression du projet est un
logiciel fonctionnel (ce qui
exclut de comptabiliser les
fonctions non formellement
achevées).
4. Le changement est
accepté, même tardivement
dans le développement, car
les processus agiles exploitent
le changement comme
avantage concurrentiel pour
le client
EZ FORMATION La gestion de projet Agile 16
17. Les 12 principes généraux
UN MODELE COLLABORATIF
5. Le projet doit
impliquer des
personnes motivées.
Donnez-leur
l'environnement et le
soutien dont elles ont
besoin et faites leur
confiance quant au
respect des objectifs.
6. Le métier et les
développeurs doivent
collaborer
régulièrement et de
préférence
quotidiennement au
projet.
7. La méthode la plus
efficace pour
transmettre
l'information est une
conversation en face
à face.
8. À intervalle
régulier, l'équipe
réfléchit aux moyens
de devenir plus
efficace, puis accorde
et ajuste son
processus de travail
en conséquence.
EZ FORMATION La gestion de projet Agile 17
18. Les 12 principes généraux
FOCUS ON QUALITY
9. Les processus
agiles promeuvent un
rythme de
développement
soutenable
10. Les processus
agiles recommandent
une attention
continue à
l'excellence
technique et à la
qualité de la
conception.
11. La simplicité et
l'art de minimiser les
tâches parasites, sont
appliqués comme
principes essentiels.
12. Les équipes
s'auto-organisent afin
de faire émerger les
meilleures
architectures,
spécifications et
conceptions.
EZ FORMATION La gestion de projet Agile 18
19. Structure opérationnelle et
pratique du développement agile
… là on parle de SCRUM
Scrum… vous avez dit Scrum ?
EZ FORMATION La gestion de projet Agile 19
20. Gestion de projet : ISO 21 500 Simplifiée
EZ FORMATION La gestion de projet Agile 20
Opportunité
Besoin
Contrat
Phase précédente
Faisabilité
Initialisation Planification
Contrôle
Réalisation
Clôture
Charte du projet
Plan de projet
Livrables
Plan de projet :
Périmètre, Livrables
attendus, Délais, Tâches,
Budgets, RH, Qualité
Risques, Communication
Gestion changement
Approvisionnements
Etudes des
parties prenantes
Charte du projet
Changements validés
Ré-planification,
problèmes, etc
Etats
d’avancement
Demandes de
changements
problèmes
Actions correctives, Changements validés
Rapport des changements
Plan de projet
Recettes
Documents
projets
Retours
d’expérience
21. Gestion de projet : ISO 21500
EZ FORMATION La gestion de projet Agile 21
Opportunité
Besoin
Contrat
Phase précédente
Faisabilité
Initialisation
Planification
Contrôle
Réalisation
Clôture
22. Gestion de projet avec SCRUM
EZ FORMATION La gestion de projet Agile 22
Backlogs Planification
Contrôle
Réalisation
Fin de
Sprint
SprintAmélioration continue
= LEAN
24. EZ FORMATION La gestion de projet Agile 24
•Venez découvrir la suite sur
•www.ezformation.fr
•http://pascaltheryformations.com/produit/gestion-de-projet-agile
Notes de l'éditeur
Bonjour et bienvenu(e) dans ce cours !
Si vous souhaitez conduire un projet innovant, original ou créatif avec une forte implication de votre équipe : je vous conseille d'adopter une pratique agile !
Plus votre approche sera pragmatique, plus votre gestion de projet pourra faire face à des changements de cap imprévus.
Scrum est un très bon modèle à suivre pour accepter les transformations nécessaires du produit ou du service avec votre client et vos collaborateurs.
Dans ce cours,
Vous allez apprendre et comprendre toutes les caractéristiques du modèle Scrum.
Vous allez aussi organiser un cadre de travail Scrum, en découpant le projet en sprints pour garantir des livraisons régulières, des estimations suivies et une planification précise.
Enfin, vous allez contrôler la bonne mise en pratique du modèle Scrum, au cours de la sprint review, de la sprint retrospective.
Dans les entreprises, on entend de plus en plus parler d’Agilité, ou encore de transformations Agiles. Une transformation Agile est un véritable changement à tous les niveaux de l’entreprise qu’il faut aborder avec méthode, en appliquant au mieux les principes de conduite du changement, à condition de bien comprendre au préalable les principes de l’Agilité.
Mener une transformation Agile sur l’ensemble d’un service ou d’une DSI ce n’est pas la même chose que d’accompagner une petite équipe projet. On se retrouve vite confronté à de nombreux problèmes d’organisation, à certaines habitudes de travail, à une véritable résistance au changement. Tous ces problèmes étant bien sûr décuplés à mesure que la taille de la transformation augmente. On se rend alors vite compte que prendre les projets un par un et accompagner les équipes isolément les unes des autres n’est pas la bonne solution. La strate managériale étant très peu impliquée dans cette approche, une fois le projet terminé, tout le monde retrouve ses anciennes habitudes et tout est à recommencer.
John Kotter professeur à Harvard Business School, a identifié 8 étapes qui permettent de maximiser les chances de succès d’un projet de transformation. Je vous propose de les passer en revue en les illustrant de ce que j’ai pu rencontrer au cours de mon expérience.
Les méthodes agiles sont des groupes de pratiques de pilotage et de réalisation de projets. Elles ont pour origine le manifeste Agile, rédigé en 2001, qui consacre le terme d'« agile » pour référencer de multiples méthodes existantes.
Les méthodes agiles se veulent plus pragmatiques que les méthodes traditionnelles, impliquent au maximum le demandeur (client) et permettent une grande réactivité à ses demandes.
Elles reposent sur un cycle de développement itératif, incrémental et adaptatif et doivent respecter quatre valeurs fondamentales déclinées en douze principes desquels découlent une base de pratiques, soit communes, soit complémentaires.
Énormément de réponses possibles, suivant l’angle et le prisme choisi, la plupart complémentaires
Mais avant d’en arriver là…
• On commence souvent par mettre un pied dans des choses plus terre-à-terre
– Réduire les problèmes techniques
• Intégration continue
• Tests unitaires, TDD, …
– Améliorer la visibilité et la priorisation (pilotage)
• Management visuel
• Incréments
– Etc, etc.
Constat des méthodes classiques (déterministes)
• Les spécifications ne sont pas complètement comprises tant que le projet n’est pas commencé
• Les utilisateurs ne savent ce qu’ils veulent qu’après avoir vu une première version de l’application
Le management de projet traditionnel ou en cascade (waterfall en anglais)
Simple à mettre en œuvre
• Contrat simple
– Tout est prévu précisément à l’avance
• Qui / Quoi / Quand
• Approches connues et enseignées partout
Négociation -Analyse -Développement -Test
Méthode RUP : une approche itérative de gestion de projet (Rational Unified Process)
C’est une méthode générique, itérative et incrémentale assez lourde mais qui s’adapte très facilement aux processus et aux besoins du développement.
Les principales différences entre cycle en V et méthodes agiles
• Méthodes réactives et incrémentales d’organisation du travail
• Focalisées sur le produit et la satisfaction client
• Construit en adéquation avec les capacités et limites humaines
Les méthodes agiles reposent sur un cycle de développement itératif, incrémental et adaptatif et doivent respecter quatre valeurs fondamentales déclinées en douze principes desquels découlent une base de pratiques, soit communes, soit complémentaires.
Un principe fort des méthodes agiles est la participation active du client. Cela permet de choisir plus finement les fonctionnalités réalisées à chaque incrément. Le propriétaire du produit peut à tout moment compléter ou modifier la liste des fonctionnalités à produire pour les prochains sprints. Sans modifier le but du sprint en cours, celui-ci peut être affiné et faire l’objet d’une renégociation entre le propriétaire du produit et l’équipe de développement suite à de nouvelles connaissances. Si le but du sprint devient obsolète, le propriétaire du produit a la capacité d’annuler un sprint en cours.
1. Satisfaire le client
2. Accueillir le changement
3. Livrer fréquemment
4. Travailler quotidiennement avec les utilisateurs ou leur
représentants
5. Créer un environnement qui soutienne l’équipe
6. Communiquer en face à face
7. Mesurer l’avancement sur un logiciel opérationnel
8. Avoir un rythme de développement soutenable
9. Porter une attention continue à l'excellence technique
10. Minimiser la quantité de travail inutile
11. Avoir une équipe auto-organisée pour faire émerger les solutions
12. Inspecter et s’adapter régulièrement
Exemples de techniques Agiles
Test driven development (TDD)
Conception pilotée par le domaine (DDD pour domain-driven design)
Equipe transverse
Programmation binôme
Burndown chart
Planning pocker
Réunisage de code
Timboxing
Récit utilisateur
Rappel pour bien comprendre le cadre de travail Scrum
En gestion de projet, vous pouvez éprouver des difficultés à maintenir la motivation de votre équipe. C’est encore plus difficile lorsque le projet change soudainement en cours de conception.
Pas de panique ! Pour éviter que les imprévus ne déroutent votre équipe, il existe plusieurs méthodologies de gestion de projet dites “agiles”.
En plus d'adapter vos pratiques à des environnements incertains et changeants, celles-ci favorisent aussi une communication conviviale et transparente !
Le terme Scrum est emprunté au rugby à XV et signifie mêlée. Ce processus s’articule en effet autour d’une équipe soudée, qui cherche à atteindre un but, comme c’est le cas en rugby pour avancer avec le ballon pendant une mêlée.
Le principe de base de Scrum est de focaliser l’équipe sur une partie limitée et maîtrisable des fonctionnalités à réaliser (ces dernières étant identifiées et priorisées dans un document qui porte le nom de Backlog du produit).
Ces incréments se réalisent successivement lors de périodes de durée fixe de une à quatre semaines, appelées sprints. Chaque sprint possède, préalablement à son exécution, un but à atteindre, défini par le propriétaire du produit, à partir duquel sont choisies les fonctionnalités à implémenter dans cet incrément (ce sera le backlog du sprint). Un sprint aboutit toujours à la livraison d’un produit partiel fonctionnel. Pendant ce temps, le ScrumMaster a la charge de former le propriétaire du produit, l’équipe et l’organisation entière à la méthode Scrum.