rapport mna v15

84
1 [ISET SILIANA] Projet De Fin d’Etude Introduction Générale Depuis son apparition au début des années 90, la technologie Web a beaucoup gagné en popularité, en laissant un impact sans précédent sur la société et l’économie. Au fil des années, cette infrastructure est passée d’un simple réseau de communication et d’échange de données, à une gigantesque toile, considérée comme la plus grande source de partage de données et l’un des plus importants moyens de marketing. Parmi les entreprises, la société « vending machine plus » cherche à améliorer ses services et à trouver les meilleurs moyens afin de se faire connaître et de garantir une utilisation optimale de ses ressources. C’est dans ce sens que s’intègre notre projet portant sur la réalisation d’une nouvelle application web de gestion commerciale et de stock. Cette application a pour objectifs l’automatisation du travail et la sécurité du flux des données. Le présent rapport donne une idée claire sur les différentes étapes par lesquelles nous sommes passés pour mener à terme notre travail. Il est constitué de quatre chapitres ; Le premier chapitre présente le cadre du projet, analyse l’existant afin de proposer une solution adéquate. Par la

Upload: mna-guizani

Post on 18-Dec-2015

60 views

Category:

Documents


1 download

DESCRIPTION

pfe

TRANSCRIPT

ISET SILIANA

[ISET SILIANA]Projet De Fin dEtude

Introduction Gnrale

Depuis son apparition au dbut des annes 90, la technologie Web a beaucoup gagn en popularit, en laissant un impact sans prcdent sur la socit et lconomie. Au fil des annes, cette infrastructure est passe dun simple rseau de communication et dchange de donnes, une gigantesque toile, considre comme la plus grande source de partage de donnes et lun des plus importants moyens de marketing.Parmi les entreprises, la socit vending machine plus cherche amliorer ses services et trouver les meilleurs moyens afin de se faire connatre et de garantir une utilisation optimale de ses ressources. Cest dans ce sens que sintgre notre projet portant sur la ralisation dune nouvelle application web de gestion commerciale et de stock. Cette application a pour objectifs lautomatisation du travail et la scurit du flux des donnes.Le prsent rapport donne une ide claire sur les diffrentes tapes par lesquelles nous sommes passs pour mener terme notre travail. Il est constitu de quatre chapitres; Le premier chapitre prsente le cadre du projet, analyse lexistant afin de proposer une solution adquate. Par la suite, nous dcrivons dans le deuxime chapitre la spcification des besoins fonctionnels et non fonctionnels ainsi que les diffrentes tapes de la conception. Dans le dernier chapitre, nous passons au dveloppement de lapplication en dtaillant lenvironnement de dveloppement et en prsentant les interfaces ralises.

Chapitre I: Etude De Lexistant

Introduction Dans ce premier chapitre, nous commenons par la prsentation de la socit, lieu de ce stage. Ensuite, nous nous intressons ltude de lexistant et dceler ses inconvnients afin de proposer une solution possible en introduisant les objectifs de ce projet fin dtude.

1. Prsentation De La Socit Daccueil

Notre stage de projet fin dtudes a t effectu au sein de la socit Vending machine Plus.

1.1. Fiche didentification Nom de lentrepriseSocit Vending Machines Plus (S.V.M+)

Adresse03 Rue Erriadh Rades

Tlphone+216 25900 165

Mission du projetServices

Type dentrepriseS.A.R.L

Nom des promoteursMarwen EL BARI

1.2. Description de SVM+SVM+ est une socit de services qui offre un ensemble de services valeur ajoute aux socits et leurs personnels et leurs clients.Elle vend des boissons chaudes (caf) et boissons froides (bouteilles deau et canettes de boissons gazeuses ainsi que des snacks tels que paquets de chips, barrettes de chocolat, confiseries) travers des distributeurs automatiques de haute technologie.

Cest un service rcent en Tunisie, ce nest quau cours de ces 10 dernires annes que les distributeurs automatiques sont entrs dans le march tunisien. Lobjectif tant: Minimisation des sorties des employs pendant lhoraire de travail puisquils vont boire leur caf ou boisson sur place Minimisation des temps de repos Rapidit de service (1 minute maximum pour avoir un caf)1.3. Services et produitsSVM+ vise les socits qui comptent plus de 300 employs ainsi que les siges des banques, sige CNAM, CNSS, les cliniques prives, les centres dappel... etc.Les produits de SVM+ se dcomposent en 4 sous-produits:1. Les ventes de cafs pour le personnel et les visiteurs des socits cibles1. Les ventes de boissons gazeuses1. Les ventes des bouteilles deau1. les ventes des snacks (chips, chocolat, confiseries)

SAECO est le fournisseur privilgi car il fait partie des grands fabricants des vending machines au monde, en plus ce fabricant italien est reconnu pour la haute qualit du caf.

1.4. Organigramme de SVM+

Figure 1: Organigramme de SVM+2. Analyse de lexistant

Pour acheter un distributeur automatique (deau, de boissons ou autres), le client doit se dplacer directement jusquau local de la socit afin de chercher une offre de vente qui satisfait ses besoins et passer sa commande. Lorsquun nouveau client passe une commande, lopration enregistrement des clients se fait manuellement sur papier et cest pareil pour les commandes ainsi que les factures. En plus, lors de la livraison, le rglement des factures se fait sur place en espce ou par chque et la comptabilit est ralise manuellement en se basant sur les factures sur papier.Par ailleurs, pour faire de la publicit, la socit utilise uniquement des catalogues, des brochures ou des affiches3. Critique de lexistant

