HAL Id: cel-01988734 https://hal.archives-ouvertes.fr/cel-01988734 Submitted on

HAL Id: cel-01988734 https://hal.archives-ouvertes.fr/cel-01988734 Submitted on 22 Jan 2019 HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Copyright SUPPORT DE COURS DE GENIE LOGICIEL Raphael Yende To cite this version: Raphael Yende. SUPPORT DE COURS DE GENIE LOGICIEL. Licence. RDC (BÉNI), Congo- Kinshasa. 2019. ￿cel-01988734￿ SUPPORT DE COURS DE GENIE LOGICIEL YENDE RAPHAEL Grevisse, Ph.D. Docteur en Télécoms et Réseaux Inf. Cours dispensé à l’Institut Supérieur de Commerce en Première Licence RI & CSI. ©YENDE R.G., 2019 1 1 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD AVERTISSEMENTS Le support de cours de « Génie logiciel », demande avant tout, un certain entendement de l’informatique et des connaissances de base des réseaux informatiques et principalement une prédisposition d’analyse inéluctable et cartésienne. Vu que l’apport de ce cours, met l’accent sur le principe de conception de base des systèmes informatiques reposant sur une compréhension technique approfondie de la reproduction des applications informatiques et à l’application de l’ingénieure au développement des logiciels. Le cours de génie logiciel se veut pour objectif primordial d’initier les étudiants de première Licence en Gestion Informatique, à la conception des applications informatiques de façon méthodique et rééditable; en les incitant à rechercher et établir les fonctionnalités d'une application, et à les modéliser sous forme de cas d'utilisation et de scénarios ainsi que rechercher les classes et les acteurs nécessaires à la conception de l'application. Ce support de cours est soumis aux droits d’auteur et n’appartient donc pas au domaine public. Sa reproduction est cependant autorisée à condition de respecter les conditions suivantes : * Si ce document est reproduit pour les besoins personnels du reproducteur, toute forme de reproduction (totale ou partielle) est autorisée à la condition de citer l’auteur. * Si ce document est reproduit dans le but d’être distribué à des tierces personnes, il devra être reproduit dans son intégralité sans aucune modification. Cette notice de copyright devra donc être présente. De plus, il ne devra pas être vendu. * Cependant, dans le seul cas d’un enseignement gratuit, une participation aux frais de reproduction pourra être demandée, mais elle ne pourra être supérieure au prix du papier et de l’encre composant le document. Copyright © 2019 Dr. YENDE RAPHAEL; all rights reserved. Toute reproduction sortant du cadre précisé est prohibée. 2 2 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD TABLE DES MATIERES AVERTISSEMENTS ....................................................................................................................................... 1 TABLE DES MATIERES ................................................................................................................................ 2 BIBLIOGRAPHIE ........................................................................................................................................... 5 INTRODUCTION ............................................................................................................................................ 6 OBJECTS DU COURS ..................................................................................................................................... 7 DEFINITION DES CONCEPTS CLES .......................................................................................................... 8 PREMIER CHAPITRE – GENERALITES SUR LE GENIE (L’INGENIERIE) LOGICIEL .................. 9 II.1. DEFINITION ET CONTEXTE D’ETUDES .......................................................................................... 9 I.2.1. LOIS D'EVOLUTION DU LOGICIEL ............................................................................................... 12 I.2.2. EVOLUTION DU LOGICIEL E-TYPE .............................................................................................. 13 I.3. LES PARADIGMES LOGICIELS ......................................................................................................... 14 I.3.1. PARADIGME DE DEVELOPPEMENT LOGICIEL ........................................................................ 14 I.3.2. PARADIGME DE CONCEPTION ...................................................................................................... 14 I.3.3. PARADIGME DE PROGRAMMATION ........................................................................................... 14 I.4. BESOINS DU GENIE LOGICIEL .......................................................................................................... 15 I.5. CARACTERISTIQUES D'UN BON LOGICIEL .................................................................................. 16 I.5.1. CRITERES GENERAUX ..................................................................................................................... 16 I.5.2. CRITERES EXTERNES ...................................................................................................................... 17 I.5.3. CRITERES INTERNES ....................................................................................................................... 18 I.6. CATEGORIES DE LOGICIELS ............................................................................................................ 19 I.7. ENJEUX DU GENIE LOGICIEL ........................................................................................................... 20 I.8. DIMENSIONS DU GENIE LOGICIEL ................................................................................................. 21 I.9. LES PRINCIPES DU GENIE LOGICIEL ............................................................................................. 21 DEUXIEME CHAPITRE – LE CYCLE DE VIE DU DEVELOPPEMENT LOGICIEL ........................ 23 II.1. DEFINITION .......................................................................................................................................... 23 II.2. ÉTAPES DU CYCLE DE VIE DU DEVELOPPEMENT D’UN LOGICIEL .................................... 23 II.1.1. LA COMMUNICATION .................................................................................................................... 24 II.1.2. LA COLLECTION DES EXIGENCES ............................................................................................. 24 II.1.3. ÉTUDE DU PREALABLE (ETUDE DE L’OPPORTUNITE) .................................................................... 24 II.1.4. DEFINITION ET ANALYSE DES BESOINS (SPECIFICATION) ....................................................... 25 II.1.5. LA CONCEPTION DU LOGICIEL ................................................................................................... 26 II.1.5.1. QUALITE D’UNE CONCEPTION LOGICIELLE ....................................................................... 27 A. LA COHESION .............................................................................................................................................. 28 B. LE COUPLAGE ............................................................................................................................................. 29 3 3 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD C. LA COMPREHENSIBILITE ............................................................................................................................. 29 D. L’ADAPTABILITE ......................................................................................................................................... 29 II.1.6. LE CODAGE ........................................................................................................................................ 30 II.1.7. TESTS ................................................................................................................................................... 30 II.1.8. INTEGRATION ................................................................................................................................... 30 II.1.9. INSTALLATION ................................................................................................................................. 31 II.1.10. MAINTENANCE ............................................................................................................................... 31 II.1.11. DISPOSITION ................................................................................................................................... 32 TROISIEME CHAPITRE - MODELISATION DE PROCESSUS DE DEVELOPPEMENT LOGICIEL .......................................................................................................................................................................... 33 III.1. LE MODELE DU CODE-AND-FIX .................................................................................................... 33 II.2. LE MODELE DE TRANSFORMATION AUTOMATIQUE ............................................................. 34 II.3. LE MODELE EN CASCADE (WATERFALL MODEL) ................................................................... 35 II.4. LE MODELE EN V................................................................................................................................ 37 III.5. LE CYCLE DE VIE EN SPIRALE ...................................................................................................... 40 III.6. LE MODELE PAR PROTOTYPAGE................................................................................................. 44 III.7. LE MODELE PAR INCREMENT ...................................................................................................... 45 QUATRIEME CHAPITRE – PROCESSUS SEQUENTIEL DE DEVELOPPEMENT DU LOGICIEL 46 IV.1. ARCHITECTURE LOGICIELLE ...................................................................................................... 46 IV.1.1. CONCEPTION / ARCHITECTURE ................................................................................................ 47 IV.1.2. L'ACTIVITE D'ARCHITECTURE ................................................................................................. 48 IV.1.3. PLACE DANS LE PROCESSUS DE CREATION .......................................................................... 48 IV.1.4. REPARTITION DES PROBLEMATIQUES ................................................................................... 49 IV.1.5. LA STRUCTURE D'UN LOGICIEL ................................................................................................ 49 IV.2. PRINCIPES DE CONCEPTION ......................................................................................................... 50 IV.2.1. SEPARATION DES RESPONSABILITES...................................................................................... 50 IV.2.2. REUTILISATION .............................................................................................................................. 51 IV.2.3. ENCAPSULATION MAXIMALE .................................................................................................... 52 IV.2.4. COUPLAGE FAIBLE ........................................................................................................................ 52 IV.2.5. COHESION FORTE .......................................................................................................................... 52 IV.2.6. DRY (DON'T REPEAT YOURSELF) .............................................................................................. 53 IV.2.7. KISS (KEEP IT SIMPLE, STUPID) ................................................................................................... 54 IV.2.8. YAGNI (YOU AIN'TGONNA NEED IT) ........................................................................................... 54 IV.3. PATRONS LOGICIELS ....................................................................................................................... 54 IV.3.1. ARCHITECTURE CLIENT / SERVEUR ........................................................................................ 55 IV.3.2. ARCHITECTURE EN COUCHES ................................................................................................... 56 IV.3.3. ARCHITECTURE ORIENTEE SERVICES ................................................................................... 57 4 4 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD IV.3.4. ARCHITECTURE MODELE-VUE-CONTROLEUR .................................................................... 58 IV.3.5. ARCHITECTURE MODELE-VUE-PRESENTATION ................................................................. 59 IV.4. PRODUCTION DU CODE SOURCE .................................................................................................. 60 IV.4.1. CONVENTION DE NOMMAGE ..................................................................................................... 61 IV.4.2. LANGUE UTILISEE ......................................................................................................................... 61 IV.4.3. FORMATAGE DU CODE ................................................................................................................. 62 IV.4.4. COMMENTAIRES ............................................................................................................................ 62 IV.5. GESTION DES VERSIONS ................................................................................................................. 63 IV.5.1. LES LOGICIELS DE GESTION DES VERSIONS......................................................................... 64 IV.5.2. GESTION CENTRALISEE ET DECENTRALISEE ...................................................................... 64 IV.5.3. PRINCIPAUX LOGICIELS DE GESTION DES VERSIONS ....................................................... 66 IV.6. TRAVAIL COLLABORATIF DANS LE PROJET LOGICIEL ....................................................... 66 IV.7. TESTS DU LOGICIEL ......................................................................................................................... 67 IV.8. LA DOCUMENTATION D’UN LOGICIEL ...................................................................................... 69 IV.8.1. LA DOCUMENTATION TECHNIQUE .......................................................................................... 69 IV.8.2. LA DOCUMENTATION UTILISATEUR ....................................................................................... 74 LES FORMES DE LA DOCUMENTATION UTILISATEUR ................................................................... 74 IV.8.3. LES RECOMMANDATIONS DE REDACTION D’UNE DOCUMENTATION ......................... 75 CINQUIEME CHAPITRE LES METHODES DE DEVELOPPEMENT LOGICIEL ............................ 76 V.1. LES METHODES FONCTIONNELLES ............................................................................................. 77 IV.2. LES METHODES OBJET .................................................................................................................... 78 V.3. LES METHODES ADAPTATIVES ...................................................................................................... 79 V.3.1. LES METHODES PREDICTIVES .................................................................................................... 79 V.3.2. LES METHODES AGILES ................................................................................................................ 79 V. 3.2.1. LA METHODE RAD ............................................................................................................................ 80 V.3.2.2. LA METHODE DSDM .......................................................................................................................... 80 V.3.2.3. LE MODELE XP ................................................................................................................................... 81 V.3.2.4. LA METHODE SCRUM ....................................................................................................................... 82 V.4. LES METHODES SPECIFIQUES ........................................................................................................ 83 V.4.1. LE CYCLE ERP ...................................................................................................................................... 84 V.4.2. LE MODELE RUP ................................................................................................................................... 84 CONCLUSION ............................................................................................................................................... 86 5 5 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD BIBLIOGRAPHIE  ACSIOME, « Modélisation dans la conception des systèmes d'information », Masson, 1989  Bertrand Meyer, « Conception et programmation orientées objet » Editions Eyrolles, 2000  Boehm, B. W.« Software engineering economics », Prentice-Hall, 1981, 0- 13-822122-7  Booch, Grady, ―Object-Oriented Analysis and Design, with applications‖, 3rd Ed. Addison- Wesley, 2007  C. TESSIER, « La pratique des méthodes en informatique de gestion, » Les Editions d'Organisation, 1995  GALACSI, « Comprendre les systèmes d'information : exercices corrigés d'analyse et de conception, » Dunod, 1985  I. Somerville et Franck Vallée, « Software Engineering » 6th Edition, Addison-Wesley, 2001  I. SOMMERVILLE, « Le génie logiciel et ses applications, » Inter- Éditions, 1985  Marie-Claude Gaudel, « Précis de génie logiciel », Editions Dunod, 2012  P. ANDRÉ et A. VAILLY, « Conception des systèmes d‟information : Panorama des méthodes et techniques », Ellipses, collection TECHNOSUP / Génie Logiciel, 2001  P. ANDRÉ et A. VAILLY, « Spécification des logiciels – Deux exemples de pratiques récentes : Z et UML », Ellipses, collection TECHNOSUP / Génie Logiciel, 2001. 6 6 Cours de Génie Logiciel By Dr. YENDE RAPHAEL Grevisse, PhD INTRODUCTION Le terme de « Génie logiciel » a été introduit à la fin des années soixante lors d’une conférence tenue pour discuter de ce que l’on appelait alors (la crise du logiciel « software crisis ») … Le développement de logiciel était en crise. Les coûts du matériel chutaient alors que ceux du logiciel grimpaient en flèche. Il fallait de nouvelles techniques et de nouvelles méthodes pour contrôler la complexité inhérente aux grands systèmes logiciels. La crise du logiciel était perçue à travers ces symptômes :  La qualité du logiciel livré était souvent déficiente : Le produit ne satisfaisait pas les besoins de l’utilisateur, il consommait plus de ressources que prévu et il était à l’origine de pannes.  Les performances étaient très souvent médiocres (temps de réponse trop lents).  Le non-respect des délais prévus pour le développement de logiciels ne satisfaisant pas leurs cahiers des charges.  Les coûts de développement d’un logiciel étaient presque impossible à uploads/Ingenierie_Lourd/ cours-de-genie-logiciel-by-pof-yende-r-pdf.pdf

  • 32
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager