Vous êtes sur la page 1sur 79

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique


Université de Batna 2 (Mostefa Ben Boulaïd)
Faculté des Mathématique et Informatique
Département Informatique

Mémoire De Fin D’étude


En vue de l’obtention du diplôme de Master
Option : Ingénierie Système Informatique
Thème

Conception et réalisation d’une application mobile de


Gestion commerciale

Réalisé par :
Mami Hocine.
…………………….
L’encadreur :
……………..

Promotion : 2022/2023
Remerciements
Dédicaces
Dédicaces
Je dédie ce modeste travail à :
‫ اللهم إرحمهه برحمتك الواسعة‬،‫إىل المرحوم أب‬
‫و إجعله من أهل الجنة يا أرحم الراحمي‬

A ma mère la personne la plus chère au monde,


A ma chère épouse

A mes adorables sœurs,


A tous mes amis et mes collègues,

A mes adorables enfants :


Asser, Mohamed, Ishak
Résumé
Cette étude présente le développement d'une application mobile dédiée à la gestion
commerciale, visant à améliorer l'efficacité des opérations commerciales.
L'application offre une plateforme conviviale et intuitive qui permet aux équipes commerciales
de gérer facilement les processus clés tels que la gestion des ventes, la gestion des clients, la
gestion des stocks et la génération de rapports.

Abstract
This study presents the development of a mobile application dedicated to commercial
management, aimed at improving the efficiency of commercial operations.

The app offers a user-friendly and intuitive platform that allows sales teams to easily manage
key processes such as sales management, customer management, inventory management, and
reporting.

‫تلخيص‬
‫أطروحتنا مكرسة لدراسة وتصميم وتحقيق و تطوير تطبيق الهاتف المحمول المخصص لإلدارة‬
‫ بهدف تحسين كفاءة العمليات التجارية‬،‫التجارية‬
‫يوفر هذا التطبيق نظاما أساسيا سهل االستخدام وبديهيا يسمح لفرق المبيعات بإدارة العمليات الرئيسية‬
‫بسهولة مثل إدارة المبيعات وإدارة العمالء وإدارة المخزون وإعداد التقارير‬
Sommaire

INTRODUCTION GENERALE……………………………………………………………1

Chapitre I : Développement multiplateforme

INTRODUCTION ............................................................................................................. 2
I.1. Applications mobiles .............................................................................................. 2
I.2. Les systèmes d’exploitation mobiles ..................................................................... 2
I.2.1. Android Operating System ............................................................................ 3
I.2.2. iPhone Operating System ............................................................................. 4
I.2.3. BlackBerry Operating System ....................................................................... 4
I.2.4. Symbian Operating System ........................................................................... 5
I.2.5. Windows Mobile ........................................................................................... 5

I.3. Les outils de développement mobile ...................................................................... 6


I 4.Les solutions pour développer une application mobile ...........................................6
I.4.1. Le développement natif ..............................................................................7
I.4.2. Le développement web (HTML) ................................................................ 8
I.4.3. Le développement hybride ......................................................................... 8
I 5 Choix de la solution ............................................................................................... 9
I. 6 Les frameworks hybrides .......................................................................................10
I.6.1 Apache Cordova ....................................................................................... 10
I.6.2 React-native ...............................................................................................12
I.6.3 Ionic ......................................................................................................... 12
I.6.4 Xamarin ...................................................................................................14
I.6.5 Flutter .......................................................................................................16
I.7.Choix du framework ............................................................................................. 17
CONCLUSION ................................................................................................................ 18
Chapitre II : L'étude de l'existant

INTRODUCTION........................................................................................................... 19
II 1. Contexte et justification de l'étude................................................................................19
II 2. Objectifs de l'étude...................................................................................................... 20
II 3. Analyse de l'existant concernant différents aspects .................................................... 21
II 3.1 Gestion des stocks..................................................................................................21
II 3.2 Gestion des ventes.................................................................................................22
II 3.3 Gestion des commandes....................................................................................... 22
II 3.4 Gestion des clients.................................................................................................22
II 3.5 Gestion des fournisseurs........................................................................................23
II 4. L’analyse des forces, des opportunités d'amélioration l’application .............................23
II 4.1 Points forts de l’application : ................................................................................23
II 4.2 Opportunités d'amélioration de l’application.........................................................24
II 5 Évaluation des fonctionnalités.........................................................................................25
II 5.1 Fonctionnalités de base requises............................................................................25
II 5.2 Fonctionnalités avancées souhaitées......................................................................25
II 6. Propositions d'amélioration pour une l’application........................................................26
II 6. Identification des besoins et des objectifs................................................................26
II 6.2 Recommandations pour optimiser l'application.....................................................26
II 6.3 Intégration de nouvelles fonctionnalités et technologies d'application..................26
II 7. Mise en œuvre de plan d'action pour les améliorations l’application............................27
II 7.1 Étapes pour la mise en œuvre des améliorations....................................................27
II 7.2 Ressources nécessaires..........................................................................................28
II 7.3 Planification du déploiement pour l’application………………….……………..28
II.8 Évaluation et améliorations mises en place pour l’application ......................................29
II.8 -1. Mesure de l'efficacité des améliorations mises en place……………..………. 29
II.8 -2Analyse des résultats par rapport aux objectifs fixés pour l’application …..……29
II.9 Smart Market ................................................................................................................30
II.9 -1. Définition ...........................................................................................................30
II.9.2 Processus de vente.................................................................................................30
II.9.3 Les fonctions de vente............................................................................................31
II.9.4 Acteurs dans un Smart Market..............................................................................31
II.9.5 Typologie des relations commerciales.................................................................. 34
II.9.6 Les cinq piliers du Smart Market......................................................................... 35
II.9.7. Relation entre Smart Market, e-business & e-commerce......................................36
CONCLUSION .................................................................................................................... 37

Chapitre III : Analyse et conception

INTRODUCTION........................................................................................................... 38
III 1. Cycle de vie du projet ………………………………………………………………..38
III 2. Cycle de vie en V .........................................................................................................39
III 3. Le langage UML .........................................................................................................40

III .3.1 Définition du modèle UML.......................................................................40

III.3.2 Historique...................................................................................................40

III.3.3 Les différents diagrammes UML................................................................41

III .4 Identification des acteurs..............................................................................................42

III .5 Spécification des besoins fonctionnels.........................................................................43

III .5.1 Diagramme de cas d’utilisation ...............................................................44

III .5.2 Spécification des taches............................................................................46

III .5.3 Diagramme de séquence...........................................................................49

III .5.4 Diagramme d’activité...............................................................................52

III .5.5 Diagramme de Classe...............................................................................56

III .5.6 Passage au modèle relationnel.................................................................57

CONCLUSION ...................................................................................................................52

CONCLUSION GENERALE..............................................................................................57
Références Bibliographique...............................................................................

Annexes............................................................................................
Liste des tableaux

Tableau I.1: Fonctionnalités de chaque solution du développement mobile..............10

Tableau II.1 : La relation entre les acteurs ainsi que leurs rôles.........................................33

Tableau III.1 : taches de visiteur .......................................................................................46

Tableau III. 2 : tache de client.............................................................................................47

Tableau III.3 : tache de l’administrateur.............................................................................47

Tableau III.4 : taches du vendeur.......................................................................................48

Tableau III.5 : taches du fournisseure................................................................................49


Liste des figures

Figure I.1: L'icône représentant le système Android............................................................. 3


Figure I.2: L'icône représentant le système iOS.................................................................... 4
Figure I.3: Exemplaire d'un téléphone utilisant BlackBerry OS .......................................... 4
Figure I.4: Exemplaire d'un téléphone sous Symbian OS .................................................... 5
Figure I.5: Les solutions pour le développement mobile ..................................................... 7
Figure I.6: Le principe de la solution hybride ...................................................................... 9
Figure I.7: Logo Apache CORDOVA................................................................................. 11
Figure I.8: Exemple d’applications avec les composants react-native................................ 12
Figure I.9: Les bases du framework Ionic ........................................................................... 13
Figure I.10: Ionic et le multi-plateforme ............................................................................. 13
Figure I.11: Architecture de plugin Cordova de haut niveau ............................................. 14
Figure I.12: L'icône représentant logo Xamarine.................................................................15
Figure I.13: Exemple Création et dessin sur des bitmaps SkiaSharp...................................15
Figure I.14: L'icône représentant Logo Flutter.....................................................................16

Figure II.1: Processus de vente ............................................................................................31


Figure II .2 : Les acteurs de Smart Market...........................................................................32
Figure II .3 : Relation entre e-commerce, e-business et Smart Market...............................36

Figure III.1 Typologie d’un Cycle de vie pour un projet ……………………………………..39


Figure III.2 Schéma cycle de vie V......................................................................................40
Figure III.3 : Diagramme de contexte statique ...................................................................42

Figure III.4 : Diagramme de cas d’utilisation général ........................................................45


Figure III.5 : Diagramme de cas d’utilisation gestion panier..............................................46
Figure III.6 : Diagramme de séquence s’inscrire.................................................................50
Figure III.7 : Diagramme de séquence passer une commande. ...... ....................................51
Figure III.8 : Diagramme d’activité « S’authentifier » ........................................................52
Figure III.9 : Diagramme d’activité «consulter site »...... ....................................................52
Figure III.10 : Diagramme d’activité « effectuer une recherche » ......................................53
Figure III.11 : Diagramme d’activité « créer compte »..... ..................................................53
Figure III.12 : Diagramme d’activité « modifier compte ».... .............................................54
Figure III.13 : Diagramme d’activité «répondre à la commande ».. ...................................54
Figure III.14 : Diagramme d’activité « supprimer fournisseur»..... ....................................55
Figure III.15 : Diagramme de classes.... .............................................................................56