Actuellement, le fonctionnement du travail au sein de la socit de vente de distributeurs automatiques prsente plusieurs inconvnients, savoir : La limite des moyens de marketing ce qui rduit le chiffre daffaire. Le travail traditionnel sur papier uniquement conduit l'abondance des documents dans l'entreprise ce qui ralentit lexcution du travail. Risque de perte dun papier sans oublier que la recherche dun document est fastidieuse. Les informations sur les clients ne sont pas bien protges. Perte de temps considrable lors du calcul de la comptabilit La perte dune facture entrane une erreur lors de la comptabilit.4. Solution proposes

Pour palier aux inconvnients dj cits dans le paragraphe prcdent et vu l'accroissement de la technologie Internet, nous proposons de crer une application Web dynamique qui sert la fois commander des articles en ligne et grer le travail interne de la socit en local ou distance. La commercialisation des distributeurs automatiques sera possible travers des catalogues en ligne proposant ces matriels aux meilleurs prix. Lapplication offrira un internaute la possibilit de: Consulter le catalogue de produits, ou chercher un produit Sinscrire pour devenir client, Lancer une commande en ligne et obtenir une confirmation Obtenir des devis/factures en ligne

Le site Web permettra de cibler une nouvelle catgorie de clientles, et doffrir une meilleure qualit de service en communication et en commerce.

Par ailleurs, lapplication aura une interface spare pour ladministration. Laccs sera protg par login et mot de passe. Ladministrateur du site pourra effectuer les tches suivantes une fois authentifi : Grer les produits : ajouter de nouveaux articles au catalogues, mettre jour un produit, supprimer un article qui nest plus en vente Grer les comptes : ajouter ou supprimer un compte client ou autre, modifier les donnes dun compte Grer les commandes: suivrelavancement des commandes en ligne, confirmer, annuler ou modifier une commande. Grer la facturation: ajouter, modifier, consulter ou imprimer une facture Grer la comptabilit: ajouter, modifier, supprimer des frais puis calculer ou imprimer la comptabilit mensuelle ou annuelle

Conclusion

A travers la prsentation de la socit et ltude de lexistant, nous avons pu dceler les inconvnients du travail actuel au sein de la socit afin de proposer une solution adquate. Ainsi, une fois les objectifs du projet dtermins, nous allons passer ltape spcification des besoins et conception.

Chapitre II: Spcification et Conception

Introduction Dans ce chapitre, nous abordons la spcification des besoins fonctionnels et non fonctionnels ainsi que la conception de l'application.

1. Spcification des besoinsCette phase consiste comprendre le contexte du systme. Il s'agit de dterminer les fonctionnalits et les acteurs les plus pertinents, de prciser les risques les plus critiques et d'identifier les cas d'utilisation initiaux.1.1. Besoins fonctionnels Les besoins fonctionnels expriment les fonctions de services et les fonctions techniques rendus par un produit en spcifiant les contraintes auxquelles il est soumis.Notre application sera utilise par trois catgories dacteurs. Chacun selon son besoin, aura un ensemble de fonctionnalits sa disposition

Le visiteur peut: consulter catalogue et liste produit sinscrire

Le clientpeut : sauthentifier consulter catalogue et liste produit grer donnes personnelles (modifier, consulter) grer commande (consulter, passer, annuler, confirmer, modifier) grer les factures (consulter, imprimer)

Ladministrateur peut: sauthentifier grer les clients (consulter, ajouter, supprimer, modifier) grer le stock (consulter, ajouter, supprimer, modifier) grer les commandes (confirmer, annuler, consulter, modifier, ajouter) grer les livraisons (ajouter, modifier, consulter, supprimer, confirmer) grer les factures (ajouter, modifier, supprimer, consulter, imprimer) grer les frais (ajouter, modifier, supprimer, consulter) grer la comptabilit (calculer, imprimer)

1.2. Besoins non fonctionnels Un besoin non fonctionnel est une restriction ou une contrainte qui pse sur un service du systme. Lapplication doit avant tout rpondre toutes les exigences des usagers d'une manire optimale.Notre systme doit rpondre aux critres suivants : Lergonomie : La future application doit tre facile utiliser. En effet, les futurs utilisateurs ne possdent pas forcment des connaissances approfondis en informatique, cest pourquoi, les interfaces utilisateurs doivent tre simples et conviviales c'est--dire ergonomiques et adaptes tout utilisateur. La performance : lapplication doit tre avant tout performante et que la dure d'excution des traitements s'approche le plus possible du temps rel. La scurit, consistant choisir des solutions adquates pour protger l'utilisateur. la gestion des erreurs : Lapplication doit tenir compte des possibles traitements errons et les messages derreurs doivent tre clairs et explicites

2. Conception

La conception est une tape fondamentale et dlicate dans le cycle de vie dun logiciel, elle a pour objectif de garantir un dveloppement performant et dassurer une maintenance efficace du systme. Cest pourquoi, le choix de la mthode de conception est dterminant.

2.1. Choix de langage de conception Au-del dune mthode, UML est un langage graphique permettant de reprsenter, de communiquer les divers aspects d'un systme dinformation. Nous avons opt pour ce langage de modlisation surtout car il comporte des diagrammes standards dcrivant autant les diffrentes "vues" d'un systme d'information. Ces diagrammes montrent les divers aspects de lapplication de point de vue de sa structure statique et de son comportement dynamique.

