9
1 Projet de développement Gestion de projet avec Philippe Collet Licence 3 Informatique 2008-2009 2 Ph. Collet Organisation Cours 1 : principes généraux - svn Cours 2 : TRAC et gestion de projet Cours 3 : Introduction à Eclipse Cours 4 : Eclipse C / PHP Cours 5 : V&V et tests unitaires, en Java Cours 6 : Tests C / PHP - conclusion 3 Ph. Collet Plan Quelques principes de gestion de projet trac : constituants trac : fonctionnement, ticket… trac : limites et comparaison trac : application à votre projet trac : démo 4 Ph. Collet Processus Produits Personnes formation compétences communication cahier des charges conception code source exécutable documentation utilisateur cas de test résultats des tests demande de changement planification coordination gestion mesures analyse conception implémentation Les 3 P

Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

Embed Size (px)

Citation preview

Page 1: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

1

Projet de développement

Gestion de projet avec

Philippe Collet

Licence 3 Informatique

2008-2009

2Ph. Collet

Organisation

� Cours 1 : principes généraux - svn

� Cours 2 : TRAC et gestion de projet

� Cours 3 : Introduction à Eclipse

� Cours 4 : Eclipse C / PHP

� Cours 5 : V&V et tests unitaires, en Java

� Cours 6 : Tests C / PHP - conclusion

3Ph. Collet

Plan

� Quelques principes de gestion de projet

� trac : constituants

� trac : fonctionnement, ticket…

� trac : limites et comparaison

� trac : application à votre projet

� trac : démo

4Ph. Collet

Processus Produits

Personnes

� formation

� compétences

� communication

� cahier des charges

� conception

� code source

� exécutable

� documentation utilisateur

� cas de test

� résultats des tests

� demande de changement

� planification

� coordination

� gestion

� mesures

� analyse

� conception

� implémentation

Les 3 P

Page 2: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

2

5Ph. Collet

Objectifs et décomposition

� Gestion de projet = � planification,

� organisation,

� gestion des tâches et des ressources pour accomplir un but défini

� Quoi, qui, quand, combien

� Comment ?

� Les différentes phases de la conduite d’un projet :� Planification du projet

� Évaluation et ordonnancement des tâches

� Contrôle et analyse de l’avancement

� Communication des informations relatives au projet

6Ph. Collet

Les tâches de gestion

� Modélisation des tâches

� Ordonnancement

� Gestion des ressources

� Gestion du risque

� Gestion des changements

� Gestion des configurations

� Gestion de la qualité

Planification

7Ph. Collet

Planification des tâches

� Définir les activités constituant le projet

� Détecter les jalons (milestones) du projet� événements significatifs dans le projet

� Évaluer les dépendances entre activités

� Ordonnancer les activités en conséquence

� Évaluer l’effort nécessaire pour chaque activité� durée minimum et maximum

� Affecter les ressources nécessaires aux tâches

� S’assurer de la bonne répartition des ressources

8Ph. Collet

Suivi de la planification

� Réaliser des réunions d’avancement du projet de faç on périodique

� Évaluer les résultats de toutes les revues

� Déterminer si les jalons du projet ont été atteints

� Comparer les dates de fin réelles et prévues

� Discuter avec les gens (!)

Page 3: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

3

9Ph. Collet

Gestion des ressources

� Contrôler et analyser la quantité de travail effectu é par chaque personne, avec les implications matérielles

� Participation à plusieurs projets en même temps

� Délégation et distribution des responsabilités

� Conserver une trace du coût des ressources

� Effectuer un planning de la disponibilité des ressou rces

10Ph. Collet

Gestion du risque

� Identification du risque

� Quantification du risque

� Résolution du risque� Réserver du temps pour surmonter les problèmes

� Définir les tâches de façon à réduire les risques

� Prévoir des plans d’urgence

11Ph. Collet

Gestion des changements

Demande de changement

Identifier l’objet du changement

Estimer le coût du changement

Déterminer si , et quand le changement doit être appliqué

Mettre en place un plan d’implémentation du changement

Mettre en œuvre le plan

12Ph. Collet

Gestion de configurations

