BUI 1er Cadrage de la mise en œuvre d`un outil d

Download Report

Transcript BUI 1er Cadrage de la mise en œuvre d`un outil d

Conseil en management
Conception & mise en œuvre de systèmes d’information
d’entreprise
Agilité
Offre « Plateau intégré de développement agile »
1
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
1
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Synthèse
Exemple de
réalisation
De nombreux projets informatiques suivent le cycle en V standard. Cette méthode présente des avantages mais
aussi des limites connues : manque d’adaptabilité, documentation surabondante...
D’autres fonctionnements existent, ce sont les méthodes agiles, basées sur un fonctionnement itératif.
Il n’y a toutefois pas de règle absolue, selon la nature et l’environnement des projets, il conviendra de choisir la
méthodologie la plus adaptée voire de mixer les 2 méthodes en introduisant la dose d’agilité adéquate dans le
projet.
L’objet de ce document est de décrire la manière de mettre en œuvre les méthodes agiles par
Cereza dans le cadre d’une offre packagée intégrant philosophie de travail, méthodologie de
projet et outillage technique
2
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
2
Mise en
Généralités
œuvre
sur l’agilité
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Exemple de
Synthèse
réalisation
 Les méthodologies agiles visent à réaliser des développements informatiques dans un système où les acteurs
tendent vers une collaboration mutuellement profitable, par opposition à un système concurrentiel.
 Les différentes étapes du développement traditionnel s’établissent alors sur du court terme pour plus de
souplesse et de réactivité, c’est le principe de « l’agilité ».
 Ces méthodes itératives sont simplement la contraction des méthodes en cascade traditionnelles, on y
retrouve les spécifications - sous une forme plus proche du besoin - puis les phases de développement, de test et
finalement la livraison.
 Dans ces projets, le client et le fournisseur font équipe dans l’accomplissement des objectifs.
 Scrum est la méthode agile la plus utilisée, elle propose une structure simple et adaptée pour implémenter une
solution agile complète.
Planification
Priorisation
Spécifications
Besoin
Validation
Analyse
Besoin
REX
Conception
générale
Planification
Priorisation
Analyse
Conception
REX
Conception
Intégration
Itération
Conception
détaillée
(répétée à chaque
cycle)
Tests unitaires
Incrément
Itération
Développement
Application
Développement
Incrément
Développement
Application
Livraison
incrément
Test
Livraison
incrément
Test
temps
temps
1 Cycle en V
(répétée à chaque
cycle)
n Cycles agiles
Les méthodes agiles offrent une alternative au cycle en V standard en proposant un fonctionnement
itératif et collaboratif
3
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
3
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Synthèse
Exemple de
réalisation
Cereza met en œuvre une méthode classique inspirée de Scrum :
 Les besoins métiers sont traduits en une liste d’évolution produit.
 Ces évolutions produits sont priorisées afin de définir le contenu d’une version.
 L’équipe construit une liste de tâches techniques et répartit celles-ci entre les différents sprints pour aboutir
à la livraison d’une version cohérente.
 Ces tâches sont développées dans un environnement technique agile
S1
S2
S3
S4
S5
Besoin
Évolutions
Sprint
Sprint
Sprint
Sprint
Sprint
Version
Application
métier
priorisées
hebdo
hebdo
hebdo
hebdo
hebdo
livrable
complète
Scru

Scru

Scru

Scru

Scru
m
m
m
m
m
quoti
quoti
quoti
quoti
quoti
dien
dien
dien
dien
dien

Cycle répété
n fois
La valeur ajoutée des méthodes agile est désormais reconnue dans le monde du développement logiciel.
Néanmoins, une mauvaise application peut mener à des difficultés importantes (interfaces avec les SI en place,
maintenance et pérennité des solutions, gestion contractuelle …)
Fort de son expérience, Cereza préconise la mise en en œuvre de la méthode Scrum à travers la mise en
place d’un plateau intégré de développement agile
4
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
4
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes
Rôles et
Suivi et
Agilité
Contractualis
du plateau
acteurs
pilotage
technique
ation agile
Synthèse
Exemple de
réalisation
Plateau intégré de développement agile : l’importance de chaque mot
 Plateau  L’équipe projet est colocalisée en un seul lieu  Transparence et interactions entre les acteurs
 Intégré  L’équipe-projet est constituée des différents profils : MOE / MOA / Client  Rapidité de décision
 Développement agile  L’équipe-projet met en œuvre la méthode scrum  Raccourcissement des cycles


Développement
Spécification
Itérations
MOE

Besoin fonctionnel
Itérations
AMOA
Client
Socle
technique
agile
Scrum
Master
Dév
Dév
Instances de pilotage partagées
Le bon fonctionnement du plateau s’appuie sur une définition précise du rôle des acteurs, des instances de
pilotage adaptées et un environnement technique agile lui aussi.
Une bonne définition des rôles et des instances de pilotage du plateau, associée à des outils techniques
adaptés, permettent de mettre en œuvre les méthodes agiles dans un cadre formalisé et performant.
5
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
5
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile


Développement
Spécification
Itérations
MOE
Synthèse
Exemple de
réalisation

Besoin fonctionnel
Itérations
AMOA
Client
Socle
technique
agile
Scrum
Master
Dév
Dév
Instances de pilotage partagées
Rôle de la Maîtrise d’oeuvre
Rôle du Scrum Master
Rôle de l’Assistance à maîtrise
d’ouvrage
Échanges avec le client
 Formalisation du besoin
 Rédaction des spécifications
 Proposition de priorisation des évolutions
 Support au déploiement (formation /
accompagnement)
Pilotage des développements
 Valider le contenu des Sprints avec
l’AMOA
 Cadencer les développements
 Maîtriser l’intégration continue
 Piloter l’équipe de développement
Rôle des développeurs
Spécifications
Besoins métier
Priorités
Priorités
Tests techniques
Tests métier
Réalisation des développements
 Développer les taches affectées
 Comprendre le métier
 Interagir en direct avec l’AMOA si besoin
 Suivre les processus Agiles
Rôle du CLIENT
Pilotage projet et expertise
métier
 Arbitrage des décisions
 Pilotage du projet
 Expertise métier
 Validation des spécifications
 Validation de la recette
métier
Échanges avec la Maîtrise d’oeuvre
 Fournir les spécifications par Sprint
 Échanger en cours de développement
 Recetter les versions
 Se disponibiliser pour la MOE
La fonction centrale d’assistance à maîtrise d’ouvrage joue un rôle décisif de pilotage et de lien entre le
client et la maîtrise d’œuvre informatique
6
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
6
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Synthèse
Exemple de
réalisation
Il est nécessaire de mettre en place le nombre juste adapté d’instances de suivi du projet :
Point scrum
Point scrum hebdo
Comité projet
Comité de pilotage
Point quotidien de suivi des
Point hebdomadaire de suivi
Comité hebdomadaire
Comité mensuel de pilotage
développements réalisés la
du développement du sprint
d’arbitrage du sprint en cours
du projet
veille et planifiés le jour J
en cours
MOE
AMOA
MOE
MOE
AMOA
Client
MOE
AMOA
Client
Planning d’un mois type
S1
Point scrum
S2
S3
S4
S5
Quotidien
Suivi
Hebdo
Arbitrage
Mensuel
Pilotage
Point scrum
hebdo
Comité projet
Comité de
pilotage
Le respect rigoureux des instances planifiées reste le meilleur garde-fou aux risques de dérives du
projet, tant en terme budgétaire ou calendaire que de conformité aux besoins fonctionnels.
7
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
7
Mise en
Généralités
sur l’agilité
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Framework
Java/.net
Utilisation de
composants standards
Gestion du Code
Source
Exemple de
réalisation
Gestion des bugs et demandes
d’évolutions ( Bugzilla / Extenso)
 Maven
 JUnit
 Ibatis
 Messagerie instantanée par Jabber
(Neos)
Subversion
Contrôle Qualité
Logicielle
Synthèse
 Wiki
 Répertoire partagé
