Maîtrise douvrage et maîtrise dœuvre dans la conduite des projets informatiques.
Conduite de projets informatiques - people.irisa.fr · Eléments de gestion de projet informatique...
Transcript of Conduite de projets informatiques - people.irisa.fr · Eléments de gestion de projet informatique...
1
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
28/02/2007 1
Conduite de projets informatiques
Pr. Jean-Marc JézéquelIRISA - Univ. Rennes I
Campus de BeaulieuF-35042 Rennes Cedex
Tel : +33 299 847 192 Fax : +33 299 842 532e-mail : [email protected]
http://www.irisa.fr/prive/jezequel
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 2
Problématique
• Qu'est ce qu'un projet ?• Comment planifier un projet ?• Quelles spécificités des projets informatique ?
– cycle de vie– techniques
• d'estimation• d'analyse/conception• de tests• de gestion de configuration
2
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 3
Conduite de projets informatiques
• Introduction à la culture projet• Cycle de vie du logiciel• Estimation de projet• Planification et suivi• Qualité du logiciel• Gestion des risques• Gestion de configuration et des changements• Rôle du chef de projet
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 4
Introduction à la culture projet
• Pourquoi de la gestion de projet ?
• Qu'est-ce qu'un projet ?
• Qu'est-ce que la gestion de projet ?
3
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 5
Pourquoi de la gestion de projet ?
• Les projets n'atteignent pas souvent leurs objectifs– dépassement de délais– surcoûts importants– qualité technique du produit insuffisante
• Les projets se déroulent dans un milieu complexe– acteurs divers dans une entreprise : étude, production,
marketing– environnement extérieur non maîtrisable : marché, social,
politique, concurrence
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 6
La solution : une méthode
• Le déroulement du projet est formalisé– par l'entreprise qui capitalise son expérience– par le client qui impose des contraintes pour garantir le bon
déroulement du projet
• Des spécifications de management sont édictées par– des entreprises– les états
• Stratégiques, beaucoup de ces informations sont confidentielles ; elles représentent le savoir-fairedes entreprises.
4
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 7
Des principes fondateurs
• La gestion par objectifs• La gestion des éléments critiques• Des besoins clairement exprimés• Les hommes, les méthodes, les moyens• Un seul point de responsabilité• La délégation d'autorité (confiance)• La communication entre fonctions et niveaux• Il est plus important d'être clair que parfait• Le droit à l'erreur
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 8
Projet
Action spécifique, nouvelle, qui structure méthodiquement et progressivement une réalité à venir pour laquelle on n'a pas encore d'équivalent exact.
5
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 9
Projet
• C'est une réponse apportée à une demande élaborée pour satisfaire aux besoins d'un maître d'ouvrage.
• Il implique :– un objectif physique ou intellectuel,– des actions à entreprendre avec des ressources données.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 10
Rôle du chef de projet
Caractéristiques
• Généralement novateur– technique, dimension, géographie, procédé,…
• Non répétitif– donc organisation spécifique, temporaire
• Début et fin– bilan non forcément annuel
• Tourné vers l'objectif final– Adaptable à des modifications fréquentes
• Equilibre entre contraintes techniques, coût et délais
6
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 11
Acteurs du projet
• Maître d'ouvrage personne physique ou morale propriétaire de l'ouvrage. Il détermine les objectifs, le budget et les délais de réalisation.
• Maître d'œuvre personne physique ou morale qui reçoit mission du maître d'ouvrage pour assurer la conception et la réalisation de l'ouvrage.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 12
Phases et implication des acteurs
Maître d'ouvrage
organisation
conception
réalisation
Maître d'œuvre
créativité
verrouillage
mise en œuvre
exploitation
maintenance
7
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 13
Les types de contrat
• Forfaitaire (plutôt grands projet)– le travail doit être clairement défini– les interfaces entre contractants doivent être contrôlés– le maître d'œuvre assume les risques
• Régie (plutôt étude)– les coûts et la charge doivent être gérés par le client– le maître d'ouvrage assume les risques
• Mixte
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 14
Gérer le projet
• Définir les objectifs, la stratégie, les moyens, l'organisation
• Les adapter aux changements internes au projet mais aussi externes (socio-politico-économique)
• Dans la mesure du possible les optimiser
Décider
PrévoirRéagir
Gérer
Apprendre
8
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 15
Objectifs et Moyens
• Les objectifs sont :– Techniques– Economiques– Délais
• Ils sont obtenus par des moyens :– Humains– Matériels– Financiers
Décider
PrévoirRéagir
Gérer
Evaluation
PlanificationContrôle
Estimation
gestion du risque
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 16
Dilemme du management de projet
A ressource égale, vouloir améliorer un paramètre, influe négativement sur les autres …
Défaut = non Qualité
Délais
Coût
9
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 23
Management de projet
Gestiondes hommes
OrganisationCommunicationAnimation
Directionde projet
Gestiontechnique
ObjectifMéthodeQualité
Gestiondes moyens
PlanificationContrôleCoût-délais
ConduitePilotage
Analyse et reporting
Synthèse et décision
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 24
Axes du management
• Planification• Contrôle• Management humain
Prévoir
Suivre
Animer
10
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 25
Planification
• Construction d'un scénario de référence décrivant :
– les objectifs– le contenu (les activités,…)– les moyens (ressources humaines, financières,…)– l' organisation (circulation de l'information, …)
On contrôle par rapport à ce qui est prévu…
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 26
Contrôle
• mise en œuvre du système d'information
• mesurer la situation du projet• comparer à la référence
• prévoir les conséquences (délais, coûts, qualité)• définir des actions correctives si nécessaire• appliquer ces actions
Détecter les problèmes et les anticiper
11
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 27
Management humain
• Mettre en place les conditions optimales de participation au projet :
– définir clairement les responsabilités– délimiter les zones conflictuelles– motiver, animer
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 28
En bref
• Notions simples et techniques de gestion de "bon sens" mais ...
• Interaction complexe
• Vocabulaire commun, outil de communication
• Arbitrage objectif en contexte multiprojet
• Humain• Technique• Risques• Coûts• Délais
12
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 43
Conduite de projets informatiques
• Introduction à la culture projet• Cycle de vie du logiciel• Estimation de projet
– Principes– Techniques d’estimations
• Planification et suivi• Qualité du logiciel• Gestion des risques• Gestion de configuration et des changements• Rôle du chef de projet
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 44
Estimation de projet
13
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 45
L'art de l'estimation
Il est difficile de prévoir...surtout l'avenirB.Shaw
• Pourquoi estimer ?
• La démarche d'estimation
• Qualité
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 46
Pourquoi estimer ?
• Connaître le coût d'une "vue de l'esprit" qui deviendra peut-être réalité– au bout d'un temps qu'on espère fini.
• On estime :– Les immobilisations corporelles (terrains, bâtiment,
équipement, ...)– Les immobilisations incorporelles (frais d'études, frais de
démarrage, frais financiers,...)– Les dépenses d'exploitation (frais liés à l'activité, frais
financiers,...)
14
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 47
Niveau d'informationvolume nécessaire niveau de précision %
+-
30
20
10
5
30
20
10
5
Ordre de grandeur
Avant projet
Préliminaire
Courants
Détaillé
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 48
Type d'estimation
Ordre de grandeur
Avant projet
Préliminaire
Courants
Détaillée
ObjectifsEtude préliminaireFaisabilité
Justifier l'engagement des étudesAutoriser les dépenses préliminaires
Autoriser l'investissement
Contrôler les coût d'exécution
TonneCourbeFacteurGrands ensemblesFacteursCoûts unitairesQuelques offresFacteursCoûts unitairesNombreuses offresMètresCoûts unitairesTarifs
Temps
Heures
Jours
Semaine
Semaine ou mois
Semaine ou mois
Technique
15
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 49
Démarche d'estimation
Entrées – Objectifs techniques– Objectifs de délais– Environnement– Période– Historique– Références
Sortie– Estimation
Comparaison avec le résultat
Augmentation de l'information
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 55
Techniques d’estimation du logiciel
• Quelques techniques
• La méthode Cocomo
• Les points de fonction
16
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 56
Méthodes d'estimations
• Par analogie• Oracle• PERT• Bottom-Up• Modèle paramétrique
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 63
Principe des modèles paramétriques
• Effort = a (Size)p
Avec :– Effort en Personnes-Mois– a impact des paramètres sur l'effort calibré– Size quantité de travail (SLOC ou FP) estimé– p exposant (proche de 1) calibré
Taille
facteurs
Estimation
17
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 64
Principe des modèles paramétriques
• Effort = a (Size)p
Avec :– Effort en Personnes-Mois– a impact des paramètres sur l'effort calibré– Size quantité de travail (SLOC ou FP) estimé– p exposant (proche de 1) calibré
Taille
facteurs
Estimation
Taille
Effort
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 65
Estimation
• Quelques techniques
• La méthode Cocomo
• Les points de fonction
18
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 66
COCOMO
• Modèle paramétrique• Facteurs dans le domaine public
• 3 modes de bases
– organique petite équipe, environnement stable– semi-détaché équipe de taille moyenne– détaché grande équipe, répartie, nouvel environnement
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 67
COCOMO simple
• mode organique : HM = 2,4 (KLSL) 1.05
• semi-détaché : HM = 3.0 (KLSL) 1.12
• détaché : HM = 3,6 (KLSL) 1.20
• mode organique : TDEV = 2.5 (HM) 0.38
• semi-détaché: TDEV = 2.5 (HM) 0.35
• détaché : TDEV = 2.5 (HM) 0.32
N = HM / TDEV HM : Hommes-Mois (152heures)KLSL : Kilo de Ligne de Source Livrées
Effort
Durée
19
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 68
COCOMO intermédiaire
• Quinze facteur correctifs sont introduits– valués de VeryLow à XtraHigh
• Pour le projet :– fiabilité requise du logiciel– taille de la base de donnée– complexité du produit
• Pour les contraintes de l'environnement :– contraintes de temps d'exécution / place mémoire– stabilité de la machine virtuelle– système de développement interactif ou non
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 69
COCOMO intermédiaire
• Pour le personnel :– aptitude à l'analyse– expérience du domaine– expérience de la machine virtuelle– aptitude à la programmation– expérience du langage
• Pour les méthodes :– méthode de programmation moderne– outils logiciels– durée du développement
20
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 70
COCOMO détaillé
• Les facteurs correctifs dépendent de la taille (KLSL)
• Une répartition de l'effort sur les phases de développement est réalisée
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 78
Conduite de projets informatiques
• Introduction à la culture projet• Cycle de vie du logiciel• Estimation de projet• Planification et suivi• Qualité du logiciel• Gestion des risques• Gestion de configuration et des changements• Rôle du chef de projet
21
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 79
Objectifs
• du Projet : unique et mesurable, e.g.:– prendre 1% du marché des cacahuètes salées grillées– faire des études de faisabilité– Intégrer deux systèmes informatiques– Maintenir une gare– Commercialiser une pâte dentifrice
• de la gestion du projet ; gérer :– Ressources matérielles et humaines– Finances– Temps
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 80
Coût et intérêt
• La question fondamentale : où en est le projet ?– Si un chef de projet sait répondre "intuitivement" et "fiablement"
à la question : où en est le projet ? ou si cette question est sans fondement, la gestion de projet n'a pas lieu d'être.
• Comment répondre à cette question ?– modéliser le scénario du projet (tableau de marche prévisionnel)– déterminer périodiquement ce qu'il reste à faire– indiquer où l'on en est sur le tableau de marche (avancement)
• La gestion de projet coûte de 2 à 5 % de la valeur ajoutée du projet.
22
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 81
Analyse de projet
• Formalisme• Product Breakdown Structure• Work Breakdown Structure• Planning• Mettre en évidence les activités• Organisation Breakdown Structure• Réseau• Scénario• Tableau de marche• Résumé
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 82
Formalisme
PBS(QUOI)
WBS(COMMENT)
OBS(QUI)
PROJET
GESTIONde
PROJETRESEAU
SCENARIO
23
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 83
Product Breakdown Structure
système
sous-système 1 sous-système 2 sous-système 3
ensemble 1 ensemble 2 ensemble 3
fait partiede ...
est composéde ...
Découpage du système en unités "physiques" hiérarchisées.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 84
Work Breakdown Structure
projet
définitionsystème
réalisations-système 1
intégrationsystème
réalisations-système 2
réalisations-système 3
définitions-système 1
réalisationensemble 21
intégrations-système 2
réalisationensemble 22
réalisationensemble 23
définitionensemble 21
réalisationensemble 21
intégrationensemble 21
définitionensemble 22
réalisationensemble 22
intégrationensemble 22
définitionensemble 23
réalisationensemble 23
intégrationensemble 23
Description structurée de toutes les tâches du projet, rapportées au découpage du produit.
24
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 85
Planning
t
def. sys
réalisation s-système 1
réalisation s-système 3
intégration système
intégration s-sys 2
def. s-sys 2
ensemble 21
ensemble 22
ensemble 23
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 86
Planning
t
def. sys
réalisation s-système 1
réalisation s-système 3
intégration sys
réalisation s-système 2
Plusieurs niveaux de planning déductibles du WBS
25
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 87
Mettre en évidence les activités
• Une des causes principales de dérive dans un projet est que des travaux n'avaient pas été vus, et donc prévus– Il n'est pas rare que ceci représente 30 % de la charge d'un projet.
• Le WBS permet de voir, et donc de mener des revues de projet pour isoler les éventuels oublis.
• Les tâches annexes sont les plus souvent omises :– logistique, mise en place de moyen de développement– formation, négociation de la sous-traitance– mise en place de l'environnement de test
=> WBS-type pour un type de projet dans une entreprise
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 88
Organisation Breakdown Structure
• Qui fait quoi ?– Qui déclare telle activité achevée (réalisée) ?– Qui déclare telle activité correctement achevée ?
(approuve, accepte)– Qui est responsable de qui ?
• Principe :
UN SEUL point de responsabilité par activité
26
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 89
Réseau
A
B
C
D
EH
G
F
I
J
10 j
15 j
20 j
5j
10 j
15 j
25 j
20 j
10 j
20 j
R1 100%
R2 100%
R2 50%
R2 100%
R1 100%
R1 50%
R2 50%
R1 50%
R1 100%
R2 100%
Activités/dépendancesRessourcesDurées
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 90
Scénario
Planning
t0.............................................t0+80
ABCDEFGHI
J
R1 A C HF I
R2 B ED
G J
t0.............................................t0+80
t0.............................................t0+80
Plan de charge
27
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 91
Au plus tôt
Planning
t0.............................................t0+80
ABCDEFGHI
J
On commence par placer les activités sans antécédents
A
B
C
D
E H
G
FI
J
10 j
15 j
20 j
5j
10 j
15 j
25 j
20 j
10 j
20 jR1 100%
R2 100%
R2 50%
R2 100%
R1 100%R1 50%
R2 50%
R1 50%
R1 100%
R2 100%
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 92
Au plus tard
Planning
ABCDEFGHI
J
tf-80.........................................tf
On commence par placer les activités sans successeurs
A
B
C
D
E H
G
FI
J
10 j
15 j
20 j
5j
10 j
15 j
25 j
20 j
10 j
20 jR1 100%
R2 100%
R2 50%
R2 100%
R1 100%R1 50%
R2 50%
R1 50%
R1 100%
R2 100%
28
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 93
Superposition ...
Planning
t0.............................................t0+80
ABCDEFGHI
J
tf-80.........................................tf
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 94
Chemin critique
Planning
t0.............................................t0+80
ABCDEFGHI
J
Ensemble des tâches de marge négative ou nulle
29
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 95
Tableau de marche
• Le tableau de marche est le scénario retenu– Pas de surcharge pour les ressources,– Délais et coûts satisfaisants.
• Comment agir sur les scénarios ?– Problème de charge
• Lissage ou nivellement
– Délais et/ou charge • Modification de priorités (réseau)• Modification des ressources• Modification des tâches (reprise de l'existant par exemple)• Modification de la définition du produit
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 96
RésuméPBS
WBS
OBS
Réseau
Scénario
Tableau de marche
ajustement technique
responsable de projet
accord du client
accord du client/mise en cause du projet
30
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 97
Plan directeur/Plan de développement
• Emis par le responsable du projet, le plan directeur contient :– les objectifs– les clauses contractuelles (client externe, sous-traitance)– organisation (responsabilité, hiérarchie)– circuit d'information et de décision– format et périodicité des comptes rendus– codification des activités– découpage du projet (organigramme technique)
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 98
Suivi de projet
• Suivre/contrôler– les délais– les coûts– la qualité
• Analyse du suivi• Historique
Défaut = non Qualité
Délais
Coût
31
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 99
Suivre
Tableau de marche Tableau de marche
points d'avancement points d'avancement
temps• Choix d'une métrique ?• Fréquence des points d'avancement ?• Qui vérifie les informations ?
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 100
Contrôle des délais
• Par rapport à la référence prévisionnelle, à une date donnée, mesurer pour chaque activité :– début– fin– avancement
• Le réseau montrera les implications pour les tâches dépendantes
• A-t-on une surestimation (ou une sous-estimation) systématique des durées ?
=> Nouvelles prévisions
Défaut = non Qualité
Délais
Coût
32
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 102
• Objectif : Mettre en évidence et expliquer– l'écart– la dérive– les tendances
Mesure de l'avancement
Ce qui est prévuCe qui est faitCe qui reste à faireCe qui est ré-estimé
• prise en compte de la valeur observé de la productivité• ré-estimation budgétaire
Défaut = non Qualité
Délais
Coût
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 103
Métriques d'avancement
• 0/100 Une chose est faite, ou non. On sous-estime une activité en cours de réalisation.
• 20/80 Une chose commencée est mesurée à 20% tant qu'elle n'est pas finie.
• Par jalons Un pourcentage d'avancement est associé à chaque jalon.
• Linéaire Associé à une mesure objective, physique.
Défaut = non Qualité
Délais
Coût
33
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 104
Analyse du suivi
dateprévues
date de la miseà jour (mois) dela date prévue
A
B
C
D
aujourd'hui
Défaut = non Qualité
Délais
Coût
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 156
Conduite de projets informatiques
• Introduction à la culture projet• Cycle de vie du logiciel• Estimation de projet• Planification et suivi• Qualité du logiciel• Gestion des risques• Gestion de configuration et des changements• Rôle du chef de projet
34
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 157
La gestion technique :Gestion de configuration
• Objectifs• Gestion
– Des modifications– Des matériels– Des documents
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 158
Objectifs de la gestion de configuration
• Garantir que tout les participants au projet savent– ce qui est décidé– ce qui est spécifié– ce qui est développé– ce qui est assemblé– ce qui est testé– ce qui est livré
• Etre la mémoire du projet– traçabilité, réutilisabilité (capitalisation), documentation
35
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 159
La documentation
• Les documents ont une nomenclature centralisée• Les liens entre documents doivent être gérés• Un même document peut exister sous plusieurs
versions• Les liens entre produit livrés et documents doivent
être gérés• Les documents doivent être relus, validés, diffusés• Les documents doivent êtres sauvegardés, archivés,
protégés
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 160
Organisation de la gestion de documentation
• secrétariat du chef de projet• documentation type• procédures de relance• outils de gestion de documentation
36
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 161
Documents
étude defaisabilité
étudepréalable
étudedétaillée
étudetechnique
RecetteRéalisation
Fiche-Projet
Rapport étudefaisabilité
Rapportétude
préalableRapportétude
détaillée
Rapportétude
technique
Rapportde
réalisation
Bilan duprojet
Dossierbilan
existant
Dossierde
choix
Cahiercharges
utilisateursCahier
chargesréalisation
Plan dedévelop-pement
Plan derecette
Plan demigration
Plan demise enœuvre
Synthèsedes
recettes
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 162
Les matériels
• Comme tous les documents, les matériels/produits doivent– être identifiés– répertoriés– leurs versions gérés– la cohérence avec la documentation assurée
37
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 163
L'impact des modifications
Gestion des documents
Gestion de configuration
• Pour maîtriser délais et coût, il faut maîtriser les modifications, inévitables dans un projet.
• Processus décisionnel de modification• Conserver une liste des modifications et le suivi du
processus décisionnel apporté.• Certaines modifications peuvent amené à revoir des
choses déjà livrées…
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 164
1. Demande d'étude (par client ou membre du projet)– description de l'état d'origine, de l'état final, et des motivations– décision de poursuivre par le responsable du projet
2. Etude d’impact technique, puis sur délais et coûts– noter la durée de validité de l'étude, date au delà de laquelle, si
aucune décision n'est prise, il faudra réévaluer la modification
3. Décision ou non après accord avec le client, et diffusion aux participants concernés
4. Suivi de la mise en œuvre des modifications
Processus décisionnel de modification
38
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 165
Outil de Gestion de Configuration : l ’exemple de CVS
• CVS : Concurrent Versions System
– logiciel libre disponible sous toute plate-forme• mode local ou client/serveur au dessus TCP• nombreuses GUI (WinCVS, WebCVS…)
– relativement simple et léger à mettre en œuvre• vs. ClearCase, Continuus etc.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 166
CVS Features
• Concurrent access by multiple developers• Multiple development lines in a single repository• Grouping sources into modules• Symbolic source tagging• Diffs between versions• Configurable logging support• Binary files support• Repository event triggers
39
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 167
Client-server architecture
ewacvs
• separate server (UNIX or NT)
• no shared filesystems
• a server process per connection
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 168
The CVS Repositoryewacvs:/data1/cvsroot
CVSROOT shr project1 project2 project3 devkits
ar cgi doc install reports util web
cgipr
• Resides on a server• No working files inside the repository
esapps formsunix nt
40
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 169
CVS Usage ModelCheckout, Commit, Update
• Checkout– Makes private copy in working directory– Can check out anywhere– Check out multiple copies, multiple versions
• Commit– Commit changes to the repository when finished– Working copies must be up to date with repository
• Update– Brings working copy up to date with repository
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 170
Concurrent checkoutMaster Repository
foo.c
WorkingCopyV1.7 Working
Copy V1.1Working
Copy V1.2
WorkingCopyV1.7
WorkingCopy
V1.2.2.1
checkout branch rel_1_fixcheckout latest
checkout latest
checkoutV1.2
checkoutV1.1Karen
Michael BrigidPatrick
Checkout does not lock the files in repository
X XV1.8 or 1.9
V1.8 or 1.9V1.2.2.2
checkin
checkincheckin
checkin prohibited
Chris
41
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 171
CVS and the Development Cycle
1. Check out source files in working directory.2. Edit source files.3. Unit test your code.4. Update working files to merge in changes from other
developers (if necessary).5. Test again if the sources were merged on step 4.6. Commit changes.7. Repeat from step 2 until you have a new release.8. Tag the release.9. Submit the module name and release tag for integration build.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 172
checkoutupdatecheckindevelopment
Ideal development with CVS
repository
Developer A
Developer B
42
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 173
checkin
X
Real development with CVS
repository
Developer A
Developer B
updateconflict resolutioncheckin
conflict
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 174
Common CVS commandscvs [cvs-options] command [cmd-options] [files]cvs init Initialize a new repository.cvs checkout Check out source for editing.cvs commit check files into the repositorycvs update Bring working files into sync with repository.cvs add Add new file/directory to repository.cvs remove Remove an entry from the repository.cvs tag Label the sources.cvs status Show status of checked out files.cvs log Show revision history for files.cvs diff Compare working files to version in repository or
versions inside the repository.
43
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 175
CVS online
• Official CVS site: http://www.cyclic.com
• CVS Bubbles: http://www.loria.fr/~molli/cvs-index.html
• CVS for Web development: http://durak.org:81/cvswebsites
• WinCvs: http://www.wincvs.org
• jCVS: http://www.jcvs.org/
• Netscape’s Mozilla under CVS: http://cvs-mirror.mozilla.org/webtools/tindertest/showbuilds.cgi?tree=SeaMonkey
• FreeBSD CVS repository: http://www.freebsd.org/support.html#cvs
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 176
Conduite de projets informatiques
• Introduction à la culture projet• Cycle de vie du logiciel• Estimation de projet• Planification et suivi• Qualité du logiciel• Gestion des risques• Gestion de configuration et des changements• Rôle du chef de projet
44
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 177
Missions et responsabilités
• Incarner l'identité du projet– Ni plus (d'autres projets de l'entreprise),– Ni moins (des sous ensembles du projet)
• Gérer la convergence du projet– Définir l'objectif– Etre la mémoire du projet– Agir pour converger
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 178
Evolution d'un projet
capacité d'action
niveau deconnaissancesur le projet
déroulement du projet
exploration despossibilités :objectif : mieuxconnaître le projet
gels, décisionsl'entreprise secompromet
décisions globalessimultanées ettardives pour diminuerles risques
passage à l'actegestion des délaiset des coûts
risquesd'obsolescencecommerciale
45
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 179
Rôle en phase de créativité (1)
• Définition initiale : objectif et méthodes– Participation à la définition du cahier des charges. Définition
(ou remise en cause) des méthodes de travail.
• Mobilisation– Recrutement des ressources nécessaires.
• Adaptation des normes métiers– Lien projet -> normes/stratégies des métiers participants;
adaptation
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 180
Rôle en phase de créativité (2)
• Recherche de compromis inter-métiers optimaux
– Styliste, ingénieur d'étude, commercial : pas mêmes critères d'évaluation
– Le chef de projet a pour rôle d'accorder tous les points de vue.
• Homme de communication pour détecter les problèmes avant que l'irréversibilité du projet ne dicte une solution.
46
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 181
Rôle en phase de verrouillage
• Stabilisation progressive du projet– Il faut clore les débats ouverts dans la première phase. Le désir
de retarder le plus possible les prises de décisions, pour avoir le plus d'information possible, doit être tempérer.
– De même l'arrivée probable et incessante de nouvelles données par la hiérarchie quant à la conjoncture, aux alliances, aux stratégies ne doit pas faire oublier la nécessité de converger.
• Mise sous contrôle et mémorisation– Une fois le projet stabilisé, le processus de développement doit
être continûment suivi.
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 182
Rôle en phase de mise en œuvre
• Améliorer la dynamique du système– Fini le temps des prospectives, des prévisions,
voici venu le pompier.– Le directeur de projet se mobilise sur les innombrables raisons
apparemment dérisoires qui pourraient entraîner des pertes importantes. Il faut accroître la vitesse de réaction du systèmequitte à modifier les procédures de fonctionnement standards :
• limiter les remonté hiérarchiques,• gérer les problèmes par lots plutôt qu'au cas par cas,• ...
47
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 183
Evolution du type de management
déroulement du projet
OuvertPropice à la créationRecherche de compromis
directifarbitrepompier
chercher à stabiliser le projet
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 184
En bref
• Etendue des compétences du chef de projet large– Maîtrise technique– Maîtrise de gestion– Capacité à motiver
• Improbable chez un seul individu=> Equipe projet
• Mais l'équipe projet, si elle est le maillon le plus visible, ne doit pas être le seul à être analysé et à évoluer pour améliorer l'efficacité du projet...direction, métiers doivent s'impliquer
48
Eléments de gestion de projet informatique
J.-M Jézéquel 2000
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 185
Conclusion
• La technique est nécessaire...
Les outils type « project management » peuvent jouer un rôle (mineur)…
mais loin d'être suffisante pour garantir le succès
• Problèmes humains dominent !
• Organisation, management, communication, planification, planification, ...
Pr. Jean-Marc Jézéquel - Conduite de projets informatiques 186
BibliographieR. E Westney, Gestion de petits projets, Techniques de planification, d'estimation et de contrôle, Paris, afnor
gestion, 1991Christophe Midler, "L'acteur projet, portrait d'un rôle d'influence", in Actes de la 8e convention de l'AFITEP :
Direction et contrôle de projet", Paris, octobre 1992, pp 13-28L. Sayles, M. Chandler, "The project Manager : Organizational Metronome", in Managing Large Systems, New
York, Harper & Row, 1971, pp 204-226P.J. Benghozi, Innovations et gestion de projets, Paris, Eyrolles, 1990Vincent Giard, "Les gestions du risque dans les projets", in Actes de la 8e convention de l'AFITEP : Direction et
contrôle de projet", Paris, octobre 1992, pp 175-191Vincent Giard, Gestion de projet, Economica, 1992Jean-Louis Muller, "L'estimation : un métier ou un art ?", in Actes de la 8e convention de l'AFITEP : Direction
et contrôle de projet", Paris, octobre 1992, pp 175-191Progèspace, "Guide méthodologique de gestion de projet", Support de formation 1990J.A. McCall, Quality factors, in Encyclopædia of Software Engineering, Vol 1, pp 958--969, John Wiley &
Sons, 1994T. Forse, Qualimétrie des systèmes complexes, mesure de la qualité du logiciel, Les éditions d'organisation