� Projets, packages, classes

� Propriétaire, membres d’un groupe

� Version & Publication ( release)

référentiel

Page 4: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

4

13Ph. Collet

Gestion de la qualité

� Paradigme d’amélioration de la qualité

� Plan de gestion de la qualité� Plans de test

� Gestion des risques abordant les risques techniques du produit à livrer

� Plans de revue

� Plans de mesure

� Etc.

trac

15Ph. Collet

Trac

� Définition� Trac est un système Open Source de gestion de projet par Internet, développé en

Python

� Pas forcément complet

� Mais léger et extensible par plugin

� Objectif� Collaboration d'une équipe structurée sur un même projet

� Gestion de configuration/version/sources

� Plate-forme web collaborative

� Minimum pour le suivi du projet

16Ph. Collet

Outils du trac

� Mise en œuvre � Assignation des tâches de chaque membre

� Suivi de l'avancement de chaque tâche

� Entraide mutuelle sur les points difficiles (Wiki)

� Avoir une vue d'ensemble sur le projet

� Les outils� Un wiki

� Un gestionnaire de feuille de route (roadmap)

� Un historique

� Un gestionnaire de rapports de bug

� Un explorateur pour subversion (svn)

Page 5: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

5

17Ph. Collet

Trac : philosophie

� Application web� Piloté par Apache

� Application légère� Le minimum pour le suivi, avec peu de contraintes dans la gestion…

� Exemple : quelqu’un d’autre peut accomplir les tâches qui vous sont assignées

� Application intégrée� Avec subversion, Trac permet d’intégrer des références du wiki aussi bien dans les tickets que

dans les messages de commit

� Connexion active entre bugs, tâches, révisions, fichiers et wiki

� Application synthétique� Journal d’activités (Timeline), Feuille de route (Roadmap)

� D’autres fonctionnalités� Génération de rapport

� Flux RSS de suivi

18Ph. Collet

Trac : wiki

� wiki � Système de gestion de contenu de site web rendant ses pages web librement

modifiables par tous les visiteurs y étant autorisés

� Facilite l'écriture collaborative de documents avec un minimum de contraintes

� Assimilé à un système de gestion de contenu� à la web2.0 : liberté d’édition, même droit pour tous

� Fonctionnalités� Identification

� Edition, facile et collaborative

� Liens et création de pages

� Suivi de modifications

19Ph. Collet

Trac : wiki

20Ph. Collet

Trac : wiki

Page 6: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

6

21Ph. Collet

Trac : roadmap

� Aide à la planification et au suivi (pas automatique )

� Vue Roadmap� La liste des milestones

� Calcul des tickets associés aux milestones

� Barre d’avancement : ratio entre tickets résolus (closed) et tickets actifs

� Vue Milestone� Zoom sur un milestone en particulier

� Info sur chaque composant, ou personne, ou tickets non résolus, etc.

� Possibilité d’ajouter/modifier des milestones

� Support d’iCalendar pour synchronisation avec d’autr es outils

22Ph. Collet

Roadmap : exemple

23Ph. Collet

Trac : historique

� ChangeSet� Un ensemble de changement, formant l’historique

� Historique couplé au subversion� Vue des entêtes de fichier (date, auteur, message, fichiers concernés…)

� Différenciation…

� Visualisation des différences� Inline : à l’intérieur d’un seul fichier

� Side by side : l’un à coté de l’autre

� Quelles différences sont accessibles ?� ChangeSet

� Entre Revision dans le subversion

� Voir juste les dernières modifs

24Ph. Collet

Trac : diff

Page 7: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

7

25Ph. Collet

Le ticket à tout faire

� Principe� Utilisé pour tous les éléments de gestion du projets

� Tickets pour� Tâches du projet

� Demandes de fonctionnalités (par utilisateur ou aut re développeur)

� Rapports de bug

� Problème de support (client)

26Ph. Collet

Ticket : composants

� Reporter : l'auteur du ticket

� Type : la nature du ticket (cf. transparent précédent)

� Version : la version du projet concernée par la tâche

� Component : le module du projet concerné par le ticket (cf. admin)

