124
Numéro : …………...……./U UNIVER ECOLE NA M POU DE LICENCE Option : Présenté le 29 Avril 201 ANGELITO Ramy RASAMBOMANA Membres du Jury : Président : Monsieu Rapporteurs : Monsieu Examinateurs : Monsieu Maître d « CONC APPLICAT UF/ENI RSITE DE FIANARANTSOA ATIONALE D’INFORMATIQ MEMOIRE DE FIN D’ETUDES UR L’OBTENTION DU DIPLOME E PROFFESSIONNEL EN INFORMATIQ Génie logiciel et Base de Données Intitulé 15 par : y ANA Hasina Yvan ur RATIARSON Venot, Maître de C ur MAHATODY Thomas, Maître de ur RAKOTOHASIMBAHOAKA Cypr de Conférences CEPTION ET DEVELOPPE TION WEB DE GETION D’ DE DEVISE» A QUE QUE s Conférences Conférences rien Robert, EMENT D' ’ECHANGE

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

Embed Size (px)

Citation preview

Page 1: Rapport de stage de fin d'etude l3 angelito & hasina

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

« CONCEPTIONAPPLICATION

……./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 DEVELOPPEMENTAPPLICATION 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

Page 2: Rapport de stage de fin d'etude l3 angelito & hasina

2

Page 3: Rapport de stage de fin d'etude l3 angelito & hasina

ANGELITO Ramy

Célibataire, 2 2 ans

Bloc A porte 13 Cité Universitaire

Ravitoto - Ambolokandrina

101 – Antananarivo – Madagascar

+261 (0) 34 18 518 73

[email protected]

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 CHANGEAntananarivo

(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

Page 4: Rapport de stage de fin d'etude l3 angelito & hasina

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 :

Page 5: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 6: Rapport de stage de fin d'etude l3 angelito & hasina

RASAMBOMANANA

Hasina Yvan

Célibataire, 2 1 ans

Anataninarenina

601 – Toliara – Madagascar

+261 (0) 34 21 407 14

[email protected]

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 CHANGEAntananarivo

(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

Page 7: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 8: Rapport de stage de fin d'etude l3 angelito & hasina

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)

Page 9: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 10: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 11: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 12: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 13: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 14: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 15: Rapport de stage de fin d'etude l3 angelito & hasina

XIII

RESUME .................................................................................................................. XX

ABSTRACT .............................................................................................................. XX

Page 16: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 17: Rapport de stage de fin d'etude l3 angelito & hasina

PARTIE I : PRESENTATIONS

Page 18: Rapport de stage de fin d'etude l3 angelito & hasina

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 [email protected].

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.

Page 19: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 20: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 21: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 22: Rapport de stage de fin d'etude l3 angelito & hasina

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 :

Page 23: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 24: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 25: Rapport de stage de fin d'etude l3 angelito & hasina

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 : [email protected]

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.

Page 26: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 27: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 28: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 29: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 30: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 31: Rapport de stage de fin d'etude l3 angelito & hasina

PARTIE II : ANALYSE ET CONCEPTION

Page 32: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 33: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 34: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 35: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 36: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 37: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 38: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 39: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 40: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 41: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 42: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 43: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 44: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 45: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 46: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 47: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 48: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 49: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 50: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 51: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 52: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 53: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 54: Rapport de stage de fin d'etude l3 angelito & hasina

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 .

Page 55: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 56: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 57: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 58: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 59: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 60: Rapport de stage de fin d'etude l3 angelito & hasina

42

5.2.1.2. Diagramme de séquence "Saisir MID"

Figure 15: Diagramme de séquence "Saisir MID"

Page 61: Rapport de stage de fin d'etude l3 angelito & hasina

43

5.2.1.3. Diagramme de séquence "Créer compte utilisateur"

Figure 16: Diagramme de séquence "Créer utilisateur"

Page 62: Rapport de stage de fin d'etude l3 angelito & hasina

44

Figure 17: Diagramme de séquence "Modifier utilisateur"

Page 63: Rapport de stage de fin d'etude l3 angelito & hasina

45

Figure 18: Diagramme de séquence "Supprimer utilisateur"

Page 64: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 65: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 66: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 67: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 68: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 69: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 70: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 71: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 72: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 73: Rapport de stage de fin d'etude l3 angelito & hasina

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"

Page 74: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 75: Rapport de stage de fin d'etude l3 angelito & hasina

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 »

Page 76: Rapport de stage de fin d'etude l3 angelito & hasina

58

Figure 43 : Diagramme de classe « Saisir Client »

Figure 44 : Diagramme de classe « valider journée »

Page 77: Rapport de stage de fin d'etude l3 angelito & hasina

59

6.4. Diagramme de classe de conception global

Figure 45 : Diagramme de classe de conception globale

6.5. Diagramme de paquetages

Page 78: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 79: Rapport de stage de fin d'etude l3 angelito & hasina

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

Page 80: Rapport de stage de fin d'etude l3 angelito & hasina

PARTIE III : REALISATION

Page 81: Rapport de stage de fin d'etude l3 angelito & hasina

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 ...

Page 82: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 83: Rapport de stage de fin d'etude l3 angelito & hasina

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.

Page 84: Rapport de stage de fin d'etude l3 angelito & hasina

65

Pour savoir quoi choisir entre x64 et x86, démarrez l’explorateur, puis double cliquez sur votre disque

où sont installés les programmes. Vous avez un dossier ‘Program Files (xAA)’ avec AA=64 ou 86 selon votre config !

Figure 51: Étape du téléchargement NetBeans

Le téléchargement commence. Il faut compter environ 5 minutes. Vous pouvez passer à l’étape suivante.

Installation de NetBeans

Rendez vous sur le site de NetBeans et cliquez sur ‘Download NetBeans IDE’ dans le bandeau en haut à droite.

Ici, plusieurs choses à faire. Si vous ne souhaitez pas être embêté avec des mails publicitaires, décochez les deux cases sous l’adresse mail.

Sélectionnez la langue : Français.

A ce moment, plusieurs options s’offrent à vous. Pour les besoins du cours de Java en ING3, vous pouvez vous contenter de la version tout à gauche (bouton télécharger encadré en rouge sur la photo ci-contre). Si vous pensez utiliser NetBeans plus largement, prenez la version « intégrale » en cliquant sur le bouton télécharger à l’extrême droite.

Page 85: Rapport de stage de fin d'etude l3 angelito & hasina

66

Figure 52: Page officiel du téléchargement NetBeans

Le téléchargement commence. Là encore, comptez environ 5 minutes. Vous pouvez passer à l’étape suivante.

Page 86: Rapport de stage de fin d'etude l3 angelito & hasina

67

Installation de JDK

Figure 53: Installation JDK 8

Lancez l’exécutable téléchargé

précédemment.

La fenêtre suivante apparaît.

Cliquez sur Next.

L’installation se poursuit

Figure 54: Suite de l'installation JDK 8

Cliquez encore une fois sur Close pour

terminer.

Figure 55: Fin de l'installation JDK 8

Page 87: Rapport de stage de fin d'etude l3 angelito & hasina

68

Installation de NetBeans

Figure 56: Page d'accueil d'installation NetBeans

Lancez l’exécutable téléchargé

précédemment.

La fenêtre suivante apparaît. Bonne

nouvelle, c’est en français ;)