Figure A.1 : schéma de fonctionnement du système client/serveur


Figure A.2 : Architecture Client / Serveur à deux niveaux
Figure A.3: Architecture Client/serveur à trois niveaux
Figure A.4: Architecture matériel du système.
Introduction générale

Les technologies de l’information et de la communication ont été la révolution la plus


importante qui a marqué ces dernières années, grâce aux applications mobiles qui sont devenues une
partie indispensable des smartphones et le nombre d’utilisateurs de ces derniers est en constante
augmentation.

Les technologies mobiles offrent à l’homme la possibilité de contrôler et d'assurer ses


gestions, sans être contraint de se présenter à son entreprise tout le temps. Mais la diversité des
systèmes d’exploitation qui utilisent des technologies différentes ont poussé les développeurs de
mettre en place des méthodes afin de parvenir à développer pour plusieurs plateformes à la fois, d’où
le développement multiplateforme.

Le travail présenté dans ce mémoire concerne la mise en œuvre d'une application


multiplateforme pour assurer la gestion commerciale qui est une solution permettant de :

 Gestion des ventes.


 Gestion des achats
 Gestion des fournisseurs.
 Gestion des facture
 Gestion des articles
 Mise à jour des clients.
 Consulter les tableaux de bord.
 Consulter la disponibilité des produits dans le stock, etc.

Ce mémoire comporte 4 chapitres :

 Le premier chapitre expose les différents systèmes d'exploitation, les langages utilisés pour
chaque système, ainsi que l'étude détaillée des systèmes multiplateformes.
 Le second c’est une Analyse approfondie et l'étude du logiciel existant.
 Le troisième présente l'analyse et la conception de notre application.
 Enfin le quatrième chapitre décrit l'implémentation et la mise en œuvre de notre solution.
Introduction

Au fil des années l’environnement de travail décentralisé et mobile est devenu cruciale
dans le monde en évolution rapide. Cela montre l’importance des applications mobiles. Ces derniers
peuvent aider à opérer au-delà des frontières traditionnelles de l’environnement de bureau.

Ainsi, pour qu’une application mobile soit compatible avec les différents systèmes
d’exploitation, il est nécessaire de faire appel à un développement hybride permettant la bonne prise
en charge de l’application sur différents supports (smartphone, tablette …) mais aussi pour les
différentes plateformes (Apple iOS, Android, Windows Mobile …).

De ce fait, ce chapitre aura pour objectif de présenter quelques notions des systèmes
d’exploitation avec les langages propres à chaque plateforme (développement native), puis on se
focalisera sur le développement multiplateforme, pour finir avec le choix du framework pour le
développement de notre application.

I.1. Applications mobiles

Une application mobile est un logiciel applicatif transportable et autonome, développé


pour être installé sur un appareil électronique mobile. Elle est identifiée par un ou plusieurs
programmes téléchargeables de façon gratuite ou payante depuis un magasin d’applications
"Application Store ", permettant d’accéder à un contenu homogène et exécutable à partir du système
d’exploitation du Smartphone. Les applications mobiles permettent en général un accès plus
pratique, rapide et efficace à des sites en version mobile ou web [1].

I.2. Les systèmes d’exploitation mobiles

Un système d’exploitation ou OS Operating System en anglais est un super logiciel qui


permet de gérer toutes les autres applications (mise en marche, arrêt, allocation des ressources
mémoires) et la communication avec le support physique [2].

2
Un système d’exploitation mobile est un système conçu pour fonctionner sur un
appareil mobile ; c’est un ensemble de programmes, responsable de la liaison entre les
ressources matérielles de l’appareil et ses applications logicielles.

Il se concentre sur la gestion de la connectivité sans fil et celles de différents types d’interface.

Les principaux systèmes sont : Android, iOS, BlackBerry OS, Symbian OS, Windows
Mobile.

I.2.1. Android OS (Operating System)

C’est un OS fondé sur un noyau Linux, conçu par Google et l’Alliance. Celui-ci
équipe aujourd’hui des appareils très variés : Smartphones, tablettes, montres digitales,
autoradios ….
Android est gratuit pour les constructeurs d’appareils souhaitant l’utiliser et partiellement
open source. Il a intégré plusieurs services de Google pour accéder rapidement aux
services d’internet comme Gmail, YouTube, Google Talk, Google Calendar et Google
Maps [3].

Figure I.1: L'icône représentant le système Android.


I.2.2. iPhone (iOS)

Est le système d’exploitation mobile développé par Apple pour l’iPhone. Reconnu
pour sa fluidité et son inituivité ; C’est le système le plus abouti à ce jour.
iOS se caractérise par une interface peu chargée, qui permet l'exécution de tâches
rapidement pour les utilisateurs réguliers, mais qui laisse peu de place à la
personnalisation. IOS est dérivé de Mac OS X et donc d’Unix [4].

Figure I.2: L’évaluation de L'icône représentant le système iOS.

I.2.3. BlackBerry OS

Système du fabricant canadien RIM (Research In Motion), Il fut le premier à


proposer la notification instantanée d’emails, en mode push. Il optimise également
l’utilisation mobile en compressant les pages web, ainsi que les pièces jointes des mails.
Le mail est donc le point fort des BlackBerry qui a fait son succès auprès des cadres et
dirigeants [4].

Figure I.3: Exemplaire d’un téléphone utilisant BlackBerry OS.


I.2.4. Symbian OS

Il est créé par Nokia en 1998 en compagnie de Panosanic , Psiron , Ericsson et


Motorola . Nokia fut ensuite le principal utilisateur de Symbian pendant de nombreuses
années pour équiper ses téléphones mobiles et Smartphones et racheta tous les droits du
consortium Symbian Ltd en 2008. Il offre une plateforme flexible, néanmoins depuis
quelques années , la part de marché de Symbian diminue à cause de concurrence avec d’autres
plateformes [4] .

Figure I.4: Exemplaire d’un téléphone sous Symbian OS.

I.2.5. Windows Mobile

Anciennement appelé Windows Phone, est le système d’exploitation conçu par


Microsoft en 2010. Il est présent sur les smartphones et tablettes tactiles de Windows.
Proposant une interface simple et épurée ainsi que de multiples possibilités de
personnalisation, il permet d'arriver rapidement à l'exécution d'une tâche ce qui a
particulièrement séduit les utilisateurs. Il est basé sur un noyau Windows CE.
I.3. Les outils de développement mobile

Les applications mobiles sont développées sur des ordinateurs ; le langage


utilisé dépend du système sous lequel l'application sera exécutée et chaque plateforme
possède ses propres outils de développement.

Ci-après nous allons présenter les outils de développement pour les trois principales
plateformes mobiles : Android, IOS et Windows Mobile.

a. Android : Pour développer une application mobile sur ce support, le langage de


programmation utilisé sera Java. Le kit de développement proposé par Google :

SDK (Software Développent Kit) autrement dit les outils de développement utilisés seront le
SDK Android. On peut également utiliser le langage C++ avec le NDK (Native Développent
Kit)

b. IOS : C’est la plateforme Apple. Le langage utilisé sera l’Objective-c ou Swift.


Pour développer des applications sur iOS il faut avoir un Mac, installer
l’environnement de développement XCode et avoir le Framework Cocoa Touch.

c. Windows Mobile : Le langage utilisé est généralement le C# accompagné des


technologies web (HTML, CSS, JavaScript) via la technologie WinJS et
l’environnement de développement utilisé est Microsoft Visual Studio.

I.4. Les solutions pour développer une application mobile

Actuellement, Il existe trois solutions possibles pour le développement des


applications pour mobile. Le choix de ses trois solutions se fait en prenant compte du système
d’exploitation sur lequel nous voulons utiliser l’application et des caractéristiques que doit
avoir cette dernière.
Figure I.5: Les solutions pour le développement mobile.

Il est possible de regrouper ces solutions dans les cas suivants : Le développement natif, web
et hybride.

I.4.1. Le développement natif

Le développement natif consiste à développer des applications avec les outils et les
langages propres à chaque système d'exploitation. Le fait d’utiliser cette méthode et
développer une application native permet de bénéficier des éléments et toutes les
fonctionnalités de l’API (GPS, appareil photo, etc.) pour un développement plus rapide et
plus propre.

Ces types d’applications sont téléchargés depuis un magasin d’applications mobiles


(store), puis installées sur le périphérique, elles peuvent aussi fonctionner en mode hors ligne
(sans connexion internet).

Le problème rencontré dans cette méthode est que nous devons développer un
code pour chaque plateforme par exemple, pour les deux plateformes Android et iOS, il
faut avoir deux codes sources complètement différents, par conséquent, le temps et le prix
de développement augmentent et les mises à jour seront pénibles à faire.
I.4.2. Le développement web (HTML)

La deuxième solution consiste à développer des applications en utilisant les


langages web classiques comme : HTML, CSS et JavaScript. Ces applications fonctionnent
comme des sites web, et dans ce cas-là elles ne sont pas concernées par les problèmes de
compatibilité, par contre nous ne pouvons pas profiter de toute la panoplie de fonctionnalités
offertes par l’API du mobile.

I.4.3. Le développement hybride

Certaines communautés ont très bien compris le problème de compatibilité et


proposent d’autres méthodes qui permettent, avec un seul code, de lancer des applications
sur les différentes plateformes d'exécution, “Write once, run every Where”. Une application
hybride est développée à partir des langages web (HTML, JavaScript, CSS…), et qui s’appuie
sur des technologies natives mobiles afin de pouvoir utiliser des fonctionnalités du
smartphone telles que : caméra, GPS, etc…, ces types d’applications sont aussi téléchargées
depuis les magasins d’applications en ligne et installées sur le mobile. La solution la plus
connue étant Titanium Platform pour décrire une application en utilisant du JavaScript et leur
API, une autre nouvelle solution qui vient d'apparaître est l’utilisation du framework Ionic.

