53
Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 1 Génie Logiciel Génie Logiciel Gestion de Projet Gestion de Projet Renaud Marlet LaBRI / INRIA http://www.labri.fr/~marlet (d'après A.-M. Hugues) màj 19/04/2007

Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Embed Size (px)

Citation preview

Page 1: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 1

Génie LogicielGénie Logiciel

Gestion de ProjetGestion de Projet

Renaud Marlet

LaBRI / INRIA

http://www.labri.fr/~marlet

(d'après A.-M. Hugues)

màj 19/04/2007

Page 2: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 2

Est-ce bien nécessaire ?Est-ce bien nécessaire ?

● Principes de gestion = beaucoup d'évidences ● Pourtant beaucoup de projets sont mal gérés

– dépassement du temps– objectifs non atteints– mécontentements divers– ...

Page 3: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3

Objectif de ce coursObjectif de ce cours

● Donner des éléments structurants– sans rentrer dans les détails

(sort du cadre de ce cours)● Intérêt :

– pour celui qui va géré– pour celui qui va « être géré »

→ comprendre un réseau d'interactions complexes

● Plus général qu'appliqué au seul génie logiciel

Page 4: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 4

Gestion ProjetGestion Projet

→ Estimation des tâches à effectuer

● Ordonnancement et dépendances de tâches● Répartition des activités● Plan projet● Organisation du travail

Page 5: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 5

Processus d'estimationProcessus d'estimation

1) Estimer la taille du produit– nombre de lignes de code (LOC)– ex. points de fonctions, feature points, ...

2) Estimer l'effort (hommes-mois)– ex. : COCOMO (COnstructive COst Model)

3) Estimer la durée– mois ou semaines calendaires

Page 6: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 6

Importance / qualitéImportance / qualitédes méthodes d'estimationdes méthodes d'estimation

Marge d'erreur– LOC (par analogie / « au pif ») : facteur 9– points de fonctions : facteur 3

Page 7: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 7

Processus d'estimationProcessus d'estimation

Sort du cadre de ce cours

→ juste quelques principes ici

→ pas de méthode effective

Page 8: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 8

EstimationEstimation

En faire une tâche raisonnée– allouer du temps pour réfléchir– étudier la situation sereinement (pas sous la pression)– planifier l'estimation (!)(!)

Page 9: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 9

EstimationEstimation

● Prendre l'avis de ceux qui vont réaliser le travail– développeurs, etc.– estimer par consensus

● Prendre en compte– les niveaux de difficultés (facile, moyen, difficile)– l'expérience / la compétence des développeurs– les risques (y compris de gestion de projet)

● Utiliser des données des projets précédents– importance de l'expérience

Page 10: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 10

Estimation : Ne pas oublier les Estimation : Ne pas oublier les tâches récurrentes tâches récurrentes

● documentation● préparation des démonstrations utilisateurs● formation des utilisateurs et développeurs● intégration à l'existant● récupération des données existantes● revues● réunions● maintenance de l'existant pendant le développement nouveau● gestion qualité● absences (congés, maladie, RTT, absentéisme, ...)● ...

Page 11: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 11

Gestion ProjetGestion Projet

● Estimation des tâches à effectuer

→ Ordonnancement et dépendances de tâches

● Répartition des activités● Plan projet● Organisation du travail

Page 12: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 12

Ordonnancement et dépendances : Ordonnancement et dépendances : Graphe PERTGraphe PERT

● PERT (Project Evaluation & Review Technique)● Graphe exprimant :

– les tâches élémentaires– les dépendance entre tâches– la durée des tâches– les dates

● de début et de fin● au plus tôt et au plus tard

Page 13: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 13

Graphe PERT :Graphe PERT :Définition de tâches élémentairesDéfinition de tâches élémentaires

A

B

D

E

G

finF

C H

début

Tâche

Page 14: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 14

Graphe PERT :Graphe PERT :Dépendances entre tâchesDépendances entre tâches

A

B

D

E

G

finF