Cliquez sur Suivant.

Vous pouvez aussi cliquez sur

« Customize » pour spécifier les outils et

les serveurs à utiliser

Figure 57: Activation serveur Tomecat 8.0.15

Ici, cochez les outils et les serveurs que

vous avez besoins. Dans notre cas, on a

cochez tous les outils et les deux serveurs :

Tomcat et glasfish

Page 88: Rapport de stage de fin d'etude l3 angelito & hasina

69

Figure 58: Acceptation de licence étape 1

Cochez la case, puis cliquez sur Suivant.

Figure 59: Acceptation de licence étape 2

Cochez la case, puis cliquer sur Suivant.

Pour info, JUnit est une librairie qui

contient des classes. Elle sera téléchargée à

la première exécution de NetBeans.

Page 89: Rapport de stage de fin d'etude l3 angelito & hasina

70

Figure 60: Choix du répertoire de la cible de l'installation

Dans le champ du dessus, sélectionnez le

répertoire cible de votre choix.

Dans le champ du dessous, vous devez

entrer le même répertoire que celui que

vous avez choisi au moment de

l’installation de JDK ! Il faut être vigilants!

Si vous n’aviez pas modifié le répertoire

cible lors de l’installation précédente, vous

n’avez rien à modifier !

Cliquez ensuite sur Suivant.

Figure 61: Résumé de l’installation

Un résumé de l’installation apparaît.

Cliquez sur Install.

Page 90: Rapport de stage de fin d'etude l3 angelito & hasina

71

Figure 62: Finition de l'installation

L’installation dure environ 15 minutes.

Vous obtenez ensuite ce message vous

demandant si vous souhaitez aider les

développeurs de NetBeans à améliorer leur

produit en leur envoyant des informations

de manière anonyme. Si tel est le cas, ne

faites rien. Sinon, décochez la case.

Cliquez pour finir sur Finish.

7.1.2.3. Les serveurs

7.1.2.3.1. GlassFish Open Source Edition

GlassFish est le nom du serveur d'applications Open source Java EE5 et désormais projet Java EE6

