Rapport de stage de fin d'etude l3 angelito & hasina
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
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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
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.
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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.
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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"
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 58
Figure 43 : Diagramme de classe « Saisir Client »
Figure 44 : Diagramme de classe « valider journée »
77. 59
6.4. Diagramme de classe de conception global
Figure 45 : Diagramme de classe de conception globale
6.5. Diagramme de paquetages
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. 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
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. 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. 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.