Rapport de stage de fin d'etude l3 angelito & hasina

2 461 vues

Publié le

Rapport de stage de fin d’étude pour l'obtention du diplôme licence pro en informatique

Publié dans : Formation
2 commentaires
1 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
2 461
Sur SlideShare
0
Issues des intégrations
0
Intégrations
28
Actions
Partages
0
Téléchargements
60
Commentaires
2
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Rapport de stage de fin d'etude l3 angelito & hasina

  1. 1. Numéro : …………...……./UF/ENI UNIVERSITE DE FIANARANTSOA ECOLE NATIONALE D’INFORMATIQUE MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLOME DE LICENCE Option : Génie logiciel et Base de Données Présenté le 29 Avril 2015 par  ANGELITO Ramy  RASAMBOMANANA Hasina Yvan Membres du Jury : Président : Monsieur Rapporteurs : Monsieur MAHATODY Thomas Examinateurs : Monsieur RAKOTOHASIMBAHOAKA Cyprien Robert, Maître de Conférences « CONCEPTION APPLICATION ……./UF/ENI UNIVERSITE DE FIANARANTSOA ECOLE NATIONALE D’INFORMATIQUE MEMOIRE DE FIN D’ETUDES POUR L’OBTENTION DU DIPLOME LICENCE PROFFESSIONNEL EN INFORMATIQUE : Génie logiciel et Base de Données Intitulé 29 Avril 2015 par : ANGELITO Ramy RASAMBOMANANA Hasina Yvan : Monsieur RATIARSON Venot, Maître de Conférences Monsieur MAHATODY Thomas, Maître de Conférences Monsieur RAKOTOHASIMBAHOAKA Cyprien Robert, Maître de Conférences CONCEPTION ET DEVELOPPEMENT APPLICATION WEB DE GETION D’ECHANGE DE DEVISE» UNIVERSITE DE FIANARANTSOA ECOLE NATIONALE D’INFORMATIQUE EN INFORMATIQUE : Génie logiciel et Base de Données SON Venot, Maître de Conférences , Maître de Conférences Monsieur RAKOTOHASIMBAHOAKA Cyprien Robert, DEVELOPPEMENT D' D’ECHANGE
  2. 2. 2
  3. 3. ANGELITO Ramy Célibataire, 2 2 ans Bloc A porte 13 Cité Universitaire Ravitoto - Ambolokandrina 101 – Antananarivo – Madagascar +261 (0) 34 18 518 73 angelitoramy@gmail.com angelito.ramy@univ-fianar Formation et diplôme: Expériences professionnelles : 2014-2015 L3 de la formation d’Ingénierie de formation Hybride en Informatique 2013-2014 L2 de la formation d’Ingénierie de 2012-2013 L1 de la formation d’Ingénierie de formation Hybride en Informatique 2011-2012 Baccalauréat de l’ 2010-2011 Baccalauréat de l’Enseignement Secondaire, Série D. (Janvier 2015  Conception et développement d'une application d'échange de devise sous J2EE  Mise en I CURRICULUM VITAE Bloc A porte 13 Cité Universitaire Madagascar @gmail.com fianar.mg Université de Fianarantsoa École Nationale d’Informatique 2015 de la formation d’Ingénierie de formation Hybride en Informatique 2014 L2 de la formation d’Ingénierie de formation Hybride en Informatique 2013 de la formation d’Ingénierie de formation Hybride en Informatique 2012 Lycée Accem Ampahibe Antananarivo Baccalauréat de l’Enseignement Secondaire, Série C. 2011 Lycée Sainte Thérèse Ampefy Baccalauréat de l’Enseignement Secondaire, Série D. Stagiaire au sein de L’Entreprise MADA CHANGE Antananarivo (Janvier 2015 – Avril 2015) Conception et développement d'une application d'échange de devise sous J2EE Mise en place d'un serveur d'application web Université de Fianarantsoa École Nationale d’Informatique de la formation d’Ingénierie de formation Hybride en Informatique formation Hybride en Informatique de la formation d’Ingénierie de formation Hybride en Informatique Lycée Accem Ampahibe Antananarivo L’Entreprise MADA CHANGE Conception et développement d'une application d'échange de devise sous
  4. 4. II  Installation d'un serveur de sauvegarde linux  Mise en place d'un serveur VOIP  Maintenance logiciel et matériel informatique Stagiaire au sein de L’Entreprise MADACREDITO Antananarivo (Octobre 2013 – Février 2014)  Mise en place d’un serveur et client VPN sous CISCO,  Mise en place d’un portail captif,  Mise en place d’un serveur d’application web. Réalisation des Projets au Sein de L’École Nationale d’Informatique  Création d’un Site Web dynamique pour le département de l’IHSM de l’Université de Tuléar.  Création de pages web dynamiques avec MySQL et PHP pour la Réservation de train.  Création de pages web dynamiques avec PostgreSQL et ASP pour la Gestion de stock d’une entreprise.  Création d’une application pour la Gestion de stock d’une entreprise utilisant le langage JAVA Swing et le Système de Gestion de Base de Donné PostgreSQL.  Création d’une application mobile androïde pour les Gestion de contacts utilisant le langage JAVA  Mise en place d’un serveur VOIP avec IVR, messagerie vocale, dongle, dialplan, facturation. Compétences Informatique bureautique : Bureautique : Word, Excel, Internet et e-mail Informatique électronique : Logiciels électroniques, physiques et mathématiques, Arduno, Rasbery-py Technologie web : Création des sites-web, services-web, applications web Langage de programmations web : HTML, JAVA Script, CSS, JQuery, AJAX, PHP, ASP, ASP.NET, JSP, J2EE Système de gestion de base de données : Mysql, PostgreSQL Langage de programmations :
  5. 5. III Connaissances Développement et programmation sous langage C, C++, Python, JAVA Swing, JAVA Mobile, JAVA Androïde, JQuery Mobile, JSF, Visual Basic, UML Méthodes de conception : Méthode d’analyse Merise, Processus Unifie avec le langage UML Administration des systèmes et réseaux : Câblage d’un parc informatique, Routage statique et dynamique sous CISCO et Linux. Sécurité et authentification sur les réseaux informatique. Mise en place d’un VPN, serveur de Donné, serveur Web, serveur Mail, serveur VOIP, serveur DNS. Capacité de travail et programmation sous Linux, Free-BSD et Windows Gestion : Comptabilité générale, Entreprenariat, Marketing, CAE, MBP Langue : Français – Écrit et parlé (langue d’étude) Anglais – Notion (Niveau académique et pratique avec les différents matériels électroniques, électriques et informatiques) Malagasy – Langue maternelle Loisirs : Jeux d’échec, rouleur, télévision, livre, danse, natation, pc
  6. 6. RASAMBOMANANA Hasina Yvan Célibataire, 2 1 ans Anataninarenina 601 – Toliara – Madagascar +261 (0) 34 21 407 14 spegyvon@gmail.com Formation et diplôme: Expériences professionnelles : 2014-2015 L3 de la formation d’Ingénierie de formation Hybride en Informatique 2013-2014 L2 de la formation d’Ingénierie de formation Hybride en Informatique 2012-2013 L1 de la formation d’Ingénierie de formation Hybride en Informatique 2011-2012 Baccalauréat de l’ 2010-2011 Baccalauréat de l’Enseignement Secondaire, Série A2 (Janvier 2015  Conception et développement d'une application d'échange de devise sous J2EE  Mise en place d'un serveur d'application web  Installation d'un serveur de sauvegarde linux  Mise en place d'un IV Université de Fianarantsoa École Nationale d’Informatique 2015 de la formation d’Ingénierie de formation Hybride en Informatique 2014 L2 de la formation d’Ingénierie de formation Hybride en Informatique 2013 de la formation d’Ingénierie de formation Hybride en Informatique 2012 Lycée Laurent Botokeky Toliara Baccalauréat de l’Enseignement Secondaire, Série D 2011 Capricorn School Baccalauréat de l’Enseignement Secondaire, Série A2 Stagiaire au sein de L’Entreprise MADA CHANGE Antananarivo (Janvier 2015 – Avril 2015) Conception et développement d'une application d'échange de devise sous J2EE Mise en place d'un serveur d'application web Installation d'un serveur de sauvegarde linux Mise en place d'un serveur VOIP Université de Fianarantsoa d’Informatique de la formation d’Ingénierie de formation Hybride en Informatique L2 de la formation d’Ingénierie de formation Hybride en Informatique de la formation d’Ingénierie de formation Hybride en Informatique Lycée Laurent Botokeky Toliara L’Entreprise MADA CHANGE Conception et développement d'une application d'échange de devise sous
  7. 7. V  Maintenance logiciel et matériel informatique Stagiaire au sein de L’Entreprise MADACREDITO Antananarivo (Octobre 2013 – Février 2014)  Mise en place d’un serveur et client VPN sous CISCO,  Mise en place d’un portail captif  Mise en place d’un serveur d’application web. Réalisation des Projets au Sein de L’École Nationale d’Informatique  Création d’un Site Web dynamique pour le département de l’IST de l’Université de Tuléar.  Création de pages web dynamiques avec MySQL et PHP pour la Réservation de train.  Création de pages web dynamiques avec PostgreSQL et ASP pour la Gestion de stock d’une entreprise.  Création d’une application pour les Gestion de stock d’une entreprise utilisant le langage JAVA et le Système de Gestion de Base de Donné PostgreSQL.  Création d’une application mobile androïde pour les Gestion de contacts utilisant le langage JAVA  Mise en place d’un serveur VOIP avec IVR, messagerie vocale, dongle, dialplan, facturation. Compétences Informatique bureautique : Bureautique : Word, Excel, Internet et e-mail Technologie web : Création des sites-web, services-web, applications web Langage de programmations web : HTML, JAVA Script, CSS, JQuery, AJAX, PHP, ASP, ASP.NET, JSP, J2EE Système de gestion de base de données : Mysql, PostgreSQL Langage de programmations : Développement et programmation sous langage C, C++, Python, JAVA Swing, JAVA Mobile, JAVA Androïde, JQuery Mobile, JSF, Visual Basic, UML Méthodes de conception : Méthode d’analyse Merise, Processus Unifie avec le langage UML
  8. 8. VI Connaissances Administration des systèmes et réseaux : Câblage d’un parc informatique, Routage statique et dynamique sous CISCO et Linux. Sécurité et authentification sur les réseaux informatique. Mise en place d’un VPN, serveur de Donné, serveur Web, serveur Mail, serveur VOIP, serveur DNS. Capacité de travail et programmation sous Linux, Free-BSD et Windows Gestion : Comptabilité générale, Entreprenariat, Marketing, CAE, MBP Langue : Français – Écrit et parlé (langue d’étude) Anglais – Notion (Niveau académique et pratique avec les différents matériels électroniques, électriques et informatiques) Malagasy – Langue maternelle Loisirs : Jeux d’échec, rouleur, télévision, livre, danse, natation, pc Autres : Permis de conduire complet (A, B, C, D, E)
  9. 9. VII REMERCIEMENTS Nous n'avons pas pu réaliser ce mémoire sans la grâce du Bon Dieu, Tout puissant, qui nous a maintenu en santé et nous a accordé le temps de le réaliser. Aussi voudrons-nous, en premier lieu, Lui exprimer notre gratitude. Nous adressons également nos vifs remerciements à : - Monsieur, RAFAMANTANANTSOA Fontaine Directeur de l'Ecole Nationale d'Informatique, qui n'a point ménagé ses efforts pour faire de l'école une pépinière des élites informaticiens malgaches - Monsieur RAZAFINDRAFARA Narcisse, Gérant de la société MADA CHANGE, qui a accepté de nous accueillir au sein de son organisme, - Monsieur ANDRIANJAKAMANANA Emilson, chef du service des planifications et du suivi évaluation, pour son sens de coordination et d'organisation en vue de la bonne marche de notre stage - Monsieur ANDRINIRINA Seheno, notre encadreur professionnelle, pour son aide, son assistance et pour avoir diriger nos travaux - Monsieur MAHATODY Thomas, notre encadreur pédagogique, pour ses précieux conseils afin de mener à bien ce travail - Tout le personnel de la société pour sa gentillesse et son soutien - Et enfin, toutes les personnes qui nous ont aidé, de près ou de loin, à la réalisation de ce mémoire
  10. 10. VIII LISTE DES FIGURES Figure 1 : Organigramme de l’ENI.............................................................................. 2 Figure 2 : Organigramme de MADA CHANGE......................................................... 10 Figure 3: logo reflétant la rivalité entre Eclipse et NetBeans .................................... 24 Figure 4: Diagramme de cas d'utilisation.................................................................. 30 Figure 5: Diagramme de cas d'utilisation "Saisir MID".............................................. 30 Figure 6: Diagramme de cas d'utilisation "Gérer utilisateur système"....................... 31 Figure 7: Diagramme de cas d'utilisation "Valider journée" ...................................... 32 Figure 8: Diagramme de cas d'utilisation "Consulter MID" ....................................... 33 Figure 9: Diagramme de cas d'utilisation "Saisir nouveau client non enregistrer" .... 35 Figure 10: Diagramme de cas d'utilisation "Gérer transactions achat, vente, allocation"................................................................................................................. 36 Figure 11: Diagramme de cas d'utilisation "Convertir devise"................................... 37 Figure 12: Diagramme de cas d'utilisation "Saisir ordre de dépense" ...................... 38 Figure 13: Diagramme de cas d'utilisation "Gérer états" .......................................... 39 Figure 14: Diagramme de séquence "s'authentifier"................................................. 41 Figure 15: Diagramme de séquence "Saisir MID" .................................................... 42 Figure 16: Diagramme de séquence "Créer utilisateur"............................................ 43 Figure 17: Diagramme de séquence "Modifier utilisateur"........................................ 44 Figure 18: Diagramme de séquence "Supprimer utilisateur" .................................... 45 Figure 19: Diagramme de séquence "Valider journée"............................................. 46 Figure 20: Diagramme de séquence "Consulter MID" .............................................. 46 Figure 21: Diagramme de séquence "Saisir nouveau client non enregistrer"........... 47 Figure 22: Diagramme de séquence "Gérer transaction" ......................................... 48 Figure 23: Diagramme de séquence "Saisir ordre de dépense"............................... 48 Figure 24: Diagramme de séquence "Gérer états"................................................... 49 Figure 25 : Le modèle en V ...................................................................................... 50 Figure 26: Le mode de fonctionnement du MVC ...................................................... 51 Figure 27: Diagramme de conception "s'authentifier"............................................... 52 Figure 28: Diagramme de séquence de conception "saisir MID".............................. 52 Figure 29: Diagramme de séquence de conception "créer utilisateur" ..................... 52 Figure 30: Diagramme de séquence de conception "modifier utilisateur"................. 53 Figure 31: Diagramme de séquence de conception "supprimer utilisateur".............. 53 Figure 32: Diagramme de séquence de conception "Valider journée"..................... 53 Figure 33: Diagramme de séquence de conception "consulter MID"....................... 54 Figure 34: Diagramme de séquence de conception "saisir nouveau client" ............ 54 Figure 35: Diagramme de séquence de conception "modifier client"....................... 54 Figure 36: Diagramme de séquence de conception "supprimer client" ................... 55 Figure 37: Diagramme de séquence de conception " insérer transaction" .............. 55 Figure 38: Diagramme de séquence de conception "modifier transaction"............... 55 Figure 39: Diagramme de séquence de conception "supprimer transaction" .......... 56 Figure 40: Diagramme de séquence de conception " gérer états"........................... 56 Figure 41 : Diagramme de classe « consulter MID »............................................... 57 Figure 42 : Diagramme de classe « gérer transactions » ......................................... 57 Figure 43 : Diagramme de classe « Saisir Client »................................................... 58 Figure 44 : Diagramme de classe « valider journée » .............................................. 58 Figure 45 : Diagramme de classe de conception globale......................................... 59
  11. 11. IX Figure 46: Diagramme de paquetages ..................................................................... 60 Figure 47: Diagramme de déploiement .................................................................... 61 Figure 48: L'IDE NetBeans 8.0.2 .............................................................................. 63 Figure 49: Site de Sun rubrique downloads.............................................................. 64 Figure 50: Page du téléchargement NetBeans JDK 8.............................................. 64 Figure 51: Étape du téléchargement NetBeans........................................................ 65 Figure 52: Page officiel du téléchargement NetBeans.............................................. 66 Figure 53: Installation JDK 8..................................................................................... 67 Figure 54: Suite de l'installation JDK 8 ..................................................................... 67 Figure 55: Fin de l'installation JDK 8 ........................................................................ 67 Figure 56: Page d'accueil d'installation NetBeans.................................................... 68 Figure 57: Activation serveur Tomecat 8.0.15 .......................................................... 68 Figure 58: Acceptation de licence étape 1................................................................ 69 Figure 59: Acceptation de licence étape 2................................................................ 69 Figure 60: Choix du répertoire de la cible de l'installation......................................... 70 Figure 61: Résumé de l’installation........................................................................... 70 Figure 62: Finition de l'installation............................................................................. 71 Figure 63: GlassFish Open Source Edition 4.1......................................................... 72 Figure 64 : Interface graphique de postgreSQL........................................................ 73 Figure 65: Architecture Client/Serveur...................................................................... 73 Figure 66 : Page d’accueil de postgreSQL ............................................................... 75 Figure 67 : Interface de création de table ................................................................. 76 Figure 68 : Remplir les valeurs d’une table............................................................... 76 Figure 69 : Remplir valeur d’une table (suite)........................................................... 77 Figure 70 : architecture mvc ..................................................................................... 78 Figure 71 : Code achats.java.................................................................................... 81 Figure 72: Code achat.jsp......................................................................................... 84 Figure 73: AchatController.java ................................................................................ 86 Figure 74 : Page d’authentification ........................................................................... 87 Figure 75 : Validation des dates ............................................................................... 88 Figure 76 : Page d’accueil ........................................................................................ 88 Figure 77 : Interface de saisie de nouveau client ..................................................... 89 Figure 78 : Interface liste des clients et des transactions pouvant être effectués..... 89 Figure 79 : Interface de transaction « Achat ».......................................................... 90 Figure 80 : Interface de transaction « Vente ».......................................................... 90 Figure 81 : Interface de transaction « allocation ».................................................... 91 Figure 82 : Interface de recherche............................................................................ 91 Figure 83 : Interface de recherche « Achat »............................................................ 92 Figure 84 : Interface de recherche « Vente » ........................................................... 92 Figure 85 : Interface de recherche « Allocation » .................................................... 93 Figure 86 : Interface de recherche « Client »............................................................ 93 Figure 87 : Interface de saisie de l’ordre de dépense............................................... 94 Figure 88 : Interface page spéciale Administrateur .................................................. 94 Figure 89 : Interface d’ajout de nouvel utilisateur ..................................................... 95 Figure 90 : Interface liste des utilisateurs ................................................................. 95 Figure 91 : Architecture J2EE................................................................................XVIII Figure 92 : Fonctionnement Servlet.........................................................................XIX Figure 93 : Architecture MVC ..................................................................................XIX
  12. 12. X LISTE DES TABLEAUX Tableau 1 : Caractéristiques des ordinateurs de la société ...................................... 16 Tableau 2 : Caractéristiques des ordinateurs serveurs ............................................ 17 Tableau 3 : Caractéristiques des équipements d’interconnexion.............................. 17 Tableau 4 : Tableau comparatif de SGBD................................................................ 20 Tableau 5 : Outils et Equipement nécessaires ........................................................ 22 Tableau 6: Généralité des outils UML ...................................................................... 23 Tableau 7: Fonctionnalité des outils UML................................................................. 24 Tableau 8: Tableau de comparaison d'Eclipse et de Netbeans................................ 24 Tableau 9: Tableau comparatif de merise et de uml................................................. 25 Tableau 10: Dictionnaire des données ..................................................................... 27 Tableau 11: Fiche de description du cas d'utilisation "Saisir MID"............................ 30 Tableau 12 : Fiche de description du cas d'utilisation "Gérer utilisateur système" .. 32 Tableau 13 : Fiche de description du cas d'utilisation "Valider journée"................. 33 Tableau 14: Fiche de description du cas d'utilisation "Consulter MID" .................... 34 Tableau 15 : Fiche de description du cas d'utilisation "Saisir nouveau client non enregistrer" ............................................................................................................... 35 Tableau 16: Fiche de description du cas d'utilisation "Gérer transactions"............... 36 Tableau 17: Fiche de description du cas d'utilisation "Convertir devise ................... 37 Tableau 18: Fiche de description du cas d'utilisation "Saisir ordre de dépense" ...... 38 Tableau 19: Fiche de description du cas d'utilisation "Gérer états" .......................... 39
  13. 13. XI LISTE DES ABREVIATIONS OU NOMENCLATURE MVC : Modèle-Vue-Contrôleur MID : Mouvement Interbancaire de Devise CPU: Central Processing Unit DNS : Domain Name Server DVD: Digital Compact Disc ENI: Ecole Nationale D’informatique ESPA : Ecole Supérieur Polytechnique D’Antananarivo HTTP: Hyper Text Transfer Protocol LMD: Licence Master Doctorat PRESUP: Programme de Renforcement de l’Enseignement Supérieur SARL : Société A Responsabilité Limité TCP: Transmission Control Protocol TELMA: TELecom MAlagasy VLAN: Virtual Local Network WIFI: Wireless Fidelity WPA: Wifi Protect Access API : Application Programming Interface CRUD : Create, Read, Update, Delete HTML: Hypertext Markup Language JDBC: Java DataBase Connectivity JEE : Java Enterprise Edition MVC: Model View Controller SQL : Search and Query Language UML : Unified Modeling Language XML: Extensible Markup Language IHM : Interface Homme-Machine
  14. 14. XII SOMMAIRE CURRICULUM VITAE................................................................................................. I REMERCIEMENTS .................................................................................................. VII LISTE DES FIGURES ............................................................................................. VIII LISTE DES TABLEAUX............................................................................................ X LISTE DES ABREVIATIONS OU NOMENCLATURE .............................................. XI SOMMAIRE.............................................................................................................. XII INTRODUCTION GENERALE ................................................................................... 1 PARTIE I : PRESENTATIONS.................................................................................... CHAPITRE 1: PRESENTATION DE L’ECOLE............................................................................................. 2 CHAPITRE 2 : PRESENTATION DE LA SOCIETE MADACHANGE........................................................ 9 CHAPITRE 3: DESCRIPTION DU PROJET ................................................................................................. 13 PARTIE II : ANALYSE ET CONCEPTION................................................................. CHAPITRE 4: ANALYSE PREALABLE........................................................................................................ 15 CHAPITRE 5: ANALYSE CONCEPTUELLE ............................................................................................... 26 CHAPITRE 6: CONCEPTION DETAILLEE (UML) .................................................................................... 51 PARTIE III : REALISATION......................................................................................... CHAPITRE 7: MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT.......................... 62 CHAPITRE 8: DEVELOPPEMENT DE L’APPLICATION......................................................................... 75 CONCLUSION GENERALE....................................................................................XIV BIBLIOGRAPHIE .....................................................................................................XV WEBOGRAPHIE .....................................................................................................XVI GLOSSAIRE ..........................................................................................................XVII ANNEXES .............................................................................................................XVIII
  15. 15. XIII RESUME ..................................................................................................................XX ABSTRACT..............................................................................................................XX
  16. 16. 1 INTRODUCTION GENERALE Dans le cadre de la formation hybride à l’ENI, un stage de 3 mois est prévu pour mettre en pratique les compétences acquises lors de cette année d’étude. Nous avons donc intégré l’équipe de spécialiste en informatique de la société MADACHANGE. L’avantage compétitif d’une société de nos jours repose sur sa capacité à répondre directement aux besoins du marché et augmenter leurs bénéfices en produisant des biens ou des services qui satisfait les besoins de la clientèle. En effet, dans un monde en constante évolution et un environnement concurrentiel, un avantage compétitif est de bénéficier de l’information et du service voulu, au moment et à l’endroit voulus. C’est dans ce sens que nous avons réalisé notre stage basé sur « la conception et le développement d’une application de gestion de devise ». Dans ce présent mémoire, l’Ecole Nationale d’ Informatique et la société MADACHANGE seront tout d’abord présentées ; ensuite l’analyse, qui décrira le contexte du sujet et les taches effectuées. Enfin, nous terminerons par la partie réalisation.
  17. 17. PARTIE I : PRESENTATIONS
  18. 18. 2 CHAPITRE 1: PRESENTATION DE L’ECOLE 1.1. Localisation et contact L’École Nationale d’Informatique dite ENI est localisée à Tanambao Fianarantsoa, avec le code postal 301. Sa boîte postale porte le numéro 1487. Son téléphone porte le numéro 75 508 01. Et son adresse électronique est eni@univ-fianar.mg. 1.2. Organigramme L’organigramme de l’ENI est présenté sur la figure 1. Figure 1 : Organigramme de l’ENI 1.3. Mission et Historique L’ENI de l’Université de Fianarantsoa constitue à l’heure actuelle la pépinière des élites informaticiennes malgaches. On peut considérer cette Ecole Supérieure comme la vitrine et la mesure de l’avancée technologique du Pays. Elle se positionne dans le système socio-éducatif malgache comme le plus puissant vecteur de diffusion et de vulgarisation des connaissances et des technologies informatiques.
  19. 19. 3 Créée par le Décret N° 83/185 du 24 mai 1983, l’ENI est le seul Etablissement universitaire professionnalisé du pays ayant pour mission de former des Techniciens supérieurs, des Licenciés en informatique et des Ingénieurs informaticiens de haut niveau, aptes à répondre aux besoins et exigences d’informatisation des entreprises, des sociétés et des organismes implantés à Madagascar. L’implantation de cette Ecole Supérieure de technologie de pointe dans un pays en voie de développement et dans une province à tissu économique et industriel faiblement développé, ne l’a pourtant pas empêché de former des spécialistes informaticiens de bon niveau recherchés par les sociétés et les organismes. Depuis sa création jusqu’à aujourd’hui, l’ENI placée sous la tutelle de l’Université de Fianarantsoa a formé et déversé sur le marché de l’emploi : - 13 promotions d’Analystes Programmeurs, soit 447 diplômés. - 22 promotions d’Ingénieurs Informaticiens, soit 554 diplômés. - 13 promotions de Techniciens Supérieurs en Maintenance des Systèmes Informatiques, soit 310 diplômés. Soit en tout 1311 diplômés. La filière de formation d’Analystes Programmeurs a été créée en 1983, et a été gelée par la suite en 1996. La filière de formation d’ingénieurs a été ouverte à l’Ecole en 1986. La filière de formation de Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été mise en place à l’Ecole en 1996 grâce à l’appui matériel et financier de la Mission Française de Coopération dans le cadre du Programme de Renforcement de l’Enseignement Supérieur (PRESUP). Une formation pour l’obtention de la certification CCNA et/ou Network+, appelée « Cisco Networking Academy à Madagascar », en 2002-2003, a été créée grâce au partenariat avec Cisco System et l’Ecole Supérieure Polytechnique d’Antananarivo (ESPA). Cette formation n’existe plus actuellement. Une formation doctorale a été ouverte depuis l’année universitaire 2003-2004 avec une parfaite coopération entre l’Université de Fianarantsoa (ENI) et celle de Toulouse. Enfin, une formation en Licence professionnelle en informatique ayant comme options (Administration des systèmes et des réseaux, Génie logiciel et Base de données) a été ouverte pendant l’année universitaire 2007-2008. La filière de formation de Techniciens Supérieurs en Maintenance des Systèmes Informatiques a été gelée en 2008.
  20. 20. 4 1.4. Domaines de spécialisation  Génie logiciel et base de données  Maintenance des systèmes informatiques  Administration des systèmes et réseaux  Modélisation environnementale et Système d’Information Géographique  Formation Hybride en Informatique 1.5. Architecture de la pédagogie La responsabilité de l’Ecole pour cette professionnalisation des formations dispensées implique de : - Suivre les progrès technologiques et méthodologiques en Informatique (recherche appliquée, veille technologique, technologies Réseau, Multimédia, Internet, …). - Prendre en considération dans les programmes de formation les besoins évolutifs des entreprises et des autres utilisateurs effectifs et potentiels, de la technologie informatique. Cependant, la professionnalisation ne peut se faire « en vase clos » ; elle exige une «orientation client » et une « orientation marché ». Ce sont les entreprises qui connaissent le mieux leurs besoins en personnel informatique qualifié. Ces entreprises partenaires collaborent avec l’ENI en présentant des pistes et des recommandations pour aménager et réactualiser périodiquement les programmes de formation. Ainsi, dans le cadre de ce partenariat avec les sociétés dans les divers bassins d’emploi en Informatique, elle offre sur le marché de l’emploi des cadres de bon niveau, directement opérationnels, et avec des connaissances à jour. L’architecture des programmes pédagogiques à l’Ecole s’appuie sur le couple théorie- pratique : - Des enseignements théoriques et pratiques de haut niveau sont dispensés intra-muros à l’Ecole, - Des voyages d’études sont effectués par les étudiants nouvellement inscrits et ayant passé une année d’études à l’Ecole, - Des stages d’application et d’insertion professionnelle sont pratiqués en entreprise chaque année par les étudiants au terme de chaque formation académique à l’Ecole. Les stages effectués en entreprise par les étudiants de l’ENI sont principalement des stages de pré embauche. Ces stages pratiques font assurer l’Ecole d’un taux moyen d’embauche de 97%, six mois après la sortie de chaque promotion de diplômés.
  21. 21. 5 1.6. Filières de formation existantes et diplômes délivrés - Cycle licence en informatique spécialisé en administration des systèmes et des réseaux, puis en génie logiciel et base de données, aboutissant au Diplôme Universitaire de licenciés informaticiens. L’effectif des étudiants en année universitaire 2012–2013 : - En 2012, l’école a créé une nouvelle formation qui s’appelle « FORMATION HYBRIDE » pour augmenter les nombres des informaticiens au besoin de l’entreprise.  L1H Fianarantsoa (Première année de formation Hybride) : 135  L1H Tuléar (Première année de formation Hybride) : 19  L1 (Première année de Licence) :101  L2 (Deuxième année de Licence) : 96  L2H Fianarantsoa (Deuxième année de formation Hybride) : 95  L3 (Troisième année de Licence) : 99 - Cycle de formation d’Ingénieurs Informaticiens avec de compétences en Gestion, Systèmes et réseaux, de niveaux Baccalauréat + 5 ans. Les effectifs des étudiants en 2012-2013 :  M1 (Première année en Master) : 97  M2 (Deuxième année en Master) : 95 - La formation en DEA en informatique organisée en partenariat avec l’Université Paul Sabatier de Toulouse. Les trois meilleurs étudiants de la promotion effectuent les travaux de recherche à Toulouse. Cette formation est un élément du système de formation de troisième cycle et d’études doctorales qui sera mise en place progressivement à l’ENI. - Une formation non diplômant en CISCO ACADEMY, soutenue par les Américains, avec certification CCNA. Les effectifs des étudiants dans le système depuis sa création :  CISCO Première promotion 2002/2003 : 28  CISCO Deuxième promotion 2003/2004 : 5 Le recrutement d’étudiants à l’ENI se fait chaque année uniquement par voie de concours d’envergure nationale, excepté celui concernant le « Cisco Academy » et celui de la DEA, qui font l’objet de sélections des dossiers de candidature. Bien qu’il n’existe pas au niveau international de reconnaissance écrite et formelle des diplômes délivrés par l’ENI, les diplômés de l’Ecole sont bien accueillis dans les Institutions universitaires étrangères. Des étudiants diplômés de l’Ecole poursuivent actuellement leurs études supérieures en 3ème cyclé dans plusieurs Universités
  22. 22. 6 françaises, notamment à l’IREMIA de l’Université de la Réunion, à l’Université LAVAL au Canada, à l’Ecole Polytechnique Fédérale de Lausanne en SUISSE, à l’Ecole Doctorale STIC (Science de la Technologie de l’Information et de la communication) de l’Ecole Supérieure en Science Informatique de l’Université de Nice Sophia Antipolis. 1.7. Relation partenariales de l’ENI avec les entreprises et les organismes 1.7.1. Au niveau international Les stages pratiqués chaque année par ses étudiants mettent l’Ecole en relation permanente avec plus de 300 entreprises, sociétés et organismes publics et privés nationaux et internationaux. Parmi ces Etablissements, on peut citer : ACCENTURE Maurice, AIR MAD, AIRTEL, AMBRES ASSOCIATES, AUF, B2B, Banque Centrale, BFV SG, BIANCO, BLUE LINE, BNI-CA, BOA, CEDII Fianar, CEM, Central Test, Centre Mandrosoa Ambositra, CNA, CNRIT, COLAS, COPEFRITO, Data Consulting, PHARMACIE DES PLATEAUX Fianar, D.G. Douanes Tana, DLC, DTS/MOOV, FTM, GNOSYS, IBONIA, IFIR des Paramédicaux Fianar, INGENOSYA, INSTAT, IOGA, JIRAMA, Lazan’i Betsileo, MADADEV, MADARAIL, MEF, MEN, MESRES, MFB, MIC, MICROTEC, MININTER, MIN TélCom et Nouvelles technologies, NEOV MAD, NY HAVANA, OMNITEC, ORANGE , OTME, PRACCESS, QMM Fort-Dauphin, SECREN, SNEDADRS Antsirabe, Société d’Exploitation du Port de Toamasina, Softewell, Strategy Consulting, TACTI, TELMA , AIRTEL, WWF, ADEMA, …. L’organisation de stages en entreprise contribue non seulement à assurer une meilleure professionnalisation des formations dispensées, mais elle accroît également de façon exceptionnelle les opportunités d’embauche pour les diplômés. Les diplômés de l’ENI sont recrutés non seulement par des entreprises et organismes nationaux, mais ils sont aussi embauchés dans des organismes de coopération internationale tels que l’USAID MADAGASCAR, la Délégation de la Commission Européenne, la Banque Africaine de Développement (BAD), la Mission Résidente de la Banque Mondiale, la Commission de l’Océan Indien, etc. 1.7.2. Au niveau National Entre 1996 et 1999, l’ENI a bénéficié de l’assistance technique et financière de la Mission Française de Coopération et d’Action Culturelle dans le cadre du PRESUP. La composante du PRESUP consacré à l’ENI a notamment porté sur :
  23. 23. 7 - Une dotation en logiciels, microordinateurs, équipements de laboratoire de maintenance et de matériels didactiques ; - La réactualisation des programmes de formation assortie du renouvellement du fond de la bibliothèque ; - L’appui à la formation des formateurs ; - L’affectation à l’Ecole d’Assistants techniques français. Et depuis le mois de mai 2000, l’ENI fait partie des membres de bureau de la Conférence Internationale des Ecoles de formation d’Ingénieurs et de Techniciens d’Expression Française (CITEF). L’ENI a signé un Accord de coopération interuniversitaire avec l’IREMIA de l’Université de la Réunion, l’Université de RENNES 1 et l’Institut National Polytechnique de Grenoble (INPG). Depuis le mois de juillet 2001, l’ENI abrite le Centre du Réseau Opérationnel (Network Operating Center) du point d’accès à internet de l’Ecole et de l’Université de Fianarantsoa. Grâce à ce projet américain financé par l’USAID Madagascar, l’ENI et l’Université de Fianarantsoa sont maintenant dotées d’une Ligne Spécialisée d’accès permanent à INTERNET. Par ailleurs, depuis 2002, une nouvelle branche à vocation professionnelle a pu y être mise en place, en partenariat avec Cisco System. Enfin et non de moindres, l’ENI a noué des relations de coopération avec l’Institut de Recherche pour le Développement (IRD). L’objet de la coopération porte sur la Modélisation environnementale du corridor forestier de Fianarantsoa. Dans le même cadre, un atelier scientifique international sur la modélisation des paysages a été organisé à l’ENI au mois de Septembre 2008. Comme l’ENI constitue une pépinière incubatrice de technologie de pointe, d’emplois et d’entreprises, elle peut servir d’instrument efficace pour la lutte contre la pauvreté. De même que l’Ecole permet de renforcer la position concurrentielle de la Grande île sur l’orbite de la mondialisation grâce au développement des nouvelles technologies. 1.8. Ressources humaines  Directeur : Docteur RAFAMANTANANTSOA Fontaine  Chef de Département de la Formation Théorique : Docteur RATIARSON Venot  Chef de Département de la Formation Pratique : Docteur RAKOTOASIMBAHOAKA Cyprien  Nombre d’Enseignants permanents : 12  Nombre d’Enseignants vacataires : 10
  24. 24. 8  Personnel administratif et technique : 19 1.9. Projet et perspective de développement institutionnel (2010-2015)  Restructuration du système pédagogique de l’Ecole selon le schéma LMD (Licence Master Doctorat).  Mise en place à l’Ecole d’un département de Formation de troisième cycle et d’études doctorales en Informatique.  Déploiement de formations hybrides dans différentes Régions.  Création à l’Ecole d’une Unité de Production Multimédia, d’un Club de Logiciel libre Unix.
  25. 25. 9 CHAPITRE 2 : PRESENTATION DE LA SOCIETE MADACHANGE 2.1. Identification de la société Dénommée MADACHANGE, selon son statut, la société a pour objet :  Des activités de bureau de change, constitué en service spécialisé au sein de la société dont principalement l’achat et la vente de devises étrangères en numéraires ou chèques de voyage, la prise à l’encaissement de chèque en devises tirés sur compte bancaire, de chèque banque, l’achat et la vente de devises détenues dans un compte en devises ouvert dans une banque malgache ;  Des activités de transit, d’import export et d’agence de voyage ;  Et, généralement, toutes opération mobilières, immobilières, commerciales et financières se rattachant directement ou indirectement à l’objet social et susceptibles d’en favoriser la réalisation. Le siège social est fixé à Antananarivo, logement 1356 bis, cité 67 HA Nord Ouest. Le capital social étant 20 000 000 Ar, divisé en 40 parts de 1 000 000 Ar chacune. La société est gérée et administrée par un gérant. Il a la signature sociale, mais il ne peut toute fois en faire usage que pour les besoins et les affaires de la société. Le gérant, en son nom : Mr Narcisse Michel, a un pouvoir étendu pour agir au nom de la société en toutes circonstances, et pour faire les opérations se rattachant à son objet. Il peut conférer à telle personne que lui bon lui semble tous pouvoirs pour un ou plusieurs objets déterminés, dans la limite de ceux qui leur sont attribués La société est inscrite au registre fiscal sous le numéro d’identification fiscale NIF 2 000 31 35 01. La société MADACHANGE est inscrite à l’INSTAT sous le numéro d’identification statistique 65219112009010046. Voici les informations complémentaires au sujet de la Société MADACHANGE : Email : info.change@moov.mg Téléphone : 034 49 632 97 / 020 22 566 76. NIF : 2 000 31 35 01 CIF : 010 36 48 Activités : bureau de change 2.2. Historique de la société MADACHANGE MADACHANGE est une société familiale crée en 2001: c’est une organisation qui offre des services de bureau de change.
  26. 26. 10 Depuis 2001 : MADACHANGE est une société à Responsabilité Limité (SARL) avec un capital de 20 000 000 Ariary. 2.3. Perspective et activités principales La société MADACHANGE exerce son activité dans le domaine du change. Ainsi, elle a comme activité l’achat et la vente de devises. Mission et objectifs Cette société a une structure financière de proximité qui contribue à la « lutte contre la pauvreté des populations pour le développement (de service) financier adopté à ces populations cible. Pièces à fournir Les conditions d’accessibilités sont : - Présentation de la CIN - Passeport 2.4. Structure organisationnelle de MADA CHANGE L’organigramme de MADA CHANGE est présenté sur la figure 2. Figure 2 : Organigramme de MADA CHANGE
  27. 27. 11 Attribution des organes et du personnel de l’entreprise Le Conseil d’Administration (CA) Il est constitué de trois membres élus par l’Assemblé Général(AG) et assure le rôle de définir la politique de gestion des ressources de la société .Il précise les objectifs de la société et l’orientation qui doit être donnée à son administration et exerce l’arrêt des comptes à chaque fin d’exercice. Le Gérant Le Gérant assure la gérance de la société et représente celle-ci dans ses rapports avec les tiers. Pour l'exercice de ces fonctions, il établit les stratégies d’évolution et de développement de l’entreprise tant au point de vue comptable, financier, managérial que technique. Il (charpente) l’ensemble des opérations à long et à court terme. Il prend les décisions importantes dans l’administration de son entreprise. Il est également le responsable juridique et morale de l’entreprise. Il analyse le marché et la position de l’entreprise face à la concurrence afin de réévaluer les objectifs. Le Gérant délègue les missions aux cadres et aux employés de l’entreprise et analyse l’activité en permanence. Il ajuste la mise en œuvre des ordres qu’il soumet .Il est le référant global pour ses employés et pour l’image de marque de l’entreprise qu’il dirige. Le responsable commercial Le responsable commercial élabore et propose à la direction générale la politique commerciale de l'entreprise. Il détermine les orientations stratégiques, les objectifs à atteindre et les moyens à mettre en place, après analyse et évaluation des différentes composantes du marché. Il anime, coordonne et contrôle, avec ses collaborateurs, les activités de conception et de mise en œuvre nécessaires au développement sur le marché des biens ou des services proposés par l'entreprise. Il participe à l’élaboration des procédures, définit les conditions de gestion administrative et de suivi comptable, il est le responsable de la mis en place des tableaux de bord à partir des stratégies de l'entreprise et des informations comptables. C’est lui qui prépare les budgets, contrôle leur réalisation, interprète les écarts et dirige la comptabilité générale. Il gère les aspects administratifs et comptables du personnel en synergie avec le responsable des ressources humaines (recrutement, ancienneté, congés, retraites, licenciements, niveaux des salaires primes et indemnités) mais aussi les domaines juridiques et fiscaux liés au patrimoine (immobilier, assurances...), à la vie économique (contrats, conventions). L’agent comptable L’agent est chargé de tenir les comptes de l’entreprise par laquelle il travaille et assure la relance des impayés si certaines factures n’ont pas été payées. Il traite les factures clients et
  28. 28. 12 fournisseur ainsi que la paie. Il élabore les documents comptables officiels que la société doit tenir à jour. Il assure le contrôleur interne de gestions.
  29. 29. 13 CHAPITRE 3: DESCRIPTION DU PROJET 3.1 Formulation MADACHANGE est une société en plein évolution technologique. Aujourd’hui, Le réseau informatique de la société connecte l’ensemble de ses agences entre eux, que ce soit à Madagascar ou dans les autres pays ou elle s’est implantée. Vue l'évolution des technologies de l'information, l'émergence des services Internet et Intranet, l’augmentation considérable du capital, du nombre assez important du nombre d’employé et des clients, les responsables s’oriente vers la construction et le développement des applications assurant les besoins de contrôles, de sécurité et de confidentialité. Dans ce cadre, le présent projet consiste :  Réaliser une application Web qui permet de gérer les activités de l’entreprises, entre et autres l’achat et la vente de devise.  Concevoir et développer une application consultable à distance permettant aux clients de connaitre en temps réelle les cours de devise. 3.2 Objectif et besoins de l’utilisateur Dans un souci de concevoir une application avec plus de fonctionnalités possibles et dans le but conception et développement d'application web de gestion d'échange de devise d’avoir une interface plus conviviale et plus facile à utiliser tout en étant plus efficace et en respectant les besoins des utilisateurs, nous avons conçu une application qui regroupe tous les points cités ci-dessus. Le travail demandé se résume ainsi dans les fonctionnalités suivantes :  Offrir à l’utilisateur une interface permettant la gestion des achats et des ventes des devises : les principales activités de l’entreprise.  Offrir à l’utilisateur une interface permettant la gestion des clients.  Permet à l’administrateur de contrôler les accès à chaque module de l’application  Permettre à l’administrateur de contrôler les comptes des utilisateurs de l’application 3.3 Moyens nécessaires à la réalisation du projet Pour mener ce projet à son terme, certains outils sont nécessaires et indispensables :  Deux ordinateurs portable DELL core i5 et HP core i5  Environnement de développement NetBeans IDE 8.0.2  Système de gestion de base de données PostgreSQL  Un accès internet  Outil de modélisation Visual Paradigm 5.0.1 3.4 Résultats attendus A la fin du projet, l’application doit répondre aux besoins et aux attentes des utilisateurs notamment des employés et des clients. Tout d’abord, l’application doit être facile à manipuler, fiables et performant
  30. 30. 14 De plus, ces applicatifs doivent réduire les coûts et augmenter la satisfaction du client. En effet, le client n’a pas besoins de se déplacer et attendre aux guichets pour bénéficier de service, c’est la société qui lui rend visite. En fin, le plus important pour les responsables c’est que l’application soit directement opérationnelle.
  31. 31. PARTIE II : ANALYSE ET CONCEPTION
  32. 32. 15 CHAPITRE 4: ANALYSE PREALABLE Ce chapitre présente un état des lieux : il s’agit d’une étude de l’existant suivie de critique permettant de présenter une amélioration résumant l’ensemble des solutions retenues. C’est une phase importante pour bien comprendre le système et définir ses objectifs. 4.1. Analyse de l’existant Avant la phase de réalisation du projet, l’analyse de l’existant est quasiment importante. L’objectif est d’avoir une vue sur l’architecture interne, ses mécanismes et ses failles afin de pouvoir proposer des solutions correspondantes et adéquates. 4.1.1. Organisation actuelle (modes de traitements actuels, applications et personnels impliqués) 4.1.1.1. Partage des données Chez MADACHANGE, les employés utilisent Skype pour inter-changer des données : il n’existe pas de logiciels ou d’application spécialisée pour effectuer ces échanges. 4.1.1.2. Les applications existantes Actuellement, il y a l’existence l’application ISOAPS utilisé dans la société. Cette application permet la gestion des clients, des demandes, et des agences. Elle est accessible par tous les utilisateurs notamment les employés de la société. Il existe aussi l’application « change devise » qui gère la principale source de revenue de l’entreprise, entre et autre, la vente et l’achat de devise. 4.1.1.3. Ressources Les employés utilisent presque essentiellement des ordinateurs portables. La rapidité des pc dépend des services utilisés : Dans le service secrétariat et comptabilité, on utilise seulement des outils bureautiques tel que WORD, EXEL,… de Microsoft Office. La fréquence du RAM, de la CPU sont moyens. Dans le service publicité et Multimédia. On utilise des logiciels comme AUTOCAD, ADOBE ULUSTRATOR, PHOTOSHOP qui nécessitent une grande performance des pc. Ces derniers plantent souvent. Ceci est du à la faible fréquence du CPU, du RAM… Pour les ordinateur utilisant Internet : Les charges de la bande passante ne sont pas équilibrées : Skype et youtube engage beaucoup plus de bande passante que les autres services.
  33. 33. 16 4.1.2. Inventaire des moyens matériels et logiciels MADACHANGE utilise actuellement : o Une ligne MOOVBOX de Telma qui offre une connexion internet o Un serveur web, DNS o Un serveur de sauvegarde, d’application o Une imprimante o Un photocopieur o Un Switch : qui permet de relier plusieurs ordinateurs entre eux de même adresse réseau o Un point d’accès wifi o 1 routeur Cisco 1841. 4.1.2.1. Les postes de travails La plupart des ordinateurs utilisés par les employés de la société sont presque essentiellement des ordinateurs portables. Tableau 1 : Caractéristiques des ordinateurs de la société Désignation (Nombre) Caractéristiques Système d’Exploitation Authentification Services HP CPU : Intel® pentium ® CPU B940 @ 2GHZ RAM : 4Go DD : 500 Go Windows 7 Local Analyste Programmer TOSHIBA CPU : Core i3 (2,53 GHZ) RAM : 4Go DD : 500 Go Windows 7 Local Multimédia Dell CPU :AMD A8-3510APU 1,8 GHz RAM : 2Go DD : 250 Go Windows 7 Local Multimédia Dell CPU : Intel 2CPU 2GHZ RAM : 2Go DD : 200 Go Windows 7 Local Contrôle Interne NEC CPU : AMP Sempron 1.8 GHz RAM : 704Mo DD : 20Go Win XP SP3 Local Comptabilité Acer CPU : Pentium ® 2.8 GHz RAM :1 Go DD : 150 Go Win XP SP3 Local Comptabilité Lenovo CPU : Intel ® 2 GHZ RAM : 2 Go DD : 150 GHz Windows 7 Local Caisse 1
  34. 34. 17 Acer CPU : Intel ® Core 2 Duo 2 GHz RAM : 4 Go Windows 7 Local Secrétariat HP CPU : AMD –E-450 1,6 GHz RAM : 4 Go DD : 500Go Windows7 Local Caisse 2 L’entreprise utilise deux serveurs : Tableau 2 : Caractéristiques des ordinateurs serveurs Désignation Caractéristiques Système d’exploitation Service Authentification (par service) DELL -Processeur Intel® Xeon® X3480 (4 C / 8 T, 3,06 GHz, TLC: 8 MB, Turbo: 2/2/4/5, 1 333 MHz, 95 W) -RAM 16Go -Disque dur 2To Linux Debian6 Web(Apache2) ISOAPS V2 DNS Messagerie Système de fichier Système de fichier Système de fichier Système de fichier FIJITSU -Processeur Intel® Xeon® X3430 (4 C / 4 T, 2,40 GHz, TLC: 8 MB, Turbo: 1/1/2/3, 1 333 MHz, 95 W) -RAM 4Go -Disque dur 1To Linux Debian7.5 MADA CHANGE MySQL 4.1.2.2. Equipement d’interconnexion Pour se connecter à internet, MADACHANGE utilise un modem wifi : Moov box Telma. En effet, les sécurisations sont celle du box Telma par défaut: WPA/WPA2. Tous les matériels réseaux sont liés par une connexion sans fil wifi, sauf le serveur linux qui lui relié au box par un câble réseau. Tableau 3 : Caractéristiques des équipements d’interconnexion Désignation Caractéristiques Emplacement Routeur Cisco 1841 4 ports, 100Mb/s, support VPN Local technique ou Box Switch Prolink PSW 162G 8 ports,100 Mb/s, support VLAN Local technique ou Box Point d’accès wifi D-LINK 4 ports, 54 Mb/s en 2,4 GHz Local technique ou Box
  35. 35. 18 4.2. Critique de l’existant La critique de l’existant doit mettre en évidence les activités fondamentales et les informations associées, ainsi que les principaux dysfonctionnements du système actuel. Suite aux remarques que nous avons faites, nous avons trouvé qu’il présente les points forts et les limites suivant : 4.2.1. Points forts La société MADACHANGE a ses propres points forts :  la fourniture de bureau complet;  la rapidité de traitement des dossiers;  la communication et le respect du client bien maîtrisés;  une bonne relation entre le personnel, la sécurité bien organisée, l’accès qualifié et le respect de la voie hiérarchique.  L’accueil chaleureux des membres du personnel ;  La capacité du personnel à travailler sous pression Malgré les facteurs de qualité cités, MADACHANGE possède également ses faiblesses. 4.2.2. Points faibles Compte-tenu de la situation actuelle, on constate qu’il y a différentes difficultés à l’intérieur de l’organisme, parmi lesquels on peut citer l’insuffisance de matériels informatiques, les problèmes de réseaux, les problèmes de logiciels de gestion et le manque d’espace. 4.2.2.1. Insuffisance de matériels informatiques La plupart des taches effectuées requièrent l’utilisation de matériels informatiques. Or, la plupart des matériels sont en panne. Ce domaine s’avère pourtant essentiel en vue d’une meilleure exécution des tâches. En effet, cette insuffisance constitue une entrave au bon déroulement des travaux au sein du Trésor. 4.2.2.2. Problèmes techniques des réseaux La connexion Internet fonctionne correctement, mais à cause de la distance géographique entre les serveurs principaux qui se trouvent à Antananarivo plus précisément à Ankorondrano, la connexion se rame et la vitesse de connexion diminue.
  36. 36. 19 4.2.2.3. Le manque d’espace de travail Les bureaux de la société ne suffisent à son personnel à cause du nombre élevé du nombre des employés. Ceci nuit négativement à la qualité du travail. 4.2.2.4. Problèmes de logiciels de gestion La critique de l’existant doit mettre en évidence les activités fondamentales et les informations associées, ainsi que les principaux dysfonctionnements du système actuel. Suite aux remarques que nous avons faites au logiciel de gestion de devise, nous avons trouvé qu’il présente les limites suivantes :  Le logiciel ne présente pas des photos : manque de photo des utilisateurs ;  Chaque utilisateur entrant dans le système peut saisir les cours du jour. Or, il n’y a que l’administrer qui a le droit de faire ce saisi ;  Chaque utilisateur a le même droit d'accès;  Ce logiciel actuellement utilisé est très archaïques : Il quasiment difficile ou même impossible de le mettre à jours. En fait, le codage du logiciel est mauvais, erroné, désordonné.  Développé en langage php en désordre: code brute  Utilise le SGBD mysql 4.3. Conception avant projet 4.3.1. Objectif et solution Plusieurs problèmes persistent toujours au sein de la société, surtout sur le logiciel de gestion de devise actuellement utilisé : manque de module, application inachevée, etc… De ce fait, les employés travaillent manuellement et aussi avec ce logiciel. L’entreprise devra pouvoir libérer le personnel du travail manuel, optimiser le circuit d’informatisation interne et externe. Différentes solutions existent : acquérir de nouveaux logiciels avec des matériels adaptés, déterminer des méthodes et des outils standards pour le développement interne de la base de données, et rédiger des manuels de conception pour toute application à développer. De même pour les clients, afin de leurs éviter un long trajet et de les satisfaire, il devra réfléchir sur une éventuelle création et la conception d’un logiciel pour consulter les cours du devise. 4.3.2. Scénario de solution L’objectif principal de cette étape est de proposer aux responsables un nombre restreint de solution, d’aider ces responsables à choisir une solution.
  37. 37. 20 MADACHANGE utilise actuellement la base de données MySQL. Face aux besoins et à l’existant, deux (2) solutions peuvent être proposées, qui sont des possibilités permettant de répondre à la problématique du sujet. Par contre, leurs critères sont les suivants:  le langage de programmation,  la base de données à utiliser,  le coût de l’implémentation (financière et temps),  l’architecture et la sécurité du système futur. 4.3.2.1. Première solution Mettre en place une application web utilisant la technologie J2EE, dont la base de données à utiliser sera PostgreSQL, assez performant en tant que SGBD allié à un outil de développement intégré. Ce dernier facilite l’utilisation. 4.3.2.2. Deuxième solution Mettre en place une application web service, consultable à distance par les clients, permettant de consulter les cours de devise, notamment de l’Ariary, de l’Euro et du Dollar. Nous allons choisir la première solution utilisant la technologie J2EE avec PostgreSQL. 4.3.3. Critères de choix 4.3.3.1. Choix du SGBD Avant d’appliquer les deux solutions proposées, il convient tout d’abord de procéder à la comparaison des SGBD. Nous nous sommes basés sur les critères suivants : la sécurité, l’intégrité, la station et le cout d’acquisition. Tableau 4 : Tableau comparatif de SGBD SGBD MySQL PostgreSQL Oracle Vitesse Intégrité Popularité Coût réduit d’acquisition Sécurité Station
  38. 38. 21 Oracle Parmi les SGBD cité ci-dessus, Oracle reste le plus performant notamment en matière de vitesse, d'intégrité, et de sécurité. Cependant, elle est moins populaire que les deux autres et du point de vue cout, elle n'est pas gratuit. MySQL et PostgreSQL En comparant les deux, PostgreSQL gagne en terme de vitesse. L’intégrité concerne le respect de la norme SQL, MySQL a une très bonne intégration dans l’environnement Apache par rapport à PostgreSQL. Enfin, du point de vue coût, MySQL est gratuit et très courant en hébergement public par rapport à Oracle ou à PostgreSQL. La Station MySQL n’exige pas de prix exorbitant, du point de vue des licences que des matériels à fournir (RAM, CPU) pour de bonnes performances. Le logiciel peut tourner sur un PC 800Mhz de fréquence, 256Mo de mémoire. En revanche Oracle ne tournera pas correctement sur un PC qui a moins de 2Ghz de fréquence et 1Go de mémoire. On a constaté qu’Oracle l’emporte davantage sur MySQL et PostgreSQL mais le fait qu’Oracle a un prix exorbitant, tant du point de vue des licences et qu’il n’est pas gratuit, alors on peut choisir PostgreSQL ou MySQL. Nous avons donc décidé d’utiliser PostgreSQL tant pour avoir plus d’assurance en matière de sécurité et qu’il est gratuit. 4.3.3.2. Choix des outils à utiliser L’utilisation d’une base de données MySQL ou PostgreSQL est nécessaire pour le développement d’une application basée sur la technologie J2EE y compris JSP langage du script. A souligner que la conception se fera avec une approche orientée objet. Tous les modèles seront présentés avec la méthode UML. Pour faciliter les tâches, des outils de conception et des outils de développement ont été choisis. Ainsi, les tâches deviennent de plus en plus faciles à programmer et à développer et les données suivent les normes demandées. On a besoin d’un poste d’ordinateur qui permet de faire toute intervention. Le premier outil est nécessaire à l’élaboration des modèles de conception. Le deuxième outil est principalement comme son nom l’indique, un éditeur de texte spécifique facilitant l’écriture des codes JAVA, JSP, et HTML. Il ne faut pas oublier que les librairies ou API sont indispensables au développement du logiciel.
  39. 39. 22 Le tableau 5 présente les outils et les nouveaux équipements dont nous devrons disposer : Tableau 5 : Outils et Equipement nécessaires Outils de conception Outils de développement Autre Visual Paradigm AgroUML Modelio powerAMC Eclipse NetBeans Un PC qui tourne sous Windows Dans notre cas, nous avons choisie Visual Paradigm comme outil de modélisation et Netbeans comme outil de développement.
  40. 40. 15 Pourquoi Visual Paradigm? Les raisons, basé la sur généralité et la fonctionnalité, qui nous a poussé a choisir Visual Paradigm sont citées dans les tableaux 6 et 7: Tableau 6: Généralité des outils UML Nom Créateur Plateforme / OS Dernière diffusion stable Open source ? Licence logiciel Langage de programmation utilisé ArgoUML Multiplate- forme (Java) 15 décembre 2011 Oui EPL v1.0 Java Visual Paradigm for UML Visual Paradigm Int'l Ltd. Multiplate- forme (Java) 21 janvier 2013 Non Commercial avec une édition communautaire gratuite Java Modelio Modeliosoft Windows, Linux, Mac OS 20 janvier 2015 Oui Commercial avec une édition communautaire gratuite (GPL V3, Apache 2.0) Java, C++ PowerAMC Sybase Windows 1er octobre 2008 Non Commercial
  41. 41. 24 Tableau 7: Fonctionnalité des outils UML Nom UML 2 ? Patrons ? Langages générés Langages de rétro- génération Intégrable dans Détails ArgoUML Non ? C++, C#, PHP4, PHP5, Java, Ruby, SQL Java (et autres langages, dont C# en plugins) Suit de près les standards UML Visual Paradigm pour UML Oui ? Java, C#, C++, PHP, Ada et Action Script Java, C# (binary), C++ et PHP Eclipse, NetBeans et IntelliJ Support complet de l'UML 2.1, SysML, ERD, BPMN, modélisation de données, modélisation de métier et rétro-conception à partir de code source et de base de données. PowerAMC Oui Oui Java, C# et VB .NET Eclipse Modélisation de données, modélisation de processus métier, conception et rétro-conception. Modelio Oui Oui Java 8, C#, C++, XSD, WSDL, BPEL, SQL Java, C++, C#, SQL Eclipse, EMF Supporte tout l'UML2. Intègre BPMN. Génération de document HTML, MS-Word, Open Document. Modélisation et application de Design Patterns.
  42. 42. 24 Parmi les outils cités, seul Visual Paradigm a une correspondance et est intégrable dans Netbeans. Pourquoi NetBeans? Figure 3: logo reflétant la rivalité entre Eclipse et NetBeans Tableau 8: Tableau de comparaison d'Eclipse et de Netbeans Eclipse NetBeans Popularité Plus populaire Moins populaire Graphique Tout Seulement l'essentielle, claire Serveur et compilateur JAVA intégré A installer et à configurer Tomcat Glasfish Besoin en API Nécessaire Important Nécessaire important Ressources Faible(peut fonctionner sur une machine à faible fréquence ou de mémoire) Elevée(besoin de machine à fréquence élevé) Plateforme Multiplateforme Multiplateforme En terme de popularité, Eclipse l'emporte et elle est le plus utilisé. Graphiquement Netbeans est plus léger qu' Eclipse, son interface est plus clair et plus agréable. De plus, avec Netbeans, on a plus l'essentiel, et les fonctionnalités sont la, il n'y a pas de soucis.
  43. 43. 25 Le serveur de compilateur JAVA Tomecat et Glasfish sont intégrés sur Netbeans, par contre on Installe et on configure sur Eclipse. C'est la raison pour laquelle on a choisie Netbeans Merise ou UML ? Pour avoir une vue ou un aperçu global d’une application, il est nécessaire d’utiliser une méthode de conception. Il en existe plusieurs mais les plus connus, dont nous disposons, sont les méthodes MERISE et UML. Tableau 9: Tableau comparatif de merise et de uml UML MERISE Zone Popularité International Franco-français Description Un métalangage de description d'application "LANGAGE" Une méthode d'analyse de système d'information "METHODE" Objectifs On fait des programmes (bâtir des classes) On fait des bases de données (analyse des flux d'information) Merise se positionne comme une méthode de conception de SI organisationnel, plus tournée vers la compréhension et la formalisation des besoins du métier que vers la réalisation de logiciel. En sens, Merise se réclame plus de l'ingénierie du SI métier que du génie logiciel. Jamais Merise ne s'est voulu une méthode de développement de logiciel ni de programmation. UML, de par son origine (la programmation objet) s'affirme comme un ensemble de formalismes pour la conception de logiciel à base de langage objet. En d'autre terme, il intègre l’objet et est donc plus adaptée aux SGBDOO. De plus, UML est conçue pour représenter, spécifier et documenter les applications et apporte une grande rigueur, offrant une meilleure compréhension des applications et permettant de capturer des aspects pertinents pour répondre aux objectifs définis par les besoins des clientèles. Les deux modèles sont basés sur le modèle entité-association. Par conséquent, nous avons opté pour l’utilisation de la méthodologie de conception UML.
  44. 44. 26 CHAPITRE 5: ANALYSE CONCEPTUELLE 5.1. Spécification des besoins La spécification de besoins constitue la phase de départ de toute application à développer dans laquelle nous allons identifier les besoins de notre application. 5.1.1. Présentation d’UML et de la méthode utilisée Notre méthode s’inspire des méthodes dites orientées objets et en parti culier de la méthode du Processus unifié qui suggère une approche légère et itérative pour le développement d’une application informatique . Le processus unifié est un processus de développement itératif et incrémental piloté par les cas d’utilisation. Il utilise le langage UML et possède plusieurs déclinaisons. En regardant les objectifs fixés pour la réalisation du projet, nous remarquons que nous sommes face à une application modulaire et qui devra rester ouverte pour les améliorations futures. De ce fait, il est très important d’utiliser un langage universel pour la modélisation afin de clarifier la conception et de faciliter les échanges. Comme on l'a déjà indiqué dans le chapitre précédent, notre choix est porté sur le langage UML puisqu’il convient pour toutes les méthodes objet et se prête bien à la représentation de l’architecture du système. UML (Unified Modeling Language) est un langage de modélisation basée sur des diagrammes pour représenter les aspects d'un système statique ou dynamique. Il est apparu dans le monde du génie logiciel, dans le cadre de la « conception orientée objet ». Il repose sur la notion orientée objet qui est un véritable atout pour cette langue. Il est couramment utilisé dans les projets logiciels, il peut être appliqué à tous les types de systèmes et ne se limitent pas à la technologie de l'information. Il comporte 9 principaux diagrammes regroupés dans deux vues différentes: Vue Statique (cinq diagrammes structurels) :  Diagramme de Cas d’utilisation.  Diagramme de Classes.  Diagramme d’Objets.  Diagramme de Composants.  Diagramme de Déploiement. Vue Dynamique (quatre diagrammes comportementaux) :  Diagramme de Séquence.  Diagramme d’activités.  Diagramme d’états transitions.  Diagramme de Collaboration. Dans le cadre d'un processus de développement logiciel, UML nous a permis de comprendre certains aspects de la complexité inhérente du logiciel, à préciser la structure et le comportement de ce système, de visualiser le système et pour construire le système, et de documenter les décisions prises le long du chemin.
  45. 45. 27 5.1.2. Description du domaine Après une étude détaillée de système, cette partie est réservée à la description des exigences fonctionnelles des différents acteurs de l’application. Ces besoins se regroupent dans les diagrammes des cas d’utilisation. Nous avons donc dégagé les besoins des utilisateurs suivants:  L’authentification de l’utilisateur ou de l’administrateur  La validation date du travail  La consultation et la saisie du cours devise et du mid  Transaction : achats, vente, allocation, versement et encaissement 5.1.3. Dictionnaire des données Tableau 10: Dictionnaire des données Nom ID Type Taille Action Action mouvement A 25 Active_alloc Active allocation N 10 Active_caisse Active du caisse N 10 Adresse_cl Adresse du client AN 45 Adrs_societe Adresse de la société AN 45 Code_achat Code achat N 10 Code_action Code action du mouvement AN 45 Code_caisse Code caisse du versement AN 8 code_dev Code devise AN 2 Code_j Code journée N 5 Code_m Code mouvement AN 25 code_position Code position AN 20 Code_vente Code vente N 11 Contre_val Contre valeur N 15.2 Cours Cours du jours N 12.2 C_v_alloc Contre allocation N 15.2 D_alloc Date allocation N 10 Date_depart Date de départ N 10 Date_pass Date de création passeport N 10 Date_retour Date de retour N 10 Date_journee Date du MID N 10 Destination Destination A 45 Date_j Jours de position N 10 Devise Devise vente AN 4 Etrange Devise étrangère N 2 Ex_pass Date d'expiration du passeport N 10 Gain Gain N 12.2 Genre Genre A 20 Gros_coupure Grosse coupure N 15 Id_al Identité allocation N 5 id_client Identité client N 11 Id_dev Identité devise N 200 Id_e Identité encaissement N 5 Id_m Identité mouvement N 5 Id_v Identité vente N 5
  46. 46. 28 IdCat Identité catégorie utilisateur N 10 IdUser Identité utilisateur N 10 Img_pass_r Image du passeport recto AN 50 Img_pass_v Image du passeport verso AN 50 J_avant Un jours avant jours en cours N 10 J_en_cours Jours de travail N 10 J_suivant Un jours après jours en cours N 10 Journee Date validation transaction N 10 Lieu_pass Lieu de délivrance passeport AN 45 Login Nom d'utilisateur AN 20 Mid MID N 10.3 Montant Montant du versement N 20.2 Motif_voyage Motif du voyage AN 100 N_caisse Numéros caisse N 8 N_doc Numéros document achat AN 25 N_doc_v Numéros document vente AN 25 N_gain Numéros gain N 15 N_mid Numéros mid N 15 N_prix_alloc Numéros prix allocation N 10 Nationalite_cl Nationalité client AN 20 Nb_dt_veil Nombre date Veil N 12 nb_position Nombre position N 15 Nom Nom de l'utilisateur AN 45 Nom_caisse Nom caisse AN 45 Nom_client Nom du client AN 45 Num_alloc Numéros allocation AN 45 Num_billet Numéros billet AN 25 NumTel Numéros téléphone AN 45 Origine Origine de l'achat AN 45 P_coup Petit coupure du devise N 2 Passport Numéros passeport AN 45 Payement Payement allocation AN 45 Pays Pays AN 45 Petit_coupure Petit coupure achat N 2 Prix Prix allocation Int 12 Profession Profession du client AN 45 Quantite Quantité de la vente N 10.2 Seuil Seuil du devise N 10 Societe Société AN 45 Stock_ar Stock ariary N 25.2 Stock_devise Stock devise N 25.2 Stock_i Stock initiale N 25.2 Tel_caisse Téléphone caisse AN 45 Username Pseudo de l'utilisateur AN 45 Ventes Ventes du mid N 10.3 A : Alphabétique N : Numérique AN : Alphanumérique
  47. 47. 29 5.1.4. Règles de gestion RG1 : Un client possède un seul passeport ; RG2 : Un client effectue des achats ; RG3 : Un administrateur gère au moins un compte système ; RG4 : Seul l’administrateur peut saisir ou entrer le mid; RG5 : Un utilisateur peut saisir le cours du jour ; RG6 : Un utilisateur valide et ne saisie pas le jour de son travail ; RG7 :Il ne peut y avoir qu’ un et un seul cours en une journée ; RG8 : Un employé peut effectué un et plusieurs ventes ; RG9 : Un administrateur peut créer et supprimer un ou plusieurs utilisateurs; RG10 : Seul l'administrateur a le droit de modifier le jour de travail; RG11 : Un utilisateur peut modifier son pseudo; RG12 : Le maximum de ventes sur un client est 7 000 € ou 10 000$ pour les Pays Européens; RG14 : Le maximum de ventes sur un client est 50 000 000 Fmg pour les Pays Asiatiques; RG15 : Le maximum d'achats sur un client est 70 000 €; RG16 : Le frais généraux d'un allocation est 10 000 Ar; RG15 : Un allocation est validé durant trois jours seulement; RG16 : Un client a au moins un billet ou un passeport pour effectuer des ventes; RG17 : Un client a au moins un CIN ou un passeport pour effectuer des achats; RG18 : Un client a strictement un passeport pour effectuer un allocation; RG19 : Un personne peut posséder plusieurs passeports; 5.1.5. Diagramme des cas d'utilisation Le diagramme de cas d’utilisation a pour but de donner une vision globale sur les interfaces de future application. C’est le premier diagramme UML constitué d’un ensemble d’acteurs qui agit sur des cas d’utilisation et qui décrit sous la forme d’actions et des réactions, le comportement d’un système du point de vue utilisateur. Pour effectuer ce genre de diagramme, il faut commencer par définir et identifier l'acteur du système. 5.1.5.1. Identification de l'acteur Un acteur est un utilisateur qui communique et interagit avec les cas d’utilisation du système. C’est une entité ayant un comportement comme une personne, système ou une entreprise. Système : cet élément fixe les limites du système en relation avec les acteurs qui l’utilisent (en dehors de système) et les fonctions qu’il doit fournir (à l’intérieur du système). Un cas d’utilisation représente un ensemble de séquences d’actions à réaliser par le système et produisant un résultat observable intéressant pour un acteur particulier représenté par des ellipses et limité par un rectangle pour représenter le système. Dans le cas de notre système, nos acteurs sont l'employé de transaction et l'administrateur.
  48. 48. 30 5.1.5.2. Cas d'utilisation globale du système Ci-dessous, nous présentons le diagramme de cas d’utilisation pour la compréhension du fonctionnement du système. Figure 4: Diagramme de cas d'utilisation 5.1.6. Priorisation des cas d'utilisation Dans cette partie, nous allons décrire et détailler le cas d'utilisation globale. Figure 5: Diagramme de cas d'utilisation "Saisir MID" Tableau 11: Fiche de description du cas d'utilisation "Saisir MID" Titre : Saisir MID But : Saisi du mid par l'administrateur du système Résumé : L'administrateur peut saisir le mid après l'avoir consulter sur le site web de la banque centrale.
  49. 49. 31 Acteur : Administrateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - L'administrateur est authentifié - affichage des informations à remplir par l'administrateur. . Scénario nominal 1) Après authentification et validation du jour, le système affiche les champs à remplir 2) L'administrateur valide par le bouton correspondant à celui de «valider». Scénario alternatif 1 L'administrateur n’a pas rempli un ou tout les champs . 1. Le système affiche un message d’erreur. 2. Retour à l’étape 1 du scénario nominal. Figure 6: Diagramme de cas d'utilisation "Gérer utilisateur système"
  50. 50. 32 Tableau 12 : Fiche de description du cas d'utilisation "Gérer utilisateur système" Titre : Gérer utilisateur système But : Créer, modifier ou supprimer un compte d'utilisateur par l'administrateur du système Résumé : L'administrateur peut créer, modifier ou supprimer un compte d'utilisateur. Acteur : Administrateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - L'administrateur est authentifié - affichage des informations à remplir par l'administrateur pour créer un nouveau compte. - affichage des informations du compte à modifier ou à supprimer . Scénario nominal 1) Après authentification, le système affiche selon le choix de l'administrateur soit les champs à remplir permettant de créer un compte créer, soit les champs permettant de modifier un compte, soit le bouton permettant du supprimer un compte. 2) L'administrateur valide par le bouton correspondant à celui de «valider». Scénario alternatif 1) L'administrateur n’a pas rempli un ou tout les champs . 2) Le système affiche un message d’erreur. 3) Retour à l’étape 1 du scénario nominal. Figure 7: Diagramme de cas d'utilisation "Valider journée"
  51. 51. 33 Tableau 13 : Fiche de description du cas d'utilisation "Valider journée" Titre : Valider journée But : Saisir ou valider la journée du système sur laquelle on peut effectuer les opération Résumé : L'utilisateur peut saisir ou valider la date du jour, le jour d'avant, et le jour d'après ou il travaille. Acteur : Utilisateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - l'utilisateur est authentifié - affichage des informations à remplir par l'utilisateur: le jour d'avant, le jour ou il travaille, et le jour d'après . Scénario nominal 3) Après authentification, le système affiche les informations: la date du jour, la date du jour avant, la date du jour après ou il travaille. 4) L'utilisateur valide ces dates par le bouton correspondant celui d' «valider». Scénario alternatif 1) L'utilisateur n’a pas rempli champ ou ne respecte pas la continuité des dates . 2) Le système affiche un message d’erreur. 3) Retour à l’étape 1 du scénario nominal. Figure 8: Diagramme de cas d'utilisation "Consulter MID"
  52. 52. 34 Tableau 14: Fiche de description du cas d'utilisation "Consulter MID" Titre : Consulter MID But : Consultation du mid par l'utilisateur du système Résumé : L'utilisateur peut consulter le mid après la saisi de l'administrateur Acteur : Utilisateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - L'utilisateur est authentifié - Affichage mid . Scénario nominal 1) Après authentification et validation de la journée, le système affiche la page d'accueil 2) Choix de l'option "Fichier/MID" 3) Le système affiche la mid du jour Scénario alternatif 1) Retour à l’étape 1 du scénario nominal.
  53. 53. 35 Figure 9: Diagramme de cas d'utilisation "Saisir nouveau client non enregistrer" Tableau 15 : Fiche de description du cas d'utilisation "Saisir nouveau client non enregistrer" Titre : Saisir nouveau client non enregistrer But : Saisir un nouveau client qui n'est pas encore inscrit dans la base de données Résumé : L'utilisateur choisit dans la barre de menu ''Fichier/ Client/Nouveau''. L’action se déclenche et le système liste les informations à remplir. Acteur : Utilisateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - L'utilisateur est authentifié - Affichage des informations à remplir pour le client et la liste des clients déjà enregistrée . Scénario nominal 1) L'utilisateur choisit dans la barre de menu ''Fichier/ Client/Nouveau'' puis affiche les informations à remplir. 2) L'utilisateur valide la requête d’inscrire un nouveau client par le bouton correspondant celui d' «enregistrer». 3) Le système expose la liste des clients déjà enregistrée.
  54. 54. 36 1) Client n’a pas rempli un ou tout les champs . 2) Le système affiche un message d’erreur. 3) Retour à l’étape 1 du scénario nominal. Figure 10: Diagramme de cas d'utilisation "Gérer transactions achat, vente, allocation" Tableau 16: Fiche de description du cas d'utilisation "Gérer transactions achat, vente, allocation" SOMMAIRE Titre : Gérer transactions achat, vente, allocation But : L'utilisateur effectue une des transactions: ''Achat, vente, allocation, versement et encaissement'' . Résumé : L'utilisateur choisit la transaction à effectuer. Acteur : Utilisateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - l'utilisateur est authentifié - l'utilisateur choisie une transaction - affichage de la transaction par sens d'opération: achat, vente, allocation, versement et encaissement .
  55. 55. 37 Scénario nominal 1) Après avoir saisie ou rechercher un client, l'utilisateur recherche choisie une opération: achat, vente, allocation, versement. 2) Le système expose l'affichage de l'opération choisie; 3) L'utilisateur saisie les informations nécessaire à la transaction correspondante avant de l'enregistrer via le bouton '' enregistrer''. Scénario alternatif 1) L'utilisateur n’a pas rempli les champs. 2) Le système affiche un message d’erreur. 3) Retour à l’étape 2 du scénario nominal. Figure 11: Diagramme de cas d'utilisation "Convertir devise" Tableau 17: Fiche de description du cas d'utilisation "Convertir devise Titre : Convertir devise But : Le client peut convertir deux devises différentes ''Achat ou vente'' . Résumé : L'utilisateur choisit la devise à convertir et la devise cible (Euro, Dollar, Ariary) Acteur : Utilisateur
  56. 56. 38 DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - l'utilisateur est authentifié - l'utilisateur choisie une transaction - affichage transaction par sens d'opération ACHAT VENTE . Scénario nominal 1) L'utilisateur recherche ou saisie un client puis choisie une opération: achat/vente; 2) Le système expose l'affichage de l'opération correspondante; 3) L'utilisateur saisie le ''cours de devise'' et les informations nécessaire avant d'enregistrer la transaction via le bouton '' enregistrer''. Enchaînement alternatif 1) Client n’a pas rempli un ou tout les champs . 2) Le système affiche un message d’erreur. 3) Retour à l’étape 1 du scénario nominal. Figure 12: Diagramme de cas d'utilisation "Saisir ordre de dépense" Tableau 18: Fiche de description du cas d'utilisation "Saisir ordre de dépense" Titre : Saisir ordre de dépense But : L'administrateur peut saisir l'ordre de dépense. Résumé : Après avoir choisi une transaction, l'administrateur saisit les informations concernant l'ordre de dépense . L’action se déclenche et le système l'enregistre dans la base de données. Acteur : Administrateur
  57. 57. 39 DESCRIPTIPTON DES ENCHAINEMENTS Pré conditions Post conditions - L'administrateur est authentifié - affichage des information à remplir . Scénario nominal 1) L'administrateur remplie les champs concernant l'ordre de dépense puis enregistre les informations 2) saisie par le bouton correspondant à celui '' d'enregistrer '' ; 3) Le système expose l'affichage de l'opération correspondante; . Scénario alternatif 1) L'administrateur n’a pas rempli un ou tout les champs . 2) Le système affiche un message d’erreur. 3) Retour à l’étape 1 du scénario nominal. Figure 13: Diagramme de cas d'utilisation "Gérer états" Tableau 19: Fiche de description du cas d'utilisation "Gérer états" SOMMAIRE Titre : Gérer états But : L'utilisateur effectue un bilan journalière, mensuelle et annuelle.
  58. 58. 40 Résumé : L'utilisateur affiche un états de son choix: journalière, mensuelle et annuelle. Acteur : Utilisateur DESCRIPT TON DES ENCHAINEMENTS Pré conditions Post conditions - L'utilisateur choisie un états à afficher. - Affichage d'un états : journalière, mensuelle et annuelle. Scénario nominal 1) L'utilisateur choisit l'états ou il veut afficher dans la barre de menu '' Etats'' 2) Le système affiche l'états sélectionné. Scénario alternatif . 5.1.7. Spécification des besoins techniques Les besoins techniques décrivent toutes les contraintes techniques, ergonomiques et esthétiques auxquelles est soumis le système pour sa réalisation et pour son bon fonctionnement. Et en ce qui concerne notre application, nous avons dégagé les besoins suivants :  La disponibilité: l’application doit être disponible pour être utilisé par n’importe quel utilisateur.  La fiabilité: les données fournies par l’application doivent être fiables.  La convivialité de l’interface graphique : l’application doit fournir une interface conviviale et simple pour tout type d’utilisateur car elle présente le premier contact de l’utilisateur avec l’application et par le biais de celle-ci on découvrira ses fonctionnalités.  Une solution ouverte et évoluée: l’application peut être améliorée par l’ajout d’autres modules pour garantir la souplesse, l’évolutivité et l’ouverture de la solution.  La possibilité de retourner au menu principal de l’application à partir de n’importe quelle fenêtre de celle-ci.
  59. 59. 41 5.2. Modélisation du domaine 5.2.1. Diagramme de séquence système pour chaque cas d'utilisation Les diagrammes de séquence peuvent servir à illustrer les cas d’utilisations. Ils permettent de représenter la succession chronologique des opérations réalisées par un acteur et qui font passer d’un objet à un autre pour représenter un scénario. Dans cette partie, nous allons décrire les scénarios les plus importants ainsi que leurs représentations par les diagrammes de séquence. 5.2.1.1. Diagramme de séquence "S'authentifier" Figure 14: Diagramme de séquence "s'authentifier"
  60. 60. 42 5.2.1.2. Diagramme de séquence "Saisir MID" Figure 15: Diagramme de séquence "Saisir MID"
  61. 61. 43 5.2.1.3. Diagramme de séquence "Créer compte utilisateur" Figure 16: Diagramme de séquence "Créer utilisateur"
  62. 62. 44 Figure 17: Diagramme de séquence "Modifier utilisateur"
  63. 63. 45 Figure 18: Diagramme de séquence "Supprimer utilisateur"
  64. 64. 46 5.2.1.4. Diagramme de séquence "Valider journée" Figure 19: Diagramme de séquence "Valider journée" 5.2.1.5. Diagramme de séquence "Consulter MID" Figure 20: Diagramme de séquence "Consulter MID"
  65. 65. 47 5.2.1.6. Diagramme de séquence "Saisir nouveau client non enregistrer" Figure 21: Diagramme de séquence "Saisir nouveau client non enregistrer"
  66. 66. 48 5.2.1.7. Diagramme de séquence "Gérer transaction" Figure 22: Diagramme de séquence "Gérer transaction" 5.2.1.8. Diagramme de séquence "Saisir ordre de dépense" Figure 23: Diagramme de séquence "Saisir ordre de dépense"
  67. 67. 49 5.2.1.9. Diagramme de séquence "Gérer états" Figure 24: Diagramme de séquence "Gérer états" 5.2.2. Modèle du domaine De nos jours, la méthodologie adoptée dans l’analyse et la conception des systèmes représente un choix stratégique pour le bureau d’études afin de mener à terme les projets tout en respectant les délais annoncés au client et avec la qualité demandée. Vu l’évolution des besoins des utilisateurs finaux, les applications d’entreprise deviennent de plus en plus complexes et difficiles à con concevoir et à développer. Pour la conception, le développement et la réalisation de notre application, nous avons opté pour l’application du processus de développement V qui demeure actuellement le cycle de vie le plus connu et certainement le plus convenable aux projets complexes. Ce processus nous a accompagné du début de projet jusqu’à l’implémentation. Son principe est qu’avec toute décomposition doit être décrite la recomposition, et que toute description d’un composant doit être accompagnée de test qui permettront de s’assurer qu’il correspond à sa description. Ceci rend explicite la préparation des dernières phases (validation-vérification) par les premières (construction du l’application) et on sait progressivement si on s’approche de ce que le client désire.
  68. 68. 50 Figure 25 : Le modèle en V Sur la barre oblique de gauche ; on représente les phases d'étude et d'analyse, de conception et de développement, sur la barre oblique remontante à droite ; on représente les phases de tests et d'acceptation finale.
  69. 69. 51 CHAPITRE 6: CONCEPTION DETAILLEE (UML) 6.1. Architecture du système L'architecture Modèle/Vue/Contrôleur (MVC) est une façon d'organiser une interface graphique d'un programme. Elle consiste à distinguer trois entités distinctes qui sont, le modèle, la vue et le contrôleur ayant chacun un rôle précis dans l'interface. L'organisation globale d'une interface graphique est souvent délicate. Bien que la façon MVC d'organiser une interface ne soit pas la solution miracle, elle fournit souvent une première approche qui peut ensuite être adaptée. Elle offre aussi un cadre pour structurer une application c’est à dire elle permet d’avoir un code plus structuré, plus évolutif, plus maintenable, permettant de profiter de plusieurs mécanismes, d’avoir de la persistance de données, et bien d’autres choses encore. Dans l'architecture MVC, les rôles des trois entités sont les suivants :  Le “Modèle” est la représentation interne des données. Il permet comme son nom l’indique de modéliser les données que l’on va manipuler dans l’application. Le modèle représente les véritables données avec toutes les informations qu’elles véhiculent.  La “Vue” quant à elle est la représentation visuelle de ces données à l’écran.  Le contrôleur enfin, sert à faire l’interface entre le modèle et la vue. En effet, puisque le modèle et la vue sont sensés être au maximum indépendants, le contrôleur sert à faire le lien pour faire communiquer l’un (M) avec l’autre (V). Ci-dessous, le mode de fonctionnement du MVC : Figure 26: Le mode de fonctionnement du MVC
  70. 70. 52 6.2. Diagramme de séquence de conception pour chaque cas d’utilisation Figure 27: Diagramme de conception "s'authentifier" Figure 28: Diagramme de séquence de conception "saisir MID" Figure 29: Diagramme de séquence de conception "créer utilisateur"
  71. 71. 53 Figure 30: Diagramme de séquence de conception "modifier utilisateur" Figure 31: Diagramme de séquence de conception "supprimer utilisateur" Figure 32: Diagramme de séquence de conception "Valider journée"
  72. 72. 54 Figure 33: Diagramme de séquence de conception "consulter MID" Figure 34: Diagramme de séquence de conception "saisir nouveau client" Figure 35: Diagramme de séquence de conception "modifier client"
  73. 73. 55 Figure 36: Diagramme de séquence de conception "supprimer client" Figure 37: Diagramme de séquence de conception " insérer transaction" Figure 38: Diagramme de séquence de conception "modifier transaction"
  74. 74. 56 Figure 39: Diagramme de séquence de conception "supprimer transaction" Figure 40: Diagramme de séquence de conception " gérer états" 6.3. Diagramme de classe de conception pour chaque cas d’utilisation La modélisation des concepts (ou des domaines) permet d'identifier les objets importants dans une application. Ce processus nous permettra d'identifier les futurs problèmes et de mieux comprendre le fonctionnement de l'application. Ces concepts sont représentés dans le diagramme de classes. Le diagramme de classes est la clé de la conception orientée objet. Ce diagramme représente la structure du code à développer. Certaines applications UML permettent même d'exporter du code à partir de diagrammes de classes. Cela permet d'unifier le travail de plusieurs programmeurs au sein d'une même équipe, en plus de sauver du temps. Le diagramme de classes se base sur les concepts suivants :  Classe : description formelle d’un ensemble d’objets ayant une sémantique, des propriétés et un comportement communs.  Association : relation sémantique entre deux ou plusieurs classes.  Propriété (attribut) : élément permettant de décrire une classe ou une association.
  75. 75. 57  Méthode : opération réalisée par les objets d’une classe. Figure 41 : Diagramme de classe « consulter MID » Figure 42 : Diagramme de classe « gérer transactions »
  76. 76. 58 Figure 43 : Diagramme de classe « Saisir Client » Figure 44 : Diagramme de classe « valider journée »
  77. 77. 59 6.4. Diagramme de classe de conception global Figure 45 : Diagramme de classe de conception globale 6.5. Diagramme de paquetages
  78. 78. 60 Un paquetage permet de regrouper sous une même appellation un ensemble d'élément de modélisation UML tels que: - des classes, des composants, des nœuds, des collaborations, des cas d'utilisation,... - des diagrammes de classes, de collaboration, de séquence, de cas d'utilisation,... Figure 46: Diagramme de paquetages 6.6. Diagramme de déploiement Le diagramme de déploiement définit l’architecture matérielle de l’application. Il présente les périphériques utilisés et la répartition du système sur ces différents éléments.
  79. 79. 61 Il montre aussi les liens de communication entre ces diverses entités. Le diagramme de déploiement de notre application est représenté par le diagramme ci-après: Figure 47: Diagramme de déploiement
  80. 80. PARTIE III : REALISATION
  81. 81. 62 CHAPITRE 7: MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT Ce chapitre donne un aperçu des conditions de travail réelles du projet. Il sera divisé en 2 sections. Tout d'abord, nous allons décrire les logiciels et l'environnement matériel pour atteindre la phase de développement. Ensuite, nous allons présenter l'architecture sur laquelle nous avons développé notre application. 7.1. Installation et configuration des outils 7.1.1. Environnement matériel Pendant les processus de développement et de test, nous avons utilisé deux ordinateurs portables avec les spécifications suivantes : Fabricant Modèle Processeur Mémoire RAM Type de système 1 DELL Inspiron 3737 Intel® Core i5 6 Go Windows 7, 64bits 2 HP HP pavilion 15 Notebook pc Intel® Core i5 4 Go Windows 8.1, 64bits 7.1.2. Environnement logiciel 7.1.2.1. Environnement de développement intégré NetBeans est constitué d'un IDE open-source et une plateforme d'applications qui permettent aux développeurs de créer rapidement des applications web, entreprise, mobiles en utilisant la plateforme Java, ainsi que PHP, JavaScript et Ajax, Groovy et Grails, et C / C ++. L'IDE NetBeans est un environnement de développement intégré disponible pour Windows, Mac, Linux, et Solaris. La caractéristique la plus intéressante de l'utilisation de NetBeans pour notre application est qu'elle peut facilement créer des applications en utilisant les frameworks web avancées telles que JSF, Struts, Spring, Hibernate, et un ensemble complet d'outils pour Java EE 6, GlassFish 3, EJB, et les services Web développement. En outre, il supporte les CSS, JavaScript, XHTML, Ajax et autres bibliothèques de composants comme PrimeFaces, RichFaces ...
  82. 82. 63 Au cours de la phase de développement, nous avons utilisé NetBeans, il a aussi été utilisé pour mettre en œuvre et déployer les services sur le serveur Web GlassFish. Figure 48: L'IDE NetBeans 8.0.2 7.1.2.2. Installation de NetBeans Dans cette section, nous allons présenter successivement quelques captures d'écran des interfaces utilisateur montrant l’installation et la configuration de NetBeans. Pour installer netbeans, il faut d’abord installer jdk : Rendez-vous sur le site de Sun, rubrique downloads : http://www.oracle.com/technetwork/indexes/downloads/index.html Cliquez sur JavaSE.
  83. 83. 64 Figure 49: Site de Sun rubrique downloads Cliquez ensuite sur la première icône. Pourquoi pas sur la troisième ? Parce que si vous le faites, vous aurez NetBeans en anglais … Je sais que vous le parlez couramment, mais c’est plus pratique en français, non ? Figure 50: Page du téléchargement NetBeans JDK 8 Acceptez les termes de la licence, puis choisissez la version qui correspond à votre système d’exploitation.

×