lancé par Sun Microsystems pour le Java EE plate-forme et maintenant parrainée par Oracle

Corporation . La version prise en charge est appelée “Oracle GlassFish server”.

GlassFish est l'implémentation de référence de Java EE et elle prend en charge les Enterprise JavaBeans

, JPA , JavaServer Faces , JMS, RMI , JavaServer Pages , servlets, etc.

Cela permet aux développeurs de créer des applications d'entreprise qui sont portables et évolutives, et

qui intègrent des technologies existantes. Les composants optionnels peuvent également être installés

pour des services supplémentaires. GlassFish Server est aussi le plus rapide serveur d'applications open

source offrant des fonctionnalités avancées.

Page 91: Rapport de stage de fin d'etude l3 angelito & hasina

72

Figure 63: GlassFish Open Source Edition 4.1

7.1.2.3.2. Postgresql

PostgreSQL est un système de gestion de base de données relationnelle et objet(SGBDRO). C'est un outil libre disponible selon les termes d'une licence de type BSD.

Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme MySQL et Firebird), ou propriétaires(comme Oracle, Sybase, DB2et Microsoft SQL Server).

Page 92: Rapport de stage de fin d'etude l3 angelito & hasina

73

Figure 64 : Interface graphique de postgreSQL

7.2. Architecture de l’application

Client/ Serveur

Figure 65: Architecture Client/Serveur

Dans l’architecture à trois niveaux, les applications au niveau serveur sont délocalisées, c’est à-dire que chaque serveur est spécialisé dans une tâche (serveur web/ serveur de base de données par exemple). Il permet:

- une plus grande flexibilité/souplesse;

- une sécurité accrue car la sécurité peur être définie indépendamment pour chaque service, et à chaque niveau;

- de meilleures performances, étant donné le partage des tâches entre les différents serveurs.

Page 93: Rapport de stage de fin d'etude l3 angelito & hasina

74

Cette architecture (appelée 3 tiers) fait intervenir trois parties indépendantes les unes des autres:

1. la couche de données liée au serveur de base de données (SGBD) : stockage et accès aux données. Le système de stockage des données a pour but de conserver une quantité plus ou moins importante de données de façon structurée. Nous pouvons utiliser pour cette partie des systèmes très variés qui peuvent être des systèmes de fichiers, des mainframes, des systèmes de bases de données relationnelles, etc.

2. la logique applicative: il se compose généralement d’un script ou d’un programme qui constitue les traitements métier nécessaires sur l’information afin de le rendre exploitable par chaque utilisateur.

3. La couche présentation (ou affichage) associé au client qui de fait est dit «léger » dans la mesure où il n’assume aucune fonction de traitement à la différence du modèle 2-tiers. C’est la partie la plus immédiatement visible pour l’utilisateur. Elle a donc une importance primordiale pour rendre l’information lisible, compréhensible et accessible.

Page 94: Rapport de stage de fin d'etude l3 angelito & hasina

75

CHAPITRE 8: DEVELOPPEMENT DE L’APPLICATION

8.1. Création de la base de données

Dans cette partie, nous allons montrer comment créer une base de données avec postgreSQL. Pour être précis et claire, nous allons monter quelques captures d’écrans accompagnés de quelques commentaires.

Figure 66 : Page d’accueil de postgreSQL

Créer une base avec postgreSQL n’a rien de compliqué. Dans la page d’accueil, il suffit juste de cliquer sur « Create new database » et remplir au fur et à mesure les champs. Et on arrive ensuite à l’interface suivante.

Page 95: Rapport de stage de fin d'etude l3 angelito & hasina

76

Figure 67 : Interface de création de table

Pour créer une table, il faut faire une clique droite sur « Tables/Create New Table » dans le menu à gauche et remplir les champs au fur et à mesure.

Figure 68 : Remplir les valeurs d’une table

Page 96: Rapport de stage de fin d'etude l3 angelito & hasina

77

Pour remplir les valeurs d’une table, on choisit d’abord le nom de la table, clique droit sur « Fields » et choisir ensuite « Add New Field ». Et enfin remplir les champs au fur et à mesure.

Figure 69 : Remplir valeur d’une table (suite)

8.2. Codage de l’application

Dans cette partie, nous allons présenter successivement des extraits de code de notre application selon le platforme j2ee(mvc, servlet, jsp). Voici tout d’abord, en bref, la présentation de l’architecture mvc dans notre application :

Page 97: Rapport de stage de fin d'etude l3 angelito & hasina

78

Figure 70 : architecture mvc

Selon l’architecture mvc , nous devons d’abord créer le model, le contrôleur ou le Servlet et la vue. Ci-dessous des extraits de code permettant d’illustrer cela.