2.2. Diagramme de cas dutilisation Un cas d'utilisation permet de dcrire l'interaction entre les acteurs et le systme. C'est un moyen efficace pour recueillir les besoins des acteurs du systme.

2.2.1. Acteurs du systme Avant de prsenter les diagrammes de cas dutilisation, il faut dabord dfinir les acteurs du systme. Un acteur est un utilisateur qui interagit avec le systme tudi en changeant de linformation. Dans notre cas, nous avons trois catgories dacteurs.

ActeurRle

Visiteur Consulter le catalogue Sinscrire

Client Passer une commande Consulter une facture

Administrateur Grer les clients Grer les comptes des utilisateurs Grer les commandes Grer le stock Grer les livraisons Grer les factures Grer les frais Grer la comptabilit

Tableau 1: Acteur du systme

2.2.2. Diagramme de cas dutilisation globale

Nous commenons par prsenter le diagramme de cas dutilisation gnral du systme:

Figure 2: Diagramme de cas d'utilisation Globale

2.2.3. Raffinement de diagramme de cas dutilisation Description de Cas dutilisation consulter catalogue

CU: consulter catalogue

Acteur initiateur: visiteur, client et administrateur

But du cas: un utilisateur consulte le catalogue et la liste des produits

Pr-condition: lutilisateur doit tre en ligne et les produits enregistrs dans la base

Description du Scnario: 1. un utilisateur choisit de consulter le catalogue des produits1. le systme affiche la liste des produits.1. un utilisateur veut voir les dtails d'un produit 1. le systme affiche les dtails d'un produit

Tableau 2: Description de cas dutilisation Consulter catalogue

Description de cas dutilisation sinscrireCU: Sinscrire

Acteur initiateur: visiteur

But du cas: sinscrire au site pour devenir un client et pouvoir passer des commandes

Pr-condition: un visiteur est en ligne

Description du Scnario: 1. le visiteur dsire s'inscrire et remplit un formulaire1. le systme enregistre les donnes du client et affiche un message de succs

Tableau 3: Description de cas d'itilisation sincrire

Description de cas dutilisation grer comptabilit

CU: Grer comptabilit

Acteur initiateur: administrateur

But du cas: ladministrateur calcule la comptabilit pour une priode donne

Pr-condition: lutilisateur doit tre authentifi, les frais et les factures dj enregistrs

Description du Scnario: 1. ladministrateur choisit de consulter la comptabilit 1. le systme affiche un formulaire 1. ladministrateur saisit la priode (mois/anne) et valide 1. le systme calcule et affiche la comptabilit

Tableau 4: description de cas d'utilisation grer comptabilit Description de cas dutilisation grer commande

Figure 3: diagramme de cas d'utilisation raffingrer commande

CU: Passer commande

Acteur initiateur: client, administrateur

But du cas: commander des produits

Pr-condition: lutilisateur doit tre authentifi

Description du Scnario: 1. Lutilisateur choisit de consulter le catalogue des produits1. Le systme affiche la liste des produits disponible en stock 1. Lutilisateur choisit les produits quil veut ajouter sa commande et valide1. Le systme enregistre la commande

Tableau 5: Description de cas d'utilisation Passer commande

CU: Consulter commande

Acteur initiateur: client, administrateur

But du cas: voir les dtails dune commande enregistre

Pr-condition: lutilisateur doit tre authentifi et la commande enregistre

Description du Scnario: 1. Un utilisateur choisit de consulter une commande dj passe 1. Le systme affiche la liste des commandes enregistres 1. lutilisateur choisit une commande consulter1. Le systme affiche les dtails du bon de commande

Tableau 6: Description de cas d'utilisation consulter commande

CU: Confirmer commande

Acteur initiateur: administrateur

But du cas: ladministrateur confirme la commande pour tre livrer

Pr-condition: lutilisateur doit tre authentifi, la commande doit tre dj passe et les produits commands disponibles

Description du Scnario: 1. ladministrateur choisit de consulter le bon dune commande enregistre 1. le systme affiche la commande 1. ladministrateur vrifie les dtails de la commande et la confirme 1. le systme enregistre la confirmation et affiche un bon de livraison

Tableau 7: Description de cas d'utilisation confirmer commande

CU: Modifier commande

Acteur initiateur: client, administrateur

But du cas: un utilisateur peut changer les dtails de la commande avant la confirmation

Pr-condition: lutilisateur doit tre authentifi et la commande enregistre

Description du Scnario: 0. Lutilisateur demande modifier les dtails dune commande 2. Le systme affiche le formulaire de modification3. Lutilisateur change les donnes de la commande et valide4. Le systme enregistre les modifications

Tableau 8: Description de cas d'utilisation Modifier commande

CU: Annuler commande

Acteur initiateur: client, administrateur

But du cas: supprimer une commande avant quelle ne soit confirme

Pr-condition: lutilisateur doit tre authentifi et la commande est non confirme

Description du Scnario: 1. le systme affiche la liste des commandes.1. lutilisateur choisit dannuler une commande 1. le systme demande une confirmation avant de supprimer la commande1. lutilisateur confirme lannulation1. le systme effectue lannulation

Tableau 9: Description de cas d'utilisation Annuler commande

Description de cas dutilisation grer facture

Figure 4: diagramme de cas d'utilisation grer facture

CU: Consulter facture

Acteur initiateur: client, administrateur

But du cas: voir les dtails dune facture

Pr-condition: lutilisateur doit tre authentifi et la facture enregistre

Description du Scnario: 1. Lutilisateur demande de consulter liste des factures 1. le systme affiche la liste des factures1. lutilisateur choisit de consulter une facture 1. le systme affiche les dtails de la facture

Tableau 10: Description du cas dutilisation Consulter facture

CU: imprimer facture

Acteur initiateur: client, administrateur

But du cas: voir les dtails dune facture sur papier

Pr-condition: lutilisateur doit tre authentifi et la facture enregistre

Description du Scnario: 1. le systme affiche la liste des factures1. lutilisateur choisit de consulter une facture 1. le systme affiche les dtails de la facture1. lutilisateur demande imprimer la facture 1. le systme imprimer la facture

Tableau 11: Description du cas dutilisation Imprimer facture

CU: Ajouter facture

Acteur initiateur: administrateur

But du cas: crer une nouvelle facture pour une commande livre

Pr-condition: ladministrateur doit tre authentifi et la commande enregistre et livre

Description du Scnario: 1. ladministrateur demande ajouter une facture 2. Le systme affiche le formulaire dajout3. ladministrateur remplit le formulaire et choisit la commande puis valide4. Le systme enregistre la facture

Tableau 12: Description du cas dutilisation Ajouter facture

CU: Modifier facture

Acteur initiateur: administrateur

But du cas: changer les dtails dune facture (en cas de paiement par exemple)

Pr-condition: ladministrateur doit tre authentifi et la facture enregistre

Description du Scnario: 1. ladministrateur demande modifier les dtails dune facture 2. Le systme affiche le formulaire de modification3. ladministrateur change les donnes de la facture et valide4. Le systme enregistre les modifications

Tableau 13: Description du cas dutilisation Modifier facture Remarque: Dans un souci de concision et puisquil existe plusieurs autres cas dutilisation pour grer les frais, les clients, les produits, les livraisons et les comptes utilisateurs qui seront conus similairement grer facture et grer commande, nous allons nous limiter prsenter les cas dutilisation raffins pour ces fonctionnalits. La description de chaque cas dutilisation tant identique pour chaque opration sur une fonctionnalit, nous avons prfr ne pas le rpter.

Cas dutilisation raffin Grer comptes utilisateurs

Figure 5: Diagramme de cas d'utilisation raffin Grer comptes utilisateurs

Cas dutilisation raffin Grer produits

Figure 6: Diagramme de cas d'utilisation raffin Grer produits

Cas dutilisation raffin Grer clients

Figure 7: Diagramme de cas dutilisation raffin Grer clients

Cas dutilisation raffin Grer frais

Figure 8: Diagramme de cas dutilisation raffin Grer frais

Cas dutilisation raffin Grer comptabilit

Figure 9: Diagramme de Cas dutilisation raffin Grer comptabilit

Cas dutilisation raffin Grer livraison

Figure 10: Diagramme de cas d'utilisation raffin Grer livraison

2.3. Diagramme de squence

Le diagramme de squences permet de montrer les interactions entre un acteur et les objets du systme dans le cadre d'un scnario d'undiagramme de cas dutilisation. La communication se fait par le biais de messages. Dans un souci de simplification, nous reprsentons uniquement linterface du systme et la base de donnes.

2.3.1. Digramme de squence dinscription

Figure 11: Digramme de squence dinscription2.3.2. Diagramme de squence dauthentification

Figure 12: Diagramme de squence dauthentification

2.3.3. Diagramme de squence de passer commande

Figure 13: Diagramme de squence de passer commande

2.3.4. Diagramme de squence de modifier facture

Figure 14 : Diagramme de squence de modifier facture

2.3.5. Diagramme de squence de supprime produit

Figure 15: Diagramme de squence de supprime produit2.4. Diagramme de classe

Un diagramme de classes fournit une vue globale d'un systme en prsentant ses classes, interfaces et collaborations, et les relations entre elles. Les diagrammes de classes sont statiques: ils affichent le modle des diffrents objets qui interagissent dans le systme mais pas ce qui se passe pendant l'interaction.

Figure 16: Diagramme de classe

Conclusion

Dans ce chapitre nous avons prsent ltude conceptuelle en se basant sur les diffrents diagrammes tels que diagramme de classe qui nous a permis davoir une ide sur la base de donnes aussi bien que les diagrammes de squence qui illustrent les interfaces de lapplication. Ainsi, nous pouvons passer la ralisation de lapplication.

Chapitre III: Ralisation et Tests

Introduction

. La ralisation est ltape fondamentale dans le cycle de vie de toute application informatique. A travers ce chapitre, nous allons prciser lenvironnement matriel et logiciel utilis pendant cette phaseensuite nous prsenterons les tables de la base de donnes et les interfaces de tests.

Environnement de dveloppement 1.1. Environnement matriel

Pour le dveloppement de notre application, nous avons dispos dun ordinateur ayant les caractristiques suivantes: Processeur: Intel Core (TM) i3-2330 M Frquence: 2.20 (en Hertz) Mmoire RAM: 4.00GO Architecture systme: 64 bits

1.2. Environnement logiciel Au cours du dveloppement, nous avons eu recours quelques outils qui sont dcrits dans le tableau ci-dessous:

OutilDescription

StarUMLEnvironnement de conception UML

NetBeans IDE 8Environnement de cration des pages web

WampServer 2.2Plate-forme de dveloppement et dexploitation Web

Tableau 14: Outils logiciels utilissDescription des choix techniques

Le choix technologique des outils utiliser dans le dveloppement de lapplication s'est fait sur la base d'une tude afin de dgager les outils les mieux appropris notre projet. Ces outils ont t choisis en tenant compte des besoins exprims par les responsables de la socit et aussi par la contrainte du temps pour en dgager une solution utile et efficace.

Star UML: StarUML est une plate-forme de modlisation du logiciel qui prend en charge UML (Unified Modeling Language).Il est bas sur UML version 1.4 et la version UML 2.0 fournit des notations et onze types de diagramme diffrents.Il soutient activement l'approche MDA (Model Driven Architecture) en respectant le concept de profil UML.StarUML est excellent en personnalisation de l'environnement de l'utilisateur et a une grande extensibilit dans ses fonctionnalits. J2EE (Java Enterprise Edition): Java 2 Enterprise Edition est une plate-forme de dveloppement d'application s'appuyant sur le langage Java, dont les spcifications sont gres par la socit SUN. Elle permet de dvelopper des applications Web composes de Servlet et JSP et des applications Mtiers base d'EJB.Un Serveur d'Applications contient un conteneur Web pour l'excution des applications Web et un conteneur d'EJB pour l'excution des composants Mtiers. De plus, le Serveur d'Application fournis un ensemble de services utiliss par les dveloppeurs dans les applications. Ainsi, toute implmentation de cette spcification contient un ensemble dextensions auframeworkJava standard (JSE,Java Standard Edition) afin de faciliter notamment la cration dapplications rparties.

NetBeans IDE 8.0 : NetBeans est un Environnement de Dveloppement Intgr, ou IDElibre dvelopp par Sun Microsystems. Il est utilis avec un kit de dveloppement JDK et un plugin pour PHP. Tout comme beaucoup d'EDI c'est un logiciel qui vous propose un diteur de texte, de quoi crer et grer des projets, compiler, dbugger un code source, tester le programme, grer les versions. NetBeans est spcialis dans le domaine Java et PHP Orient Objet (PHP5).

WampServer 2.2 : WampServer est une plate-forme de dveloppement Web sous Windows. Il permet de dvelopper des applications Web dynamiques l'aide du serveur Apache2, du langage de scripts PHP et d'une base de donnes MySQL. Il possde galement PHPMyAdmin pour grer plus facilement les bases de donnes.WampServer sinstalle facilement et son utilisation trs intuitive permet de le configurer trs rapidement (sans toucher aux fichiers de configuration). Contrairement aux autres solutions, WampServer permet de reproduire fidlement le serveur de production. Une fois la base installe, il existe la possibilit d'ajouter autant de versions dApache, MySQL et PHP que souhait.

HTML5 ( Hyper Text Markup Language 5 )

HTML5 est une volution de la norme HTML regroupant un ensemble de technologies : SVG, CSS3, WebGL, File API, MathML. Le but de cette nouvelle version de HTML est de faciliter le dveloppement d'interfaces utilisateur riches. HTML5 est beaucoup plus orient applicatif que ses prdcesseurs et veut permettre de s'affranchir de plugins pour utiliser au maximum les technologies Web natives pour construire une application riche.

CSS3(Cascading Style Sheets3) Ces feuilles de style nous permettent de grer la prsentation dune page web. Le langage CSS, sous recommandation du World Wide Web Consortium, a pour objectif de sparer le contenu HTML de la prsentation des lments. CSS permet aussi de dfinir des rgles diffrentes pour chaque support daffichage (une navigateur classique, une tlvision, un support mobile, un lecteur braille etc.). CSS permet aussi damliorer laccessibilit des documents web.

JQuery

jQueryest une petite bibliothque JavaScript facilitant l'criture de scripts. Ses principaux avantages sont:1. lacompatibilitavec tous les navigateurs,1. jQuery estcompacte(pas plus de 15ko, a ne surcharge pas vos pages) et rapide1. sasyntaxeest lgante, puissante, peu verbeuse, et s'apprend trs rapidement;1. jQuery estextensible: des centaines depluginsexistent, en particuliers de trs nombreuxeffets graphiques.

GlassFish:

GlassFish est le nom du serveur d'applications Open Source Java EE 5 et qui sert de fondation au produit Sun Java System Application Server de Sun Microsystems. Ce projet fournit un serveur d'applications performant, de qualit et libre. GlassFish est sous double licence CDDL et GPLv2 et il est certifi Java EE 5. Sa version 2 est sortie en septembre 2007 avec un support complet avanc du clustering.

MySQL

MySQLest unsystme de gestion de base de donnes(SGBD). Selon le type d'application, sa licence estlibreoupropritaire. Il fait partie des logiciels de gestion debase de donnesles plus utiliss au monde, autant par le grand public (applications web principalement) que par des professionnels, en concurrence avecOracleetMicrosoft SQL Server. Il est multi-threadet multi-utilisateur. MySQL fonctionne sur de nombreuxsystmes d'exploitationdiffrents, incluantLinux,Mac OS X, Windows(2000,XP,Vistaet7). Les bases de donnes sont accessibles en utilisant leslangages de programmationC, VB,.NET,Java, PHP etc.