C H

début

Tâche

Page 15: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 15

Graphe PERT :Graphe PERT :Durée des tâches élémentairesDurée des tâches élémentaires

A3

B2

D2

E6

G4

finF4

C4

H2

début

Tâchedurée

Page 16: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 16

Ordonnancement et dépendances : Ordonnancement et dépendances : Graphe PERTGraphe PERT

Détermination d'un chemin critique :

= le plus long, au sens de la somme des durées

→ détermine la durée minimale du projet

Page 17: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 17

Exercice : quel est le chemin Exercice : quel est le chemin critique et la durée minimale ?critique et la durée minimale ?

A3

B2

D2

E6

G4

finF4

C4

H2

début

Tâchedurée

Page 18: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 18

Graphe PERT :Graphe PERT :Chemin critique et durée minimaleChemin critique et durée minimale

A3

B2

D2

E6

G4

finF4

C4

H2

début

duréeminimale

= 15

Tâchedurée

Page 19: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 19

Ordonnancement et dépendances : Ordonnancement et dépendances : Graphe PERTGraphe PERT

Dates de début et de fin au plus tôt :– partir du nœud « début », aller vers le nœud « fin »– pour tout nœud :

● date de début = max(dates de fin des tâches entrantes)● date de fin = date de début + durée

Page 20: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 20

Exercice : quelles sont les dates Exercice : quelles sont les dates de début et de fin au plus tôt ?de début et de fin au plus tôt ?

A3

B2

D2

E6

G4

finF4

C4

H2

début

Tâchedurée

(début au plus tôt,fin au plus tôt)

(15,15)(0,0)

(0,2)

Page 21: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 21

Graphe PERT :Graphe PERT :Dates de début et de fin au plus tôtDates de début et de fin au plus tôt

A3

B2

D2

E6

G4

finF4

C4

H2

début

(0,3)

(0,0)

(3,7)

(3,5)

(0,2)

(2,8)

(7,9)

(15,15)

(11,15)

(7,11)

Tâchedurée

(début au plus tôt,fin au plus tôt)

Page 22: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 22

Ordonnancement et dépendances : Ordonnancement et dépendances : Graphe PERTGraphe PERT

Dates de début et de fin au plus tard :– partir du nœud « fin », aller vers le nœud « début »– pour tout nœud :

● date de fin = min(dates de début des tâches sortantes)● date de début = date de fin - durée

Page 23: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 23

Exercice : quelles sont les dates Exercice : quelles sont les dates de début et de fin au plus tard ?de début et de fin au plus tard ?

A3

B2

D2

E6

G4

finF4

C4

H2

début

Tâchedurée

(début au plus tard,fin au plus tard)

(15,15)(0,0)

(13,15)

Page 24: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 24

Graphe PERT :Graphe PERT :Dates de début et de fin au plus tardDates de début et de fin au plus tard

A3

B2

D2

E6

G4

finF4

C4

H2

début

(0,0)

(0,3)(3,7)

(9,11)

(3,5)

(5,11)

(13,15)

(15,15)

(11,15)

(7,11)

Tâchedurée

(début au plus tard,fin au plus tard)

Page 25: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 25

Graphe PERT completGraphe PERT complet

A3

B2

D2

E6

G4

finF4

C4

H2

début

(0,3)

(0,0)

(0,0)

(0,3)

(3,7)

(3,7)

(3,5)

(9,11)

(0,2)

(3,5) (2,8)

(5,11)

(7,9)

(13,15)(15,15)

(15,15)

(11,15)

(11,15)

(7,11)

(7,11)

Tâchedurée

(début au plus tôt,fin au plus tôt)

(début au plus tard,fin au plus tard)

Page 26: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 26

Ordonnancement et dépendances : Ordonnancement et dépendances : Graphe PERTGraphe PERT

● Si plusieurs équipes, projet complexe, ...

→ graphe PERT à plusieurs niveaux (c.-à.-d. emboîtés) :

