Conduite et Gestion de Projet Introduction - Pr esentation du module
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Conduite et Gestion de Projet Introduction – Présentation du module Thierry Hamon Bureau H202 Institut Galilée - Université Paris 13 & LIMSI-CNRS hamon@limsi.fr https://perso.limsi.fr/hamon/Teaching/P13/CGP-2019-2020/ 1/45
Objectifs Réalisation d’un projet informatique en équipe de la réponse à appel d’offre ... ... à la livraison finale Equipe projet : 4 ou 5 étudiants Participation de tout le monde à toutes les phases d’élaboration du projet Mais auto-organisation interne pour ... ... à respecter les délais de livraison 2/45
Equipe de suivi et comité de pilotage Équipe de suivi : Deux enseignants (Thierry Hamon et Sophie Toulouse) Rôle : Aide et guide pour la (bonne) réalisation du projet Interventions : enseignements, réunions du comité de pilotage En cas de problème, ne pas attendre une réunion programmée pour venir nous voir ou nous contacter 3/45
Equipe de suivi et comité de pilotage Comité de pilotage : constitué pour chaque projet de l’équipe en charge de la réalisation du projet du client de l’équipe de suivi Réunions : Remise de documents pour chaque cycle de livraison ou phase d’avancement du projet Présentation du travail Le comité valide chacune de ces phases (recadrage si besoin) 4/45
Déroulement du module Planning – phase d’avant-vente Vendredi 04/10/2019 (C103, 13h45 – 17h) : Présentation des projets par les clients Mercredi 09/10/2019 avant midi : Réception du classement de tous projets par chaque groupe Jeudi 10/10/2019 dans la soirée : Résultats de l’interclassement et indication des trois projets de chaque groupe Jeudi 24/10/2019 avant midi : Réception des réponses aux trois premiers projets de chaque groupe Lundi 28/10/2019 (13h45 – 18h45) : Présentation des trois réponses (30 minutes par groupe) Jeudi 31/10/2019 : Affectation définitive des projets aux groupes Vendredi 15/11/2019 (8h00) : réception du cahier des charges définitif pour le projet attribué (après discussion avec le client) 5/45
Déroulement du module Planning - séances 13h45-18h45 Vendredi 13/12/2019 : Initialisation date de remise du document d’initialisation : 11/12/2019, 8h00 Lundi 13/01/2020 : Élaboration 1 date de remise du document d’élaboration 1 : 09/01/2020, midi Mardi 11/02/2020 : Élaboration 2 date de remise du document d’élaboration 2 : 10/02/2020, 8h00 Mardi 17/03/2020 : Construction 1 (avec démo sous forme d’une vidéo) date de remise du document de construction 1 : 16/03/2020, 8h00 6/45
Déroulement du module Planning - Journée finale Lundi 20/04/2020 : Construction 2 (présentation), en général le matin date de remise du document de construction 2 : 20/04/2020, 8h00 Lundi 20/04/2020 : Construction 2 (démonstration), en général l’après-midi date de remise du code : 20/04/2020, 8h00 7/45
Attribution des projets phase d’avant-vente Présentation de projet par des clients (appel d’offre). Rédaction d’une pré-réponse pour trois projets de son choix par chaque équipe (réponse à appel d’offre) Attribution des projets aux équipes par l’équipe de suivi selon l’avis des clients pour un projet donné, la meilleure réponse remporte le marché Version définitive du cahier des charges La phase de production peut commencer 8/45
Phase de production 5 itérations correspondant chacune à un livrable Livrable : remise de document et logiciel selon l’avancement Consignes à respecter impérativement les dates de remise sont impératives Comme dans la réalité, tout retard sera pénalisant format : pdf envoi : par e-mail (ou mise à disposition en ligne) destinataires : client et équipe de suivi préciser : nom du groupe et objet dans le sujet du mail 9/45
Organisation d’une équipe projet Attribution des rôles au sein de l’équipe : chef de projet (planification, répartition des tâches, suivi des charges, respect des échéances) architecte (choix des composants, leur communication, intégration, conception) analyste fonctionnel (revue détaillée, cas d’utilisation, IHM) chargé d’interface graphique, chargé modèle de données, chargé d’algorithmique, etc. (selon le projet) 10/45
Méthodologie Orientée besoin (comprendre et répondre au mieux au besoin du client) Maı̂trise du risque (obtenir un résultat final) La gouvernance du projet doit être guidée par les cas d’utilisation. La planification doit être continuellement surveillée, affinée et, le cas échéant, réajustée. 11/45
Méthodologie Penser par cas d’utilisation Identifier les cas critiques les plus importants fonctionnellement les plus risqués techniquement Prototyper (très vite) Maintenir tout du long une forte interaction avec le client (encouragée par l’adoption de cycles courts) Dialogue direct avec le client (profiter des réunions pour le voir, mais ne pas attendre ces réunions) 12/45
Décomposition du projet Division du projet en une phase d’avant-vente 5 itérations de production Les objectifs sont imposés a priori indépendamment du projet. 4 aspects : Analyse fonctionnelle (description des cas d’utilisation) Architecture globale (composants et leur communication) Architecture détaillée (implémentation des cas d’utilisation) Déploiement (”packaging”, installation en environnement client) 13/45
Initialisation Analyse fonctionnelle diagramme des cas d’utilisation hiérarchisation des cas d’utilisation description détaillée des cas les plus prioritaires Conception de l’architecture globale Réunion : 30 minutes par projet 10 minutes de présentation avec transparents point d’avancement 14/45
Élaboration 1 Analyse fonctionnelle description détaillée des cas prioritaires (20-50% des cas) Prototype de l’architecture globale Architecture détaillée : conception des cas les plus prioritaires Réunion : 30 minutes par projet 10 minutes de présentation avec transparents point d’avancement 15/45
Élaboration 2 Analyse fonctionnelle description détaillée des cas (50-80%) Architecture globale : Intégration des cas les plus prioritaires Architecture détaillée : développement des cas les plus prioritaires Réunion : 30 minutes par projet 10 minutes de présentation avec transparents point d’avancement 16/45
Construction 1 Analyse fonctionnelle description détaillée de tous les cas Architecture globale : Intégration des cas prioritaires Architecture détaillée : développement des cas prioritaires, conception des autres cas Déploiement : test d’intégration en environnement client Réunion : 30 minutes par projet 10 minutes de présentation avec transparents et une vidéo de démonstration de 5 minutes point d’avancement 17/45
Construction 2 Architecture globale : Intégration de tous les cas Architecture détaillée : Conception de tous les autres cas Déploiement : Installation en environnement client, recette des cas prioritaires Réunions : 30 minutes par projet matin : 15 minutes de présentation du bilan du projet avec transparents et une vidéo de démonstration de 5 minutes tous les membres doivent parler après-midi : Démonstration de 20 minutes à préparer 18/45
Livraison Recette Fin du projet Acceptation et remise du produit final au client Vérification que le produit est conforme au besoin Tests réalisés chez le client (tests unitaires, de validation, et d’intégration) Vérification du bon fonctionnement Validation des fonctionnalités Tests de performance et d’exploitation 19/45
La réponse à appel d’offre Réponse sur 2 aspects : Expression du besoin et sa réponse : comprendre le besoin (pas forcément clair) apporter une réponse (claire et précise) Chiffrage et organisation : expliciter la planification du projet les éléments fournis par chacun des acteurs Réunion (classique) : 30 minutes par projet discussion autour du cahier des charges 20/45
La réponse à appel d’offre Expression du besoin et sa réponse Reprendre le besoin à son compte ne pas recopier l’appel d’offre reformuler les choses avec ses propres mots (... c’est (commencé à) comprendre le besoin) l’incompréhension peut mener à un désastre et à la non-réalisation du projet ! Spécifier, cadrer, préciser le besoin, en délimitant bien votre champ d’intervention Ne pas hésiter à faire des propositions surtout si le besoin mal défini (absence de cahier des charges, manque de disponibilité du client) Ne pas hésiter à interroger le client 21/45
La réponse à appel d’offre Chiffrage et organisation - conseils Être réaliste Tenir compte des disponibilités prévues par la formation pour les projets (voir l’emploi du temps) Allouer au projet une part raisonnable du temps que vous pouvez consacrez au travail personnel Compter en jours/homme, J/H Considérer que la journée de travail est de 7 heures Ne pas oublier que vous avez d’autres matières, des partiels, etc. 22/45
La réponse à appel d’offre Chiffrage et organisation - conseils Lorsque le projet semble sur- ou sous-dimensionné par rapport au nombre obtenu de J/H pour l’équipe Ne pas hésiter à proposer des extensions non spécifiées par le client à arbitrer ce qui sera ou non pris en charge par l’équipe, dans le besoin exprimé Chiffrer ce qui ne sera pas réalisé dans la réponse (pour justifier l’arbitrage) 23/45
La réponse à appel d’offre Chiffrage et organisation - conseils Bon chiffrage : Bonne compréhension du projet Identification des tâches spécifiques au projet Identifier la partie étude et la partie développement Découper le projet en 5 cycles (nécessaire mais pas suffisant) Expliciter les tâches spécifiques qu projet (formation, étude comparative, veille technologique, revue d’algorithme, etc.) 24/45
La réponse à appel d’offre Chiffrage et organisation - conseils Planification (et chiffrage du projet) : (chiffrage des ressources) Précision en nombre de J/H pour chaque fonction exercée chef de projet développeur junior développeur senior architecte analyste fonctionnel, etc. pour chaque compétence expert java DBA, etc. une même personne peut exercer plusieurs fonctions et mettre en œuvre différentes compétences sur le projet 25/45
La réponse à appel d’offre Chiffrage et organisation - conseils Précision en nombre de J/H par ”phase” du projet formation analyse conception développement, etc. par cycle ou lot initialisation élaboration 1, etc par tâche (ou composante) du projet 26/45
La réponse à appel d’offre Chiffrage et organisation - conseils Organisation dans le temps ces ressources Par exemple, le chef de projet aura la même charge de pilotage tout au long du projet l’architecte sera plus sollicité lors du cycle d’initialisation Pour chaque jour calendaire, préciser les ressources allouées quantitativement (combien de personne ?) qualitativement (combien de personne sur quelle tâche) Faire apparaı̂tre les échéances sur le planning S’appuyer sur des diagrammes de type Gantt 27/45
La réponse à appel d’offre Chiffrage et organisation - conseils Vérifier que les sommes sont cohérentes. Toujours tout compter coût à la charge du client ou du fournisseur (y compris formation à la charge du client) Permettre au client de choisir avec tous les éléments Expliciter ce qui est ou non fourni clairement par le fournisseur par le client Vous pouvez être amené à signer un accord de non-divulgation (NDA) ou de confidentialité ... et vous devez le respecter ! Le cahier des charges a une valeur contractuelle entre la maitrise d’ouvrage et la maitrise d’œuvre 28/45
Contenu des documents - Livrables 2 aspects : Application : sources, ”package”, tests unitaires, tests fonctionnels, manuel d’installation, manuel d’utilisation, conception, etc. destinataires : client, utilisateurs, techniciens TMA (repreneurs) Planification : planning, suivi des charges (diagramme de Gantt obligatoire) destinataire : la structure (planification et organisation interne), le client (planification) 29/45
Consignes générales Documents et documentation du code Entête : sous forme d’une cartouche mise à jour au fur et à mesure des évolutions Toujours faire apparaı̂tre numéro de version du document date de dernière mise à jour auteur de la mise à jour objet(s) de la mise à jour destinataires du document état du document (en cours de validation / validé) Mise en place d’une gestion du code sous SVN ou GIT 30/45
Consignes générales Quelques règles de bon sens : soigner l’orthographe numéroter les pages définir préalablement à leur utilisation les termes (et acronymes !) utilisés (éventuellement dans un glossaire) → Clarification des notions et éviter les ambiguı̈té préférer la concision et la précision au remplissage... 31/45
Définition d’une application Différents aspects : Domaine ou vocation : quels sont les concepts et processus métier manipulés? quels sont les services rendus par l’application ? Conception : quels sont les composants de l’application, les flux qu’ils échangent, leur intégration ? quels sont les objets manipulés et comment s’organisent-ils entre-eux ? Mise en œuvre : comment l’application est-elle effectivement implémentée ? Mise en place : comment installer et utiliser l’application ? 32/45
Composants fournis lors de la réalisation d’un projet Analyse fonctionnelle ou vocation de l’application : panorama des cas d’utilisation diagramme des cas priorisés organisés en paquetages description de chaque cas d’utilisation description textuelle des scénarios diagramme de séquence système IHM – enchaı̂nement des opérations gestion des contrôles 33/45
Composants fournis lors de la réalisation d’un projet Architecture globale ou composition et montage de l’application : composants internes et externes de l’application et leurs interactions intégration (flux d’information, interfaces) de ces composants prise en considération des aspects de volumétrie / temps de réponses 34/45
Composants fournis lors de la réalisation d’un projet Conception détaillée – démarche par cas en trois étapes : Modèle statique du domaine : pour un cas donné, quels sont les concepts impliqués et leurs associations ? → diagramme de classes simplifié Modèle dynamique du cas d’utilisation (diagramme de séquence) : pour un cas donné, quelles interactions (enchaı̂nement d’événements et d’actions) entre objets menant à sa réalisation ? → méthodes (interface) des classes Modèle conceptuel du cas d’utilisation : diagramme de classes 35/45
Composants fournis lors de la réalisation d’un projet Implémentation ou mise en œuvre code, composants, compilation documentation associée (description, scripts, code,...) Déploiement ou mise en place installation documentation associée (manuel d’installation, précision du matériel et de l’environnement requis, capacités et limites de l’application) Utilisation (évidemment liée à l’analyse fonctionnelle de l’application) : manuel utilisateur 36/45
Consignes Rappel : l’analyse et la conception doivent être parfaitement indépendantes de l’implémentation ! Le suivi des charges et le code source (tests inclus) doivent être rendus disponibles 37/45
Gestion du projet Conduite du projet Destinataires : l’équipe de suivi (hiérarchie production, partie commerciale) Transmission de l’information utile au client Deux niveaux de planification et de suivi correspondant à deux niveaux de granularité l’organisation globale du projet l’organisation interne à l’équipe projet Consignes : Penser continuellement à systématiquement affiner et ajuster votre planification 38/45
Organisation globale ou planification Découpage du projet en différentes phases de réalisation (éventuellement divisées par lots) Objectif : dimensionnement du projet en termes des moyens à mettre en œuvre proposition d’une organisation dans le temps 39/45
Organisation globale ou planification Contenu de la planification : le découpage du projet en différents lots l’identification et le dimensionnement (en J/H) des compétences requises pour chaque lot l’organisation des lots dans le temps avec mention des ressources affectées L’organisation globale est conçue dès la réponse à appel d’offre, souvent de manière prospective affinée et réajustée au fil du déroulement du projet 40/45
Organisation interne Précision sur la réalisation de chaque lot par un découpage hiérarchique des lots en tâches Idéalement, les tâches unitaires devraient être de l’ordre de quelques jours/homme Objectif : Organisation du travail de l’équipe au quotidien Assurance/surveillance de l’avancement du projet (est-il conforme à la planification globale ? Identification des risques) 41/45
Organisation interne Contenu : Découpage des lots en tâches unitaires dimensionnées en J/H Suivi des charges : Prise en compte quotidienne de l’avancement de chaque tâche par chaque membre du projet Redimensionnement éventuel de la tâche Mise en place au démarrage du projet Concerne plus particulièrement la phase d’implémentation 42/45
Logiciels et outils d’aide à la CGP Modélisation et conception Analyse et conception UML Umbrello (sous linux), Papyrus (multi-plateforme, basé sur Eclipse) BD DBDesigner (multi-plateforme) Gestionnaire de versions Subversion (SVN) Dépôt : https://sourceforge.net/ Git Dépôts : https://github.com/, https://bitbucket.org/ 43/45
Logiciels et outils d’aide à la CGP Auto-configuration autoconf/automake Ant Maven ... Plateforme de développement (EDI) Eclipse : offre un EDI Java qui gère notamment SVN Ajout de composants (plugin) : outils de modélisation UML, EDI C-C++, etc. C++ : dev-C++ (non maintenu), Code::Blocks (multi-plateforme) 44/45
Logiciels et outils d’aide à la CGP Base de données SGBD libres : MySql, postgreSQL SGBD du commerce: Oracle 11g, MSDE 2000 (SqlServer) Gestion de projet, Planification, diagramme de grantt Trello (en ligne - https://trello.com/) ProjeQtOr (https://www.projeqtor.org/fr/) ganttproject (en Java), planner (sous Linux) Maquettage d’interfaces graphiques (Mockups) Cogtool, Pencil, Moqups (interface web) 45/45
Vous pouvez aussi lire