Page 98: Rapport de stage de fin d'etude l3 angelito & hasina

79

MODÈLE: Achat.java

Page 99: Rapport de stage de fin d'etude l3 angelito & hasina

80

Page 100: Rapport de stage de fin d'etude l3 angelito & hasina

81

Figure 71 : Code achats.java

Page 101: Rapport de stage de fin d'etude l3 angelito & hasina

82

VUE: achat.jsp

Page 102: Rapport de stage de fin d'etude l3 angelito & hasina

83

Page 103: Rapport de stage de fin d'etude l3 angelito & hasina

84

Figure 72: Code achat.jsp

Page 104: Rapport de stage de fin d'etude l3 angelito & hasina

85

Contrôleur: AchatControlleur.java

Page 105: Rapport de stage de fin d'etude l3 angelito & hasina

86

Figure 73: AchatController.java

Page 106: Rapport de stage de fin d'etude l3 angelito & hasina

87

8.3. Présentation de l’application

Dans cette section, nous allons présenter quelques captures d’écran des interfaces utilisateur et administrateurs

Pour accéder à notre application l’utilisateur ou l’administrateur doit s’authentifier. Comme toute application, la sécurité d’accès est nécessaire. La figure ci-après donne l’interface à travers laquelle l’utilisateur s’identifie. Il saisit son login et son password puis le serveur vérifie ces informations.

Figure 74 : Page d’authentification

En cas d’erreur, un message d’erreur sera affiché dans le cas où les informations écrites ne sont pas présentes dans notre base de données.

Une fois les données sont valides, l’utilisateur doit valider la date du jour ou il travaille, la date du jour avant et la date du après.

Page 107: Rapport de stage de fin d'etude l3 angelito & hasina

88

Figure 75 : Validation des dates

Une fois les données sont valides, l’utilisateur accède au menu et à la page d’accueil de l’application. Dans cette interface, l’utilisateur peut gérer toutes les fonctionnalités de l’application.

Figure 76 : Page d’accueil

Dans la barre de menu, le menu « Fichier » permet de soit saisir un nouveau client « Nouveau » ou soit de lister les clients « List ».

Page 108: Rapport de stage de fin d'etude l3 angelito & hasina

89

Figure 77 : Interface de saisie de nouveau client

Figure 78 : Interface liste des clients et des transactions pouvant être effectués

Dans la figure ci-dessus, l’utilisateur peut rechercher un client et par la suite choisir la transaction correspondante (Achat, Vente, Allocation).

Dans menu « Transaction » si l’utilisateur peut choisir la transaction à effectuer entre «Achat », « Vente » et « Allocation », ou effectuer des recherches le système enchaine à l’interface correspondante.

Page 109: Rapport de stage de fin d'etude l3 angelito & hasina

90

Figure 79 : Interface de transaction « Achat »

Figure 80 : Interface de transaction « Vente »

Page 110: Rapport de stage de fin d'etude l3 angelito & hasina

91

Figure 81 : Interface de transaction « allocation »

Figure 82 : Interface de recherche

Page 111: Rapport de stage de fin d'etude l3 angelito & hasina

92

Dans cette page, on peut recherche un client, rechercher une transaction « Achats », « Vente »,et

« Allocation ». Pour faire une recherche, il suffit de taper ou de saisir le numéro passeport ou CIN d’un client.

Figure 83 : Interface de recherche « Achat »

Figure 84 : Interface de recherche « Vente »

Page 112: Rapport de stage de fin d'etude l3 angelito & hasina

93

Figure 85 : Interface de recherche « Allocation »

Figure 86 : Interface de recherche « Client »

Dans menu « Ordre de dépense» si l’utilisateur peut choisir de saisir l’ordre de dépense ou de lister les ordres de dépenses « Liste ».

Page 113: Rapport de stage de fin d'etude l3 angelito & hasina

94

Figure 87 : Interface de saisie de l’ordre de dépense

Si l’utilisateur choisit « Administrateur » dans la barre de menu, on arrive dans la page spéciale administrateur. Pour accéder à cette page, il faut s’authentifier en tant qu’administrateur.

Dans cette page, on peut inscrire et lister des utilisateurs, insérer le mid et modifier les dates des journées.

Figure 88 : Interface page spéciale Administrateur

Page 114: Rapport de stage de fin d'etude l3 angelito & hasina

95

Figure 89 : Interface d’ajout de nouvel utilisateur

Figure 90 : Interface liste des utilisateurs

Page 115: Rapport de stage de fin d'etude l3 angelito & hasina

XIV

CONCLUSION GENERALE

Au terme de ce mémoire, nous pouvons conclure que ce stage de fin d’études nous a donné une occasion opportune nous permettant de confronter l’acquis théorique à l’environnement pratique.