Spring (Plateforme)Cest une plateforme libre pour construire et dfinir l'infrastructure d'une application java, dont il facilite le dveloppement et les tests. Il est considr comme un conteneur (dit lger) similaire au serveur dapplication JEE. Il permet au dveloppeur une abstraction permettant de grer entre autres: le mode transactionnel, lappel d'EJBs, la cration d'EJB, la cration d'une interface Web, l'appel et la cration de service web.Ralisation

Dans cette partie, nous dcrivons quelques lments essentiels implments lors de la ralisation de lapplication, savoir le dictionnaire des donnes (base de donnes) et les mcanismes utiliss pour garantir la scurit.1.3. Base de donnes

Ce tableau rsume les diffrentes tables de la base de donnes:TableChampTypeDescription

Clientid_clint(11)Identifiant du client (cl primaire)

nom_clvarchar(15)Nom du client

prenom_clvarchar(15)Prnom du client

tel_clvarchar(8)Numro de tlphone du client

email_clvarchar(20)E-mail du client

adresse_clvarchar(50)Adresse du client

entreprise_clvarchar(15)Entreprise du client

Compteid_cpint(11)Identifiant compte (cl primaire)

Loginvarchar(15)Pseudonyme de lutilisateur

Mdpvarchar(15)Mot de passe compte utilisateur

type_cpvarchar(15)Type compte utilisateur (administrateur, client)

id_clint(11)Identifiant client

Commandeid_cmdint(11)Identifiant commande (cl primaire)

date_cmdvarchar(10)Date passer commande

etat_cmdtinyint(1)Etat de la commande (confirme, non confirme)

totale_cmdfloatTotale prix commande

id_clint(11)Identifiant client (cl trangre)

Produitid_print(11)Identifiant produit (cl primaire)

Modelevarchar(30)Model produit

Fabricantvarchar(30)Fabricant produit

Description Varchar(50)Description produit

qt_en_stockint(11)Quantit de produit ou stock

PrixFloatPrix de produit

Produit_commandeid_cmdint(11)Identifiant commande (cl primaire)

id_print(11)Identifiant produit (cl primaire)

Quantiteint(11)Quantit produit command

Fraisid_fraisint(11)Identifiant frais (cl primaire)

type_fraisvarchar(15)Type frais

mois_fraisint(11)Mois de frais

date_fraisvarchar(10)Dete de frais

montant_fraisFloatMontant de frais

id_coint(11)Identifiant comptabilit (cl trangre)

Comptabiliteid_coint(11)Identifiant comptabilit (cl primaire)

mois_coint(11)Mois calculer comptabilit

Anneeint(11)Anne calculer comptabilit

total_fraisFloatTotale frais

total_revenuFloatTotale revenu

date_covarchar(10)Date de calcul comptabilit

Factureid_fcint(11)Identifiant facture (cl primaire)

date_fcvarchar(10)Date facture

type_fcvarchar(15) Type facture (devis, facture pay)

paiement_fcvarchar(15)Mthode de paiement facture

PayeFloatAcompte pay

id_cmdint(11)Identifiant commande (cl trangre)

Livraisonid_lint(11)Identifiant livraison (cl primaire)

date_lvarchar(10)Date livraison

adresse_lvarchar(30)Adresser livraison

frais_lFloatFrais de livraison

Distinatairevarchar(30)Destinataire de livraison

id_cmdint(11)Identifiant commande (cl trangre)

Tableau 15: Dictionnaire de la base de donnes1.4. Scurit

Etant donn le caractre confidentiel des donnes stocks etmanipules par lapplication, laccs est scuris par mot de passe.En plus, les mots de passe sont sauvegards crypts dans la base dedonnes. Lalgorithme de cryptage utilis est MD5 (Message Digest5) grce la mthode crypt dans la classe client .

Figure 17: Stockage crypt des mots de passe

Tests

Cette partie recense la prsentation des principales interfaces graphiques de lapplication. Vu que la navigation dans lapplication dpend du type de lutilisateur, nous allons commencer par prsenter les interfaces dun visiteur puis celles dun client pour finir par les interfaces de ladministrateur.

1.5. Les Interfaces du visiteur 1.5.1. Interface daccueil

Cette interface reprsente la page daccueil du site, elle affiche le catalogue des produits offerts par la socit vending machine plus. Le lien vers le catalogue 2 permet de tlcharger un fichier PDF. Par ailleurs, le visiteur peut utiliser les boutons en haut pour sinscrire et devenir client ou bien se connecter sil est dj inscrit.

Figure 18: interface d'accueil pour le visiteur

1.5.2. Interface dinscription

Cette interface permet un visiteur de sinscrire en remplissant le formulaire. Il doit indiquer son login et mot de passe pour crer un compte en plus de ses coordonnes personnelles (tlphone, adresse, e-mail) qui seront utiliss lors des livraisons.

Figure 19: interface d'inscription

1.6. Les interfaces de client 1.6.1. Interface dauthentification Cette interface va permettre au client ou administrateur de sauthentifier. En introduisant son login et mot de passe.

Figure 20: interface d'authentification

Aprs authentification, le client accde linterface daccueil qui affiche le nom du client et un menu compos uniquement de trois choix (profil, commande et facture).Nom et prnom de client

Figure 21: interface d'accueil client

1.6.2. Interface profil

Figure 22: interface profile client