Sonar
Outils collaboratifs
Hudson
Intégration continue
Compilation
quotidienne
automatisée
Package
quotidie
Package
quotidien
Package
quotidien
n
Recette sprint hebdo
Livraison version
Outils techniques
Possibilité
technique de
livrer une
version
rapidement
Qualité et réactivité du développement
Méthodes et bonnes pratiques
 Capitalisation sur le Framework
 Pair Programming
 Rotation des équipes
 Revues de code
 Suivi des builds
La réussite d’un projet de développement agile passe aussi par l’utilisation d’outils autorisant une évolutivité
importante de l’application : c’est l’« agilité technique »
8
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
8
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
plateau
acteurs
pilotage
technique
Contractual
isation
agile
Synthèse
Exemple de
réalisation
Le fonctionnement en méthode agile étant fait pour mener des projets qui suivent de manière réactive l’évolution des
besoins métier, le cadre contractuel mérite la souplesse nécessaire afin de ne pas être un frein ou une contrainte à
l’avancement du projet.
Le contrat est un moyen d’instaurer une collaboration saine entre un client et son sous-traitant. Les limites du contrat
au forfait coût fixe / périmètre fixe étant connues, il est préférable d’opter autant que possible pour une collaboration
opérationnelle à toutes les étapes du projet :
Avant le contrat
Avant le projet
En cours de projet
Après le projet
Partage des
Partage des objectifs
Mise à jour régulière
Partage du coût des
estimations
et des moyens
des objectifs
succès ou des échecs
Contreparties :
 Transparence complète dans le fonctionnement du projet
 Suivi régulier de l’avancement et de la conformité aux objectifs fixés
NB : Les modalités de contractualisation restent quoi qu’il en soit à discuter au cas par cas
Un cadre contractuel adapté au fonctionnement itératif est un facteur supplémentaire de réussite d’un
projet de développement agile.
9
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
9
Généralités
sur l’agilité
Mise en
œuvre
proposée
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
Synthèse du besoin
 Mener efficacement un projet SI
qui réponde aux problématiques
métier
Synthèse
Exemple de
réalisation
Nos atouts
 Démarche de partenariat
 Méthodologie
Délais de mise
en oeuvre
Projet
SI
réussi
Réponse aux
besoins
métier
 Intégration MOE/AMOA
 Expérience
 Réactivité
 Outillage technique
Coûts de
développement
Le plateau intégré de développement agile, ce qu’il faut en retenir :
Un état d’esprit partagé dans un cadre méthodologique éprouvé : un environnement performant pour la
réussite de vos projets.
10
9 Rue Saint Fiacre - 75002 Paris
Reproduction interdite
10
Généralités
sur l’agilité
Mise en
œuvre
Principes du
Rôles et
Suivi et
Agilité
Contractualis
plateau
acteurs
pilotage
technique
ation agile
proposée
Synthèse
Exemple de
réalisation
Refonte du SI de Naviland Cargo
Société
Naviland Cargo est une filiale de Fret SNCF spécialisée dans le transport combiné
Concevoir et réaliser un SI intégré de la commande client à la facturation via la gestion de la
réservation des containers sur les trains, la commande des agents, la gestions des locomotives…
Projet
Plateau mis en
oeuvre
Équipe projet : 2 AMOA, 4 développeurs et 1 client chef de projet colocalisés sur un plateau-projet
au siège de Naviland à Vincennes
 Après 1 mois de cadrage initial, mise en œuvre d’une première version opérationnelle en 3 mois
Déroulement du
projet
 Enrichissement de l’application par des versions tous les mois et demi
 Pérennisation sur plusieurs années du plateau-projet avec une structure plus légère (½ AMOA et 3
développeurs)
Résultats obtenus
 Retour à la rentabilité de Naviland via une meilleure maîtrise de ses ressources (gérées dans le SI)
 Portage de cette solution dans les autres filiales de Fret SNCF (VFLI, Logistra, SFB, SFI…)
1er cycle (inférieur à 3 mois)
Constitution
plateau-projet
Cadrage
initial
Conception
Assemblage
Développement
Cadrage détaillé
11
9 Rue Saint Fiacre - 75002 Paris
1ère version
opérationnelle
Amélioration
Cycle des versions
Intégration
continue
Tests
Recette
Livraison
Déploiement
Formation
Accompagnement
Reproduction interdite
11