L’avantage majeur de ces solutions est de coder avec un langage connu qui est le
JavaScript pour avoir un code unique compatible avec plusieurs plateformes, par exemple,
l’utilisation du framework Ionic permet d’avoir un code source d’applications mobiles
exécutables dans trois systèmes d’exploitation : Android, iOS et Windows Mobile. (Voir
figure I-6)
Figure I.6: Le principe de la solution hybride.

I.5. Choix de la solution

Le choix d’une solution est une phase très importante qui précède le développement
de l’application. Pour développer une application qui doit utiliser le maximum de
fonctionnalités, il est plus intéressant de se former dans le langage souhaité et de la
développer en utilisant les outils propres au système choisi.

Par contre, le développement HTML permet de développer une application assez


rapidement et qui fonctionne de la même manière dans les différentes plateformes
d'exécution, dans ce cas, il faut faire attention aux caractéristiques des mobiles, tandis que la
dernière solution “le développement hybride” est utilisable pour avoir un code multi-
plateformes, c’est une solution très à la mode vu le nombre important des plateformes qui
existent actuellement sur le marché.
Le tableau (I.1) représente les fonctionnalités de chaque solution :

Tableau I.1: Fonctionnalités de chaque solution du développement mobile.

I.6. Les frameworks hybrides


Pour répondre à notre problématique, nous utilisons dans ce travail la solution
“Hybride”, qui nous offre juste ce qu’il nous faut pour développer une application à la fois
pas très lourde et assez riche en fonctionnalités et multi-plateformes.

La solution hybride garantit le multiplateforme ce qui permet un gain de temps non


négligeable et une baisse des coûts importante. Généralement, ces solutions sont développées
en JavaScript4.

Parmi les frameworks des applications mobiles hybrides : Apache Cordova, React-native et
Ionique qu’on détaillera ci-dessous.

I.6.1. Apache Cordova

Cordova (Phone Gap) est un projet réalisé avec Adobe qui a fourni le code source à la
fondation Apache, un framework open source, utilisé pour le développement des applications
mobiles hybrides, il utilise les standards du web ou en d’autres termes, les technologies
HTML, CSS et Javascript.
Figure I.7: Logo Apache CORDOVA (Phone Gap).

Ce framework a connu une grande évolution, et actuellement, il supporte un nombre


important de systèmes d’exploitation mobiles tels que : Android, iOS, Windows Mobile,
BlackBerry ou encore Ubuntu. Nous pouvons penser à Cordova comme un conteneur pour
connecter notre application Web aux fonctionnalités mobiles natives. L'idée est simple :
compilez un Shell à l'aide d'un module
"WebView" chargé de l’application. C'est un peu comme regarder l'application dans un
navigateur très léger.

Tous les points cités jusqu'à maintenant sont considérés comme des avantages pour
Cordova, mais comme tous les frameworks, il a un inconvénient majeur, selon [5],
l’inconvénient de Cordova est que toute la logique métier doit être développée en Javascript.
Cordova est donc adaptée à des projets mobiles avec une faible logique métier. Malgré cet
inconvénient et aussi la faille de sécurité annoncée par IBM Security X-Force recherche en
2014, Cordova reste parmi les meilleures solutions de développement cross- Platform dans
le marché.
I.6.2. React-native

React-native est un framework mobile hybride développé par Facebook en 2015 cible
les applications natives [6]. Il est très récent sur le marché des outils multi-plateformes et
basé sur la bibliothèque JavaScript React de Facebook. En utilisant JSX, il est possible
d’écrire des composants
React Native qui seront compilés en véritables composants natifs. Il s’appuie sur des
connecteurs pour interagir avec des fonctionnalités natives telles que la caméra.
Dans un premier temps, react-native est utilisé pour créer des applications mobiles
compatibles avec les deux plateformes Android et iOS, d'aujourd'hui il intègre la troisième
plateforme qui est Windows Mobile.

Figure I.8: Exemple d’applications avec les composants react-native.

I.6.3. Ionic

Ionic est un framework d'applications mobiles hybride populaire open-source, créé


en 2013. Il se base sur AngularJS10 pour la partie application web du framework et sur
Cordova pour la partie applications natives.
Figure I.9: Les bases du framework Ionic.

Ce framework open source est utilisé pour développer des applications mobiles hybrides
rapidement et facilement et qui seront déployées sur des sites web ou des applications mobiles
avec différentes plateformes telles que : Android, iOS et Windows Mobile.

Figure I.10: Ionic et le multi-plateforme.

Ionic fournit un ensemble de composants d'interface à utiliser dans des applications


hybrides. Ces composants sont similaires à celles fournies par les SDK natif comme : des
onglets et des boîtes de dialogue.

Une installation de système de plugin Cordova est nécessaire pour avoir des
fonctionnalités matérielles supplémentaires. Ainsi il fournit une API utilisée par exemple
pour demander des coordonnées GPS ou accéder à la caméra [7].

Les plugins se composent toujours de deux parties. La première est une partie JavaScript
qui s'exécute dans le WebView qui expose une API agréable à l'application hybride. La
deuxième partie est spécifique à la plate-forme et écrite dans la langue maternelle de la plate-
forme, par exemple Java pour Android et Objective-C pour iOS. Les API natives sont
contrôlées par cette deuxième partie.
La figure (I.11) illustre l'architecture de plugin de haut niveau.

Figure I.11: Architecture de plugin Cordova de haut niveau.

Ionic n'est pas seulement un ensemble de composants d'interface utilisateur, mais aussi un
ensemble d'outils de développement et un écosystème pour la construction rapide
d'applications mobiles hybrides. Il en est à sa version 5.

I.6.4 Xamarin

Xamarin: est une plateforme de développement d'applications mobiles multiplateformes qui


permet aux développeurs d'utiliser le langage de programmation C# pour créer des
applications natives pour iOS, Android et Windows. Elle a été créée en 2011 et a été
acquise par Microsoft en 2016.
Xamarin utilise une architecture de code partagé qui permet aux développeurs d'écrire une
grande partie du code en C# et de le partager entre les différentes plateformes. Cela permet
de réduire considérablement le temps et les coûts de développement tout en offrant une
expérience utilisateur native.

En outre, Xamarin offre des outils de développement intégrés tels que Xamarin Studio et
Visual Studio, ainsi que des bibliothèques de composants prêts à l'emploi pour faciliter le
développement. Elle propose également des fonctionnalités telles que la prise en charge du
cycle de vie de l'application, la détection de plantage et la surveillance en temps réel.

Figure I.12: Logo Xamarine

Figure I.13: Création et dessin sur des bitmaps SkiaSharp


I.6.5 Flutter

Flutter est une plateforme de développement d'applications mobiles multiplateformes open-


source créée par Google en 2017. Elle permet aux développeurs de créer des applications
pour iOS, Android, le web et de nombreuses autres plateformes à partir d'un seul code source.

Flutter utilise le langage de programmation Dart, également développé par Google, et est
basé sur une architecture de widgets personnalisables. Les widgets sont des éléments de
l'interface utilisateur tels que des boutons, des champs de texte et des listes qui peuvent être
personnalisés en fonction des besoins de l'application.

Flutter offre également une mise à jour instantanée de l'interface utilisateur, ce qui signifie
que les développeurs peuvent voir les modifications apportées à l'application en temps réel.
Cette fonctionnalité est très utile pour accélérer le processus de développement et rendre le
développement plus interactif.

Flutter possède également une bibliothèque de widgets prêts à l'emploi appelée Flutter
Widgets qui permet aux développeurs de gagner du temps et de créer des interfaces
utilisateur élégantes et modernes.

Figure I.14: Logo Flutter


I.7. Choix du framework

Il existe plusieurs solutions hybrides multi-plateformes, comme Cordova, Ionic et


react native, la question qui se pose toujours dans le développement mobile est : quel
framework choisir pour notre future application ?

Pour répondre à cette question nous faisons une comparaison entre ces différents frameworks.
Tandis que React Native génère des composants natifs, Ionic génère des pages Web qui
imitent uniquement le comportement natif. Cela signifie que Ionic est plus portable car le
même code basé sur le Web s’exécute de manière cohérente sur les différentes plateformes
web et mobiles. Avec React Native, les composants de l’interface utilisateur doivent être
écrits spécifiquement pour les plateformes sur lesquelles ils seront exécutés. C’est pour cela
que React Native ne peut pas se vanter de suivre le mantra «write once, use every where».

Ionic est basé sur des technologies populaires telles que Angular, CSS, HTLM,
permettant d’être utilisé rapidement par les développeurs.

Ce framework fournit de nombreux composants et plugins. Il est également possible


d’utiliser un kit de développement d’applications riche en fonctionnalités : bibliothèque de
blocs front-end, des composants UI, plugins vous permettant d’accès à l’appareil photo, etc.

De plus, il offre un cadre multi-plateforme pour l'avenir qui dépasse l’api iOS et Android,
car il couvrira selon les prévisions même les téléviseurs intelligents, consoles Xbox,
périphériques
Windows et la liste reste longue, il s’appuie sur une communauté active et il a une interface
ergonomique [8].

Pour terminer, notre choix se tourne vers Ionic qui est une technologie très prometteuse
avec un énorme potentiel, et qui a déjà été appréciée par des géants comme Baidu, Discovery,
Instagram et d'autres.
Conclusion

Ce chapitre nous a permis d'aborder les différents systèmes d'exploitation conçus


pour fonctionner sur les appareils mobiles et leurs outils, Ensuite on a cité les types
d’applications mobiles, les différents frameworks hybrides et la différence entre eux.

