PLAN CONDUITE DE PROJET
Transcription
PLAN CONDUITE DE PROJET
PLAN CONDUITE DE PROJET Ce guide complète le cours, il donne une marche à suivre qui peut être adaptée si vous choisissez une méthode particulière • • • • • • • • ETUDE PREALABLE ANALYSE FONCTIONNELLE ANALYSE DETAILLEE PROGRAMMATION TESTS UNITAIRES TESTS D ’INTEGRATION INSTALLATION EXPLOITATION C. Crochepeyre Plan Conduite Projet 1 ETUDE PREALABLE 1. Présentation de la société – son nom – sa situation géographique – ses activités – ses services et responsables (organigramme) – ses effectifs – son importance….. Cette description permet de mieux prendre en compte l ’environnement du projet en terme de financement, sécurité, types et volumes des données….. 2. Présentation générale du projet – le sujet – les objectifs principaux – position du projet dans la société – les services et personnes concernés par le projet – les résultats attendus Cette présentation donne un aperçu rapide du projet envisagé C. Crochepeyre Plan Conduite Projet 2 3. L’organisation et le contrôle du déroulement du projet – nom et qualité des personnes impliquées dans l’étude préalable – leur rôle – leur responsabilité – les instances de contrôle du projet 4. Etude de l’existant – Fonctionnement actuel – informatisé, partiellement informatisé ou non • description des diverses fonctions impliquées • les moyens actuels : ressources humaines et matérielles – les dysfonctionnements – les améliorations attendues Un projet n ’est envisagé que si il améliore l’existant ou vient combler un vide. L ’informatisation se justifie en terme de profit/ existant. Cette étape doit être faite avec sérieux en s’appuyant sur : Interviews des personnes impliquées (modes opératoires, dysfonctionnements, souhaits…). Récupération des documents et leur circulation. Avis des responsables…. C. Crochepeyre Plan Conduite Projet 3 5. Les besoins fonctionnels (le souhait du client) – descriptions des fonctions impliquées • les règles de gestion • les données et leurs flux • les contraintes • les supports en E/S – contraintes sur les fonctions – les personnes impliquées 6. Les contraintes non fonctionnelles – Matériels compatibles – Budget limité – E/S : formats préfixés, ergonomie – Délais : dates impératives – S.E existant – Logiciels : SGBD existant…… C. Crochepeyre Plan Conduite Projet 4 7. Les solutions – Architecture matérielle, applications, système (C/S) avec un schéma – coût – délais – évolutions possibles Solution retenue et raisons de ce choix 8. Le coût de la solution – – – – – – C. Crochepeyre le coût du développement les moyens humains • internes • externes les moyens matériels et logiciels • existants et évolution • achats la formation la reprise ou migration le financement Plan Conduite Projet 5 9. Le planning – les contraintes organisationnelles – temps imparti aux différentes étapes du développement – les incidences en cas de dépassement • phases critiques • Responsabilités 10. Le contrat – Rédaction d ’un contrat liant les deux parties • le demandeur • le développeur – Prévoir des clauses de non respect du contrat C. Crochepeyre Plan Conduite Projet 6 ANALYSE INFORMATIQUE • Conception informatique de la solution – Référence: l ’étude préalable • prise en compte de la solution retenue • informatisation de cette solution – L ’analyste doit: • organiser judicieusement les traitements • préciser les règles de gestion • décrire et organiser les données sur les supports informatiques Pour cette phase, l’analyste doit trouver toutes les informations dans l ’étude préalable pour élaborer la solution informatique C. Crochepeyre Plan Conduite Projet 7 1- Introduction Référence au document « Etude préalable » – Présentation rapide du sujet – Présentation de la solution retenue avec un schéma et quelques commentaires – Sommaire du document Cette introduction fournit les éléments de base du problème à résoudre L ’analyste prend connaissance du sujet et sait où trouver l ’information 2- Architecture logicielle Présentation globale des modules de l ’application – éclatement en modules (programmes) – schéma de l ’enchaînement des modules avec E/S – explications et commentaires Chaque élément doit porter une référence (modules, E/S) Cette première représentation donne une vue globale de l ’application et de son découpage, des flux de données et des supports (B.D, fichiers, saisies, éditions..) C. Crochepeyre Plan Conduite Projet 8 Sur cet exemple simple: ensemble des modules et leurs enchaînements Différentes méthodes proposent leurs propres outils: actigrammes, datagrammes... Application WXL Fonction : gestion adhérents EC_01 F_01 Info Adhérents BD C,M,S Adhérents Tab_ADH C. Crochepeyre BD Tab_ADH MD_01 IMP • adhérents créés • erreurs Plan Conduite Projet IMP_01 9 Un descriptif accompagne le diagramme comme l ’exemple ci-dessous Application WXL Fonction: gestion adhérents F_01 Descriptif fonction F_01: Un module de 3 traitements : • création d ’un nouvel adhérent • modification de certaines informations /adhérent • suppression d ’un adhérent • Exécution à la demande • Module indépendant • Une seul module permet à l’opérateur de choisir entre les 3 traitements …. C. Crochepeyre Plan Conduite Projet 10 Exemple d’un schéma plus complexe C. Crochepeyre Plan Conduite Projet 11 3- Analyse et organisation des données Organisation des données / à l ’enchaînement des modules – choix du support: • • • • • fichiers B.D sur disque saisie au clavier, affichage des résultats, impressions…. – Organisation et volume des données sur ces supports • • • • schéma relationnel de la B.D. format des enregistrements par fichier description des écrans de saisie ou d ’affichage format des états d ’impression….. Etape importante de la construction du catalogue des données C. Crochepeyre Plan Conduite Projet 12 Quelques exemples de descriptifs des données Fichier « Adhérents » volume: 1000 enregistrements long enregistrement: 256 O organisation séquentielle num_adh nom_adh prenom_adh ad1_adh ad2_adh ad3_adh 40 c 30 c 20c 20c 20c 10 n ville_adh 30 c codeP_adh 5n Détails des champs num_adh: numéro d ’adhérent Ce n° est affecté automatiquement à la création 10 car numérique nom_adh: nom de l ’adhérent Le nom patronymique + éventuellement nom marital 40 car C. Crochepeyre Plan Conduite Projet 13 Cas d ’une Base de données • Construire un schéma entités/relations • Construire le schéma relationnel: définitions des tables ID_ADH(num_adh, nom_adh, prenom_adh) AD_ADH (num_adh, ad1_adh, ad2_adh,ad3_adh,ville_adh,codep_adh) • Info sur chaque table, chaque champ • ….. C. Crochepeyre Plan Conduite Projet 14 Cas d ’un écran de saisie • Construire l ’écran en respectant les règles ergonomiques Réf: EC_01 création modif supp édition GESTION ADHERENTS Nom: Prénom: N° adhérent: (auto) ……. • Nom: maxi 40 caractères • Prénom: maxi 30 caractères • n° adhérent: 10 numériques (calcul automatique) C. Crochepeyre Plan Conduite Projet 15 4- Analyse des fonctions informatiques – Une fonction peut être: • un seul programme • un enchaînement logique et indissociable de modules – Pour chaque module on décrit: • les données en entrée • les données en sortie • les règles détaillées des traitements: – la description des opérations à effectuer – leur séquencement – les conditions C. Crochepeyre Plan Conduite Projet 16 FONCTION: Gestion Adhérents F_01 F_01 SCHEMA: EC_01 MD_01 IMP_01 PRO_01 Client MD_02 Serveur adhérents C. Crochepeyre Plan Conduite Projet 17 • • F_01: Fonction de création, modification ou suppression des adhérents Deux modules: – MD_01 client : saisie des données client selon modèle écran EC_01 – MD_02 serveur : maj des données et contrôles fichier « adhérents » C. Crochepeyre Plan Conduite Projet 18 Module: Gestion Adhérents MD_01 F_01 MD_01 Objet: Mise à jour du fichier « adhérents » en C,M,S - Edition Fonctionnement: mode C/S Entrée Choix de la fonction création, modification ou suppression d’un adhérent Les saisies écran selon le format EC_01 sont contrôlées Les réponses du module MD_02 selon le protocole d’échange PRO_01 Recommandations: ……. Traitements Les données saisies sont envoyées côté serveur au module MD_02 : Fichier « adhérents » – en consultation pour vérification ou édition d’adhérent – en écriture pour maj ou création d ’un adhérent Sortie • Vers MD_02 selon protocole PRO_01 • Etat des adhérents IMP_01 – édition des adhérents à la demande C. Crochepeyre Plan Conduite Projet 19 • • Traitement création : – saisie du nom et prénom de l ’adhérent – appel module MD_02 contrôle existant dans fichier « adhérents » • si oui affichage des infos existantes • choix: abandon création ou suite création – saisie des autres champs validation – envoi vers module MD_02 pour création fichier « adhérents » – affichage retour MD_02 n°adhérent – etc…... Traitement modification: – ……. C. Crochepeyre Plan Conduite Projet 20 Module: Gestion Adhérents MD_02 F_01 MD_02 Objet: Mise à jour du fichier « adhérents » en C,M,S - Consultation Fonctionnement: mode C/S Entrée Données émises depuis MD_01 : protocole d’échanges PRO_01 Fichier « adhérents »: résultat de la consultation pour contrôle avant création ou édition Recommandations: ………………………. Traitements Les données sont traitées – pour vérification adhérent en cas de création – pour modification d’un adhérent – pour édition d’adhérents Sortie • Vers MD_01 selon protocole PRO_01 • Vers Fichier « adhérents » : modification ou création C. Crochepeyre Plan Conduite Projet 21 • • Traitement création : – Module MD_02 contrôle existence dans fichier « adhérents » • si non renvoi vers MD_01 erreur – Création d’un enregistrement dans fichier « adhérents » – Retour message « adhérent créé » à MD_01 selon protocole PRO_01 – etc…... Traitement modification: – ……. C. Crochepeyre Plan Conduite Projet 22 FONCTION: Suivi des paiements adhérents F_02 F_02 SCHEMA: EC_02 MD_03 Client IMP_02 MD_04 compta Serveur adhérents On poursuit cette analyse fonction par fonction , module par module….. C. Crochepeyre Plan Conduite Projet 23 • Chaque fonction doit bien sûr être décrite, module par module. Ne pas s’en tenir à cet exemple simplifié mais entrer dans le détail des descriptions fonctionnelles! • Les solutions techniques niveau programmation (exemple échange client/serveur par sockets udp….) se font à l’étape suivante « analyse détaillée » • Adopter une charte de présentation de cette analyse informatique: n° cohérente des fonctions et modules, même plan pour chaque description…. C. Crochepeyre Plan Conduite Projet 24 • Conclusion analyse informatique Important: • chaque étape doit être commentée : recommandations, contraintes, accent donné sur un point précis, localisation des informations… • le document est structuré en vue d ’être exploité lors de la phase suivante par plusieurs développeurs • Les descriptifs des données sont séparés des fonctions (évite les répétitions) • Une table des matières complète et précise Une bonne analyse informatique doit permettre ensuite à chaque développeur de détailler la partie qui lui est confiée avant de programmer C. Crochepeyre Plan Conduite Projet 25 ANALYSE DETAILLEE • Analyse des solutions techniques de programmation – Référence: l’analyse informatique • passage des spécifications informatiques à la solution technique informatique – L’analyste-programmeur • se voit attribuer une ou plusieurs fonctions • pour chaque module: – il choisit les solutions techniques – décrit l’enchaînement des opérations • avant de passer à la programmation Cette étape décrit pour chaque module la manière dont seront réalisés les traitements lors de la programmation C. Crochepeyre Plan Conduite Projet 26 • Quelques exemples: – choix du langage de programmation pour un module – solution technique d’un échange C/S • ex: socket mode udp ou tcp? – communication entre deux modules internes • ex: échanges par messages ou tubes? – choix d’un algorithme pour un traitement • ex: recherche par dichotomie ou séquentielle? – mode d’accès B.D • ex: analyse d’une requête SQL pour un cas complexe – détails des procédures d’erreurs • ex: un adhérent est déjà créé : message mais aussi édition pour vérification C. Crochepeyre Plan Conduite Projet 27 1. Introduction – – – Présentation de la fonction et de ses modules • situation de la fonction et de ses modules sur l’organigramme général • description rapide des objectifs de cette partie Présentation des intervenants dans cette partie • les noms, coordonnées, rôles Référence à l’analyse fonctionnelle L’introduction permet de se situer par rapport à l’application. Penser à utiliser les mêmes références que l ’analyse informatique : n° fonctions … L’analyste programmeur est choisi en fonction de ses compétences C. Crochepeyre Plan Conduite Projet 28 2. Analyse d’un module – On procédera de la même manière que lors de la présentation des modules dans l’analyse informatique en utilisant: • organigrammes • algorithmes • commentaires • descriptions de procédures…. C. Crochepeyre Plan Conduite Projet 29 On situe le module concerné / la fonction Suivi des paiements/Client MD_03 F_02 MD_03 FONCTION: Suivi des paiements adhérents F_02 SCHEMA: EC_02 MD_03 Client IMP_02 MD_04 compta C. Crochepeyre Serveur adhérents Plan Conduite Projet 30 • • • Module de saisie des éléments adhérents pour – Enregistrement des paiements – Relance des impayés – Etat des paiements Module exécuté à la demande Ce module ne peut fonctionner sans le module MD_04 C. Crochepeyre Plan Conduite Projet F_02 MD_03 31 Module: Suivi des paiements/Client MD_03 F_02 MD_03 Objet: 3 fonctions - Saisie des éléments paiement - Relance des impayés - Etat des paiements Fonctionnement: module client Communication C/S: Protocole TCP/IP spécifié ci dessous PRO_01 Entrée Choix de la fonction EC_02 - Si paiement alors saisie EC_03 - Si relance alors saisie EC_04 - Si impayé alors saisie EC_05 Traitements Descriptions ci dessous écran par écran Sortie • Vers MD_04 selon protocole PRO_01 • Vers Fichier « adhérents » : maj des zones………. C. Crochepeyre Plan Conduite Projet 32 • F_02 MD_03 Organigramme Début A1 A Choix: Paiement : P Relance: R Etat: E Si P O B1 N O Si R C1 N O Si E D1 N Erreur saisie A1 C. Crochepeyre Plan Conduite Projet 33 • Conclusion analyse détaillée – Lors de cette étape, le programmeur prend connaissance des traitements – L’analyse détaillée se fait module par module • utilisation d’organigrammes, d’algorithmes, pseudo codes… • pour des cas simples quelques indications suffisent – L’analyste programmeur choisit les techniques de programmation appropriées – Les documents produits sont souvent associés aux listings de programmation Cette étape évite de se lancer dans la programmation sans réflexion préalable Attention: l’analyste programmeur doit prendre le temps de rédiger ce document même si il est seul responsable du développement. (maintenance future, échanges avec d’autres….) C. Crochepeyre Plan Conduite Projet 34 PROGRAMMATION • Phase de programmation de chaque module – référence: analyse détaillée – élaboration des programmes: différents langages si nécessaire – documents: listings commentés – l’analyste programmeur pourra joindre l’étude détaillée à chaque listing – les références seront mentionnées sur les listings en commentaires La phase de programmation doit être supervisée par l’analyste qui s’assure que le produit fini correspond bien à l’analyse C. Crochepeyre Plan Conduite Projet 35 TESTS UNITAIRES • • Phase de tests des programmes – création d’un jeu de tests pour chaque programme Document par module : – Fournir une trace des exécutions de chaque cas pris en considération • données en entrée • résultats obtenus – Y ajouter les commentaires nécessaires C’est à travers les jeux de tests que l’analyste peut vérifier – que tous les cas ont bien été pris en considération lors de la programmation – que la programmation produit les bons résultats C. Crochepeyre Plan Conduite Projet 36 • • Les documents peuvent être regroupés par module – analyse détaillée module MD_03 – listings module MD_03 – tests unitaires MD_03 Les documents peuvent être regroupés par niveau d’analyse – analyses détaillées des modules – listings des modules – tests unitaires des modules Attention d’adopter la même présentation pour l’ensemble des documents C. Crochepeyre Plan Conduite Projet 37 TESTS D’INTEGRATION • • • Les différents modules sont exécutés selon l’enchaînement prévu Les jeux de tests sont construits pour vérifier le bon fonctionnement entre les modules avec l’aide de l’usager final La présentation est identique aux tests unitaires – Description des modules concernés – Données en entrée – Résultats obtenus Dernière phase de production qui permet de vérifier que le produit correspond à la demande et qu’il fonctionne bien sur le site avec les configurations prévues. C. Crochepeyre Plan Conduite Projet 38 INSTALLATION • • • Mode opératoire d’installation du produit Destiné au client Document décrivant: – Les configurations requises – Les supports de livraison – Les procédures d’installation des programmes – Les paramétrages – Les procédures en cas d’erreurs – Les procédures de lancement – ……. Document qui n’est utilisé que lors de la livraison du produit ou lors d’une réinstallation C. Crochepeyre Plan Conduite Projet 39 EXPLOITATION • • • Procédures d’utilisation du logiciel Document destiné au client Pour chaque fonction un manuel d’utilisation: – Périodicité – La référence du logiciel – Procédure de lancement – Les interventions en cours d’exécution – Les messages d’erreurs et actions correspondantes – Les procédures d’arrêt – Les procédures de sauvegarde….. Ce document est utilisé par le client tout au long de la vie du produit C. Crochepeyre Plan Conduite Projet 40