un noeud complexe est lui-même découpé en un graphe

● Pas spécifique au génie logiciel

→ utilisé dans le BTP, ...

Page 27: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 27

Gestion ProjetGestion Projet

● Estimation des tâches à effectuer● Ordonnancement et dépendances de tâches

→ Répartition des activités

● Plan projet● Organisation du travail

Page 28: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 28

Répartition des activités :Répartition des activités :diagramme de Ganttdiagramme de Gantt

● Fait apparaître :– répartition des activités dans le temps– affectation des individus

● Détaille :– les coûts en hommes-mois (ou h-semaine, h-jour)– dates de début et de fin pour chaque tâche

Page 29: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 29

Exemple deExemple dediagramme de Ganntdiagramme de Gannt

mois1

mois2

mois3

\ Mois Tâche \

mois5

1mois

6mois

7mois

4mois

91

mois10

Cumul(en h-m)

mois8

Tâche 1

Tâche 2.1

Tâche 2.2

Tâche 2.3

Tâche 2.4

Tâche 2.5

Tâche 3

TotalmensuelCumul

(en h-m)1 3 5 12 16 178 21 2219

1 2 2 4 4 13 2 12

A,BA

A,B

A,C

B B,D

A,C C

C,D

C,D D

3

2

4

5

3

2

3

22

Page 30: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 30

Répartition des activités :Répartition des activités :diagramme de Ganttdiagramme de Gantt

Gestion de projet pratique :– à chaque tâche on associe un objectif

→ permet de repérer la terminaison de la tâche

→ contrôle des dérives

(+ se souvenir que les hommes ne sont pas interchangeables)

Page 31: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 31

Gestion ProjetGestion Projet

● Estimation des tâches à effectuer● Ordonnancement et dépendances de tâches● Répartition des activités

→ Plan projet

● Organisation du travail

Page 32: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 32

Plan projetPlan projet

● Document● Élément de base de la planification● Responsable = chef de projet du développement

Page 33: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 33

Contenu du plan projet (1)Contenu du plan projet (1)

● Nature de l'application– objectifs– principales fonctionnalités– autres caractéristiques : limites, performances, ...

● Scénario de développement– classification des priorités et contraintes– brève description de chaque composant

Page 34: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 34

Contenu du plan projet (2)Contenu du plan projet (2)

● Ressources– humaines– matérielles– logicielles

● Coût● Calendrier

☛ Il existe des modèles standards de document (IEEE, ...)

Page 35: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 35

Plan projetPlan projet

● Élaboré dès la phase de planification● Actualisations successives et raffinements

→ Suivi de projet (→)

Page 36: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 36

Suivi de projetSuivi de projet

● Analyse (régulière) de l'écart au plan projet● Par le responsable de projet

– utilise : fiches de suivi, rapports d'activité● Actualisation de :

– graphe(s) PERT– diagramme(s) de Gantt– diagramme(s) à 45°

(perception visuelle de la dérive par rapport aux objectifs)

Page 37: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 37

Gestion ProjetGestion Projet

● Estimation des tâches à effectuer● Ordonnancement et dépendances de tâches● Répartition des activités● Plan projet

→ Organisation du travail

Page 38: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 38

Organisation du travailOrganisation du travail

● Partage du travail● Communication dans un projet● Profil des membres du projet● Facteurs humains

Page 39: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 39

Partage du travailPartage du travail

● Partage du travail pas toujours facile à réaliser● Dépend du type de tâche à effectuer

Page 40: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 40

Partage du travail : cas d'une Partage du travail : cas d'une tâche bien partitionnéetâche bien partitionnée

durée

personnel

Exemple : codage et tests unitaires

Page 41: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 41

Partage du travail : cas d'une Partage du travail : cas d'une tâche non partitionnabletâche non partitionnable

Exemple : analyse et conception globaledurée

personnel

Page 42: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 42

Partage du travail : tâche exigeant Partage du travail : tâche exigeant une interaction complexeune interaction complexe

durée

personnel