Dans le chapitre qui suit, nous allons faire notre étude de l'existant qui consiste à étudier
l'application existante sur bureau afin de pouvoir en extraire la problématique .
Introduction
Le chapitre de l'étude de l'existant joue un rôle essentiel dans le processus de
développement d'une application mobile de gestion commerciale. Il vise la performances,
ergonomie et sécurité. L'objectif de cette étude est de comprendre le paysage actuel des
applications de gestion commerciale mobile, d'identifier les meilleures pratiques et les
lacunes, et de formuler des recommandations pour le développement de notre propre
application.

Dans ce chapitre, nous allons présenter l'application existante qui est une application
mobile de Gestion commerciale, nous Allons Planifier notre application avec plusieurs étapes
Et essayer de renforcer et améliorer l’application par Intégration de nouvelles fonctionnalités
et technologies à l’application et à la fin on présenter l’application comme une Smart Market.

II 1. Contexte et justification de l'étude :


L'avènement d'Internet a révolutionné le domaine du commerce en permettant aux
entreprises de proposer leurs produits et services à un large public via des applications
mobiles de gestion commerciale. Ces plateformes offrent des opportunités de croissance et
de rentabilité considérables en permettant aux différent utilisateurs d’utiliser cette plateforme
de manière pratique et sécurisée. Dans un environnement commercial numérique en
constante évolution, il est essentiel pour les entreprises de s'adapter aux besoins et aux
attentes des utilisateur en proposant une expérience en ligne optimale.

Cependant, de nombreuses applications en ligne rencontrent des défis et des problèmes dans
leurs fonctionnalités existantes. Ces problèmes peuvent inclure une interface utilisateur peu
conviviale, des problèmes de performances, une gestion des produits inefficace, des
difficultés dans le processus de paiement et des limitations dans la gestion des commandes et
des livraisons.

Cette étude de l'existant vise donc à examiner de près les fonctionnalités d'une application
mobile de gestion commerciale spécifique, en identifiant les forces et les faiblesses de ces
fonctionnalités, ainsi que les opportunités d'amélioration. En comprenant les pratiques
existantes et en évaluant leur efficacité, il sera possible de formuler des recommandations
stratégiques pour optimiser l'expérience utilisateur, renforcer la compétitivité de l'application
et accroître la satisfaction des clients.
II 2. Objectifs de l'étude :

Les objectifs de cette étude de l'existant sont les suivants :

 Analyser en détail les fonctionnalités de l'application mobile gestion commerciale


étudiée, en examinant les différentes étapes du processus d'achat, de la gestion des
produits, du panier d'achat, du processus de paiement et de la gestion des commandes
et des livraisons, du processus de suivi des fournisseurs et de stock.

 Identifier les forces et les faiblesses de l'existant, en mettant en évidence les aspects
positifs ainsi que les lacunes et les problèmes rencontrés.

 Évaluer l'expérience utilisateur de l'application, en analysant l'interface utilisateur, la


navigation, la facilité d'utilisation et la réactivité.

 Proposer des recommandations spécifiques pour améliorer les fonctionnalités de


l'application mobile gestion commerciale, en tenant compte des meilleures pratiques,
des tendances du marché et des attentes des utilisateurs.

L'analyse de l'existant permettra de dresser un portrait complet de l'application,


en mettant en évidence les aspects positifs ainsi que les domaines nécessitant des
améliorations. Cela servira de base pour formuler des recommandations stratégiques dans le
but d'optimiser l'application et d'améliorer l'expérience des utilisateurs.

II 3. Analyse de l'existant concernant différents aspects :

Analyse de l'existant concernant différents aspects de la gestion


commerciale :
II 3 1 Gestion des stocks :

- Suivi des niveaux de stock : Tenir à jour un registre précis des quantités disponibles
pour chaque produit afin de savoir quand les réapprovisionner.
- Approvisionnement : Identifier les besoins en matière de réapprovisionnement en
fonction des niveaux de stock actuels et des prévisions de demande.
- Réception des stocks : Recevoir et vérifier les marchandises entrantes pour s'assurer
de leur conformité et de leur qualité.
- Inventaire : Effectuer régulièrement un inventaire physique pour comparer les
quantités réelles avec les quantités enregistrées dans le système.
- Gestion des emplacements de stockage : Organiser et gérer les emplacements de
stockage pour faciliter la recherche, le prélèvement et le réapprovisionnement des
produits.

II 3 2 Gestion des ventes :

- Prise de commandes : Recevoir les demandes d'achat des clients et les enregistrer dans
le système.
- Facturation : Générer les factures correspondantes aux commandes des clients.
- Suivi des paiements : Enregistrer les paiements des clients et effectuer un suivi des
comptes clients.
- Suivi des ventes : Collecter des données sur les volumes de vente, les revenus, les
marges bénéficiaires, les performances par produit ou par client, etc., pour évaluer les
performances commerciales.

II 3 3 Gestion des commandes :

- Traitement des commandes : Gérer les commandes des clients, de la prise de


commande à la livraison.
- Suivi des commandes : Fournir aux clients des mises à jour régulières sur l'état de
leurs commandes, de la préparation à la livraison.
- Gestion des retours : Traiter les retours de produits et les demandes d'échange
conformément aux politiques de retour de l'entreprise.

II 3 4 Gestion des clients :

- Base de données des clients : Collecter et stocker les informations clients, telles que
les coordonnées, les historiques d'achats, les préférences, etc.
- Gestion des relations clients : Maintenir une communication régulière avec les clients
pour répondre à leurs besoins, résoudre les problèmes et renforcer la relation
commerciale.

II 3 5 Gestion des fournisseurs :

- Sélection des fournisseurs : Identifier et sélectionner des fournisseurs fiables et


compétitifs pour l'approvisionnement en produits.
- Passation de commandes fournisseurs : Établir des commandes auprès des
fournisseurs pour réapprovisionner les stocks.
- Suivi des livraisons fournisseurs : S'assurer de la livraison ponctuelle et de la
conformité des produits commandés.

Une bonne gestion de ces aspects contribue à maintenir un flux de travail efficace, à satisfaire
les clients, à optimiser les stocks et à maintenir des relations fructueuses avec les fournisseurs.
Les systèmes de gestion intégrés (ERP) ou les logiciels de gestion commerciale peuvent aider
à centraliser et à automatiser ces processus pour une gestion plus efficace

II 4. L’analyse des forces, et des opportunités d'amélioration


l’application) [9]

Voici un aperçu des forces et des opportunités d'amélioration pour l'application de gestion
commerciale :

II 4 1 Forces de l'application :

1. Interface conviviale : L'application propose une interface utilisateur intuitive et


conviviale, facilitant la navigation et l'utilisation pour les utilisateurs.
2. Fonctionnalités de base solides : L'application offre les fonctionnalités essentielles
pour la gestion des ventes, des commandes, des clients et des fournisseurs, répondant
aux besoins de base des utilisateurs.
3. Suivi des stocks efficaces : L'application permet un suivi précis des niveaux de stock,
des mouvements d'inventaire et des mises à jour en temps réel, aidant ainsi à éviter
les ruptures de stock et à optimiser les commandes.
4. Gestion des commandes simplifiée : L'application facilite le processus de prise de
commandes, de traitement des commandes et de suivi des livraisons, offrant une
expérience fluide aux utilisateurs.
5. Rapports et analyses : L'application propose des fonctionnalités de génération de
rapports et d'analyses, permettant aux utilisateurs d'obtenir des informations
précieuses sur les performances commerciales et d'aider à la prise de décision.

II 4 2 Opportunités d'amélioration de l'application :

1. Fonctionnalités avancées : Il peut être bénéfique d'ajouter des fonctionnalités


avancées telles que la gestion des promotions, la gestion des remises, la gestion des
contrats clients, etc., pour répondre aux besoins spécifiques des utilisateurs et
améliorer leur expérience.
2. Intégrations avec d'autres systèmes : L'application pourrait bénéficier de l'intégration
avec d'autres systèmes pertinents tels que la comptabilité, la gestion des ressources
humaines, etc., pour une gestion plus complète et cohérente de l'entreprise.
3. Personnalisation : Offrir aux utilisateurs la possibilité de personnaliser l'application
en fonction de leurs préférences et de leurs besoins spécifiques peut améliorer
l'adaptabilité et l'adoption de l'application.
4. Sécurité renforcée : Renforcer les mesures de sécurité, telles que l'authentification à
deux facteurs, le chiffrement des données sensibles, la sauvegarde régulière des
données, pour assurer la confidentialité et l'intégrité des informations commerciales.
5. Support et formation : Fournir un support technique robuste et une formation adéquate
aux utilisateurs de l'application pour les aider à tirer pleinement parti de ses
fonctionnalités et résoudre tout problème éventuel.

En résumé, l'application de gestion commerciale présente des forces telles qu'une interface
conviviale, des fonctionnalités de base solides et un suivi efficace des stocks. Cependant, il
existe des opportunités d'amélioration telles que l'ajout de fonctionnalités avancées,
l'intégration avec d'autres systèmes, la personnalisation, la sécurité renforcée et le support
utilisateur. En répondant à ces opportunités, l'application peut offrir une expérience encore
meilleure et répondre aux besoins spécifiques des utilisateurs.
II 5 Évaluation des fonctionnalités :

L'évaluation des fonctionnalités est une étape importante pour déterminer quelles
fonctionnalités sont nécessaires et souhaitées dans l'application mobile de gestion
commerciale. Voici comment procéder :

II 5 1 Fonctionnalités de base requises :

 Gestion des produits : Ajout, modification et suppression de produits, gestion des


catégories, gestion des prix.
 Gestion des clients : Ajout, modification et suppression de clients, gestion des
informations client, historique des transactions.
 Gestion des commandes : Création, modification et suivi des commandes, gestion des
retours.
 Gestion des stocks : Suivi des niveaux de stock, alertes de réapprovisionnement,
gestion des mouvements de stock.
 Gestion de la facturation : Création de factures, génération de bons de livraison,
gestion des paiements.
 Rapports de base : Génération de rapports sur les ventes, les revenus, les produits les
plus vendus.
II 5 2 Fonctionnalités avancées souhaitées :
 Gestion des promotions et des remises : Création et gestion de promotions spéciales,
application de remises sur les produits.
 Intégration avec des systèmes tiers : Possibilité d'intégrer l'application avec d'autres
systèmes tels que la comptabilité, les outils de marketing.
 Gestion des campagnes marketing : Création et suivi de campagnes marketing,
gestion des prospects.
 Gestion des stocks avancée : Suivi des numéros de série, gestion des lots.
 Gestion des clients avancée : Segmentation des clients, suivi des interactions avec
les clients, gestion des préférences des clients.
 Analyse avancée : Génération de rapports analytiques détaillés, analyse prédictive.
Comparaison des fonctionnalités des applications étudiées :
II 6. Propositions d'amélioration pour une l’application :

II 6.1 Identification des besoins et des objectifs :

 Effectuer une analyse approfondie des besoins et des objectifs de l'application en


termes de performances, de convivialité et d'expérience utilisateur.
 Recueillir les commentaires des utilisateurs actuels et potentiels pour identifier les
lacunes et les domaines d'amélioration prioritaires.
 Définir des objectifs clairs, mesurables et réalisables pour guider les améliorations de
l'application.

II 6.2 Recommandations pour optimiser l'application :

 Améliorer les performances techniques en optimisant le code, en utilisant la mise en


cache des pages et en adoptant des technologies de serveur efficaces.
 Optimiser l'expérience utilisateur en simplifiant la navigation, en améliorant la
recherche de produits et en rendant le processus d'achat plus fluide.
 Mettre en œuvre des tests utilisateurs pour identifier les points faibles de l'application
et les zones qui nécessitent des ajustements.
 Améliorer la réactivité du service client en réduisant les délais de réponse et en
fournissant des options de support variées, comme le chat en direct ou les réseaux
sociaux.
 Renforcer la sécurité de l'application en mettant en place des protocoles de
chiffrement des données et en effectuant régulièrement des audits de sécurité.

II 6.3 Intégration de nouvelles fonctionnalités et technologies d'application :

 Intégrer des fonctionnalités de personnalisation, telles que des recommandations de


produits basées sur les préférences et l'historique d'achat des utilisateurs.
 Ajouter des fonctionnalités sociales, telles que des avis et des commentaires
d'utilisateurs, pour renforcer la confiance et encourager l'engagement.
 Mettre en place des options de paiement supplémentaires, comme les portefeuilles
électroniques ou les méthodes de paiement sans contact, pour offrir plus de choix aux
utilisateurs.
 Explorer l'intégration de nouvelles technologies, comme la réalité augmentée, pour
permettre aux utilisateurs de visualiser les produits en 3D ou de les essayer
virtuellement.
 Mettre en place des outils d'analyse et de suivi pour mesurer les performances de
l'application, identifier les tendances d'achat et prendre des décisions basées sur les
données.

Ces propositions d'amélioration sont des pistes à explorer pour optimiser l'application. Il est
recommandé de les adapter en fonction des besoins spécifiques de l'entreprise, des ressources
disponibles et des attentes des utilisateurs. Une approche itérative et basée sur les retours des
utilisateurs permettra de continuer à améliorer l'application et de répondre aux évolutions du
marché.

II 7. Mise en œuvre de plan d'action pour les améliorations


l’application :

II 7.1 Étapes pour la mise en œuvre des améliorations :

1. Évaluer et prioriser les améliorations identifiées lors de l'analyse de l'existant.


2. Développer une feuille de route détaillée en définissant les objectifs spécifiques, les
échéances et les responsabilités.
3. Mettre en place une équipe dédiée ou assigner des ressources internes pour gérer le
projet d'amélioration.
4. Effectuer des recherches approfondies et des tests pour choisir les technologies et les
fonctionnalités à intégrer.
5. Développer un plan de développement itératif pour implémenter les améliorations de
manière progressive.
6. Effectuer des tests rigoureux pour s'assurer du bon fonctionnement des nouvelles
fonctionnalités et de la stabilité de l'application.
7. Mettre en place des processus de suivi et d'évaluation pour mesurer l'impact des
améliorations et ajuster les stratégies si nécessaires.
8. Documenter les modifications apportées à l'application, y compris les nouvelles
fonctionnalités, les améliorations de performance et les changements de flux de
travail.
II 7.2 Ressources nécessaires :

 Développeurs web pour implémenter les améliorations techniques.


 Web designers pour améliorer l'interface utilisateur et l'expérience utilisateur.
 Responsables de projet pour coordonner les différentes étapes de mise en œuvre.
 Testeurs pour effectuer des tests de qualité et d'acceptation.
 Équipe de support client pour gérer les demandes des utilisateurs et fournir un support
après le déploiement.

II 7.3 Planification du déploiement pour l’application :

1. Identifier les périodes de moindre activité pour minimiser l'impact sur les utilisateurs.
2. Diviser les améliorations en versions ou en itérations pour faciliter le déploiement
progressif.
3. Établir un plan de sauvegarde et de restauration en cas de problème lors du
déploiement.
4. Communiquer régulièrement avec les utilisateurs pour les informer des améliorations
à venir et de leur impact sur l'application.
5. Effectuer des tests de validation en conditions réelles avant le déploiement définitif.
6. Surveiller attentivement les premières réactions des utilisateurs après le déploiement
et être prêt à résoudre rapidement les problèmes éventuels.
7. Assurer une assistance et un support supplémentaires pour les utilisateurs qui peuvent
rencontrer des difficultés avec les nouvelles fonctionnalités.
8. Collecter les retours des utilisateurs et les données d'utilisation pour évaluer
l'efficacité des améliorations et orienter les ajustements futurs.

Il est important de noter que la mise en œuvre et le plan d'action peuvent varier en fonction
des spécificités de chaque projet. La planification et la gestion de projet doivent être adaptées
en fonction des ressources disponibles, des contraintes de temps et des objectifs de
l'entreprise.
II 8. Évaluation et améliorations mises en place pour
l’application :

II 8.1 Mesure de l'efficacité des améliorations mises en place :

 Collecter des données quantitatives, telles que les taux de conversion, le temps moyen
passé sur le site, le taux de rebond, les ventes réalisées, etc.
 Analyser les données qualitatives, telles que les retours des utilisateurs, les
commentaires, les enquêtes de satisfaction, etc.
 Comparer les métriques avant et après les améliorations pour évaluer l'impact réel des
changements apportés.
 Utiliser des outils d'analyse pour mesurer la performance de l'application, comme
Google Analytiques, pour obtenir des données précises et fiables.
 Effectuer des tests utilisateurs pour évaluer l'expérience utilisateur après les
améliorations.

II 8.2 Analyse des résultats par rapport aux objectifs fixés pour
l’application :

 Comparer les résultats obtenus avec les objectifs spécifiques définis lors de l'étape
d'identification des besoins et des objectifs.
 Évaluer si les améliorations ont permis d'atteindre les objectifs de performance, tels
que l'augmentation des ventes, la réduction des taux de rebond, etc.
 Analyser si les améliorations ont eu un impact positif sur l'expérience utilisateur, en
se basant sur les retours des utilisateurs et les métriques d'engagement.
 Identifier les domaines où les résultats sont conformes aux attentes et ceux qui
nécessitent des ajustements supplémentaires.
 Utiliser les données collectées pour prendre des décisions éclairées sur les
améliorations futures et les ajustements nécessaires.

L'évaluation des résultats doit être continue et itérative. Il est important de suivre les
métriques et de collecter les commentaires des utilisateurs de manière régulière pour s'assurer
que les améliorations apportées à l'application répondent aux attentes et aux besoins des
utilisateurs. Cette évaluation permettra d'identifier les succès et les opportunités
d'amélioration supplémentaires pour maintenir et améliorer en permanence l'application en
fonction des évolutions du marché et des exigences des utilisateurs.

II.9 Smart Market

II.9 -1. Définition

Les Smart Markets sont l’avenir de e-commerce, principalement une plateforme sur lequel
se rencontrent les acheteurs ; les vendeurs et les fournisseurs pour échanger leurs biens et
leurs services en s’assurant que les transactions se dérouleront dans les meilleures conditions
en toute transparence et sécurité, géré par l’opérateur Smart Market.

L’opérateur Smart Market met en relation les acheteurs ; les vendeurs et fournisseur en leurs
mettant à disposition des outils et des services pour faciliter la mise en relation et les échange
comme les vitrines, la gestion ce stock et le service client et les fournisseurs. Dans une Smart
Market on peut trouver deux types d’opérateurs :

- Hybride : c’est un opérateur et commerçant en même temps, il peut poser ces


articles et les vendre sur la plateforme
- Pure Player : c’est juste un opérateur intermédiaire, il n’est pas un concurrent
des vendeurs sur la plateforme [10]

Des espaces de vente sont réservés pour chaque marchand afin de profiter des fonctionnalités
de la plateforme d’e-commerce, on peut distinguer deux approches de Smart Market : [10]

- Généraliste : offre une grande gamme de produits dans plusieurs catégories.


- Verticale : se concentre sur un secteur d’activité particulier.

II.9.2 Processus de vente


Pour effectuer une commande de vente, c'est-à-dire une vente, il faut avoir en
données de bases : les articles, les clients et les fournisseurs. Ci-dessous est décrit le
processus de commande de vente à connaître afin d'effectuer, dans l'ordre, une
commande de vente. Nous avons schématisé le processus de vente comme le présente
la figure (II.1).
Figure II.1: Processus de vente.

II.9.3 Les fonctions de vente

 Gestion des commandes

 Gestion des livraisons

 Gestion des transporteurs

 Gestion des factures et acompte

 Gestion des retours et avoirs

 Multi adresses (donneur d’ordre, livraison et facturation)

 Gestion des devis

 Gestion des commandes

II.9.4 Acteurs dans un Smart Market

Dans un Smart Market on distingue des acteurs principaux acteurs et d’autres secondaires,
qui ont des rôles spécifiques et complémentaires afin de concrétiser une vente. La figure II .2
représente les différents acteurs :
Figure II .2 : Les acteurs de Smart Market. [11]

Le tableau II.1 représente la relation entre les acteurs ainsi que leurs rôles : [10]
Acteurs
Rôles
principaux
Sont des acteurs qui gèrent la plateforme et garantissent une confiance
aux utilisateurs. Ils mettent les vendeurs et les acheteurs en relation, et
Administrateur
garantissent la fluidité des échanges afin d’offrir une meilleure
transaction. Et le même rôle pour les fournisseur
Sont des personnes présentent dans Smart Market pour vendre leurs
produits et leurs services, ils peuvent être des vendeurs professionnels
Vendeur ou non professionnels. Leurs intérêts sont d’accueillir des nouveaux
clients en présentant leurs produits en meilleurs prix avec le bon
service.
Peuvent être des particuliers ou des entreprises qui prennent en charge
Acheteur la politique d’achat en consultant une vaste sélection de produits
proposés par une diversité de vendeurs.
Peuvent être des personne, particuliers ou des entreprises Ils financent
fournisseur Smart Market avec les produits nécessaires dont elle a besoins ; Et
parfois, ils offrent un produit spécial qu'ils veulent vendre.
Acteurs
Rôles
secondaires
Sont des acteurs qui construisent Marketplace et proposent des
solutions techniques.
Editeurs de solution Pour ajouter des fonctionnalités techniques, il existe des plugins CMS
Proposé par des logiciels de gestion de contenu d’e-commerce afin de
transformer un site de vente en ligne en marketplace.
Leurs solutions assurent d’exporter les catalogues des marchands sur
des différents marketplace. Ils se chargent aussi d’adapter les
Intégrateurs de flux
informations de chaque produit (article, prix, quantité, disponibilité...)
sur chaque support e-commerce.
Sont responsables d’un bon acheminement des commandes afin de
Logisticiens
satisfaire le client.

Tableau II.1 : La relation entre les acteurs ainsi que leurs rôles [10]
Notre outil de gestion commerciale vous permet de suivre et de gérer de manière
méthodologique les différentes étapes de la relation client (depuis le premier contact prospect
jusqu’au paiement final et la fidélisation).

https://leadertech-solutions.com/gestion-commerciale/

Il permet notamment :

 La gestion des clients : la gestion des contacts, l’historique de la relation client, la


prospection, le démarchage, le suivi client, la fourniture, la vente, etc.
 La gestion des livraisons : la gestion des fournisseurs, commandes, gestion de stock,
problème qualité, modification commande, etc.
 La gestion des ventes.
 La gestion des achats.
 La gestion financière : facture, devis, avoir, bon de commandes, bons de livraison,
règlement/suivi de paiement.
 La gestion commerciale : suivi commercial, délai de paiement, retards de paiement,
relance, etc.
 La gestion administrative et juridique : recouvrement, relance, action judiciaires,
retard de paiement, fidélisation, …
 Une meilleure analyse commerciale grâces aux statistiques (type de commande par
client, délais de livraison, délai de facturation, délais de paiement, récurrence des
commandes, taux de réclamation, …).

II.9.5 Typologie des relations commerciales

Les entreprises et les consommateurs sont les deux acteurs plus courants au commerce
électronique. Il existe quatre types principaux d’e-commerce, qu’ils ont cités dans la source
suivante [12]:

B2C (Business to Consumer) : commerce électronique entre entreprise et un grand public


grâce à des catalogues en ligne. C’est la forme de e-commerce qui connait la plus forte
progression.

B2B (Business to Business) : commerce électronique entre des entreprises, elle est plus
ancienne que B2C
C2B (Consumer to Business) : commerce électronique dont un consommateur est au service
de l’entreprise, comme appels d’offres d’emplois d’un projet.

C2C (Consumer to Consumer) : commerce électronique entre deux consommateurs sur des
sites qui offrent des annonces sur internet, ou peut-être même deux particuliers peuvent
vendre et acheter en ligne.
II.9.6 Les cinq piliers du Smart Market.

Une Smart Market efficace repose sur cinq piliers nécessaires : [10]
• Le trafic : est le palier le plus important dans une Smart Market, car cette dernière est
en relation directe avec le trafic, plus il y a des visiteurs plus les opportunités de
transactions seront nombreuses et la visibilité des articles des vendeurs augmente.
• Le mix produit : on peut distinguer deux types de Smart Market :
 Des Smart Market avec une faible limite imposée aux vendeurs et la restriction des
quasi-inexistant, le vendeur peut poser tous types d’articles.
 Des Smart Market ou les opérateurs définissent précisément quels produits mis en
vente avec une maitrise de catalogue, chaque article doit respecter le catalogue qui lui
convient.
• Le cadre légal : les Smart Market n’imposent pas le même niveau d’exigence au
niveau juridique. Pour certains Smart Market les contrats sont bien contrôler pour les
échanges des articles sensibles. Et pour d’autres cette exigence est moindre,
l’identification des intervenant n’est pas trop poussé.
• Les outils de communication et de la gestion de cycle de vente :
 Les outils de communication entre les acheteurs et les vendeurs sont le facteur le plus
importants de la réussite de concrétisation d’une vente et de l’après-vente, sa peut être des
messageries, chat, Skype et beaucoup d’autres outils.
 Pour la gestion du cycle de vente, les Smart Market affichent aux vendeurs la quantité
de stocks de ses produits mise à jour au temps réel. Ainsi que les opérateurs suivent les
transactions d’achat avec tous les états d’avancement de la commande jusqu’au la réception
d’article par le client.
• Le paiement : cette partie est très sensible, elle doit être bien Contrôlée. Pour avoir
la confiance du client il faut leur assurer que les opérateurs enregistrent la transaction dans
un environnement sécurisé, et que leurs données sont bien protégées.
II.9.7. Relation entre Smart Market, e-business & e-commerce

• La réalisation de Smart Market se base principalement sur l’e-business et l’e-


commerce, comment ça ? La figure II .3 représente la relation entre ces derniers.

Figure II .3 : Relation entre e-commerce, e-business et Smart Market.

• Pour une bonne planification des techniques technologiques et de nouvelles règles e–


business qui mènent à la fidélisation des clients d’une manière différente et plus efficace
ainsi une manière plus intelligente pour organiser les opérations et les ressources internes de
Smart Market (analyse de donnée, motivation de personnelles et la gestion des ressources
humaine …etc.) Afin de mettre notre client (marchand) à l’aise et gagner sa confiance, vu
que ces règles vont être présentées et publiées sur le marché, et par la suite attirent le
maximum de clients.
• Ensuite mettre en disposition de marchand sa propre plateforme qui va être sa propre
boutique en ligne en lui garantissant une puissante logistique telle que les prestataires de
payement sécurisés afin de réaliser une bonne solution e-commerce qui convient à
l’utilisateur finale.
• Et pour conclure la Smart Market est l’avenir d’e-commerce car ce modèle est
aujourd'hui le meilleur moyen de faire de l'e-commerce de manière rentable et avec une forte
croissance.
Conclusion

L’étude de l'application mobil de gestion commerciale permis d'identifier les forces, les
faiblesses et les opportunités d'amélioration. En mettant en œuvre les propositions
d'amélioration et en évaluant régulièrement les résultats, l'application peut être optimisée
pour offrir une meilleure expérience utilisateur et atteindre les objectifs commerciaux fixés.
La prise en compte des perspectives futures permettra de continuer à améliorer l'application
en fonction des tendances technologiques et des attentes des utilisateurs.
1. Introduction
Afin d’une bonne gestion de projet et de mieux structurer notre travail, nous avons
décidé à faire une conception basée sur les diagrammes afin de mieux comprendre et
schématiser notre système pour but de faciliter le développement et avoir un travail efficace.

III.1. Cycle de vie du projet [11]

Pour réaliser notre projet dans les meilleures conditions, dans les pus bref d’hiller, assurer la
bonne gestion de projet et améliorer leur performance, augmenter la productivité et accélérer
la croissance ; la ligne doit être suivi :

• recueil, analyse et validation des besoins


• Spécifications fonctionnelles et techniques
• Conception technique
• Développement
• Tests et recettes
• Mise en production
• Formation des utilisateurs.
Celle Pour assurer une meilleure réalisation de nôtres projets
Figure III.1 Typologie d’un Cycle de vie pour un projet [11]

III.2. Cycle de vie en V

Le model de cycle de vie en V est actuellement l’outil de gestion de projet le plus utilisé.
Deux types de taches sont réalisés en même temps : verticalement, on prépare l’étape
suivante et horizontalement, on prépare la vérification de la tâche en cours. Les étapes de
test sont nombreuses ce qui rend le risque de l’erreur moins élevé et c’est pour cela que nous
avons choisis cet outil durant notre processus de développement. [13]
Figure III.2 Schéma cycle de vie V [13]

III.3 Le langage UML

III.3.1 Définition du modèle UML


UML (Unified Modeling Language) : UML se définit comme un langage de modélisation
graphique et textuel destiné à comprendre et décrire des besoins, spécifier et documenter
des systèmes, esquisser des architectures logicielles, concevoir des solutions et
communiquer des points de vue. [14]