En effet, le stage nous a permis de prendre certaines responsabilités, par la suite de consolider de plus en plus nos connaissances théoriques et pratiques. C’est là que réside la valeur d’un tel projet de fin d’études qui combine les exigences de la vie professionnelle aux côtés bénéfiques de l’enseignement pratique que nous avons eu à l’ENI.

Ce travail de conception et de développement d’une application de gestion d’échange de devise au long du stage nous a été bénéfique sur plusieurs plans : il nous a permis de perfectionner nos connaissances acquises en programmation et en conception.

Du point de vue technique, ce projet nous a permis de nous adapter avec l’environnement du développement informatique, de même il nous a permis de maîtriser la méthode développement et des nouvelles technologies de programmation.

Au début de notre stage, nous avons consacré du temps pour l’étude et recenser les fonctionnalités de notre application. L’étude analytique menée dans les détails nous a permis de prévoir puis contourner les problèmes rencontrés. Et tout au long du développement, nous avons concentré sur les nouvelles technologies utilisés et les techniques de programmation appliquées.

Tout au long de l’élaboration du projet, nous avons rencontré plusieurs difficultés tant au niveau conceptuel qu’au niveau de la réalisation. Tout de même, nous avons réussi à les surpasser pour présenter en fin de compte une application opérationnelle.

Comme perspective, nous espérons voir notre application évoluer par une étape d’approfondir le volet transactionnel avec des services distribués un serveur web et bases données et des services web afin de rendre notre application plus intéressante. Qui permet L’échange, des diverses données en utilisant des réseaux et des formats normalisés.

Nous espérons enfin que le travail que nous avons effectué a été à la hauteur de la confiance qui nous a été donnée.

Page 116: Rapport de stage de fin d'etude l3 angelito & hasina

XV

BIBLIOGRAPHIE

[1]. CPR Informatique, 2002. Programmer en java

[2]. Steve Berberat, juillet 2012. Visual Paradigm

[4] John C. Worsley & Joshua D. Drake PostgreSQL par la pratique 628 pages.

[5] Pascale Roques & Franck Vallée UML en action, 2éme édition 402 pages.

Page 117: Rapport de stage de fin d'etude l3 angelito & hasina

XVI

WEBOGRAPHIE

[1] http://www.balusc.blogspot.in/search/label/Servlet, consulté le 26 Janvier 2015

[2] http://www. https://balusc.blogspot.com/2009/02/fileservlet-supporting-resume-and.html, consulté le

26 Janvier 2015

[3] https://balusc.blogspot.in/search/label/JSP, consulté le 27 Janvier 2015

[4] https://anshuchoudhury.wordpress.com/category/j2ee/, consulté le 27 Janvier 2015

[5] http://www.youtube.com/crud-j2ee-mvc/, téléchargement vidéo le 24 Février 2015

[6] http://www.oracle.com/technetwork/indexes/downloads/index.html, téléchargement NetBeans et JDK 8 le 25 Février 2015

[7] http://www.jmdoudoux.fr/java/, consulté le 9 Mars 2015

[8] http://info- j2ee.blogspot.fr/2007/12/blog- post.html, consulté le 10 Mars 2015

[9] http://grigoras.perso.enseeiht.fr/ens/asi/j2ee/, consulté le 10 Mars 2015

[10] http://bet- nafet.ma/expert/, consulté le 12 Mars 2015

[11] https://anshuchoudhury.wordpress.com/category/some-program-and-example/create-a-pdf-file-in-java/, consulté le 19 Mars 2015

[12] https://anshuchoudhury.wordpress.com/category/some-program-and-example/insert-retrieve-image-with-database/, consulté le 9 Mars 2015

Page 118: Rapport de stage de fin d'etude l3 angelito & hasina

XVII

GLOSSAIRE

Base de données : C’est un ensemble de données structuré, enregistré sur un système de fichier. Ces

informations sont gérées à l’aide d’un Système de Gestion de Base de Données.

MID : Mouvement Interbancaire de Devise

Système de Gestion de Base de Données (SGBD) : Un SGBD est un ensemble de logiciels permettant la

manipulation des bases de données (consultation, modification, mise à jour, insertion, suppression,…).