Figure 23: interface modification profil client

Figure 22 prsente le profil du client et toutes ses informations personnelles. En appuyant sur modifier, un formulaire saffiche de nouveau pour la modification selon son choix comme dans la figure 23. La mise jour est effectue seulement sur les donnes modifies.

1.6.3. Interface commande

Figure 24: interface commande clientDans la section article on trouve deux choix:

Ajouter:

Figure 25: interface ajouter commande

Figure 26: interface crer commandeFigure 25 prsente le catalogue de produit o le client coche les produits quil veut commander et clique sur le bouton crer commande.Figure 26 permet au client dindiquer la quantit de produits quil veut commander.

Afficher:

Figure 27: interface afficher commande

Figure 28: interface modifier commande

En cliquant sur Afficher une liste des commandes sera affiche. Il sera possible de modifier ou supprimer cette commande.

1.6.4. Interface facture

Figure 29: interface facture client

En cliquant sur facture la liste des factures du client sera affiche. Il sera possible dimprimer ou annuler cette facture.

1.7. Les interfaces de ladministrateur

1.7.1. Interface gestion des comptes

Aprs authentification, ladministrateur peut consulter la liste des comptes utilisateurs en choisissant la premire option du menu gauche. Contrairement un client, ladministrateur possde plusieurs choix dans le menu (comptes, produit, commande, livraisons, facture et comptabilit).Il sera possible de modifier les informations personnelles de ce client ou de le supprimer comme la montre les figures 30, 31 et 32.

Figure 30: interface compte

Figure 31: interface de modification donnes personnelles client Figure 32: interface ajouter client1.7.2. Interface gestion des produits

En cliquant sur produit dans le menu, linterface affiche la liste de produit. Si ladministrateur veut ajouter un nouveau produit, il clique sur Ajouter (figure 33), ce qui permet dafficher un formulaire. En remplissant les divers champs et en validant, le produit est ajout la liste (figure 34). Il est galement possible de modifier un produit existant (figure 35).

Figure 33: interface affichage liste produit

Figure 34: interface ajouter produit Figure 35: interface modifier produit

1.7.3. Interface gestion des livraisons

Ladministrateur gre les livraisons; il peut ajouter (Figure 36) ou modifier une livraison.

Figure 36: interface de livraison

1.7.4. Interface gestion des factures

Ladministrateur gre les factures; il peut afficher la liste des factures, ajouter une nouvelle facture, modifier une facture (figure 37), imprimer ou annuler une facture.

Figure 37: interface modifier une facture1.7.5. Interface comptabilit

Figure 38: interface comptabilit

Conclusion Gnrale

Au terme de ce projet de fin dtudes, nous avons eu lopportunit davoir ralis une application web qui a pour but dinformatiser le fonctionnement de la socit de vending machine et de laider faire connatre et commercialiser ses produits. En effet, au cours de ce projet nous avons approfondi nos connaissances en modlisation de systmes informatiques en particulier avec le langage UML. Nous avons galement amlior nos connaissances techniques par la manipulation de nouveaux outils et technologies tels que J2EE, WampServer, HTML5 et MySQL. Par ailleurs, ce stage de fin dtude a t une occasion pour acqurir une exprience extrmement valorisante dun point de vue personnel et professionnel.Puisque toute application nest jamais parfaite, et faute de temps, nous pensons que notre projet peut tre amlior ultrieurement en intgrant les fonctionnalits dj implmentes mais dans une partie mobile pour permettre daccder lapplication partir dun smartphone en particulier lors des livraisons.

Netographie

[1] Dfinition HTML5 [En ligne]. http://www.definitions-webmarketing.com/Definition-HTML5 [consult le 01/04/2014]

[2] StarUML - The Open Source UML/MDA Platform [En ligne]. http://staruml.sourceforge.net/en/ [Consult le 12/02/2014]

[3] NetBeans NetBeans french site [En ligne].http://fr.netbeans.org/ [Consult le 25/03/2014]

[4] Jquery [En ligne]. http://www.jquery.com [Consulter le 26/03/2014]

[5] MySQL:: The world's most popular open source database [En ligne]. http://www.mysql.com [Consult le 12/03/2014]

[6] WampServer, la plate-forme de dveloppement Web sous Windows - Apache, MySQL, PHP [En ligne]. http://www.wampserver.com [Consult le 16/03/2014]

. . . . :

Rsum

Ce prsent mmoire constitue le rapport de projet de fin dtudes, labor au sien de la socit Vending Machine Plus SVM+ et prsent en vue de lobtention de la licence applique en Informatique. Le travail prsent a pour objet la conception et le dveloppement dun systme information et dune couche application commerciale. Cette application permet de grer le flux de donnes et de documents relatifs aux commandes et achats distance ainsi que les processus de facturation, livraison et comptabilit. Pour limplmentation, nous avons utilis le langage de modlisation UML, lenvironnement NetBeans IDE, et les technologies J2EE et WampServer . Mots cl: application commerciale, facturation, UML, J2EE, NetBeans, WampServer

Abstract

This document is a report of a final study project, developed within Vending Machine Plus company, in order to obtain a licence in computer technology. The work presented in this report aims at the design and development of an information system and a commercial application layer. This application allows to manage the flow of data and documents concerning remote orders and purchase in addition to billing processes, delivery and accounting. For the implementation, we used UML, the NetBeans IDE, and other technlogies such as J2EE and WampServer. Keywords: Commercial software, billing, UML, J2EE, NetBeans, WampServer.