III.3.2 Historique

UML est le résultat de la fusion de trois méthodes d’analyse orientées objet : la méthode
OOD (Object Oriented Design), la méthode OMT (Object Modeling Technique) et la
méthode OOSE (Object Oriented Software Engineering). À l’initiative de la société
Rational Software, les auteurs principaux de ces trois méthodes se sont mis d’accord sur un
langage de modélisation unifié. Celui est devenu une référence lorsqu’il a été retenu par un
groupement public, l’Object Management Group (OMG) en 1997 [15]. UML était
initialement un ensemble de diagrammes permettant de représenter un système
informatique pour les développeurs travaillant avec une approche orientée objet. Après son
évolution en 2004 vers la version UML2, ce langage de modélisation a été utilisé pour
décrire un système d’information, notamment au niveau du cahier des charges.

III.3.3 Les différents diagrammes UML

Un diagramme UML est une représentation graphique qui s’intéresse à un aspect précis du
modèle et chaque type de diagramme possède une structure.
La combinaison de chaque type de diagramme UML offre une vue complète des aspects
statiques et dynamiques d’un système.
 Diagrammes structurels :
o De classes (class diagram)
o D’objets (Object diagram)
o De composants (component diagram)
o De structure composite (composite structure diagram)
o De déploiement (deployment diagram)
o De paquetages (package diagram).
 Diagrammes de comportement :
o De cas d’utilisation (use case diagram)

o D’activité (activity diagram)

o D’états-transition (state diagram)

 Diagrammes d’interaction :
o De séquence (séquence diagram) sert à développer en analyse les
scénarios d’utilisation du système.
o Vue générale d’interaction (interaction overviewdiagram)

o De communication (communication diagram)

o De temps (timing diagram) [16]


Dans notre projet, les diagrammes qu’on va utiliser sont :
 Diagramme de cas d’utilisation
 Diagrammes de séquences
 Diagrammes d’activités
 Diagrammes de classes

III.4 Identification des acteurs

Pour montrer les acteurs du système et ces multiplicités, c’est-à-dire combien d’acteurs
accèdent au système, à tout montent on utilise le Diagramme de contexte statique

Figure III.3 : Diagramme de contexte statique

Les acteurs qui interviendront dans notre système sont :

Le visiteur : la personne qui accède et visite le site web, non enregistrée au préalable.
Le client : toute personne enregistrée (inscrite), connectée au site pour effectuer une
commande de produit.
Le Vendeur : toute personne enregistrée (inscrite) au site pour vendre les produits.
L’administrateur : la personne qui se charge de la gestion du site.

Le fournisseur : qui nous fournit des marchandises.


III.5 Spécification des besoins fonctionnels

• Côté Client

✓ Inscription.
✓ Consulter le catalogue des produits.

✓ Rechercher des produits.


✓ Contacter l'organisme.

✓ Faire une commande.


✓ Afficher la liste de ses commandes
- Voir les détails d'un achat.
- Annuler la réservation d'un produit.
- Ajouter une commande.
✓ Gérer son compte
- Accéder aux détails de son compte.
- Modifier ou actualiser ses informations.
✓ Gérer le panier de choix
- Ajouter un produit au panier.
- Supprimer un produit du panier.
- Voir détails du produit.

• Côté Administrateur : Après l'authentification, l'administrateur sera redirigé vers son


Application administrateur qui lui permet de :

✓ Afficher liste des clients


- Afficher la liste des clients et leurs réservations.
- Contacter un client.
- Gérer les clients
▪ Afficher les informations d’un client.
▪ Modifier un client.
▪ Supprimer un client.
✓ Gérer le catalogue
- Ajouter un produit.
- Modifier un produit.
- Supprimer un produit.
- Voir les détails d’un produit.
✓ Afficher toutes les commandes des clients
- Gérer les commandes des clients
▪ Valider les commandes d'un client.
▪ Annuler les commandes d’un client.
✓ Contacter un client.
✓ Modifier les informations de l’organisme.

Côté fournisseur

✓ Gérer les commandes


- Imprimer les bon de commande
- Contacter l’administrateur.
- Voir les commandes
- Proposer les prix des produit
✓ Gérer les produits
- Publier les produits
- Ajouter un produit.
- Modifier un produit.
- Supprimer un produit.
- Voir les détails d’un produit.
✓ Gérer les livraisons de leur produit

III.5.1 Diagramme de cas d’utilisation

 Diagramme de cas d’utilisation général

Identification des cas d’utilisation : Un cas d’utilisation (use case) représente un


ensemble de séquences d’actions réalisées par le système et produisant un résultat
observable intéressant pour un acteur particulier. Les acteurs de notre système et leurs
tâches sont présentés dans le diagramme de cas d’utilisation général suivant :

Figure III.4 : Diagramme de cas d’utilisation général


 Diagramme de cas d’utilisation gestion panier

Figure III.5 : Diagramme de cas d’utilisation gestion panier

III.5.2 Spécification des taches

a. Taches de visiteur

Tâche Actions
Recherches dans le site Consulter les annonces par wilaya, par
catégorie....
S’inscrire Saisir le formulaire d’inscription
pour devenir membre
Contacter l’administrateur et les membres Envoyer des messages à l’administrateur et
aux membres

Tableau III.1 : : taches de visiteur


b. taches de client

Tâche Actions
s’authentifier sélectionner le lien «connexion»
saisir le pseudo et le mot de passe
et l’envoyer

Gestion du message S’authentifier


Envoyer des messages aux membres Lire
les messages reçus
ajouter des produits au panier(remplir le Choisir un produit désiré
panier d’achats) cliquer sur le bouton « ajouter au panier »
passer une commande ajouter les produits voulus au panier cliquer
sur le bouton « valider et payement »
annuler une commande Accès à son panier cliquer sur « retirer » pour
les produits non voulu
se déconnecter sélectionner le lien «se déconnecter »

Tableau III 2 : tache de client

b. Tache de l’administrateur

Tâche Actions
Gestion des membres S’authentifier
Consulter les listes des membres
Supprimer membre (client/fournisseur)
Modifier ou ajouter
Gestion des catégories Accéder à la table « catégorie »
ajouter, supprimer ou modifier la
catégorie

Gérer son espace / ses articles / commandes Même scenario du fournisseur

Consulter la liste du produit et gérer le stock Accéder à la table« produit » Affichage


de la liste du produits ajouter, supprimer
ou modifier un produit
Gestion des messages Même scenario du client
Vérification des commandes/ventes/factures Accéder à la table « commande »
vérifier la création des commandes /ventes
factures

Tableau III 3 : tache de l’administrateur


c. Taches du vendeur

Tâche Actions
s’authentifier Même scenario du client
Gestion des messages Même scenario du client

Gestion de ses articles(produits) S’authentifier Afficher toutes ses articles


Mettre à jour ses produits
(ajout, modification, suppression).

Ajouter un produit Accéder à son espace.


Sélectionner le lien « produits ».
Cliquer sur « ajouter un produit ».
Remplir le formulaire « ajout d’un produit »
et l’envoyer.
Gestion de commandes de ses annonces Valider la commande/supprimer

consulter les commandes de ses annonces Sélectionner le lien « gérer commandes »


consulter les commandes dans le tableau des
commandes

Valider les commandes Sélectionner le lien« commandes » consulter


les commandes dans le tableau des
commandes
Cliquer sur le bouton« valider » à
côté de la commande.

Tableau III 4 : taches du vendeur


d. Taches du fournisseur

Tâche Actions
s’authentifier Même scenario du client
Gestion des messages Même scenario du client

Gestion de ses articles(produits) S’authentifier Afficher toutes ses articles


Mettre à jour ses produits
Publier les produits s’ajoute, modification
Suppression).
Ajouter un produit Accéder à son espace.
Sélectionner le lien « produits ».
Cliquer sur « ajouter un produit ».
Remplir le formulaire « ajout d’un produit »
et l’envoyer.
Gestion de commandes de ses annonces Imprimer les bon de commande
Contacter l’administrateur.
Voir les commandes
Proposer les prix des produit
consulter les commandes de ses annonces Sélectionner le lien « gérer commandes »
consulter les commandes dans le tableau des
commandes

Tableau III 5 : taches du fournisseur

III.5.3 Diagramme de séquence


a. Diagramme de séquence inscription au site

Système

Figure III .6 : Diagramme de séquence s’inscrire


c. Diagramme de séquence passer une commande

Figure III.7: Diagramme de séquence passer une commande


III.5.4 Diagramme d’activité
Diagramme d’activité représente le comportement d’une opération ou d’un casd’utilisation,
en termes d’actions.
 Diagramme d’activité « S’authentifier »

Figure III.8 : Diagramme d’activité « S’authentifier »

 Diagramme d’activité « consulter site »

Figure III.9 :Diagramme d’activité «consulter site »


Diagramme d’activité « effectuer une recherche »

Figure III.10 : Diagramme d’activité « effectuer une recherche »

 Diagramme d’activité « créer compte »

Figure III.11 : Diagramme d’activité « créer compte »


Diagramme d’activité « modifier compte »

Figure III.12:Diagramme d’activité « modifier compte »

 Diagramme d’activité «répondre à la commande »

Figure III.13 :Diagramme d’activité «répondre à la commande »


Diagramme d’activité « supprimer fournisseur »

Figure III.14 : Diagramme d’activité « supprimer fournisseur »


III.5.5 Diagramme de Classe
Notre diagramme de classe est présenté dans la section suivante :

Figure III.15 : Diagramme de classes