MVC : Le Modèle-Vue-Contrôleur (en abrège MVC, de l'anglais Model-View- Controller) est une

architecture et une méthode de conception qui organise l'interface homme-machine (IHM) d'une application

logicielle.

Devise : Le terme devise est couramment employé pour désigner une monnaie étrangère, différente de celle

de son pays. Elle est le plus souvent émise sous le contrôle d’une banque centrale. Chaque pays possède sa

devise officielle qui sur son territoire a cours légal.

Transaction : En informatique, et particulièrement dans les bases de données, une transaction telle qu'une

réservation, un achat ou un paiement est mise en œuvre via une suite d'opérations qui font passer la base de

données d'un état A — antérieur à la transaction — à un état B postérieur

Taux de change : Le taux de change d'une devise (une monnaie) est le cours (autrement dit le prix) de cette

devise par rapport à une autre. On parle aussi de la « parité d'une monnaie ».

J2EE : Java 2 entreprise edition, c’est une plate-forme pour le developpement et l’exécution d’application

distribuées :

Developpement : à l’aide d’un ensemble de bibliothèques logicielles (API : Servlet 3.0, JSP

2.2, EJB 3.1, JDBC ….)

Exécution : déploiment dans un serveur d’application(Tomcat, JBoss WebSphere,

Webloglic,…)

Page 119: Rapport de stage de fin d'etude l3 angelito & hasina

XVIII

ANNEXES

J2EE est l’acronyme de Java 2 Entreprise Edition renommée Java EE, depuis sa version 5. Basée sur J2SE : les API de base de Java C’est une plate-forme pour le développement et l’exécution d’applications distribuées :

Développement : à l’aide d’un ensemble de bibliothèques logicielle (API : Servlet 3.0, JSP 2.2, EJB 3.1, JDBC,. . . ).

Exécution : déploiement dans un serveur d’application (Tomcat, Glassfish, JBoss WebSphere, Weblogic,. . . ).

Orientée client/serveur

Une page JSP est un fichier au format XHTML mélange deux types de code :

Partie statique : code HTML Partie dynamique : code Java exécuté par le serveur dont le résultat est injecté dans la page html

transmise au client

L’écriture d’une JSP est basée sur les balises suivantes :

tags HTML (<p>, <br>, <h1>. . . ) tags JSP : transformés en code Java par le Serveur (par exemple le tag “<c :forEach>” pour écrire

une boucle) scriptlets : code Java écrit dans un tag spécial “<%>”

Figure 91 : Architecture J2EE

Une Servlet est :

Code Java permettant la génération (dynamique) de pages HTML C’est une Classe Java héritant de la classe (bibliothèque J2EE)

Page 120: Rapport de stage de fin d'etude l3 angelito & hasina

XIX

Redéfinissant les méthodes (doGet, la réponse à envoyer au client).

Donc, en général pour développer une méthode doGet(...) et/ou doPost(...)

Figure 92 : Fonctionnement Servlet

Le Model-View-Controller (MVC) est un modèle de conception logicielle très répandu et fort utile. Créé dans les années 80 par Xerox PARC pour Smalltalk-80, il est aujourd’hui fortement recommandé dans l’univers J2EE. Néanmoins il faut retenir que c’est un modèle de conception, et il est donc indépendant du langage de programmation.

Le MVC est un modèle de conception qui repose sur la volonté de séparer les données, les traitements et la présentation. Ainsi l’application se retrouve segmentée en trois composants essentiels :

le modèle la vue le contrôleur

Chacun de ces trois composants a un rôle bien défini. Le modèle représente les données et les règles métiers. C’est dans ce composant que s’effectuent les

traitements liés au cœur du métier. Les données peuvent être liées à une base de données, des EJBs, des services Web, … Il est important de noter que les données sont indépendantes de la présentation. En d’autres termes, le modèle ne réalise aucune mise en forme. Ces données pourront être affichées par plusieurs vues. Du coup le code du modèle est factorisé : il est écrit une seule et unique fois puis réutilisé par chaque vue.

La vue correspond à l’IHM. Elle présente les données et interagit avec l’utilisateur. Dans le cadre des applications Web, il s’agit d’une interface HTML, mais n’importe quel composant graphique peut jouer ce rôle.

Le contrôleur, quant à lui, se charge d’intercepter les requêtes de l’utilisateur, d’appeler le modèle puis de rediriger vers la vue adéquate. Il ne doit faire aucun traitement. Il ne fait que de l’interception et de la redirection.

Figure 93 : Architecture MVC

Page 121: Rapport de stage de fin d'etude l3 angelito & hasina

TABLES DES MATIERES

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 1.1. Localisation et contact ..................................................................................................................................................... 2 1.2. Organigramme ................................................................................................................................................................. 2 1.3. Mission et Historique ....................................................................................................................................................... 2 1.4. Domaines de spécialisation .............................................................................................................................................. 4 1.5. Architecture de la pédagogie ........................................................................................................................................... 4 1.6. Filières de formation existantes et diplômes délivrés ...................................................................................................... 5 1.7. Relation partenariales de l’ENI avec les entreprises et les organismes ............................................................................ 6 1.7.1. Au niveau international .................................................................................................................................................... 6 1.7.2. Au niveau National .......................................................................................................................................................... 6 1.8. Ressources humaines ....................................................................................................................................................... 7 1.9. Projet et perspective de développement institutionnel (2010-2015) ................................................................................ 8

CHAPITRE 2 : PRESENTATION DE LA SOCIETE MADACHANGE ................................................................................... 9 2.1. Identification de la société ............................................................................................................................................... 9 2.2. Historique de la société MADACHANGE ...................................................................................................................... 9 2.3. Perspective et activités principales ................................................................................................................................ 10 2.4. Structure organisationnelle de MADA CHANGE ......................................................................................................... 10

CHAPITRE 3: DESCRIPTION DU PROJET ............................................................................................................................. 13 3.1 Formulation ........................................................................................................................................................................ 13 3.2 Objectif et besoins de l’utilisateur .................................................................................................................................... 13 3.3 Moyens nécessaires à la réalisation du projet ..................................................................................................................... 13 3.4 Résultats attendus ............................................................................................................................................................... 13

PARTIE II : ANALYSE ET CONCEPTION ......................................................................................

CHAPITRE 4: ANALYSE PREALABLE .................................................................................................................................... 15 4.1. Analyse de l’existant ...................................................................................................................................................... 15 4.1.1. Organisation actuelle (modes de traitements actuels, applications et personnels impliqués) ....................................... 15 4.1.1.1. Partage des données .................................................................................................................................................. 15 4.1.1.2. Les applications existantes ........................................................................................................................................ 15 4.1.1.3. Ressources ................................................................................................................................................................. 15

Page 122: Rapport de stage de fin d'etude l3 angelito & hasina

4.1.2. Inventaire des moyens matériels et logiciels .................................................................................................................. 16 4.1.2.1. Les postes de travails ................................................................................................................................................ 16 4.1.2.2. Equipement d’interconnexion ................................................................................................................................... 17 4.2. Critique de l’existant ...................................................................................................................................................... 18 4.2.1. Points forts ..................................................................................................................................................................... 18 4.2.2. Points faibles .................................................................................................................................................................. 18 4.2.2.1. Insuffisance de matériels informatiques .................................................................................................................... 18 4.2.2.2. Problèmes techniques des réseaux ............................................................................................................................ 18 4.2.2.3. Le manque d’espace de travail .................................................................................................................................. 19 4.2.2.4. Problèmes de logiciels de gestion ............................................................................................................................. 19 4.3. Conception avant projet ................................................................................................................................................. 19 4.3.1. Objectif et solution ......................................................................................................................................................... 19 4.3.2. Scénario de solution ....................................................................................................................................................... 19 4.3.2.1. Première solution ...................................................................................................................................................... 20 4.3.2.2. Deuxième solution .................................................................................................................................................... 20 4.3.3. Critères de choix ............................................................................................................................................................ 20 4.3.3.1. Choix du SGBD ........................................................................................................................................................ 20 4.3.3.2. Choix des outils à utiliser .......................................................................................................................................... 21

CHAPITRE 5: ANALYSE CONCEPTUELLE ........................................................................................................................... 26 5.1. Spécification des besoins ............................................................................................................................................... 26 5.1.1. Présentation d’UML et de la méthode utilisée ............................................................................................................... 26 5.1.2. Description du domaine ................................................................................................................................................. 27 5.1.3. Dictionnaire des données ............................................................................................................................................... 27 A : Alphabétique .......................................................................................................................................................................... 28 5.1.4. Règles de gestion ........................................................................................................................................................... 29 5.1.5. Diagramme des cas d'utilisation..................................................................................................................................... 29 5.1.5.1. Identification de l'acteur ............................................................................................................................................ 29 5.1.5.2. Cas d'utilisation globale du système.......................................................................................................................... 30 5.1.6. Priorisation des cas d'utilisation ..................................................................................................................................... 30 5.1.7. Spécification des besoins techniques ............................................................................................................................. 40 5.2. Modélisation du domaine ............................................................................................................................................... 41 5.2.1. Diagramme de séquence système pour chaque cas d'utilisation .................................................................................... 41 5.2.1.1. Diagramme de séquence "S'authentifier" .................................................................................................................. 41 5.2.1.2. Diagramme de séquence "Saisir MID" ..................................................................................................................... 42 5.2.1.3. Diagramme de séquence "Créer compte utilisateur" ................................................................................................. 43 5.2.1.4. Diagramme de séquence "Valider journée" .............................................................................................................. 46 5.2.1.5. Diagramme de séquence "Consulter MID" ............................................................................................................... 46 5.2.1.6. Diagramme de séquence "Saisir nouveau client non enregistrer" ............................................................................. 47 5.2.1.7. Diagramme de séquence "Gérer transaction" ............................................................................................................ 48 5.2.1.8. Diagramme de séquence "Saisir ordre de dépense" .................................................................................................. 48 5.2.1.9. Diagramme de séquence "Gérer états" ...................................................................................................................... 49 5.2.2. Modèle du domaine ....................................................................................................................................................... 49

CHAPITRE 6: CONCEPTION DETAILLEE (UML) ................................................................................................................ 51 6.1. Architecture du système ................................................................................................................................................. 51 6.2. Diagramme de séquence de conception pour chaque cas d’utilisation .......................................................................... 52 6.3. Diagramme de classe de conception pour chaque cas d’utilisation ............................................................................... 56 6.4. Diagramme de classe de conception global ................................................................................................................... 59 6.5. Diagramme de paquetages ............................................................................................................................................. 59 6.6. Diagramme de déploiement ........................................................................................................................................... 60

PARTIE III : REALISATION ..............................................................................................................

CHAPITRE 7: MISE EN PLACE DE L’ENVIRONNEMENT DE DEVELOPPEMENT ...................................................... 62 7.1. Installation et configuration des outils ........................................................................................................................... 62 7.1.1. Environnement matériel ................................................................................................................................................. 62 7.1.2. Environnement logiciel .................................................................................................................................................. 62

Page 123: Rapport de stage de fin d'etude l3 angelito & hasina

7.1.2.1. Environnement de développement intégré ................................................................................................................ 62 7.1.2.2. Installation de NetBeans ........................................................................................................................................... 63 7.1.2.3. Les serveurs .............................................................................................................................................................. 71 7.1.2.3.1. GlassFish Open Source Edition ............................................................................................................................ 71 7.1.2.3.2. Postgresql ............................................................................................................................................................. 72 7.2. Architecture de l’application .......................................................................................................................................... 73

CHAPITRE 8: DEVELOPPEMENT DE L’APPLICATION ..................................................................................................... 75

CONCLUSION GENERALE ........................................................................................................ XIV

BIBLIOGRAPHIE ......................................................................................................................... XV

WEBOGRAPHIE ......................................................................................................................... XVI

GLOSSAIRE ............................................................................................................................... XVII

ANNEXES .................................................................................................................................. XVIII

RESUME....................................................................................................................................... XX

ABSTRACT .................................................................................................................................. XX

Page 124: Rapport de stage de fin d'etude l3 angelito & hasina

XX

RESUME

Au terme de ce stage, nous avons pu réaliser une application web pour la société MADACHANGE permettant de gérer les échanges de devises. L’application est maintenant disponible sur l’adresse IP 192.168.55.222 en réseau local. Ce projet s’étalait sur trois phases. La première phase était la spécification des besoins, la deuxième phase consistait à faire une étude fonctionnelle et une conception du projet projetée ensuite en UML. Une fois les besoins sont définis et analysés, nous avons entamé la phase de réalisation qui a pour rôle de réaliser ce qui a été analysé et conçu. Cette réalisation a exigé une maîtrise des langages java, jsp, HTML et CSS ainsi qu’une bonne connaissance de l’usage des requêtes SQL. Au cours de la période de notre stage, nous avons eu l'opportunité de confronter les réalités de la vie professionnelle, de vivre de près les difficultés quotidiennes que rencontrent les employés dans les différents services et de nous impliquer dans la réalisation de plusieurs tâches informatiques. Ce projet était une occasion pour mettre en application différentes connaissances acquises durant notre formation au sein de l’ENI, approfondir certains et apprendre d’autres. De surcroît ce projet nous a permis de raffiner nos capacités d’abstraction et de conception. Par ailleurs, nous avons tiré grand profit, aussi bien au niveau méthodologique qu’au niveau technologique. En effet nous avons amélioré nos capacité à s’auto former et à gérer les erreurs produites lors d’une application.

Mot clés : Applications, interfaces, PostgreSQL, modélisation

ABSTRACT

At the end of our training, we have realize a web application for the MADACHANGE Society helping to manage the currencies changes. This application is now available on the IP adress 192.168.55.222 in the local net. The project has been done in 3 steps. The first one aims to specify all the needs, the second to study and concept the project, then the UML at the end. Having defined and analysed the needs, we started the realization phasis to realize what is concepted and analysed. It requires a perfect control of the java , jsp, html and CSS language and some knowledges of the SQL request uses. During our training, we had the great opportunity to confront the real professional life, to face all the every day life difficulties in which every employee have to face. We also took part in the realization of different informatics task in the society. It is the occasion to practice different knowledges that we learned in ENI, to learn another ones. It also raffined our ability in obstraction and conception. It occurs us a high level of methodology and technology because we now can perform our capacity of autoformation and to manage different errors occurred in application.

Key words: Applications, interfaces, PostgreSQL , modeling