Ddicaces

Je ddie ce travail ma chre famille pour laquelle ce travail est un hommage aux sacrifices dploys et ses inestimables conseils qui ont t et qui resteront pour toujours, sources de persvrance, que Dieu vous garde et vous offre longue vie. mes trs chers parents pour tout l'amour que je leur porte mon cher frre en tmoignage de son soutien continu toute ma grande famille en tmoignage de son encouragement mes amis et chers collgues en tmoignage de mon sincre amour et de mon profond attachement.

Mna guizani

Remerciements

Mes profondes gratitudes et mes sincres remerciements sont adresss au Prsident Directeur Gnral de la socit vending machine plus qui ma accueillie pour la ralisation de ce stage de fin dtudes.

Je tiens exprimer ma sincre gratitude envers mon encadreur dentreprise Mme. BARHOUMI Nassira et mon encadreur lISET Mme GUARBOUJ Sonia qui nont pargn aucun effort pour maider et mclaircir la voie avec leurs conseils pertinents, leurs ides originales et leurs critiques, parfois svres, mais souvent fructueuses.

De mme, Je tiens aussi remercier tous mes enseignants de lInstitut Suprieur des Etudes Technologiques de Siliana qui mont aid de prs ou de loin afin de faciliter ma tche.

Je remercie galement les membres du jury de lintrt quils ont port mon travail en acceptant de le juger.

Finalement je remercie tous ceux qui ont particip de prs ou de loin au bon droulement de ce projet.

Merci tous

Table des matiresIntroduction Gnrale1Chapitre I: Etude De Lexistant2Introduction21.Prsentation De La Socit Daccueil31.1.Fiche didentification31.2.Description de SVM+31.3.Services et produits31.4.Organigramme de SVM+42.Analyse de lexistant43.Critique de lexistant54.Solution proposes5Conclusion6Chapitre II: Spcification et Conception7Introduction71.Spcification des besoins81.1.Besoins fonctionnels81.2.Besoins non fonctionnels92.Conception92.1.Choix de langage de conception92.2.Diagramme de cas dutilisation102.3.Diagramme de squence222.4.Diagramme de classe25Conclusion25Chapitre III: Ralisation et Tests26Introduction261.Environnement de dveloppement271.1.Environnement matriel271.2.Environnement logiciel272.Description des choix techniques273.Ralisation313.1.Base de donnes313.2.Scurit334.Tests334.1.Les Interfaces du visiteur344.2.Les interfaces de client364.3.Les interfaces de ladministrateur41Conclusion Gnrale46Bibliographie47

Table De Figure Figure 1: Organigramme de SVM+4Figure 2: Diagramme de cas d'utilisation Globale11Figure 3: diagramme de cas d'utilisation raffingrer commande13Figure 4: diagramme de cas d'utilisation grer facture16Figure 5: Diagramme de cas d'utilisation raffin Grer comptes utilisateurs 19Figure 6: Diagramme de cas d'utilisation raffin Grer produits 19Figure 7: Diagramme de cas dutilisation raffin Grer clients 20Figure 8: Diagramme de cas dutilisation raffin Grer frais 20Figure 9: Diagramme de Cas dutilisation raffin Grer comptabilit 21Figure 10: Diagramme de cas d'utilisation raffin Grer livraison 21Figure 11: Digramme de squence dinscription22Figure 12: Diagramme de squence dauthentification23Figure 13: Diagramme de squence de passer commande23Figure 14 : Diagramme de squence de modifier facture24Figure 15: Diagramme de squence de supprime produit24Figure 16: Diagramme de classe25Figure 17: Stockage crypt des mots de passe33Figure 18: interface d'accueil pour le visiteur34Figure 19: interface d'inscription35Figure 20: interface d'authentification36Figure 21: interface d'accueil client36Figure 22: interface profile client37Figure 23: interface modification profil client37Figure 24: interface commande client38Figure 25: interface ajouter commande39Figure 26: interface crer commande39Figure 27: interface afficher commande40Figure 28: interface modifier commande40Figure 29: interface facture client41Figure 30: interface compte42Figure 31: interface de modification donnes personnelles client ..42 Figure 32: interface ajouter client42Figure 33: interface affichage liste produit43Figure 34: interface ajouter produit 43 Figure 35: interface modifier produit43Figure 36: interface de livraison44Figure 37: interface modifier une facture44Figure 38: interface comptabilit45

Table de Tableau Tableau 1: Acteur du systme10Tableau 2: Description de cas dutilisation Consulter catalogue 12Tableau 3: Description de cas d'itilisation sincrire12Tableau 4: description de cas d'utilisation grer comptabilit13Tableau 5: Description de cas d'utilisation Passer commande 14Tableau 6: Description de cas d'utilisation consulter commande14Tableau 7: Description de cas d'utilisation confirmer commande 15Tableau 8: Description de cas d'utilisation Modifier commande 15Tableau 9: Description de cas d'utilisation Annuler commande 16Tableau 10: Description du cas dutilisation Consulter facture 17Tableau 11: Description du cas dutilisation Imprimer facture 17Tableau 12: Description du cas dutilisation Ajouter facture 18Tableau 13: Description du cas dutilisation Modifier facture 18Tableau 14: Outils logiciels utiliss27Tableau 15: Dictionnaire de la base de donnes33

2

2