Developpement D Une Application de Gestion
Developpement D Une Application de Gestion
Developpement D Une Application de Gestion
Thème
Développement d'une application de gestion
de vente embarquée
Réalisé par :
- AYAD Soriya
A mon encadreur Chouiti Sidi Mohammed pour son encadrement, son soutien sans
faille et sa disponibilité. Ses conseils, ses suggestions de lecture, ses
commentaires, ses corrections et ses qualités scientifiques ont été très précieux
pour mener à bien ce travail.
A Mr Mahfoud, Mr Smahi et Mme Seladji pour avoir fait l’immense honneur d’accepter de
juger mon travail.
Je tiens à remercier tout particulièrement et à témoigner toute notre reconnaissance à Mme
KAZI AOUAL Dounia, pour son aide et la confiance qu’elle nous a accordé durant la période
du stage.
A mon très cher père qui a toujours répondu présent dans les moments
les plus difficiles. Son soutien et son encouragement m’ont toujours
donné la force de poursuivre mes études.
A ma très chère maman, qui a su me donner l'attention, l'affection, l'aide
et l'amour qui m'ont permis d'achever ce projet dans de bonnes
conditions. Aucune dédicace ne pourra compenser les sacrifices de mes
parents.
A mes très chères sœurs Meriem et Fatima
A mon adorable frère Mohammed Fedlalah
A mes meilleurs cousines Lina, Soumia et Amina qui ont été toujours
présentes à tout moment et qui m'ont apporté une aide précieuse.
A mes grand-mères, pour toutes ses prières .
A mes oncles, mes tantes, mes cousins et toute ma famille
A tous mes camarades de la promotion.
A tous ceux et toutes celles qui m’ont soutenu de près ou de loin durant
cette année.
A mes amis et mes cousines avec qui j’ai partagé des moments des plus
agréables.
A tous ceux qui sont chères, proches de mon cœur.
TABLE DES MATIERS
LISTE DES ABREVIATIONS……………………………………………………………………
LISTE DES TABLEAUX…………………………………………………………………………
LISTE DES FIGURES…………………………………………………………………………….
INTRODUCTION GENERALE…………………………………………………………………. 1
CHAPITRE I : CONTEXTE DU PROJET...................................................................................
I. Introduction………………………………………………………………………………………. 4
II. Présentation de l'entreprise "Eurequat-Algérie"…………………………………………………. 4
III. Déroulement du stage…………………………………………………………………………... 4
III.1. Méthodologie adoptée………………………………………………………………………. 5
III.2. Planning prévisionnel………………………………………………………………………. 5
III.2.1. Fichier de suivi……………………………………………………………………………. 5
III.2.2. Diagramme de Gantt……………………………………………………………………… 6
III.3. Les difficultés rencontrées………………………………………………………………….. 7
IV. Cahier des charges……………………………………………………………………………… 7
IV.1. Contraintes………………………………………………………………………………….. 7
IV.1.2. Contraintes techniques…………………………………………………………………. 7
IV.1.3. Contraintes fonctionnelles……………………………………………………………... 8
IV.1.4. Contraintes de sécurités………………………………………………………………... 8
IV.1.5. Contraintes d’adaptation……………………………………………………………….. 9
IV.1.6. Modélisation du contexte………………………………………………………………. 9
IV.2. Identifications des acteurs………………………………………………………………… 10
V. Conclusion………………………………………………………………………………………. 11
CHAPITRE II : ETAT DE L'ART……………………………………………………………….
I. Introduction………………………………………………………………………………………. 13
II. Informatique mobile et embarquée……………………………………………………………… 13
II.1. Définitions…………………………………………………………………………………… 13
II.1.1. Informatique mobile…………………………………………………………………. 13
II.1.1.1. Les terminaux mobiles………………………………………………………. 13
II.1.1.2. Les technologies d’accès……………………………………………………. 14
II.1.2. Mobilité en entreprise……………………………..……………………………….. 14
II.1.2.1. Périmètres de la mobilité dans une entreprise………………………………. 14
II.1.2.2. Application …………………………………………………………………… 15
II.1.2.2.1 Les application « horizontales » (générique)…………………………... 15
II.1.2.2.2 Les application « verticales (ou métiers)………………………………. 15
II.1.2.3. Architecture type d’une solution mobile…………………………………….. 16
II.1.2.4 Type de solution mobile……………………………………………………… 16
II.1.2.4.1 Application connectées : accès online………………………………… 16
II.1.2.4.2 Application occasionnellement connectées : accès offline………….. 17
II.2. Informatique embarquée……………………………………………………………………. 17
II.2.3. Exemples……………………………………………………………………………….. 17
II.2.4. Applications embarquées……………………………………………………………….. 18
II.2.5. Informatique embarquée et mobilité……………………………………………………. 18
III. Automatisation de la force de vente et de terrain…………….………………………………… 18
III.1. Gestion de vente……………………………………………………….…………………… 19
III.1.2. Force de vente…………………………………………………….…………………… 20
IV. Solutions mobiles SFA & FAA………………………………………………………………… 21
IV.1. Définition de la SFA………………………………………………………………………. 21
IV.2. Définition de la FFA………………………………………………………………………. 21
IV.3. Architecture d’une solution SFA/FAA……………………………………………………. 21
V. Applications existantes………………………………………………………………………….. 22
VI. Conclusion……………………………………………………………………………………… 23
CHAPITRE III : ANALYSE ET CONCEPTION………………………………………………
I. Introduction………………………………………………………………………………………. 25
II. Spécification des besoins………………………………………………………………………... 25
II.1. Besoins fonctionnels……………………………………………………………………….. 25
II.2. Besoins non fonctionnels…………………………………………………………………... 26
II.3. Diagrammes de cas d’utilisation…………………………………………………………… 26
II.3.1. Définition du cas d'utilisation…………………………………………………………. 26
II.3.2. Identification des acteurs……………………………………………………………… 26
II.3.3. Identifications des messages………………………………………………………….. 26
II.3.4. Diagramme de cas d'utilisation globale………………………………………………. 27
III. Conception……………………………………………………………………………………… 29
III.1. Diagrammes de séquence et de classes……………………………………………………. 29
III.1.1.Définition du diagramme de séquence………………………………………………... 29
III.1.2. Définition du diagramme de classes…………………………………………………. 29
III.1.3. Diagramme de séquence du cas « Authentifier »……………………………………. 29
III.1.4. Diagramme de séquence « initialisation de la tournée »…………………………….. 30
III.1.5. Diagramme de classes « Initialiser tournée »………………………………………... 32
III.1.6. Diagramme de séquence « listes des clients a visité »………………………………. 32
III.1.7. Diagramme de classes « Planifier liste clients »…………………………………….. 34
III.1.8. Diagramme de séquence « Effectuer livraison »……………………………………. 34
III.1.9. Diagramme de classes « Effectuer Livraison »……………………………………… 36
III.1.10. Diagramme de séquence « Visualiser liste livraisons »……………………………. 36
III.1.11. Diagramme de séquence « Visualisation du stock »……………………………….. 37
III.1.12. Diagramme de séquence « Gérer retour » ………………………………………… 38
III.1.13. Diagramme de classes « Gérer Retour »……………………………………………. 39
III.1.14. Diagramme de séquence « Clôturer tournée »……………………………………… 39
III.1.15. Diagramme de classes globale……………………………………………………… 41
IV. Conclusion……………………………………………………………………………………… 41
CHAPITRE IV : REALISATION………………………………………………………………..
I. Introduction……………………………………………………………………………………... 43
II. Environnement de Développement………………………………………………………... 43
II.2.1. Outils de modélisation……………………………………………………………….. 43
II.2.2. Environnement intégrés d’implémentation et d’exécution…………………………... 43
III. L'architecture de l'application……………………………………………………………… 45
III.1. Type d’architecture……………………………………………………………………. 45
III.1.1. Partie serveur……………………………………………………………………… 46
III.1.2. Partie mobile………………………………………………………………………. 46
III.1.3. Partie Synchronisation de données………………………………………………... 46
III.2. Diagramme de déploiement…………………………………………………………… 47
IV. Les interfaces graphiques………………………………………………………………….. 48
IV.1. Interface d'authentification……………………………………………………………. 48
IV.2. Interface de synchronisation…………………………………………………………… 48
IV.3. Interface : Menu principal……………………………………………………………... 50
IV.4. Interface : Initialiser tournée…………………………………………………………… 50
IV.5. Interface liste des clients……………………………………………………………….. 54
IV.6. Interface : effectué livraison…………………………………………………………… 55
IV.7. Interface : Imprimer bon……………………………………………………………….. 57
IV.8. Interface Liste des livraisons…………………………………………………………... 57
IV.9. Interface : Stock………………………………………………………………………... 59
IV.10. Interface : Clôturer tournée…………………………………………………………… 60
V. Conclusion………………………………………………………………………………………. 62
CONCLUSION GENERALE……………………………………………………………………. 64
REFERENCES BIBLIOGRAPHIQUES…………………..………………………………… 67
Liste des abréviations
1
ERP: Entreprise Ressource Planning (Progiciel de gestion intégré )
2
SFA: Sales Force Automation( automatisation de la force de vente )
FFA: Field force automation, (automatisation des forces de terrain)
1
Introduction générale
Une solution web ( back office): pour la gestion des livraisons, des agents, des commandes
des clients, des produits, des prix et la supervision des tournées et ventes
Une solution mobile (Front office): C'est la partie qui nous a été confiée au sein d’Eurequat-
Algérie afin de développer une application mobile pour la réalisation des ventes sur le
terrain. Aussi, il faut assurer la synchronisation entre la partie FrontOffice et la partie
BackOffice pour l’échange de données.
Enfin, ce manuscrit est composé des chapitres suivants :
le premier chapitre présente le contexte du projet
Le deuxième chapitre présente une analyse de l'existant pour mieux définir les besoins et les
fonctions de notre application
Le troisième chapitre présente d’abord une première partie qui consiste à collecter, analyser
et définir les besoins de l’utilisateur (les besoins fonctionnels et les besoins non fonctionnels).
La seconde partie est consacrée à la conception de l'application : il s'agit d'une phase de
modélisation en UML de notre système.
Le quatrième et le dernier chapitre contient une description détaillée des outils utilisés pour
développer l’application web, l’architecture du système et le matériel de déploiement de
l’application.
Nous terminerons ce document par une conclusion générale qui résume notre travail
avec des perspectives pour les futurs travaux de ce projet.
2
CHAPITRE I
CONTEXTE DU PROJET
Chapitre I Contexte du projet
I. Introduction
Dans ce chapitre nous avons délimité le contexte de notre projet, ses missions et sa
structure, nous avons aussi présenté l'entreprise Eurequat, le déroulement et les méthodologies
adoptées au cours du stage.
L'identification
L'identification englobe le domaine du badge et du contrôle d'accès (imprimantes,
logiciel de conception de cartes, consommables, lecteur de carte "Chifa", portes-badges,
cordons, clips,...etc.).
La Traçabilité
La traçabilité est assurée aujourd'hui avec des outils matériels et logiciels. Depuis de
nombreuses années, l'équipe Eurequat, spécialisée dans la traçabilité, a réalisé des logiciels
répondant aux exigences des entreprises manufacturières et de stockage. Ces logiciels de
traçabilité sont également très ouverts afin d'évoluer et de respecter les normes et les
spécificités liées à un métier.
Une solution clé en main, chez Eurequat, comprend l'analyse du besoin, le développement,
l'installation, la formation par des experts de la traçabilité, tout en s'appuyant sur du matériel
provenant des plus grands fournisseurs de matériels.
4
Chapitre I Contexte du projet
Définition
La méthode SCRUM est une méthode agile qui définit un cadre de travail permettant
la réalisation de projets complexes [1]
SCRUM utilise un principe de développement itératif qui consiste à découper le projet en
plusieurs étapes que nous appelons « itérations » ou « sprints ». Ces itérations sont
constituées d’un ensemble de sous besoins appelé « User story », Pendant un sprint, des points
de contrôle sur le déroulement des travaux sont effectués, pour cela chaque jour une réunion
est organisé avec tous les membres de l’équipe. Ce que nous appelons par la suite « Daily
Stand up Meeting »
5
Chapitre I Contexte du projet
6
Chapitre I Contexte du projet
IV.1. Contraintes
Sont les suivantes : Techniques, fonctionnelles, sécurité et adaptation.
7
Chapitre I Contexte du projet
8
Chapitre I Contexte du projet
9
Chapitre I Contexte du projet
Administrateur : C’est la personne qui possède le contrôle total sur solution, en plus des
tâches attribuées aux utilisateurs systèmes il s’occupe de la gestion et les privilèges de ces
derniers ainsi que la gestion des produits et fournisseurs.
10
Chapitre I Contexte du projet
V. Conclusion
Dans ce chapitre nous avons commencé dans un premier temps par la présentation du
cadre générale de projet après nous avons présenté une étude préliminaire qui sert a cité les
différentes contraintes et les besoins globale de notre projet
Dans le chapitre suivant nous allons faire une étude de l'existant où nous allons donner un
aperçu sur la mobilité des entreprises (notamment celles de distribution et de la vente terrain)
et leur recours à des solutions informatiques (mobiles et embarquées).
11
CHAPITRE II
ETAT DE L’ART
Chapitre II Etat de l’art
I. Introduction
Dans la première partie, nous essayerons de donner un aperçu sur la mobilité dans les
entreprises, ainsi qu’une définition de l’informatique embarquée et mobile, leurs domaines
d’application et les avantages qu’elles apportent. Nous définirons aussi la notion de la force
de vente et son automatisation.
Dans la deuxième partie de ce chapitre nous analyserons l’existant, et nous donnerons
un aperçu de ce qui est demandé.
13
Chapitre II Etat de l’art
14
Chapitre II Etat de l’art
II.1.2.2. Applications :
La convergence des technologies mobiles et de l'Internet permet de réelles
opportunités en termes de nouvelles applications et de services.
Ces applications peuvent être résumées comme suit : [Web 1]
Figure II.1 : Mise en place des applications par les entreprises [Web 1]
15
Chapitre II Etat de l’art
16
Chapitre II Etat de l’art
II.2.1. Définition
Le terme informatique embarquée regroupe les aspects logiciels se trouvant à
l'intérieur des équipements n'ayant pas une vocation purement informatique on parle alors
d’applications embarquées. [04]
II.2.2. Caractéristiques
La mise en œuvre d’une solution d’informatique embarquée exige de tenir compte de
plusieurs caractéristiques liées directement aux systèmes embarqués (hardware) [04].
La criticité : Les systèmes embarqués sont souvent critiques, ils agissent sur un
environnement physique, par conséquent les actions qu'ils effectuent sont irrémédiables.
La réactivité : Ces systèmes doivent avoir un temps de réponse assez court. C'est pour
cette raison que l'informatique embarquée est souvent basée sur un système temps réel.
L'autonomie : Les systèmes embarqués doivent, souvent remplir leur tâche pendant de
longues périodes sans intervention humaine.
La robustesse, sécurité et fiabilité : L'environnement est souvent hostile, pour des raisons
physiques (chocs, variations de température, impact d'ions lourds dans les systèmes spatiaux,
etc.) ou humaines (malveillance). C'est pour cela que la sécurité - au sens de la résistance aux
malveillances - et la fiabilité - au sens continuité de service - sont souvent rattachées à la
problématique des systèmes embarqués.
Des contraintes non fonctionnelles : Comme par exemple l'occupation mémoire, la
consommation d'énergie.
II.2.3. Exemples
Aujourd'hui, l'informatique embarquée est présente partout : appareils électroménager,
téléphone portable, automobile, scanner ou lecteur de code-barres des caisses enregistreuses
automatisées des commerces.
17
Chapitre II Etat de l’art
Le domaine des transports incluant les véhicules, mais aussi les satellites peut être
considéré comme le domaine privilégié de l'informatique embarqué.
18
Chapitre II Etat de l’art
III.1.1. Définition
Les ventes représentent l'ensemble des affaires réalisées par une entreprise avec ses
clients dans l'exercice de ses activités professionnelles [Web 3]
Figure II.3 : Processus de vente en action et interaction avec les autres processus [Web 3]
19
Chapitre II Etat de l’art
20
Chapitre II Etat de l’art
§ Le suivi du client : il s'agit de mettre à jour la fiche et le dossier client, ensuite prévoir la
date à laquelle on le rencontrera.
§ Le suivi de la vente : il faut ensuite traiter la commande (transformation du bon de
commande et mise en place de la livraison) et en assurant le suivi jusqu'au règlement.
Informations
Informations de l’entreprise aux clients et des clients vers l’entreprise (évolution des besoins,
nouveaux produits…).
21
Chapitre II Etat de l’art
V. Applications existantes
Il est indispensable de réaliser une étude de ce qui existe déjà pour comprendre en
premier comment fonctionnent les applications existantes et en second, sur quels points nous
allons plus travailler pour mieux améliorer.
Mobilus
La société Eurequat -Algérie a déjà proposé une solution qui ressemble un peu à notre
projet qui est Mobilus.
C'est une application de gestion de vente embarquée et tracking véhicule par GPS c’est
la solution qui apporte les capacités des technologies de l'information sur le lieu même des
points de ventes et des clients, et permet aux distributeurs de mieux servir leurs clients tout en
optimisant la gestion des ventes sur le terrain.
Le schéma suivant présente une architecture de la solution Mobilus :
22
Chapitre II Etat de l’art
VI. Conclusion
Par ce chapitre on peut conclure que la mobilité prend de plus en plus d’ampleur.
Son application dans le domaine professionnel avec les applications horizontales et de plus en
plus verticales est un atout pour les entreprises car elles apportent plusieurs avantages tels que
la réduction des coûts, la flexibilité et la réactivité.
L’informatique embarquée vient en aide pour implémenter de telles solutions avec
ses spécificités (l’autonomie par exemple).
Pour optimiser ses ventes, une entreprise doit procéder à une bonne gestion de ses forces de
vente et terrain. Les solutions d’automatisation viennent en appui, on parle de solutions
d’automatisation de la force de vente (SFA) et force de terrain (FFA).
Ces applications mettent à la disposition des agents une partie du système
d’information de l’entreprise, elles sont appliquées principalement dans le domaine de la
distribution, vente terrain (vente par camions) et le transport routier des marchandises.
23
CHAPITRE III
ANALYSE ET CONCEPTION
Chapitre III Analyse et conception
I. Introduction
Le processus unifié est une solution idéale pour notre projet .En effet, il regroupe les
activités à mener pour transformer les besoins d'un utilisateur en un système logiciel quelque
soit la classe, la taille et le domaine d'application de ce système.
Dans ce chapitre utiliserons une démarche objet basé sur le processus unifié (UP). Nous
utiliserons les diagrammes UML suivants :
Les diagrammes de cas d'utilisation pour spécifier les fonctionnalités de notre
système.
Les diagrammes de séquence qui détaillera chaque cas d’utilisation. Des diagrammes
de classes conformément aux instances utilisées dans les diagrammes de séquences
Un diagramme de classes global.
Avant tout, nous étalerons les spécifications des besoins de notre système
25
Chapitre III Analyse et conception
26
Chapitre III Analyse et conception
27
Chapitre III Analyse et conception
Vente embarquée
Lancer tournée
Visualiser la liste
des liv raison «include»
«include»
Visualiser le stock
«include» S'authentifier
Agent
(from «include»
Actors)
Cloturer la tournee
«include»
«include»
Prise Commande
Creation des
prospects
Gerer payements
initialiser tournée
«i ncl ude»
Authentifier
Agent Planifier liste
«i ncl ude»
clients
«extend»
28
Chapitre III Analyse et conception
III. Conception
A travers cette partie, nous mettons en disposition une vue statique de notre produit
représenté par le diagramme de classes et le diagramme de séquence, nous représentons par la
suite le modèle objets qui présente le schéma de la base de donnée.
29
Chapitre III Analyse et conception
Agent
Vente Embarquée DB :Agent
alt Connexion
Authentifier(login, paswword)
[Succes] testDB()
VerifierAgent(login)
Données trouvée()
[Echec]
Données erronées()
Données verifier()
Utilisateur Connecté()
30
Chapitre III Analyse et conception
Agent
Vente Embarquée DB :Tournee :Stock :Produit :Vehicule
ref
DSS Authentificatio
getTournee(id, CachReçu)
Result()
loop getStock(StockInitiale,
StockEstime)
Result()
getProd(id, Designation)
result ()
Synchronisation reussi ()
Données recupérer()
quantite changé()
signer()
signature enregistrer()
Démarrer ()
tournée lancé()
31
Chapitre III Analyse et conception
+ Effectuer Etape()
32
Chapitre III Analyse et conception
Agent
Vente Embarquée DB Etape tournee Client Liv raison Commande
ref
DSS Initialiser tournée
Demarrer tournee()
testDB()
GetEtapeTournee(MotifVisite)
loop Result()
GetClients(id, Nom)
Result()
getLivraison(idLivraison)
Result()
GetCommande(idCommande)
Result()
Données recuperé()
Affichages des etape de la tournee()
alt
[MotifiVisite = Livraison]
ref
DSS Effectuer liv raison"
[MotifiVisite = Encaisement]
[MotifiVisite = PriseCommande]
[MotifiVisite = Inventaire]
33
Chapitre III Analyse et conception
+ getLivraison()
Diagramme de classes:: 0..*
Commande
Diagramme de classes::
- DateCreation: date LigneCommande
- idClient: int
- idCommandeClient: int - idCommande: int
Diagramme de classes:: - Statut: String 0..* - idProduit: int
Encaisement - T otalPricT T C: int - MontantRemise: real
- T otalPrixHT : int - PrixHT : int
1
- CodeModePaiement: varchar - PrixT T C: int
- DateEncaisement: Date 0..* - QuantitéCommandé: int
- idFacture: int - QuantitéLivrée: int
- idPaiement: int - T auxRemise: real
- ModeEncaisement: string - T otalPrixHT : int
- Montant: int 0..1 - T otalPrixT T C: int
+ saveLigneCommande()
Diagramme de classes::Facture
- dateCreation$: date
- DateEcheancePaiment: date
- idFacture: int
- Statut: string
+ EditerFacture()
34
Chapitre III Analyse et conception
Agent
Vente Embarquée DB :Liv raison :Commande :Client Produit
alt
Demande
[Oui Etat Livraison d'efectuer
= "En cours"] une livraison en cours()
testDB()
getLivraison(ID, Date)
resultat()
getCommande(ID)
Result()
getClient(ID,
Nom)
Result()
Données Reussi ()
loop
Changé Quantité Livree()
Livraison Effectuer ()
[>]
Resaisir Quantite()
imprimer Bon()
35
Chapitre III Analyse et conception
Diagramme de
classes::Liv raison
- idLivraison: int
- DateLivraison: date
- idAgent: int
- Statut: string
+ getLivraison()
36
Chapitre III Analyse et conception
Agent
Vente Embarquée DB Liv raison Client
Données Reussi ()
Affichage de la liste des livraisons()
ref
DSS Effectuer liv raison
37
Chapitre III Analyse et conception
Agent
Vente Embarquée DB :Produit :Stock
Demande de visualiser stock ()
testDB()
Quantite Changée()
38
Chapitre III Analyse et conception
«Systeme»
Vente embarquée
Agent
Retour
recupererInformation ()
Specifier la livrason ()
Produit selectionner ()
Valider retour()
[non existe]
Message d'erreur :informaion non disponible sur cette livraison ()
Diagramme de classes::
Produit
Retour
Diagramme de classes:: - Code mesure: int
Client - DateRetour: Date - CodeIdentificaton: int
- idClient : int - CUMP: int
- DateCreation: date - idProduit: int 1 - Designation : string
1..*
- email: varchar - idRetour: int - idProduit: int
- idClient: int - Raison: String - PrixAchatAppliqué: int
- Nom: string - Réference: int
- SegementClient: string - TauxTVA: int
- telephone: int
+ Modifier Produit()
+ SaveClient()
Enchainements nominaux :
1. L’agent sélectionne «Clôturer tournée"
2. Le système affiche pour l'agent un déroulement de trois étapes et cela pour clôturer sa
tournée.
3. L’agent confirme le cash final de la caisse, son kilométrage de début et de fin de son
véhicule, aussi la date de début et de fin de tournée et faire l'inventaire du stock
4. L'agent confirme sa fin de tournée par une signature.
La figure suivante présente le diagramme de séquence du cas "clôturer tournée":
Agent
Vente Embarquée DB :Tournee :Produit Stock :Vehicule
Result()
Result()
getStockFinal()
Result()
Données Recuperée()
SaisirDonnéesFin tournee
(KMFin, DateFin)
setInformation() setDate
(DateFin)
Save(DateFin) setKM(KMFin)
Save(KMFin)
Donnée enregistré()
MotifEcart(EcartCaisse, EcartStock)
Signer()
Cloturer la tourneé()
fermer()
fin Tournée()
40
Chapitre III Analyse et conception
LigneCommande
Produit Categorie
Commande - idProduit: int
Facture
- idCommande: int - idProduit: int - idCategorie: int
- idCommandeClient: int - QuantitéCommandé: int
- idFacture: int - Designation : string - idProduit: int
avoir - DateCreation: date - QuantitéLivrée: int
- dateCreation$: date - CodeIdentificaton: int - Reamrque: text
- TotalPrixHT: int - PrixHT: int Inclure
- DateEcheancePaiment: date 0..1 0..* - - PrixAchatAppliqué: int - TVA: int
TotalPricTTC: int - PrixTTC: int
- Statut: string 1 0..* 1..* 1 - CUMP: int
- idClient: int - TotalPrixHT: int - Réference: int
+ EditerFacture() - Statut: String - TotalPrixTTC: int - Code mesure: int
+ getCommande() - TauxRemise: real - TauxTVA: int
- MontantRemise: real Avoir
0..* + Modifier Produit() Prix
+ saveLigneCommande()
Concerne - idProduit: int
Avoir 1..* 0 TVA
- PrixTTC: int
0..* - Taux: int - Marge: int
- Libellé: int - MargeValeur: int
EtapeTournée Tournée TraceStockTourné - PromotionHT: int
Client 1 Encaisement - DateDebutPromotion: date
- idEtapeToournée: int - idTournée: int - idTournée: int
- idClient: int - DateFinPromotion : date
- idPaiement: int Contenir - MotifVisite: String - idAgent: int
- DateCreation: date - idProduit: int
- CodeModePaiement: varchar - Adresse: varchar - DateDebut: date - idStock: int
- SegementClient: string
- Montant: int - Commentaire: string - DateFin: date - StockEnCours: int
- Nom: string
- idFacture: int - idLivraison: int compose - KMDébut: int Contenir - StockFinalEstimé: int
- email: varchar 1
- ModeEncaisement: string - idCommande: int - Statut: string - StockFinalReel : int
- telephone: int 1..*
- DateEncaisement: Date - idEncaisement: int - idVehicule: int - StockInitialeReel: int
+ SaveClient() - MotifEcartCaisse: int - StockInitialEstimé: int
+ Effectuer Etape() - MotifEcartStock: int
+ saveEtape() - AutreMotifEcartCaisse: int + getStock()
se trouve Caisse
- AutreMotifEcartStock: int
- idSecteur: int
- Nom: String
Commune
IV. Conclusion
Ce chapitre nous a permis de définir les fonctionnalités de notre application, en
passant par la phase de la conception pour assurer une bonne mise en œuvre d'un système
fonctionnel répondant aux besoins utilisateurs. Afin de délimiter le cadre de notre travail et de
préparer un terrain favorable pour la prochaine étape.
Maintenant, notre application est prête à être codée. Dans le chapitre suivant, nous
allons nous intéresser à l’implémentation de notre système en se basant sur la conception
détaillée de ce chapitre.
41
CHAPITRE IV
REALISATION
Chapitre IV Réalisation
I. Introduction
Dans chapitre précédent nous avons conçu notre système en élaborant les diagrammes
des cas d’utilisation, les diagrammes de séquences ainsi le diagramme de classes
Nous allons commencer par la description de l’environnement matériel et logiciel
utilisé tout en donnant par la suite un aperçu sur notre application.
Dans cette réalisation, nous sommes passés par plusieurs jalons jusqu’à aboutir au
produit final.
Nous énumérons les différents outils utilisés tout au long de ce projet pour la
modélisation et la mise en place de notre application.
Entreprise Architect
C’est un logiciel de modélisation et de conception UML couvrant, par ses
fonctionnalités, l'ensemble des étapes du cycle de conception d'application, il est l'un des
logiciel de conception et de modélisation les plus flexibles, complets et reconnus.
Star UML
Nous avons aussi utilisé l'outil de modélisation StarUML qui nous a aidé de faire le
modèle objet pour la structure pour la base de données
II.2.2.1. Android
Android est un système d'exploitation "Open Source"..Il est conçu pour des
appareils mobiles au sens large. Nullement restreinte aux téléphones, elle ouvre
d'autres possibilités d'utilisation comme les tablettes, les ordinateurs portables,
les bornes interactives, les baladeurs... [Web 4]
43
Chapitre IV Réalisation
Pour le développement d'une application android nous avons choisi les outils suivants :
Android Studio
Langage de programmation "Java"
JDK JAVA
Les AVD
SDK d'android
On commence par l'environnement de développement Android Studio :
Android Studio :
Android studio est un nouvel environnement pour développement et
programmation entièrement intégré qui était lancé par Google pour les systèmes
Android. Il a été conçu pour fournir un environnement de développement et une
alternative à éclipse qui est l’IDE1 le plus utilisé.
JAVA :
C'est le langage utilisé sur la plateforme Android studio.
Java est à la fois un langage de programmation. Ce langage a la particularité
principale que les logiciels écrits avec ce dernier sont très facilement portables
sur plusieurs systèmes d'exploitation tels qu’Unix, Microsoft Windows, Mac OS
ou Linux avec peu ou pas de modifications. C'est la plate-forme qui garantit la portabilité des
applications développées en Java
JDK Java :
Un pack d'outils pour le développement d'application via le langage Java. Il a les
composants nécessaires à la conception et au test de projets avec diverses caractéristiques.
SDK Android :
Le kit de développement (SDK) d'Android est un ensemble complet d'outils de
développement1. Il inclut un débogueur, des bibliothèques logicielles, un émulateur, de la
documentation, des exemples de code et des tutoriaux
AVD :
AVDS sont essentiellement des émulateurs qui permettent aux applications Android
à tester sans la nécessité d’installer l'application sur un périphérique physique à base
Android. Un AVD peut être configuré pour émuler une variété de fonctionnalités matérielles,
1
IDE: est un ensemble d'outils pour augmenter la productivité des programmeurs qui développent des
logiciels
44
Chapitre IV Réalisation
y compris des options telles que la taille de l'écran Pour la partie serveur nous avons utilisé
l'outil suivant :
II.2.2.2. Wamp
WampServer est une plateforme de développement web, permettant de faire
fonctionner localement des scripts PHP. WampServer n'est pas en soi un logiciel,
mais un environnement comprenant deux serveurs (Apache et MySQL), un
interpréteur de script (PHP), ainsi que phpMyAdmin pour l'administration web des bases
MySQL
Dropbox :
Dropbox est un service qui conserve vos fichier en lieux sur synchronise et faciles
à partager et emporter vos photos document et vidéos partout où vous allez et ne
perdre plus jamais aucun fichier.
Justinmind Prototyper
C'est une plateforme qui nous a aidé a faire la conception des écrans c'est à dire le
prototype des maquettes.
45
Chapitre IV Réalisation
46
Chapitre IV Réalisation
Pour une premier version l’algorithme consiste à envoyer les données du SQL lite vers
une base de données SQL en temps réel avec une solution simple et facile à intégrer. Notre
solution réponde à l’exigence initiale (temps réelles, transfert au deux sens) avec une simple
implémentation par l’utilisation des requêtes SQL.
La figure suivante présente cet algorithme :
Serv eur w eb
WIFI +HT T P
Poste agent
Bl uetooth
«Devi ce»
Imprimmante
mobile
48
Chapitre IV Réalisation
Une fois que l'agent a cliqué sur le bouton « Se connecter », le système vérifie les
données entrées. En cas d’échec, il affiche un message d’erreur. Si le Login et le mot de passe
sont valides, le système passe à l'interface de synchronisation (cette dernière consiste à
récupérer les données de la base de données du serveur).
49
Chapitre IV Réalisation
50
Chapitre IV Réalisation
Etape 1 : L’agent fait entrer le fond initiale de la caisse et le kilométrage de début de tournée
(Voir figure IV.7)
51
Chapitre IV Réalisation
52
Chapitre IV Réalisation
53
Chapitre IV Réalisation
54
Chapitre IV Réalisation
55
Chapitre IV Réalisation
56
Chapitre IV Réalisation
57
Chapitre IV Réalisation
58
Chapitre IV Réalisation
59
Chapitre IV Réalisation
60
Chapitre IV Réalisation
Etape 3 : L’agent fait entrer la date de fin de tournée et le système récupère la date de début et
affiche l'écart de caisse et l'écart de stock et enfin il confirme sa clôture par une signature (Voir
figure IV.20)
61
Chapitre IV Réalisation
V. Conclusion
Dans ce chapitre nous avons présenté l’environnement matériel et logiciel utilisé
dans la réalisation. Puis nous avons fourni quelques captures d’écrans décrivant des
interfaces de notre application mobile. Aussi nous avons essayé d'expliquer à travers ces
interfaces le fonctionnement de notre système .Dans ce qui suit, nous allons conclure et
donner quelques perspectives.
62
CONCLUSION GENERALE
Conclusion générale
64
Conclusion générale
65
REFERENCES BIBLIOGRAPHIQUES
Références Bibliographiques
[14] : J. BONENFANT, J. LACROIX, Notion : force de vente. Ressources pour les enseignants
et les formateurs en français des affaires, 2011
Webographie
[Web1]: Les Solutions Mobiles 2007
http://www.lessolutionsmobiles.com/lsm/la_mobilite/usages/applications_mises_en_place_au
jourd_hui_par_les_entreprises
http://www.lessolutionsmobiles.com/lsm/la_mobilite/definitions/les_differents_types_de_mo
bilite
http://fablain.developpez.com/tutoriel/presenterp/
[Web 4] :SALMONS BRYS, dernier mis à jour le mardi 17 mai 2016
https://openclassrooms.com/courses/developpez-une-application-pour-android
67
Résumé
Les entreprises commerciales disposant d’un personnel nomade (force de vente et terrain) sont
confrontées à une rude compétitivité. Ainsi chaque entreprise cherche de trouver le moyen d’améliorer
le service client et d’offrir à ces employés, une fois sur le terrain, tous les moyens pour les rendre plus
autonomes et plus réactifs.
Les solutions mobiles d’automatisation de force de vente et terrain (livreurs), autrement dit les
solutions de vente embarquée, viennent en aide à ces entreprises. Elles apportent les capacités des
technologies de l’information sur le lieu même des points de ventes. Elles permettent donc aux agents
et aux commerciaux de mieux servir leurs clients tout en optimisant la gestion des ventes sur le terrain.
Dans le cadre de notre projet de fin d’études, nous proposons une solution de vente embarquée
qui a les caractéristiques suivantes :
Un système central (serveur) qui s’appuie sur une application Web et une base de données MYSQL et
qui s’occupe de la gestion globale, de la planification des ventes (tournées).
Une application mobile embarquée qui offrira essentiellement des fonctionnalités d’automatisation de
livraisons, inventaires, stock, accessibles en local (base de données embarquée)
Abstract
Trading companies having nomadic personnel (sales force and team) are facing high
competitiveness on the market. Therefore, they are constantly searching for innovative solutions to
improve the customer service, and enhance their employees’ experience on the field by providing the
resources making them more autonomous and responsive.
Automatic mobile solutions or embedded sales solutions are seen as a great choice for these
companies, they implement the information technology capabilities on the points of sales and allow the
sales agents to better serve their clients, and in the meantime sales management on the field become
optimized.
In our final project, we propose an “embedded sales” solution .Our system has the following
characteristics:
A central system (Server) based on Desktop application and MYSQL database that handles the global
management,
An embedded mobile app that will offer essentially automation delivery functionalities, taking orders,
inventories, stock, view products and clients files locally (embedded database).
Keywords: Sale embedded, SFA / FFA, Android Application, Data base integration.
ﻣﻠﺨﺺ
وذﻟﻚ أن ﻛﻞ ﺷﺮﻛﺔ ﺗﺴﻌﻰ ﻹﯾﺠﺎد.اﻟﻤﺆﺳﺴﺎت اﻟﺘﺠﺎرﯾﺔ واﻟﻘﻮى اﻟﻌﺎﻣﻠﺔ اﻟﻤﺘﻨﻘﻠﺔ )اﻟﻤﺒﯿﻌﺎت واﻟﻘﻮة اﻟﻤﯿﺪاﻧﯿﺔ( ﺗﻮاﺟﮫ ﻣﻨﺎﻓﺴﺔ ﻗﻮﯾﺔ
ﺳﺒﻞ ﻟﺘﺤﺴﯿﻦ ﺧﺪﻣﺔ اﻟﻌﻤﻼء وﺗﻘﺪﯾﻤﮭﺎ ﻟﻠﻤﻮظﻔﯿﻦ ﻛﻞ اﻟﻮﺳﺎﺋﻞ ﻟﺠﻌﻠﮭﺎ أﻛﺜﺮ اﺳﺘﻘﻼﻻ واﺳﺘﺠﺎﺑﺔ
أي ﺣﻠﻮل اﻟﻤﺒﯿﻌﺎت ﻓﻲ، وذﻟﻚ أﻧﮭﺎ ﺗﺠﻠﺐ ﻗﺪرات ﺗﻜﻨﻮﻟﻮﺟﯿﺎ ﻟﺤﻠﻮل اﻟﻨﻘﺎﻟﺔ،اﻟﺤﻠﻮل اﻟﻨﻘﺎﻟﺔ ﻓﻲ ﻗﻮة اﻟﻤﺒﯿﻌﺎت واﻟﻤﯿﺪان ﺗﺴﺎﻋﺪ ھﺬه اﻟﺸﺮﻛﺎت
وﺗﻤﻜﻦ وﻛﻼء ورﺟﺎل اﻷﻋﻤﺎل ﻣﻦ ﺗﻘﺪﯾﻢ ﺧﺪﻣﺔ أﻓﻀﻞ ﻟﻌﻤﻼﺋﮭﺎ ﻣﻊ ﺗﺤﻘﯿﻖ إدارة اﻟﻤﺒﯿﻌﺎت اﻟﻤﯿﺪاﻧﯿﺔ.ﻣﻮﻗﻊ ﻣﻦ ﻣﻨﺎﻓﺬ اﻟﺒﯿﻊ
: ﺳﻨﻘﺪم ﺣﻼ ﻟﻠﻤﺒﯿﻌﺎت اﻟﻤﺤﻤﻮﻟﺔ اﻟﺬي ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﺨﺼﺎﺋﺺ اﻟﺘﺎﻟﯿﺔ،ﻛﺠﺰء ﻣﻦ ﻣﺸﺮوع اﻟﺘﺨﺮج
اﻟﻨﻈﺎم اﻟﻤﺮﻛﺰي )اﻟﺨﺎدم( اﻟﺬي ﯾﺴﺘﺨﺪم ﺗﻄﺒﯿﻖ وﯾﺐ وﻗﺎﻋﺪة ﺑﯿﺎﻧﺎت اﻟﺬي ﯾﻌﺎﻟﺞ اﻟﺘﺴﯿﯿﺮ اﻟﻌﺎم ﻟﻠﻤﺒﯿﻌﺎت وﺗﺨﻄﯿﻂ اﻟﺠﻮﻻت-
( ذو ﻗﺎﻋﺪة ﺑﯿﺎﻧﺎت ﻣﺤﻠﯿﺔ) ﺑﯿﺎﻧﺎت اﻟﻤﺤﻤﻮل، اﻟﻤﺨﺰون، وﻗﻮاﺋﻢ اﻟﺠﺮد، ﺗﻄﺒﯿﻖ ﻣﺤﻤﻮل اﻟﺬي ﯾﻮﻓﺮ أﺳﺎﺳﺎ ﻗﺪرات اﻟﺘﺸﻐﯿﻞ اﻵﻟﻲ ﻟﺘﺴﻠﯿﻢ-
ﻗﺎﻋﺪة اﻟﻤﻌﻄﯿﺎت، أﻧﺪروﯾﺬ دﻣﺞ، ﺗﻄﺒﯿﻖ،ﺑﯿﻊ ﻣﺤﻤﻮل: ﻛﻠﻤﺎت اﻟﺒﺤﺚ