III.5.6 Passage au modèle relationnel
Après avoir mis en place le modèle conceptuel du système, nous allons transformer cette vision
conceptuelle des données en une vue logique. Pour cela, nous allons utiliser des règles de passage
du niveau conceptuel au niveau logique des données.
Pour la création des données logiques de notre système, nous utiliserons le modèle relationnel. Ci-
dessous les règles de passage du modèle conceptuel des données au modèle logique :
- Règle 1: chaque classe du diagramme UML devient une relation.
- Règle2: Il faut ajouter un attribut de type clé étrangère dans la relation fils de l’association,
l’attribut ajouté porte le nom de la clé primaire de la relation père de l’association 1-N, 1-1.
- Règle 3: Pour les associations de type N-N, on crée une relation, sa clé primaire est la
composition des deux clés primaires des classes formant l’association.

Selon les règles de passage au modèle relationnel, notre schéma relationnel est comme suit :

Client(id_cl , pseudo , mdp , nom ,prénom ,email ,ntel ,wilaya , adresse, statut,#id_commande )
fournisseur(id_vd ,pseudo ,mdp , nom ,prénom ,email ,ntel ,wilaya , adresse, statut,#id_prd )
Produit(id_prd, titre , description , photo , prixU, stock_entrée, stock,#id_cat)
Catégorie(id_cat , nom_cat)
Commande(id_commande,Montant,Date_enrg,délaiLiv,AdressLiv,modePaiement,#id_cl,#id_prd)
Details_commande(id_det_cmd, stock_sortie ,prix ,etat ,# id_commande)
Message(id , #id_cl , #id_vd , message, créer_à , titre)

Conclusion

Dans ce chapitre, nous présentons les objectifs de notre travail ainsi que La conception du notre
système en utilisant le model UML.
Dans le chapitre suivant, nous allons présenter la réalisation du notre projet.
Conclusion générale

Le travail présent dans ce mémoire se situe dans le cadre de la conception et la réalisation d’une
Smart Market sous forme d’application mobile. Dans le but de créer des boutiques virtuelles sur la
plateforme pour la gestion commerciale.

Afin d’évaluer la performance de notre application nous avons effectué une recherche pour connaitre
et analyser les systèmes similaires existants, dans le but d’améliorer et d’ajouter quelques
fonctionnalités pour rendre l’application plus riche, répond aux besoins des utilisateurs et surtout
pour un bon déroulement des différentes gestions :

- Gestion des relations avec les clients,


- Gestion des fournisseurs
- Gestion des commandes,
- Gestion des produits (ajouter, modifier ou supprimer des produits)
- Etablir les tableaux de bord.
- Assurer la bonne comptabilité.

Pour la conception de ces fonctionnalités nous avons travaillé avec la généralisation des classes pour
qu’on puisse faire les mis à jour et l’ajout des nouveaux modules facilement.

Nous avons pu noter que les résultats de notre projet sont très satisfaisants, et nous somme conscient
que les améliorations restent toujours à faire dans ce domaine, nos futures perspectives sont
nombreuses, nous citons :

-Service client virtuel au temps réel : offrir la possibilité au client de communiquer avec le
représentant de la boutique s’il y’en a lieu.

-Enrichissement de l’interactivité avec les utilisateurs : votes sur les produits, commentaires, donner
leurs avis

- L’hébergement de l’application dans App Store et Play Store.

-Notification ou message ou e-mail lors d'une nouvelle catégorie dans le catalogue.

-Intégration de l’option de recommandation des articles.


Références Bibliographique
[1] http://www.uky.edu/~jclark/mas490apps/History%20of%20Mobile%20Apps.pdf.

[2] http://www.universalis.fr/encyclopedie/systemes-d-exploitation-informatique/

[3] https://fr.wikipedia.org/wiki/Android

[4] http://www.techno-science.net/?onglet=news&news=11005.

[5]https://www.geeek.org/apache-cordova-la-future-generation-d-applications-mobiles 545.html

[6] Antoine C.D., « React Native : le framework JavaScript de Facebook au crible », article

scientifique sur le framework react-native, 14/04/2016. http://www.journaldunet.com/web-

tech/developpeur/1176787-react-native-la-declinaison-de-react-pour-developper-des-apps-natives/

[7] https://blog.codecentric.de/en/2014/11/ionic-angularjs-framework-on-the-rise/

[8] http://dspace.univ-tlemcen.dz/bitstream/112/12126/1/Developpement-dun-ateliergraphique-

pour-la-generation-dapplications-mobiles-multi-plateforme.pd

[9] https://www.safetyculture.com/fr/themes/analyse-swot/

[10] Philippe Carrot and Adrien Nussenbaum. Marketplace l’E-commerce de Demain,avec la

collaboration de Clément Vouillon, Publishing 2012.

[11] https://leadertech-solutions.com/gestion-commerciale/

[12] Henri Issac and Pierre Volle. E-commerce de la stratégie à la mise en œuvre opérationnelle,

Pearson Education France 2008.

[13] Renaud Marlet and LaBRI / INRIA. Génie Logiciel Cycle de vie, © 2005-2007

[14] Franck Vallée, Pascal Roques, UML 2 en action de l'analyse des besoins à la conception, 4ème

éd., EYROLLES,2 février 2006.

[15] Morley, C,Figueiredo, M. B., & Gillette, Y. Processus métiers et systèmes d’information :

gouvernance, management, modélisation. Dunod. (2011).

[16] S. Graine « UML2 », édition l’Abeille, 2002

[17] http://www.maxicours.com/se/fiche/5/4/230354.html
Annexe

Les Réseaux
En informatique, un réseau désigne une série de machines ou nœuds Interconnectés par
des chemins de communication. Les réseaux peuvent eux-mêmes s’interconnectés à
d’autres réseaux et contenir des sous-réseaux.

Les topologies de réseau, ou configurations générales, les plus courantes sont le bus, en étoile,
Token Ring et le maillage.

Les réseaux peuvent également être décrits en termes d’étendue géographique : réseau
local (LAN, Local Area Network), urbain (MAN, Metropolitan Area Network) ou
étendu (WAN, Wide Area Network).

Un réseau se caractérise en outre par le type de technologie ou de protocole de


transmission des données qu'il utilise, par exemple, un réseau TCP/IP ou SNA (Systems
Network Architecture) ; par les types de signaux qu'il transporte (voix, données, les
deux, etc.) ; par l'usage qui en est fait (réseau public ou privé) ; par la nature habituelle
de ses connexions (réseau commuté, spécialisé ou à connexions virtuelles) ; et enfin par
les types de liaisons physiques (fibre optique, câble coaxial, paire torsadée non blindée,
réseau hertzien - ou sans-fil).

 Architecture client/serveur

1.Définition

L’architecture client-serveur est un mécanisme de communication entre deux ou


plusieurs ordinateurs via des protocoles. Cette architecture est basée sur l’utilisation de
deux types de logiciels à savoir un logiciel serveur et un logiciel client s’exécutant sur
deux machines différentes. [17]

Le dialogue entre eux peut se résumer par :

 Le client demande un service au serveur.


 Le serveur réalise ce service et renvoie le résultat au client.
Comme le montre le schéma suivant :

Figure A.1 : schéma de fonctionnement du système client/serveur.

On peut trouver plusieurs types d’architecture Client/serveur, comme :

2. Architecture à 2 niveaux (2-tiers)

L’architecture à 2-tiers (tiers signifiant rangée en anglais) est l’architecture la plus

classique, elle décrit les systèmes Client/serveur dans lesquels un serveur exécute la

requête du client et fournit directement le service, sans faire appel à d’autres

intermédiaires, en utilisant ses propres ressources, le dialogue entre client et serveur se

résume donc à l’envoi de requêtes et au retour de données correspondants à celles-

ci. L’architecture à deux niveaux est schématisée dans la figure (A.2)


Figure A.2 : Architecture Client / Serveur à deux niveaux.

3. Architecture à 3 niveaux (3-tiers)

Elle est également appelée client/serveur de deuxième génération, dans ce type


d’architecture existe un niveau intermédiaire, c'est-à-dire que l'on a généralement une
architecture partagée entre :

 Premier niveau : c’est le poste client qui est l'ordinateur demandeur de ressources,
équipé d'une interface utilisateur (un navigateur web) chargée de la présentation
(contrôle de saisie, mise en forme de données…).
 Deuxième niveau : c’est le serveur d'application (appelé également middleware),
chargé de fournir la ressource mais faisant appel à un autre serveur.
 Troisième niveau : c’est le serveur de base de données (le serveur secondaire),
fournissant au serveur d'application les données dont il a besoin pour retourner
directement la réponse vers le demandeur.
L’architecture à trois niveaux est schématisée dans la figure (A.3) .

Figure A.3: Architecture Client/serveur à trois niveaux

4. Architecture multi niveaux (n-tiers) :

L'architecture n-tiers appelée aussi architecture distribuée ou architecture multi-tiers,


elle permet de concevoir des applications puissantes et simples à maintenir.

Ce type d'architecture facilite la répartition de la charge entre tous les niveaux, cela
signifie qu’un serveur peut utiliser les services d’un ou plusieurs autres serveurs afin de
fournir son propre service [17].

 Architecture matérielle

L'architecture de notre application est à 3 niveaux (architecture 3-tiers), elle est partagée
entre:
 Le client mobile : Conteneur d'application et demandeur de ressources.
 Le serveur Web : Vu que les données seront communiquées entre deux
environnements hétérogènes, le rôle principal du serveur web est de gérer la
communication entre le client mobile et le serveur de base de données,
 Le serveur de l’entreprise : qui est le serveur de base de données qui fournit les
données au serveur web.
Application Serveur Web Serveur base de

Requête/ Requête/
réponse
réponse

Couche client Couche Couche de


Données

Figure A.4: Architecture matériel du système.

Vous aimerez peut-être aussi