� Milestone : quand la tâche doit être résolue au plus tard (jalon)

� Keyword : les mots clés relatifs à ce ticket (utile pour une recherche rapide);

� Priority : L'importance de la tâche pour la continuité du projet (de TRIVIAL jusqu'à BLOCKER)

� Assigned to/Owner : Principale personne responsable de la tâche

� Cc : une liste d'autres utilisateurs (email) à prévenir

� Resolution : la raison pour laquelle le ticket est fermé

� Status : le statue du ticket (One of new, assigned, closed, reopened)

� Summary : une description brève du problème nécessitant la mise en place du ticket

� Description : description plus longue du problème

27Ph. Collet

Diagramme d’états du ticket

28Ph. Collet

Ticket : exemple

Page 8: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

8

29Ph. Collet

Administration

� Interface� Gérer les « components »

� Module fonctionnel de haut niveau

� Gérer les « milestones »

� Paramétrer les niveaux de priorité / sévérité, etc.

� Administration en ligne de commande pour d’autres t âches� Gestion des utilisateurs

� Accès aux éléments du site

� Connexion au svn

30Ph. Collet

Droits dans trac : exemples

� Vues� BROWSER_VIEW

� CHANGESET_VIEW

� FILE_VIEW

� LOG_VIEW

� MILESTONE_VIEW

� REPORT_SQL_VIEW

� REPORT_VIEW

� ROADMAP_VIEW

� SEARCH_VIEW

� TIMELINE_VIEW

� Le droit TRAC_ADMIN donne tous les droits sur l’ensemble de

l’application

� Tickets� TICKET_CREATE

� TICKET_MODIFY

� TICKET_VIEW

� Wiki� WIKI_CREATE

� WIKI_MODIFY

� WIKI_VIEW

31Ph. Collet

Ce que NE fait PAS trac

� Estimation des coûts

� Gestion des ressources

� Gestion des risques

� Ordonnancement des tâches� Graphe PERT

� Diagramme de Gantt

� Ce que fait Ms-Project, etc.

� Gestion de certaines dépendances� Entre fichiers sources

� Entre résultats de compilation et fichiers sources

� Etc.

32Ph. Collet

Autres systèmes

� BugZilla� Focus sur les… bugs

� JIRA� Focus sur la gestion de tickets : pour le développement logiciel, la relation client…

� Confluence� Wiki d’entreprise

� MediaWiki� Développé à l’origine pour wikipedia

� FogBugz� « Trac » avec ordonnancement des tâches, et aspects prévisionnels

Page 9: Projet de développement Gestion de projet avec - …deptinfo.unice.fr/twiki/pub/Linfo/ProjetDevt2009/ProjetDevt-2-0809.pdf · 2 Ph. Collet 5 Objectifs et décomposition Gestion de

9

Application à votre projet

34Ph. Collet

Trac : application à votre projet

� Pour votre projet :� Démo en ligne modifiable :

� http://www.hosted-projects.com/trac/TracDemo/Demo

� Essai du wiki, modification de page, différentes fonctionnalités…

� Dès que votre trac de projet est disponible� Inscription (ou vérification d’inscription) de chaque membre

� Création d’un milestone « prise en main »

� Création d’un ticket « prise en main » pour chaque membre

� Ecriture d’un commentaire relatif au ticket, et au milestone

� Fermeture et validation de son ticket par chaque membre

� Ajout de fichiers (du projet ou d’essai) dans le subversion

� Modification des fichiers / nouveau commit (ligne de commande ou eclipse/subclipse)

� Navigation dans le subversion par trac

� Création de ticket « bidon » et association à un commit fait sur le subversion !

35Ph. Collet

Trac : application à votre projet

� Par la suite� Première séance

� Découpage du travail en components et milestones

� Création de tickets dans les milestones pour les tâches

� Attribution des tâches et validation par le tuteur

� Autres séances

� Fermeture/Ouverture de tickets en fonction des commits, des tests

� La vision « trac » résultante du projet fait très larg ement partie de votre évaluation

� Qui fait quoi

� Traçabilité tout au long du projet

� La roadmap peut être utilisée pour la soutenance…

36Ph. Collet

Démo