Page 43: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 43

Le dilemme de la communicationLe dilemme de la communication

● Positif :– améliore la compréhension du projet– permet une plus grande mobilité dans le projet

● Négatif :– fait perdre du temps (cf. ↑)

+ la communication orale peut nuire à la documentation (mémoire à long terme du projet)

qui devient moins nécessaire... à court terme

Page 44: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 44

Structurer la communicationStructurer la communication

● Eviter que tout le monde communiqueavec tout le monde– croissance suivant une loi carrée : N(N-1)/2

● Faire des niveaux– groupes et responsables

Page 45: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 45

Rôles principaux dans un projet (1)Rôles principaux dans un projet (1)

Définition de rôles :– chef de projet– responsable qualité– responsable de l'intégration– responsable de la qualification– responsable de la maintenance– responsable de la documentation– ...

☛ Une même personne peut avoir plusieurs rôles

Page 46: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 46

Rôles dans un projet (2)Rôles dans un projet (2)

Avantages :– responsabilisation → motivation

– permet de trouver des (bons) compromis● chacun défend son activité

– il y a plus de chances que les choses soient faites● sinon, « pente » naturelle = on compte sur les autres

Page 47: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 47

Rôles dans un projet (3)Rôles dans un projet (3)

Importance d'une bonne définition des rôles– check-list des tâches et objectifs – périmètres disjoints

● mais tensions possibles entre missions « incompatibles »● ex. compromis qualité / temps (responsable qualité

contre responsable du développement)

Page 48: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 48

Profil des membres du projet (1)Profil des membres du projet (1)

● Définition et analyse des besoins– savoir anticiper, analyser les stratégies

● Spécifications fonctionnelles– clarté, précision, cohérence, rigueur

● Conception– capacité à communiquer, formaliser, abstraire

● Programmation et tests unitaires– discipline de programmation (style), rigueur,

communication, sens du groupe

Page 49: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 49

Profil des membres du projet (2)Profil des membres du projet (2)

● Intégration– compétence ~ ingénieur système

● Qualification– ingénieur d'application, proche du domaine du produit

● Maintenance– rigueur, analyse, expertise

Page 50: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 50

Facteurs humainsFacteurs humains

● Motivations individuelles et collectives● Relations entre les membres et avec l'extérieur● Dynamique du chef de projet● Formation et apprentissage● Éviter :

– trop ou pas assez de niveaux (structuration)– déresponsabilisation– spécialisation excessive (cf. XP) : déplacer les gens

Page 51: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 51

À propos de motivationÀ propos de motivation

Si tu veux construire un bateau, inutile de battre le tambour pour rassembler les gens, inutile de se procurer du bois, préparer les outils, distribuer les tâches et répartir le travail ; c'est d'abord la nostalgie du large et de l'infini de la mer qu'il faut éveiller dans les cœurs.

Antoine de St-Expéry

(Citadelle)

Page 52: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 52

Facteurs humainsFacteurs humains

● Grandes variations– temps de codage : rapport de 1 à 25– temps de mise au point : 1 à 26– temps d'exécution du code : 1 à 13– nombre d'erreurs restantes : 1 à 10

● Peuvent être– réduits : méthodologies, standards, normes, outils

– jamais annulés (☹)

(d'après A.-M. Hugues)

Page 53: Génie Logiciel - IMAGINEimagine.enpc.fr/~marletr/LaBRI/teaching/.../GenLogGestionProjet.pdf · Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 3 Objectif de ce cours

Génie logiciel – Gestion de projet © 2005-2007 Renaud Marlet 53

À retenirÀ retenir

● Estimation :

– planifier sereinement

– converger par consensus

– se baser sur des données précédentes (expérience...)● Découpage en tâches :

– peser le besoin d'interaction, de communication

– définir un objectif pour chaque tâche (→ mesure)

● Il existe des « outils », des méthodologies :

– ordonnancer (PERT), répartir les activités (Gantt), ...● Gestion de projet : responsabiliser