SlideShare une entreprise Scribd logo
1  sur  217
‫تلخيص‬
‫شهادة‬ ‫على‬ ‫للحصول‬ ‫الدروس‬ ‫ختم‬ ‫مشروع‬ ‫إطار‬ ‫في‬ ‫يندرج‬ ‫العمل‬ ‫هذا‬‫التصرف‬ ‫إعالمية‬ ‫في‬ ‫أساسية‬ ‫إجازة‬.
‫شركة‬ ‫داخل‬ ‫العمل‬ ‫هذا‬ ‫تم‬ ‫قد‬ ‫و‬‫من‬ ‫الفترة‬ ‫خالل‬ "‫"إتقان‬01‫فيفري‬2017‫إلى‬11‫ماي‬2017.
‫لتطبيق‬ ‫الخلفي‬ ‫المكتب‬ ‫إلدارة‬ ‫تطبيق‬ ‫تنفيذ‬ ‫و‬ ‫تصميم‬ ‫هو‬ ‫المشروع‬ ‫هذا‬ ‫من‬ ‫والهدف‬‫محمول‬‫عبارة‬ ‫وهو‬‫سوق‬ ‫عن‬
‫التي‬ ‫افتراضية‬.‫التجارية‬ ‫المحالت‬ ‫من‬ ‫العديد‬ ‫تضم‬‫المستخ‬ ‫من‬ ‫للعديد‬ ‫متاح‬ ‫التطبيق‬ ‫هذا‬ ‫سيكون‬ ‫و‬‫يوفر‬ ‫أنه‬ ‫كما‬ ‫دمين‬
.‫اإلفتراضية‬ ‫للسوق‬ ‫التابعة‬ ‫التجارية‬ ‫المحالت‬ ‫إلدارة‬ ‫الوظائف‬ ‫من‬ ‫العديد‬
‫المفاتيح‬ ‫الكلمات‬:‫افتراضية,سيمفون‬ ‫سوق‬‫ي‬.‫الويب,جيسون‬ ‫,خدمات‬
Résumé
Ce présent mémoire a été rédigé dans le cadre du projet de fin d’études pour
l’obtention du diplôme de licence fondamentale en informatique de gestion. Ce projet a été
effectué au sein de l’organisme "ITCANE" pendant la période de 01 Février 2017 au 11 mai
2017. L'objectif de ce travail est de concevoir et développer le back office d'une application
mobile de gestion de place de marché multi-boutiques. Le back office sera accessible d’une
manière sécurisée à plusieurs profils d’utilisateurs et proposera plusieurs fonctionnalités pour
la gestion et l’administration des boutiques de la place de marché. Le back office proposera
aussi une API pour communiquer avec l’application mobile.
Mots clés : Place de marché, Symfony, Services WEB, JSON.
Abstract
This project is a part of the final studies project graduation to obtain the diploma of
the computer science management licence. The work was realized within ITCANE company
during the period of 01 February 2017 to 11 May 2017. The objective of this work is to
design and implement the back-end of a mobile multi-store marketplace management
application. The back-end will be accessible to several users and will offer several
functionalities for the management and administration of shops in the marketplace.
The back-end will also offer an API (Application Programming Interface) to communicate
with the mobile application.
Key words: Marketplace, Symfony, WEB Services, JSON
Projet de fin d’études Page 2
Dédicace
A mes parents,
Pour avoir cru en moi et mes capacités et pour m’avoir permis de me développer dans un
endroit différent afin d’accroitre mes connaissances et expériences dans mon domaine
d’études.
A toute ma famille ainsi qu'à mes amis.
A tous ceux que j'aime et qui m'aiment. Je dédie ce travail espérant avoir répondu à leurs
souhaits de me voir réussir.
Rami
Projet de fin d’études Page 3
Remerciements
C’est avec un grand plaisir que nous réservons ces lignes en signe de gratitude et de
reconnaissance à tous ceux qui ont contribué de près ou de loin à la réalisation de ce modeste
travail.
Nous nous adressons en premier lieu aux membres de jury que nous remercions d’avoir
accepté d’évaluer ce travail.
Nous tenons à remercier monsieur «Karim KAMOUN», notre encadrant au sein de l’ESEN,
pour son aide, la patience qu’il a su exercer à notre égard et les conseils précieux qu’il nous
a prodigué tout au long de ce stage.
Nos remerciements s’adressent à notre encadrant au sein d’ITCANE monsieur «Hatem
BELHASSINE» de nous avoir offert cette opportunité d’effectuer notre stage de fin d’études
au sein de la société ITCANE ainsi que pour sa disponibilité, ses conseils et sa confiance.
Il convient à la fin de remercier profondément tous nos enseignants de l’ESEN pour la qualité
de la formation qu’ils nous ont fournit tout au long de notre cursus universitaire. Qu’ils
trouvent dans ce modeste travail une graine de ce qu’ils ont semé.
Rami
Projet de fin d’études Page 4
Table des matières
Introduction générale.................................................................................................................. 19
Chapitre I : Étude de projet
Introduction..................................................................................................................... 22
I. Cadre du projet ............................................................................................................ 22
I.1.Présentation de l’organisme d’accueil ...................................................................... 22
II. État de l’art ................................................................................................................. 23
II.1. Étude de l’existant .................................................................................................23
II.2. Critiques de l’existant ............................................................................................ 24
III. Solution proposée ...................................................................................................... 24
IV. Langage et méthodologie adoptée ............................................................................... 25
IV.1. Les méthodes agiles ............................................................................................. 25
IV.1.1 Les quatre piliers des méthodes agiles................................................................ 25
IV.1.2 Les principales méthodes agiles......................................................................... 25
IV.2. Pourquoi Scrum ? .................................................................................................26
IV.2.1 Rôles définis par Scrum.................................................................................... 27
IV.2.2 Les artéfacts de Scrum...................................................................................... 27
IV.2.3 Les activités du sprint....................................................................................... 28
IV.3. Langage de modélisation ....................................................................................... 29
Conclusion ...................................................................................................................... 29
Chapitre II : Planification et architecture
Introduction..................................................................................................................... 31
I. Spécification des besoins .............................................................................................. 31
I.1. Identification des acteurs ......................................................................................... 31
I.2. Besoins fonctionnels ............................................................................................... 31
I.3. Besoins non fonctionnels ......................................................................................... 32
II. Structure et découpage du projet .................................................................................. 33
II.1. Identification de l’équipe SCRUM .......................................................................... 33
II.2. Le backlog du produit ............................................................................................ 34
II.3. Planification des releases ....................................................................................... 37
II.4. Structuration des releases en sprints ........................................................................ 38
II.4.1 Planning de réalisation du projet ........................................................................ 39
II.5. Diagramme de cas d’utilisation global .................................................................... 39
Conclusion ...................................................................................................................... 41
Chapitre III : Sprint 1 : Gestion des accès, catégories de boutiques et vendeurs
Introduction..................................................................................................................... 43
I. La spécification fonctionnelle ....................................................................................... 43
I.1. Le sprint Backlog ...................................................................................................43
I.2. Classification des cas d’utilisations par acteur ........................................................... 47
Projet de fin d’études Page 5
I.3. Diagramme de cas d’utilisation ................................................................................ 48
II. Analyse des cas d’utilisations ...................................................................................... 49
II.1. Analyse du cas d’utilisation «S’authentifier» ........................................................... 49
II.2. Analyse du cas d’utilisation «S’inscrire»..................................................................50
II.3. Analyse du cas d’utilisation «Récupérer mot de passe»............................................. 52
II.4. Analyse du cas d’utilisation «Changer mot de passe» ............................................... 53
II.5. Analyse du cas d’utilisation «Gérer mon profil» ...................................................... 55
II.5.1 Raffinement du cas d’utilisation «Gérer mon profil» ........................................... 55
II.5.1.1 Analyse du cas d’utilisation «Afficher mon profil» ........................................ 55
II.5.1.2 Analyse du cas d’utilisation «Modifier mon profil» ....................................... 56
II.6. Analyse du cas d’utilisation «Gérer catégories boutiques» ........................................ 57
II.6.1 Raffinement du cas d’utilisation «Gérer catégories boutiques» ............................. 57
II.6.1.1 Analyse du cas d’utilisation «Lister catégories boutiques» ............................. 58
II.6.1.2 Analyse du cas d’utilisation «Ajouter catégorie boutiques» ............................ 58
II.6.1.3 Analyse du cas d’utilisation «Modifier catégorie boutiques» .......................... 60
II.6.1.4 Analyse du cas d’utilisation «Supprimer catégorie boutiques» ........................ 61
II.7. Analyse du cas d’utilisation «Gérer vendeurs» ........................................................ 62
II.7.1 Raffinement du cas d’utilisation «Gérer vendeurs» .............................................. 62
II.7.1.1 Analyse du cas d’utilisation «Lister vendeurs» .............................................. 63
II.7.1.2 Analyse du cas d’utilisation «Supprimer vendeur» ......................................... 63
III. Conception des cas d’utilisations ................................................................................ 64
III.1. Conception du cas d’utilisation «S’authentifier» ..................................................... 65
III.2. Conception du cas d’utilisation «S’inscrire» ........................................................... 66
III.3. Conception du cas d’utilisation «Gérer mon profil» ................................................ 67
III.3.1. Conception du cas d’utilisation «Afficher mon profil» ...................................... 67
III.3.2. Conception du cas d’utilisation «Modifier mon profil» ...................................... 68
III.4. Conception du cas d’utilisation «Gérer catégories boutiques» .................................69
III.4.1. Conception du cas d’utilisation «Lister catégories boutiques» ............................ 69
III.4.2. Conception du cas d’utilisation «Ajouter catégorie boutiques» ........................... 70
III.4.3. Conception du cas d’utilisation «Modifier catégorie boutiques» ......................... 71
III.4.4. Conception du cas d’utilisation «Supprimer catégorie boutiques» ...................... 72
III.5. Conception du cas d’utilisation «Gérer vendeurs» .................................................. 73
III.5.1. Conception du cas d’utilisation «Lister vendeurs» ............................................. 73
III.5.2. Conception du cas d’utilisation «Supprimer vendeur» ....................................... 74
III.6. Diagramme de classes global du premier sprint ...................................................... 75
IV. Implémentation ........................................................................................................... 75
V. Tests ............................................................................................................................ 78
V.1 Les tests unitaires ..................................................................................................... 78
V.1.1 Le test unitaire du cas d’utilisation «Ajouter catégorie boutiques» ......................... 79
Projet de fin d’études Page 6
V.1.2 Le test unitaire du cas d’utilisation «Supprimer catégorie boutiques»...................... 80
VI. Revue de sprint ........................................................................................................... 82
VI.1 Diagramme de «Burndown Chart» ........................................................................... 82
VI.2 Calcul de vélocité ...................................................................................................83
Conclusion ....................................................................................................................... 83
Chapitre 4 : Sprint2 : Gestiondesboutiques,marques,catégoriesde produits et produits
Introduction..................................................................................................................... 85
I. La spécification fonctionnelle ...................................................................................... 85
I.1 Le sprint backlog.................................................................................................... 85
I.2 Classification des cas d’utilisations par acteur .......................................................... 91
I.3 Diagramme de cas d’utilisation................................................................................ 92
II. Analyse des cas d’utilisations ...................................................................................... 92
II.1 Analyse de cas d’utilisation «Gérer ma boutique» .................................................... 92
II.1.1 Raffinement du cas d’utilisation «Gérer ma boutique» ........................................ 92
II.1.1.1 Analyse du cas d’utilisation «Créer ma boutique» ............................................ 93
II.1.1.2 Analyse du cas d’utilisation «Paramétrer ma boutique» .................................... 94
II.2 Analyse de cas d’utilisation «Gérer mes produits».................................................... 95
II.2.1 Raffinement du cas d’utilisation «Gérer mes produits»........................................ 95
II.2.1.1 Analyse du cas d’utilisation «Lister produits» ............................................... 96
II.2.1.2 Analyse du cas d’utilisation «Ajouter produit» .............................................. 96
II.2.1.3 Analyse du cas d’utilisation «Modifier produit» ............................................ 97
II.2.1.4 Analyse du cas d’utilisation «Supprimer produit».......................................... 98
II.3 Analyse du cas d’utilisation «Gérer les boutiques» ................................................... 99
II.3.1 Raffinement du cas d’utilisation «Gérer les boutiques» ..................................... 100
II.3.1.1 Analyse du cas d’utilisation «Lister boutiques»........................................... 101
II.3.1.2 Analyse du cas d’utilisation «Confirmer boutique»...................................... 101
II.3.1.3 Analyse du cas d’utilisation «Supprimer boutique» ..................................... 102
II.3.1.4 Analyse du cas d’utilisation «Verrouiller boutique»..................................... 103
II.3.1.5 Analyse du cas d’utilisation «Consulter boutique»....................................... 105
II.3.1.6 Analyse du cas d’utilisation «Ajouter boutique aux favoris» ........................ 105
II.3.1.7 Analyse du cas d’utilisation «Lister produits boutique» ............................... 106
II.3.1.8 Analyse du cas d’utilisation «Consulter produit»......................................... 107
III. Conception des cas d’utilisations ............................................................................ 108
III.1 Conception du cas d’utilisation «Gérer ma boutique» .......................................... 108
III.1.1 Conception du cas d’utilisation «Créer ma boutique»..................................... 108
III.1.2 Conception du cas d’utilisation «Paramétrer ma boutique»............................. 110
III.2 Conception du cas d’utilisation «Gérer mes produits».......................................... 111
III.2.1 Conception du cas d’utilisation «Lister produits»........................................... 111
III.2.2 Conception du cas d’utilisation «Ajouter produit».......................................... 112
Projet de fin d’études Page 7
III.2.3 Conception du cas d’utilisation «Modifier produit»........................................ 114
III.2.4 Conception du cas d’utilisation «Supprimer produit» ..................................... 116
III.3 Conception du cas d’utilisation «Gérer les boutiques» .......................................... 117
III.3.1 Conception du cas d’utilisation «Lister boutiques» ......................................... 117
III.3.2 Conception du cas d’utilisation «Confirmer boutique» .................................... 118
III.3.3 Conception du cas d’utilisation «Supprimer boutique».................................... 119
III.3.4 Conception du cas d’utilisation «Verrouiller boutique» ................................... 120
III.3.5 Conception du cas d’utilisation «Consulter boutique» ..................................... 121
III.3.6 Conception du cas d’utilisation «Ajouter boutique aux favoris»....................... 122
III.3.7 Conception du cas d’utilisation «Lister produits boutique».............................. 123
III.3.8 Conception du cas d’utilisation «Consulter produit» ....................................... 124
III.3.9 Diagramme de classes global du deuxième sprint............................................ 125
IV. Implémentation ...................................................................................................... 125
V. Tests....................................................................................................................... 127
V.1 Les tests unitaires................................................................................................ 127
V.1.1 Le test unitaire du cas d’utilisation «Verrouiller boutique» ............................... 127
V.1.2 Le test unitaire du cas d’utilisation «Paramétrer ma boutique» .......................... 128
V.1.3 Le test unitaire du cas d’utilisation «Ajouter produit aux favoris» ..................... 129
V.1.4 Le test unitaire du cas d’utilisation «Confirmer boutique» ................................ 130
VI. Revue de sprint ...................................................................................................... 131
VI.1 Diagramme de «Burndown Chart»...................................................................... 132
VI.2 Calcul de vélocité .............................................................................................. 132
VI.3 Réajustements à faire pour le prochain sprint ....................................................... 133
Conclusion .................................................................................................................. 133
Chapitre 5 : Sprint3 : Gestiondeséchanges,commandes,statistiqueset clients
Introduction................................................................................................................... 135
I. La spécification fonctionnelle .................................................................................... 135
I.1 Le sprint backlog.................................................................................................. 135
I.2 Classification des cas d’utilisations par acteur........................................................ 138
I.3 Diagramme de cas d’utilisation.............................................................................. 138
II. Analyse des cas d’utilisations ................................................................................... 138
II.1 Analyse de cas d’utilisation «Gérer les clients» ..................................................... 139
II.1.1 Raffinement du cas d’utilisation «Gérer les clients» ......................................... 139
II.1.1.1 Analyse du cas d’utilisation «Lister les clients».......................................... 139
II.1.1.2 Analyse du cas d’utilisation «Supprimer client» ......................................... 140
II.2 Analyse de cas d’utilisation «Gérer mes commandes» ........................................... 141
II.2.1 Raffinement du cas d’utilisation «Gérer mes commandes» ............................... 141
II.2.1.1 Analyse du cas d’utilisation «Lister mes commandes»................................ 141
II.2.1.2 Analyse du cas d’utilisation «Modifier état commande».............................. 142
Projet de fin d’études Page 8
II.3 Analyse du cas d’utilisation «Gérer les commandes»............................................. 143
II.3.1 Raffinement du cas d’utilisation «Gérer les commandes»................................. 143
II.3.1.1 Analyse du cas d’utilisation «Lister les commandes».................................. 143
II.3.1.2 Analyse du cas d’utilisation «Afficher les statistiques de ma boutique»........ 144
II.3.1.3 Analyse du cas d’utilisation «Afficher les statistiques de la place de marché»
................................................................................................................................................. 144
III. Conception des cas d’utilisations ............................................................................. 146
III.1 Conception du cas d’utilisation «Gérer les clients»............................................... 146
III.1.1 Conception du cas d’utilisation «Lister les clients» ......................................... 146
III.1.2 Conception du cas d’utilisation «Supprimer client»......................................... 147
III.2 Conception du cas d’utilisation «Gérer mes commandes»..................................... 148
III.2.1 Conception du cas d’utilisation «Lister mes commandes» ............................... 148
III.2.2 Conception du cas d’utilisation «Modifier état commande»............................. 149
III.3 Conception du cas d’utilisation «Gérer les commandes»....................................... 150
III.3.1 Conception du cas d’utilisation «Lister les commandes» ................................. 150
III.4 Conception du cas d’utilisation «Afficher les statistiques de ma boutique»............. 151
III.5 Conception du cas d’utilisation «Afficher les statistiques de la place de marché»... 152
IV. Les services WEB.................................................................................................. 153
IV.1 Conception des services WEB ........................................................................... 155
IV.1.1 Conception de l’API «Inscription client» ....................................................... 156
IV.1.2 Conception de l’API «Authentification client» .............................................. 156
IV.1.3 Conception de l’API «GET Catégories boutiques» ......................................... 157
IV.1.4 Conception de l’API «GET boutiques favoris»............................................... 158
IV.1.5 Conception de l’API «GET boutiques By Catégorie»...................................... 159
IV.1.6 Conception de l’API «GET produits By Boutique»......................................... 160
IV.1.7 Conception de l’API «GET produits By Catégorie»........................................ 161
IV.1.8 Conception de l’API «GET Catégories produits By Boutique» ........................ 162
IV.1.9 Conception de l’API «GET libellé By ID catégorie »...................................... 163
IV.1.10 Conception de l’API «GET produit By ID».................................................. 164
IV.1.11 Conception de l’API «GET produits favoris»................................................ 165
IV.1.12 Conception de l’API «GET Images By ID Produit» ...................................... 166
IV.1.13 Conception de l’API «GET Commande Client»............................................ 167
IV.1.14 Diagramme de classes global du troisième sprint .......................................... 168
V. Implémentation ....................................................................................................... 169
VI. Tests...................................................................................................................... 171
VI.1 Les tests unitaires............................................................................................... 171
VI.1.1 Le test unitaire de l’API «GET Catégories boutiques» .................................... 171
VI.1.2 Le test unitaire de l’API «GET produits By Boutique».................................... 172
VI.1.3 Le test unitaire du cas d’utilisation «Modifier état commande»........................ 173
Projet de fin d’études Page 9
VII. Revue de sprint ..................................................................................................... 174
VII.1 Diagramme de «Burndown Chart»..................................................................... 174
VII.2 Calcul de vélocité ............................................................................................. 175
Conclusion .................................................................................................................. 176
Chapitre 6 : Phase de clôture
Introduction ................................................................................................................. 178
I. Environnement de développement............................................................................... 178
I.1 Environnement matériel......................................................................................... 178
I.2 Environnement logiciel.......................................................................................... 178
II. Choix technologiques................................................................................................ 179
II.1 L’architecture MVC............................................................................................. 179
II.2 Le Framework Symfony ....................................................................................... 180
II.2.1 Le gestionnaire ORM...................................................................................... 181
II.2.2 Pourquoi Symfony ? ....................................................................................... 181
II.3 L’outil de versionning GIT ................................................................................... 181
II.4 REST.................................................................................................................. 181
II.5 JSON .................................................................................................................. 182
III. Gestion de projet ..................................................................................................... 182
III.1 Tableaux des tâches ............................................................................................ 182
III.2 Diagramme de GANTT....................................................................................... 183
Conclusion ................................................................................................................................ 183
Conclusion et perspectives........................................................................................................184
ANNEXE A..............................................................................................................................185
ANNEXE B..............................................................................................................................188
ANNEXE C..............................................................................................................................215
Nétographie .............................................................................................................................217
Bibliographie ...........................................................................................................................218
Projet de fin d’études Page 10
Table des figures
Figure 1 : Cycle de vie d’un projet Scrum [N6]..............................................................................25
Figure 2 : Diagramme de Burndown Chart [N7].............................................................................27
Figure 3 : Équipe et rôles..............................................................................................................33
Figure 4 : Découpage des releases en sprints..................................................................................37
Figure 5 : Planification des sprints ................................................................................................37
Figure 6 : Planning de réalisation du projet....................................................................................38
Figure 7 : Diagramme de cas d’utilisation global............................................................................39
Figure 8 : Diagramme de cas d’utilisation du premier sprint............................................................47
Figure 9 : Diagramme de séquences système du cas d’utilisation «s’authentifier»............................49
Figure 10 : Diagramme de séquences système du cas d’utilisation «s’inscrire»................................50
Figure 11 : Diagramme de séquences système du cas d’utilisation «Récupérer mot de passe»...........52
Figure 12 : Diagramme de séquences système du cas d’utilisation «Changer mot de passe»..............53
Figure 13 : Diagramme de cas d’utilisation de «Gérer mon profil»..................................................54
Figure 14 : Diagramme de séquences système du cas d’utilisation «Afficher mon profil»..................55
Figure 15 : Diagramme de séquences système du cas d’utilisation «Modifier mon profil».................56
Figure 16 : Diagramme de cas d’utilisation du cas «Gérer catégories boutiques».............................56
Figure 17 : Diagramme de séquences système du cas d’utilisation «Lister catégories boutiques»......57
Figure 18 : Diagramme de séquences système du cas d’utilisation «Ajouter catégorie boutiques».....58
Figure 19 : Diagramme de séquences système du cas d’utilisation «Modifier catégorie boutiques» ...60
Figure 20 : Diagramme de séquences système du cas d’utilisation «Supprimer catégorie boutiques».61
Figure 21 : Diagramme de cas d’utilisation du cas «Gérer vendeurs»..............................................61
Figure 22 : Diagramme de séquences système du cas d’utilisation «Lister vendeurs» .......................62
Figure 23 : Diagramme de séquences système du cas d’utilisation «Supprimer vendeur» ..................63
Figure 24 : Diagramme de classes participantes du cas d’utilisation «s’authentifier» ........................64
Figure 25 : Diagramme de séquences détaillées du cas d’utilisation «s’authentifier».........................64
Figure 26 : Diagramme de classes participantes au cas d’utilisation «s’inscrire»...............................65
Figure 27 : Diagramme de séquences détaillées du cas d’utilisation «s’inscrire»...............................65
Figure 28 : Diagramme de classes participantes au cas d’utilisation «Afficher mon profil»................66
Figure 29 : Diagramme de séquences détaillées du cas d’utilisation «Afficher mon profil»................66
Figure 30 : Diagramme de classes participantes au cas d’utilisation «Modifier mon profil»...............67
Figure 31 : Diagramme de séquences détaillées du cas d’utilisation «Modifier mon profil»...............67
Figure 32 : Diagramme de classes participantes au cas d’utilisation «Lister catégories boutiques».....68
Figure 33 : Diagramme de séquences détaillées du cas d’utilisation «Lister catégories boutiques».....68
Figure 34 : Diagramme de classes participantes au cas d’utilisation «Ajouter catégorie boutiques»...69
Figure 35 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter catégorie boutiques»...69
Figure 36 : Diagramme de classes participantes au cas d’utilisation «Modifier catégorie boutiques»..70
Figure 37 : Diagramme de séquences détaillées du cas d’utilisation «Modifier catégorie boutiques».70
Figure 38 : Diagramme de classes participantes au cas d’utilisation «Supprimer catégorie boutiques»
...................................................................................................................................................71
Figure 39 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer catégorie boutiques»
...................................................................................................................................................71
Figure 40 : Diagramme de classes participantes au cas d’utilisation «Lister vendeurs» .....................72
Figure 41 : Diagramme de séquences détaillées du cas d’utilisation «Lister vendeurs» .....................72
Figure 42 : Diagramme de classes participantes au cas d’utilisation «Supprimer vendeur»................73
Figure 43 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer vendeur»................73
Figure 44: Diagramme de classes global du premier sprint..............................................................74
Figure 45 : Interface d’authentification..........................................................................................75
Figure 46 : Interface d’inscription .................................................................................................76
Projet de fin d’études Page 11
Figure 47 : Interface du cas «Lister catégories boutiques»..............................................................76
Figure 48 : Interface du cas «Lister vendeurs»...............................................................................77
Figure 49 : Code de source de la méthode de test d’ajout d’une catégorie de boutiques.....................78
Figure 50 : Interface de résultat du test d’ajout...............................................................................78
Figure 51 : Interface de résultat du test d’ajout en cas d’échec.........................................................79
Figure 52 : Code source de la méthode de test de suppression .........................................................80
Figure 53 : Interface de résultat du test de suppression....................................................................80
Figure 54 : Interface de résultat du test de suppression en cas d’échec.............................................80
Figure 55 : Diagramme de Burndown Chart du premier sprint.........................................................81
Figure 56 : Diagramme de cas d’utilisation du deuxième sprint.......................................................91
Figure 57 : Diagramme de cas d’utilisation : Gérer ma boutique......................................................91
Figure 58 : Diagramme de séquences système du cas d’utilisation «Créer ma boutique»...................93
Figure 59 : Diagramme de séquences système du cas d’utilisation «Paramétrer ma boutique»..........94
Figure 60 : Diagramme de cas d’utilisation du cas «Gérer mes produits».........................................94
Figure 61 : Diagramme de séquences système du cas d’utilisation «Lister produits».........................95
Figure 62 : Diagramme de séquences système du cas d’utilisation «Ajouter produit» .......................96
Figure 63 : Diagramme de séquences système du cas d’utilisation «Modifier produit»......................97
Figure 64 : Diagramme de séquences système du cas d’utilisation «Supprimer produit»...................98
Figure 65 : Diagramme de cas d’utilisation du cas «Gérer les boutiques»........................................99
Figure 66 : Diagramme de séquences système du cas d’utilisation «Lister boutiques» .................... 100
Figure 67 : Diagramme de séquences système du cas d’utilisation «Confirmer boutique»............... 101
Figure 68 : Diagramme de séquences système du cas d’utilisation «Supprimer boutique»............... 102
Figure 69 : Diagramme de séquences système du cas d’utilisation «Verrouiller boutique».............. 103
Figure 70 : Diagramme de séquences système du cas d’utilisation «Consulter boutique»................ 104
Figure 71 : Diagramme de séquences système du cas d’utilisation «Ajouter boutique aux favoris».. 105
Figure 72 : Diagramme de séquences système du cas d’utilisation «Lister produits boutique»......... 106
Figure 73 : Diagramme de séquences système du cas d’utilisation «Consulter produit».................. 107
Figure 74 : Diagramme de classes participantes au cas d’utilisation «Créer ma boutique» .............. 108
Figure 75 : Diagramme de séquences détaillées du cas d’utilisation «Créer boutique».................... 108
Figure 76 : Diagramme de classes participantes au cas d’utilisation «Paramétrer ma boutique»...... 109
Figure 77 : Diagramme de séquences détaillées du cas d’utilisation «Paramétrer ma boutique»...... 109
Figure 78 : Diagramme de classes participantes au cas d’utilisation «Lister produits» .................... 110
Figure 79 : Diagramme de séquences détaillées du cas d’utilisation «Lister produits» .................... 110
Figure 80 : Diagramme de classes participantes au cas d’utilisation «Ajouter produit» ................... 111
Figure 81 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter produit» ................... 112
Figure 82 : Diagramme de classes participantes au cas d’utilisation «Modifier produit».................. 113
Figure 83 : Diagramme de séquences détaillées du cas d’utilisation «Modifier produit».................. 114
Figure 84 : Diagramme de classes participantes au cas d’utilisation «Supprimer produit»............... 115
Figure 85 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer produit»............... 115
Figure 86 : Diagramme de classes participantes au cas d’utilisation «Lister boutiques» .................. 116
Figure 87 : Diagramme de séquences détaillées du cas d’utilisation «Lister boutiques» .................. 116
Figure 88 : Diagramme de classes participantes au cas d’utilisation «Confirmer boutique»............. 117
Figure 89 : Diagramme de séquences détaillées du cas d’utilisation «Confirmer boutique»............. 117
Figure 90 : Diagramme de classes participantes au cas d’utilisation «Supprimer boutique»............. 118
Figure 91 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer boutique»............. 118
Figure 92 : Diagramme de classes participantes au cas d’utilisation «Verrouiller boutique»............ 119
Figure 93 : Diagramme de séquences détaillées du cas d’utilisation «Verrouiller boutique»............ 119
Figure 94 : Diagramme de classes participantes au cas d’utilisation «Consulter boutique».............. 120
Figure 95 : Diagramme de séquences détaillées du cas d’utilisation «Consulter boutique».............. 120
Figure 96 : Diagramme de classes participantes au cas d’utilisation «Ajouter boutique aux favoris» 121
Projet de fin d’études Page 12
Figure 97 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter boutique aux favoris» 121
Figure 98 : Diagramme de classes participantes au cas d’utilisation «Lister produits boutique»....... 122
Figure 99 : Diagramme de séquences détaillées du cas d’utilisation «Lister produits boutique»....... 122
Figure 100 : Diagramme de classes participantes au cas d’utilisation «Consulter produit».............. 123
Figure 101 : Diagramme de séquences détaillées du cas d’utilisation «Consulter produit».............. 123
Figure 102 : Diagramme de classes global du deuxième sprint ...................................................... 124
Figure 103 : Interface du cas «Lister boutiques» .......................................................................... 125
Figure 104 : Interface du cas «Paramétrer ma boutique».............................................................. 126
Figure 105 : Code source de la méthode de test du cas «Verrouiller boutique» ............................... 127
Figure 106 : Interface de résultat du test du cas «Verrouiller boutique» ......................................... 127
Figure 107 : Code source de la méthode de test du cas «Paramétrer ma boutique»......................... 128
Figure 108 : Interface de résultat du test du cas «Paramétrer ma boutique» .................................... 128
Figure 109 : Code source de la méthode de test d’ajout d’un produit aux favoris ............................ 129
Figure 110 : Interface de résultat du test d’ajout d’un produit aux favoris....................................... 129
Figure 111 : Code source de la méthode de test de confirmation d’une boutique............................. 130
Figure 112 : Interface de résultat du test de confirmation d’une boutique ....................................... 130
Figure 113 : Diagramme de Burndown Chart du sprint 2 .............................................................. 131
Figure 114 : Diagramme de cas d’utilisation du troisième sprint.................................................... 137
Figure 115 : Diagramme de cas d’utilisation : Gérer les clients ..................................................... 138
Figure 116 : Diagramme de séquences système du cas d’utilisation «Lister les clients».................. 138
Figure 117 : Diagramme de séquences système du cas d’utilisation «Supprimer client».................. 139
Figure 118 : Diagramme de cas d’utilisation : Gérer mes commandes............................................ 140
Figure 119 : Diagramme de séquences système du cas d’utilisation «Lister mes commandes»......... 140
Figure 120 : Diagramme de séquences système du cas d’utilisation «Modifier état commande»...... 141
Figure 121 : Diagramme de cas d’utilisation : Gérer les commandes ............................................. 142
Figure 122 : Diagramme de séquences système du cas d’utilisation «Lister les commandes»........... 142
Figure 123 : Diagramme de séquences système du cas d’utilisation «Afficher les statistiques de ma
boutique».................................................................................................................................. 143
Figure 124 : Diagramme de séquences système du cas d’utilisation «Afficher les statistiques de la
place de marché»....................................................................................................................... 144
Figure 125 : Diagramme de classes participantes au cas d’utilisation «Lister les clients»................ 145
Figure 126 : Diagramme de séquences détaillées du cas d’utilisation «Lister les clients»................ 145
Figure 127 : Diagramme de classes participantes au cas d’utilisation «Supprimer client»................ 146
Figure 128 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer client»................ 146
Figure 129 : Diagramme de classes participantes au cas d’utilisation «Lister mes commandes»....... 147
Figure 130 : Diagramme de séquences détaillées du cas d’utilisation «Lister mes commandes»....... 147
Figure 131 : Diagramme de classes participantes au cas d’utilisation «Modifier état commande».... 148
Figure 132 : Diagramme de séquences détaillées du cas d’utilisation «Modifier état commande».... 148
Figure 133 : Diagramme de classes participantes au cas d’utilisation «Lister les commandes»......... 149
Figure 134 : Diagramme de séquences détaillées du cas d’utilisation «Lister les commandes»......... 149
Figure 135 : Diagramme de classes participantes au cas d’utilisation «Afficher les statistiques de ma
boutique».................................................................................................................................. 150
Figure 136 : Diagramme de séquences détaillées du cas d’utilisation «Afficher les statistiques de ma
boutique».................................................................................................................................. 150
Figure 137 : Diagramme de classes participantes au cas d’utilisation «Afficher les statistiques de la
place de marché»....................................................................................................................... 151
Figure 138 : Diagramme de séquences détaillées du cas d’utilisation «Afficher les statistiques de la
place de marché»....................................................................................................................... 151
Figure 139 : Mise en place d’un service WEB [N14].................................................................... 154
Figure 140 : Diagramme de classes participantes à l’API «Inscription client»................................ 154
Projet de fin d’études Page 13
Figure 141 : Diagramme de séquences détaillées de l’API «Inscription client»............................... 155
Figure 142 : Diagramme de classes participantes à l’API «Authentification client»......................... 155
Figure 143 : Diagramme de séquences détaillées de l’API «Authentification client»....................... 156
Figure 144 : Diagramme de classes participantes à l’API «GET catégories boutiques»................... 156
Figure 145 Diagramme de séquences détaillées de l’API «GET catégories boutiques»................... 157
Figure 146 : Diagramme de classes participantes à l’API «GET boutiques favoris»........................ 157
Figure 147 : Diagramme de séquences détaillées de l’API «GET boutiquesfavoris»....................... 158
Figure 148 : Diagramme de classes participantes à l’API «GET boutiques By Catégorie»............... 158
Figure 149 : Diagramme de séquences détaillées de l’API «GET boutiques By Catégorie»............. 159
Figure 150 : Diagramme de classes participantes à l’API «GET produits By Boutique».................. 159
Figure 151 : Diagramme de séquences détaillées de l’API «GET produits By Boutique»................. 160
Figure 152 : Diagramme de classes participantes à l’API «GET produits By Catégorie»................. 160
Figure 153 : Diagramme de séquences détaillées de l’API «GET produits By Catégorie»............... 161
Figure 154 : Diagramme de classes participantes à l’API «GET Catégories produits By Boutique».161
Figure 155 : Diagramme de séquences détaillées de l’API «GET Catégories produits By Boutique»162
Figure 156 : Diagramme de classes participantes à l’API «GET Libellé By ID Catégorie».............. 162
Figure 157 : Diagramme de séquences détaillées de l’API «GET libellé By ID catégorie».............. 163
Figure 158 : Diagramme de classes participantes à l’API «GET Produit By ID»............................. 163
Figure 159 : Diagramme de séquences détaillées de l’API «GET Produit By ID»........................... 164
Figure 160 : Diagramme de classes participantes à l’API «GET produits Favoris»......................... 164
Figure 161 : Diagramme de séquences détaillées de l’API «GET produitsfavoris»......................... 165
Figure 162 : Diagramme de classes participantes à l’API «GET Images By ID Produit»................. 165
Figure 163 : Diagramme de séquences détaillées de l’API «GET Images By ID Produit»................ 166
Figure 164 : Diagramme de classes participantes à l’API «GET Commande Client»....................... 166
Figure 165 : Diagramme de séquences détaillées de l’API «GET Commande Client»..................... 167
Figure 166 : Diagramme de classes global du troisième sprint....................................................... 167
Figure 167 : Interface du cas «Lister mes commandes».................................................................169
Figure 168 : Interface du cas «Afficher les statistiques de ma boutique» ........................................ 169
Figure 169 : Code source de la méthode de test de l’API «GET Catégories boutiques»................... 170
Figure 170 : Interface de résultat du test de l’API «GET Catégories boutiques»............................. 171
Figure 171 : Code source de la méthode de test de l’API «GET produits By Boutique»................... 171
Figure 172 : Interface de résultat du test de l’API «GET produits By Boutique»............................. 172
Figure 173 : Code source de la méthode de test du cas d’utilisation «Modifier état commande» ...... 172
Figure 174 : Interface de résultat du test de modification d’état d’une commande........................... 173
Figure 175 : Diagramme de Burndown Chart du troisième sprint .................................................. 174
Figure 176 : Architecture MVC [N21]......................................................................................... 179
Figure 177 : Répartition des tâches du premier sprint ................................................................... 181
Figure 178 : Répartition des tâches du deuxième sprint.................................................................181
Figure 179 : Répartition des tâches du troisième sprint .................................................................182
Figure 180 : Diagramme de GANTT........................................................................................... 182
Figure 181 : Diagramme de cas d’utilisation du cas «Gérer catégories produits»........................... 188
Figure 182 : Diagramme de séquences système du cas d’utilisation «Lister catégories de produits» 189
Figure 183 : Diagramme de séquences système du cas d’utilisation «Ajouter catégorie produits» ... 190
Figure 184 : Diagramme de séquences système du cas d’utilisation «Modifier catégorie produits».. 191
Figure 185 : Diagramme de séquences système du cas d’utilisation «Supprimer catégorie produits»
................................................................................................................................................. 192
Figure 186 : Diagramme de cas d’utilisation du cas «Gérer marques»........................................... 193
Figure 187 : Diagramme de séquences système du cas d’utilisation «Lister marques».................... 193
Figure 188 : Diagramme de séquences système du cas d’utilisation «Ajouter marque»................... 194
Figure 189 : Diagramme de séquences système du cas d’utilisation «Modifier marque» ................. 195
Projet de fin d’études Page 14
Figure 190 : Diagramme de séquences système du cas d’utilisation «Supprimer marque»............... 196
Figure 191 : Diagramme de séquences système du cas d’utilisation «Déverrouiller boutique» ........ 197
Figure 192 : Diagramme de séquences système du cas d’utilisation «Supprimer boutique du favoris»
................................................................................................................................................. 198
Figure 193 : Diagramme de séquences système du cas d’utilisation «Ajouter produit aux favoris».. 199
Figure 194 : Diagramme de séquences système du cas d’utilisation «Supprimer produit du favoris»201
Figure 195 : Diagramme de classes participantes au cas d’utilisation «Lister catégories produits» .. 201
Figure 196 : Diagramme de séquences détaillées du cas d’utilisation «Lister catégories produits» .. 202
Figure 197 : Diagramme de classes participantes au cas d’utilisation «Ajouter catégorie produit»... 202
Figure 198 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter catégorie produit»... 203
Figure 199 : Diagramme de classes participantes au cas d’utilisation «Modifier catégorie produit».203
Figure 200 : Diagramme de séquences détaillées du cas d’utilisation «Modifier catégorie produit».204
Figure 201 : Diagramme de classes participantes au cas d’utilisation «Supprimer catégorie produit»
................................................................................................................................................. 204
Figure 202 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer catégorie produit»
................................................................................................................................................. 205
Figure 203 : Diagramme de classes participantes au cas d’utilisation «Lister marques».................. 205
Figure 204 : Diagramme de séquences détaillées du cas d’utilisation «Lister marques».................. 206
Figure 205 : Diagramme de classes participantes au cas d’utilisation «Ajouter marque»................. 206
Figure 206 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter marque»................. 207
Figure 207 : Diagramme de classes participantes au cas d’utilisation «Modifier marque»............... 207
Figure 208 : Diagramme de séquences détaillées du cas d’utilisation «Modifier marque»............... 208
Figure 209 : Diagramme de classes participantes au cas d’utilisation «Supprimer marque»............. 208
Figure 210 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer marque»............. 209
Figure 211 : Diagramme de classes participantes au cas d’utilisation «Déverrouiller boutique» ...... 209
Figure 212 : Diagramme de séquences détaillées du cas d’utilisation «Déverrouiller boutique» ...... 210
Figure 213 : Diagramme de classes participantes au cas d’utilisation «Supprimer boutique du favoris»
................................................................................................................................................. 210
Figure 214 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer boutique du favoris»
................................................................................................................................................. 211
Figure 215 : Diagramme de classes participantes au cas d’utilisation «Ajouter produit aux favoris» 211
Figure 216 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter produit aux favoris» 212
Figure 217 : Diagramme de classes participantes au cas d’utilisation «Supprimer produit du favoris»
................................................................................................................................................. 212
Figure 218 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer produit du favoris»
................................................................................................................................................. 213
Projet de fin d’études Page 15
Liste des tableaux
Tableau 1 : Backlog du produit .....................................................................................................36
Tableau 2 : Backlog du premier sprint ...........................................................................................46
Tableau 3 : Classification des cas d’utilisation par acteur................................................................47
Tableau 4 : Description textuelle du cas d’utilisation «s’authentifier»..............................................48
Tableau 5 : Description textuelle du cas d’utilisation «s’inscrire»...................................................50
Tableau 6 : Description textuelle du cas d’utilisation «Récupérer mot de passe»..............................51
Tableau 7 : Description textuelle du cas d’utilisation «Changer mot de passe».................................53
Tableau 8 : Description textuelle du cas d’utilisation «Afficher mon profil».....................................54
Tableau 9 : Description textuelle du cas d’utilisation «Modifier mon profil»....................................55
Tableau 10 : Description textuelle du cas d’utilisation «Lister catégories boutiques»........................57
Tableau 11 : Description textuelle du cas d’utilisation «Ajouter catégorie boutiques».......................58
Tableau 12 : Description textuelle du cas d’utilisation «Modifier catégorie boutiques».....................59
Tableau 13 : Description textuelle du cas d’utilisation «Supprimer catégorie boutiques»..................61
Tableau 14 : Description textuelle du cas d’utilisation «Lister vendeurs».........................................62
Tableau 15 : Description textuelle du cas d’utilisation «Supprimer vendeur»...................................63
Tableau 16 : Table «Utilisateur»...................................................................................................75
Tableau 17 : Table «Vendeur»......................................................................................................75
Tableau 18 : Table «Admin».........................................................................................................75
Tableau 19 : Table «Categorie_boutique».....................................................................................75
Tableau 20 : Table «Boutique» .....................................................................................................75
Tableau 21 : Calcul de vélocité estimée .........................................................................................82
Tableau 22 : Backlog du deuxième sprint ......................................................................................90
Tableau 23 : Classification des cas d’utilisation par acteur..............................................................90
Tableau 24 : Description textuelle du cas d’utilisation «Créer boutique».........................................92
Tableau 25 : Description textuelle du cas d’utilisation «Paramétrer ma boutique»...........................94
Tableau 26 : Description textuelle du cas d’utilisation «Lister produits»..........................................95
Tableau 27 : Description textuelle du cas d’utilisation «Ajouter produit».........................................96
Tableau 28 : Description textuelle du cas d’utilisation «Modifier produit».......................................97
Tableau 29 : Description textuelle du cas d’utilisation «Supprimer produit»....................................98
Tableau 30 : Description textuelle du cas d’utilisation «Lister boutiques»...................................... 100
Tableau 31 : Description textuelle du cas d’utilisation «Confirmer boutique» ................................ 101
Tableau 32 : Description textuelle du cas d’utilisation «Supprimer boutique»................................ 102
Tableau 33 : Description textuelle du cas d’utilisation «Verrouiller boutique»............................... 103
Tableau 34 : Description textuelle du cas d’utilisation «Consulter boutique».................................104
Tableau 35 : Description textuelle du cas d’utilisation «Ajouter boutique aux favoris» ................... 105
Tableau 36 : Description textuelle du cas d’utilisation «Lister produits boutique».......................... 106
Tableau 37 : Description textuelle du cas d’utilisation «Consulter produit»................................... 106
Tableau 38 : Table «Categorie_produit»..................................................................................... 125
Tableau 39 : Table «Marque»..................................................................................................... 125
Tableau 40 : Table «Produit» ..................................................................................................... 125
Tableau 41 : Table «Image»........................................................................................................ 125
Tableau 42 : Calcul de vélocité estimée ....................................................................................... 132
Tableau 43 : Backlog du troisième sprint..................................................................................... 136
Tableau 44 : Classification des cas d’utilisation par acteur............................................................ 137
Tableau 45 : Description textuelle du cas d’utilisation «Lister les clients» ..................................... 138
Tableau 46 : Description textuelle du cas d’utilisation «Supprimer client»..................................... 139
Tableau 47 : Description textuelle du cas d’utilisation «Lister mes commandes»............................ 140
Tableau 48 : Description textuelle du cas d’utilisation «Modifier état commande» ......................... 141
Projet de fin d’études Page 16
Tableau 49 : Description textuelle du cas d’utilisation «Lister les commandes».............................. 142
Tableau 50 : Description textuelle du cas d’utilisation «Afficher les statistiques de ma boutique».... 143
Tableau 51 : Description textuelle du cas d’utilisation «Afficher les statistiques de ma boutique».... 144
Tableau 52 : Description des APIs .............................................................................................. 153
Tableau 53 : Table «Client»........................................................................................................ 168
Tableau 54 : Table «Produit» ..................................................................................................... 168
Tableau 55 : Table «Commande»................................................................................................ 168
Tableau 56 : Table «ligne_commande»........................................................................................ 168
Tableau 57 : Calcul de vélocité estimée ....................................................................................... 174
Tableau 58 : Environnement matériel .......................................................................................... 177
Tableau 59 : Description textuelle du cas d’utilisation «Lister catégories produits»........................ 188
Tableau 60 : Description textuelle du cas d’utilisation «Ajouter catégorie produits»....................... 189
Tableau 61 : Description textuelle du cas d’utilisation «Modifier catégorie produits»..................... 191
Tableau 62 : Description textuelle du cas d’utilisation «Supprimer catégorie produits».................. 192
Tableau 63 : Description textuelle du cas d’utilisation «Lister marques» ....................................... 193
Tableau 64 : Description textuelle du cas d’utilisation «Ajouter marque»...................................... 194
Tableau 65 : Description textuelle du cas d’utilisation «Modifier marque»..................................... 195
Tableau 66 : Description textuelle du cas d’utilisation «Supprimer marque».................................. 196
Tableau 67 : Description textuelle du cas d’utilisation «Déverrouiller boutique»............................ 197
Tableau 68 : Description textuelle du cas d’utilisation «Supprimer boutique du favoris»................. 198
Tableau 69 : Description textuelle du cas d’utilisation «Ajouter produit aux favoris» ..................... 199
Tableau 70 : Description textuelle du cas d’utilisation «Supprimer produit du favoris»................... 200
Projet de fin d’études Page 17
Table des abréviations
API : Application Programming Interface
UML : Unified Modeling Language
JSON : JavaScript Object Notation
XML : eXtensible Markup Language
FTP : File Transfer Protocol
EDI : Environnement de Développement Intégré
MVC : Model View Controller
ORM : Object Relational Mapping
CMS : Content Management System
REST : Representational State Transfer
Projet de fin d’études Page 18
Introduction générale
De nos jours, le commerce électronique a pris une place considérable dans les
habitudes d’achats. Selon le site jumia.com.tn, le commerce électronique en Tunisie, ayant
5.8 millions d’internautes et un chiffre d’affaires pour l’année 2014, qui dépasse 100 millions
de dinars est considéré comme un secteur dynamique.
Selon aujourdhui.ma1, le commerce électronique au Maroc rejoint de plus en plus un rythme
précipité. «Les commerçants et e-marchands ont enregistré, durant l’année 2015, 32.8
millions d’opérations de paiement, par cartes bancaires pour un montant global de 22,9
milliards de dirhams.»[N1]
Aujourd’hui, la question est de transformer la société pour répondre aux demandes de notre
nouvelle ère du numérique. En fait, chaque client a sa spécificité, donc il est devenu de plus
en plus complexe de vendre mais aussi de garder nos clients.
Les places de marchés viennent alors pour améliorer le ciblage et la prise de contact avec les
clients, où qu’ils soient localisés et tendent de plus en plus à augmenter la compétitivité des
entreprises. Elles permettent ainsi d’offrir aux vendeurs une opportunité leur permettant de
diversifier leurs canaux de ventes, augmenter leur chiffres d’affaires, améliorer leur
perception à l’égard des consommateurs et renforcer la visibilité de leurs produits sur le web.
«La place de marché, ou marketplace, est un support mettant en relation un acheteur et des
vendeurs. La place de marché intervient donc comme un intermédiaire entre la demande de
l’acheteur et l’offre proposée par les commerçants en échange d’une commission.»[N2]
C’est dans ce cadre que s’inscrit notre projet de fin d’études intitulé : «Conception et
développement du backoffice d’une application mobile de gestion de place de marché multi-
boutiques» dont l’objectif est de gérer les transactions entre les vendeurs et les acheteurs.
Notre rapport est divisé comme suit :
Un premier chapitre «Étude de projet» où on présentera le cadre du projet, l’état de l’art, la
solution proposée, le langage de modélisation et la méthodologie adoptée.
Un deuxième chapitre «Planification et architecture» qui sera la première partie dans
l’application du cadre méthodologique SCRUM. Il s’agit du sprint 0. Il abordera les
fonctionnalités, l’ensemble des besoins fonctionnels et non fonctionnels, les acteurs qui vont
réagir avec notre système, le diagramme de cas d’utilisation général et l’équipe SCRUM
affecté à ce projet avec la précision du rôle de chaque membre de l’équipe.
Ce chapitre présentera également le backlog du produit, le processus de découpage de notre
projet ainsi que la planification de nos sprints à l’intérieur de chaque release.
Un troisième chapitre «Gestion des accès, catégories de boutiques et vendeurs» avec lequel
on va initier notre première itération et donc notre premier sprint.
1 http://aujourdhui.ma/economie/e-commerce-le-grand-boom
Projet de fin d’études Page 19
Un quatrième chapitre «Gestion des boutiques, catégories de produits, marques et produits»
qui représente le deuxième sprint de notre application.
Un cinquième chapitre «Gestion des échanges, commandes, statistiques et clients» qui
représente le troisième sprint et donc la dernière itération.
Un sixième chapitre «Phase de clôture» qui comporte l’ensemble des outils utilisées lors de la
conception et développement de notre projet ainsi que les technologies que nous avons
utilisées pour implémenter notre application.
Finalement, on clôture notre rapport par une conclusion générale qui résume tout le travail et
l’effort consacré à la réalisation de ce projet ainsi que tout ce qu’on a acquis et retenu de cette
expérience qui représente un point fondamental dans notre carrière.
Projet de fin d’études Page 20
Chapitre 1
Étude de projet
Projet de fin d’études Page 21
Introduction
Durant ce premier chapitre, on va présenter notre projet d’une manière
générale afin d’avoir une vision complète et éclairée sur celui-ci.
Cette vision va nous aider à dessiner le chemin que notre projet va traverser et par conséquent
on obtiendra une très bonne organisation de déroulement de ce dernier.
Ce chapitre va traiter les sections relatives à la présentation de l’organisme d’accueil, l’étude
et les critiques de l’existant, la solution proposée, le langage de modélisation et la
méthodologie adoptée.
I. Cadre du projet
Le présent projet s’intitule «Conception et développement du backoffice d’une
application mobile de gestion de place de marché multi-boutiques».Il a été proposé comme un
projet de fin d’études en vue de l’obtention du diplôme de licence fondamentale en
informatique appliquée à la gestion. Ce stage a été effectué au sein de l’agence web ITCANE.
I.1. Présentationde l’organisme d’accueil
«ITCANE est une agence Web en Tunisie qui opère sur le marché tunisien et
international et compte parmi ses partenaires et ses clients des entreprises tunisiennes,
françaises et belges. ITCANE a été fondée en 2007 par Hatem BELHASSINE.
Cette société offre des solutions Web aux entreprises et ses services couvrent tous les métiers
du Web. Les prestations qu’elle propose sont :
 Création de sites web et de portails web
 Développement de sites web e-commerce et boutiques en ligne
 Développement d'applications Web sur mesure
 Réalisation de sites et applications pour mobiles (smartphones et tablettes)
 Outsourcing et la mise à disposition d'équipes qualifiées en développement Web
 Conseil en stratégie Internet
 Hébergement et maintenance de serveurs Web et de serveurs de messagerie
 Vente de matériel et d'accessoires informatiques.» [N3]
ITCANE propose aux entreprises des solutions web personnalisées conformément à leurs
besoins et exigences. Ses clients bénéficient de sa spécialisation dans les nouvelles
technologies ainsi que de son dynamisme. Elle cherche à occuper la position de leader sur le
marché tunisien, pour cela, elle a signé des accords de partenariat avec des partenaires
nationaux et internationaux.
Projet de fin d’études Page 22
II. État de l’art
II.1.Étude de l’existant
L’étude de l’existant est une étape très importante, voire essentielle lors de la
réalisation d’un projet. Elle se définit par la recherche des applications qui sont similaires ou
semblables à la nôtre en vue d’avoir une idée sur ce qui existe actuellement.
Deux cas peuvent se présenter :
 Le produit existe déjà, il faut donc chercher comment améliorer ses fonctionnalités.
 Le produit est inexistant : il faut donc le créer.
Pour nous, nous n’avons pas trouvé un produit existant déjà chez l’organisme d’accueil sur
lequel on va dégager les différents points négatifs et par conséquent tenter de l'améliorer.
Nous allons donc créer un nouveau produit. Pour ce faire, on doit chercher ailleurs les
applications similaires à la nôtre et qui portent sur le même thème pour dégager les
fonctionnalités de base communes, les points forts qui différencient une application des autres
et les points faibles.
Après avoir effectué une recherche, nous avons relevé quelques constats qui peuvent nous
aider pour élaborer la liste des fonctionnalités de notre future application. Comme nous
sommes en train de traiter la partie relative au Back Office de l’application, nous avons relevé
avec difficulté quelques constats relatifs aux parties d’administration vu qu’on ne peut pas
avoir un accès administrateur sur les applications existantes pour pouvoir analyser et dégager
les points négatifs et même les points positifs.
 Le site www.joker.tn
Les points positifs :
1. Facilité d’utilisation : le site joker.tn offre aux vendeurs un tableau de bord
ergonomique et facile à manipuler. Si l’utilisateur ne connaît pas grand-chose en
informatique, il peut quand même s’inscrire, déposer ses produits, gérer ses
commandes, etc…
2. Pas de frais de maintenance : un commerçant veille toujours à mettre à jour son site
web et le rendre de plus en plus sécurisé. Le site de joker n’impose pas aux vendeurs
de payer des frais de maintenance.
3. Bonne visibilité des produits : Les produits du site web joker.tn sont référencés par
les moteurs de recherche. Les vendeurs n’ont pas besoin de faire appel à un
référenceur.
 Le site www.ebay.com
 Les points positifs :
1. Excellente visibilité des produits : Une annonce déposé par un vendeur et qui
comporte un titre ayant des mots clés généralement saisis dans les barres de recherches
apparaisse en premier lieu dans les résultats retournées par les moteurs de recherches.
Projet de fin d’études Page 23
2. Possibilité de cibler un grand public à l’échelle internationale : Un vendeur inscrit
sur le site d’eBay peut déposer des annonces qui seront facilement perçues par des
acheteurs étrangers.
II.2. Critiques de l’existant
 Les points négatifs du site www.joker.tn :
1. Pas de représentation graphique des données statistiques.
2. Absence d’un système de notification pour avertir les vendeurs si par exemple la
quantité d’un produit en stock est épuisée.
3. Les vendeurs sont soumis à des contraintes imposés par l’application. Par exemple, ils
ne peuvent pas définir leurs propres catégories de produits. Ils ont une liste prédéfinie
et ils sont obligés de vendre des produits qui appartiennent à des catégories
disponibles.
4. Espace de vente impersonnel : Les vendeurs n’ont pas le droit ni de définir de
nouvelles marques, ni de créer de nouvelles catégories pour leurs produits de façon
que la vitrine d’un vendeur ressemble beaucoup à celle de son voisin.
5. Pas de possibilité d’apparition en premier : Certains vendeurs veulent que leurs
boutiques apparaissent en premier lors de l’accès à une place de marché. Ils sont
même prêts à payer n’importe quel prix pour se positionner en premier pour une
certaine durée ce qui augmente la visibilité de leurs boutiques et par conséquent leurs
produits.
 Les points négatifs du site www.ebay.com :
1. Espace de vente impersonnel : Le même problème constaté au niveau du site de
joker.tn on le retrouve encore une autre fois dans le site d’ebay.com. La boutique d’un
vendeur ressemble beaucoup à celle de son voisin de façon qu’à un premier regard, on
n’arrive pas à différencier une boutique de l’autre.
2. Frais mensuel : Les vendeurs sont soumis à des frais mensuels ce qui peut être dur
surtout pour ceux qui sont nouveaux dans le e-commerce et qui cherchent à attirer les
acheteurs.
III. Solution proposée
Après avoir relevé un ensemble de constats, nous avons décidé en premier lieu
de permettre à tout vendeur de notre place de marché de gérer ses propres catégories de
produits et marques d’une façon indépendante des autres pour qu’il soit plus libre et bénéficie
d’une notoriété personnelle. Dans notre application, le vendeur est un maître de lui-même. Il
peut vendre les produits qu’il veut quelque soit leur marques, catégories, etc …
Nous avons également décidé d’inclure un très bon système de gestion des statistiques et des
indicateurs pour permettre aux vendeurs de visualiser l’état de leurs boutiques le plus
précisément possible afin de pouvoir prendre les décisions appropriées dans les bon délais.
Nous avons décidé aussi d’inclure un système de gestion des favoris qui va permettre
l’affichage des boutiques et produits en premier dans l’application mobile. Ce système va
Projet de fin d’études Page 24
certainement être géré par l’administrateur de la place de marché à partir du Back Office que
nous allons développer.
Nous essayerons d’inclure un système de notification pour les différents acteurs de notre
système s’il nous reste encore assez de temps sinon on l’ajoutera plus tard.
IV. Langage et méthodologie adoptée
Tout projet ayant un niveau de complexité considérable rend l’adoption d’une
méthodologie de développement une nécessité pour garantir une qualité acceptable et éviter
tout retard au niveau des délais.
Une méthodologie de développement définit les règles de conduite de notre projet, les rôles
des différents acteurs, l’ordonnancement des tâches, l’enchainement des actions, etc…
IV.1. Les méthodes AGILES
«La méthode Agile se base sur un cycle de développement qui porte le client
au centre. Le client est impliqué dans la réalisation du début à la fin du projet. L’implication
du client dans le processus permet à l’équipe d’obtenir un feedback régulier afin d’appliquer
directement les changements nécessaires. Cette méthode vise à accélérer le développement
d’un logiciel. De plus, elle assure la réalisation d’un logiciel fonctionnel tout au long de la
durée de sa création.»[N4]
ITCANE utilise les méthodologies de développement agiles comme cycle de vie pour ses
projets, de même pour le projet en cours. Ce choix est basé sur les avantages offerts par ces
méthodologies tels que leurs capacités d’adaptation aux changements de contexte et à
l’instabilité des spécifications qui subissent des modifications fréquentes durant le processus
de développement.
IV.1.1. Les quatre piliers des méthodes agiles
 Individu et interaction au lieu de processus et outils.
 Logiciel fonctionnel au lieu de documentation massive
 Collaboration du client au lieu de négociation de contrats
 Réagir aux changements au lieu de suivre le plan
IV.1.2. Les principales méthodes agiles
Les méthodes agiles les plus connues et utilisées actuellement sont :
 Scrum
 XP (Extreme Programming)
 Test Driven Development
 Crystal Clear
Suite à une réunion qu’on a faite avant le démarrage du projet, on a décidé de travailler avec
SCRUM vu qu’il convient le plus à notre projet.
Projet de fin d’études Page 25
IV.2. Pourquoi SCRUM ?
«Le Scrum est un Framework d’organisation de développement de produits
complexes. Il est défini par ses créateurs comme un cadre de travail permettant de répondre à
des problèmes complexes et changeants tout en livrant de manière productive et créative des
produits de la plus grande valeur possible.»[N5]
Le terme «SCRUM» se rapproche plus d’une gestion de ressources humaines plutôt que d’une
réelle méthode de développement. SCRUM se base sur un ensemble d’itérations appelées
également sprints d’une durée en moyenne entre deux et quatre semaines. En effet, parmi les
problèmes majeurs qui peuvent se présenter avec les méthodes classiques, la faible
implication du client de façon que le produit développé n’est visible qu’à la fin de sa
réalisation ce qui peut engendrer un décalage important entre ce qui a été demandé par le
client et ce qui a été développé.
Avec SCRUM, l’équipe de projet veille toujours à satisfaire le client à travers des livraisons
rapides et à avoir un contact direct avec lui. Le client intervient à la fin de chaque sprint, après
la génération d’un produit potentiellement livrable pour donner son feed-back. L’équipe de
projet doit ainsi réagir aux changements et ajustements demandés par le client.
Le processus de Scrum peut être représenté par la figure 1.
Figure 1 : Cycle de vie d’un projet Scrum [N6]
Projet de fin d’études Page 26
IV.2.1. Rôles définis par Scrum
Les rôles définis par la méthode Scrum :
 Le Product Owner : Il s’agit du propriétaire du produit. La définition des exigences
du produit et l’ajustement de ses fonctionnalités au cours des itérations sont parmi ses
missions. C’est lui qui confirme ou refuse la version partiellement livrable présentée.
 L’équipe de développement : L’équipe de développement est généralement d’une
taille de 4 à 6 membres. Elle est multi compétente et auto-organisée. Elle est engagée
à livrer un produit partiellement livrable à la fin de chaque sprint.
 Le Scrum Master : Il s’agit d’un membre de l’équipe qui doit essentiellement bien
connaître Scrum. Il doit également être courageux pour pouvoir communiquer
sincèrement sur l’état d’avancement du projet. Il vérifie aussi si les membres de
l’équipe sont en train de bien appliquer la méthode Scrum. De plus, il résout les
conflits et les obstacles rencontrés ainsi qu’il contrôle le niveau de production de
l’équipe.
IV.2.2. Les artéfacts de Scrum
 Product Backlog
Le backlog de produit, appelé également «carnet du produit» contient
l’ensemble des exigences et des besoins exprimés par le client. Comme les besoins du client
sont généralement instables, ce carnet va subir des changements de façon fréquente au cours
du projet. Ce dynamisme affectant le backlog de produit est un avantage majeur de la
méthode Scrum.
«Le product backlog est un document qui contient les exigences initiales dressées puis
hiérarchisées avec le client en début de projet. Néanmoins il va évoluer tout au long de la
durée du projet, en fonction des divers besoins du client.»[N4]
 Sprint Backlog
Le sprint backlog, appelé également «carnet de sprint » est l’ensemble de
fonctionnalités extraites à partir du backlog de produit et qui vont être réalisés au cours d’un
sprint bien déterminé.
«En chaque début de sprint, l’équipe définit un but. Puis lors de la réunion de sprint, l’équipe
de développement choisit les éléments du carnet à réaliser. L’ensemble de ces éléments
constitue alors le sprint backlog.»[N4]
 Burn Down Chart
Le Burndown Chart, appelé également «graphique d’avancement» permet à
une équipe travaillant sur un projet de visualiser son état d’avancement par rapport à ce qui a
été planifié au début du sprint. Ce graphe doit être actualisé régulièrement afin de prendre les
mesures nécessaires dans les bons moments.
Projet de fin d’études Page 27
Figure 2 : Diagramme de Burndown Chart [N7]
IV.2.3. Les activités du sprint
 Planification d’itération
La planification d’itération se traduit par une réunion où les membres de
l’équipe tentent de fixer les objectifs du sprint en question et les fonctionnalités qui vont être
développés au cours de celui-ci.
 Mêlée quotidienne
Il s’agit d’une réunion très courte dont l’objectif est de permettre à chaque
membre de l’équipe de présenter son état d’avancement vers l’atteinte de l’objectif du sprint
fixé lors de la planification d’itération.
Pour mieux tirer les avantages de cette réunion, les membres de l’équipe doivent un par un
répondre aux questions suivantes :
- Qu’avez-vous fait depuis la dernière mêlée ?
- Quels sont les obstacles que vous avez rencontrés au cours de votre avancement ?
- Que ce que vous allez faire d’ici à la prochaine mêlée ?
 Revue d’itération
La revue d’itération est une activité faite régulièrement à la fin du
développement d’un sprint donné. Le Product Owner est responsable dans cette étape de la
comparaison du produit livré par l’équipe par rapport aux engagements établis au cours de la
planification d’itération. La revue d’itération est suivie par un nouveau sprint et donc une
nouvelle itération avec le cycle quotidien : planification, développement et revue.
«La revue d'itération est le moment où l'on présente le travail de l'équipe. C'est l'occasion,
pour l'équipe, de célébrer ses réussites, de présenter les tâches terminées dans le cadre de
l'itération et d'obtenir un feedback immédiat de la part des parties prenantes du projet. Les
tâches doivent être complètement présentables et répondre aux critères de qualité de l'équipe
pour être considérées comme terminées et prêtes pour la revue.»[N8]
Projet de fin d’études Page 28
 Rétrospective de sprint :
Il s’agit d’une réunion qui aura lieu à la fin du sprint. Cette fois-ci, c’est le
Scrum Master qui intervient pour organiser cette réunion. Au cours de cette rencontre, les
idées de chaque membre de l’équipe sont prises en considération en vue d’améliorer le
rendement global de l’équipe
«La rétrospective du sprint est faite en interne avec toute l’équipe du projet le dernier jour de
l’itération. L’objectif est d’inspecter l’itération précédente, afin de déterminer quels sont les
éléments du processus de développement qui ont bien fonctionné et ceux qui sont à améliorer.
Chaque membre de l’équipe s’exprime sur le déroulement de l’itération, afin d’améliorer en
continu le processus projet.»[N5]
IV.3. Langage de modélisation
«UML (en anglais Unified Modeling Language ou «langage de modélisation
unifié») est un langage de modélisation graphique à base de pictogrammes. Il est apparu dans
le monde du génie logiciel, dans le cadre de la «conception orientée objet». Couramment
utilisé dans les projets logiciels, il peut être appliqué à toutes sortes de systèmes ne se limitant
pas au domaine informatique. UML est l’accomplissement de la fusion de précédents
langages de modélisation objet : Booch, OMT et OOSE.»[N9]
Deux points importants qu’on peut retenir de la notation «UML» :
 Le terme ‘Unified’ parce que des auteurs ont essayé de regrouper les fondamentaux
des concepts objets.
 Le terme ‘Language’ parce qu’on parle d’un langage de modélisation et non pas
d’une méthode.
Pour notre projet, nous avons opté pour l’utilisation d’UML (Unified Modeling Language)
comme langage de modélisation.
Conclusion
Dans ce chapitre, nous avons présenté le cadre de notre projet, ensuite nous
avons dégagé une liste comportant les critiques de l’existant, et en se basant sur cette liste,
nous avons proposé une solution qui tente de résoudre quelques problèmes constatés.
Enfin, nous avons évoqué le choix du langage de modélisation et de la méthodologie adoptée.
À ce niveau, nous pouvons passer au chapitre suivant qui comportera la planification et
l’architecture du projet.
Projet de fin d’études Page 29
Chapitre 2
Planification et architecture
Projet de fin d’études Page 30
Introduction
Dans ce chapitre, nous allons commencer à élaborer la première phase de la
méthodologie Scrum, appelée également «planification et architecture» ou «sprint zéro».
L’objectif de ce chapitre est d’établir une vision globale de notre produit, dégager les besoins
et les fonctionnalités, identifier les acteurs qui vont interagir avec notre système, élaborer la
planification des releases, établir le backlog de produit et finalement préparer la planification
initiale des sprints et le planning de réalisation du projet.
La particularité de ce sprint se manifeste par le fait qu’on n’aura pas un produit
potentiellement livrable à la fin de sa réalisation. Cette phase de planification et architecture
est consacrée essentiellement à la préparation de l’environnement de développement.
I. Spécification des besoins
Nous commençons par l’identification des acteurs puis l’extraction des
besoins fonctionnels et non fonctionnels.
I.1. Identifier les acteurs
«Un acteur représente un rôle joué par une entité externe (utilisateur humain,
dispositif matériel ou autre système) qui interagit directement avec le système étudié. Un
acteur peut consulter et/ou modifier directement l’état du système, en émettant et/ou en
recevant des messages susceptibles d’être porteurs de données.»[B1]
Notre projet se déroule dans le contexte de développement du back office qui donne l’accès
seulement à l’administrateur et aux vendeurs de la place de marché tout en donnant à chacun
d’eux des privilèges bien déterminés.
Notre application va interagir avec deux acteurs :
Administrateur : Un acteur qui va accéder au Back Office et gérer l’ensemble des
composants de la place de marché (clients, vendeurs, boutiques, etc…) ainsi que d’afficher
des informations utiles tel que des indicateurs et des statistiques sur les ventes de toute la
place de marché.
Vendeur : Un acteur qui va accéder au BackOffice, créer un compte, créer et paramétrer sa
boutique, gérer l’ensemble de ses produits, catégories de produits, marques et les commandes
de ses clients ainsi que d’afficher des informations utiles tel que des indicateurs et statistiques
sur les ventes de sa boutique.
I.2. Besoins fonctionnels
Les besoins fonctionnels expriment ce que doit effectuer le système afin de
répondre à ce qui a été demandé par le client.
Projet de fin d’études Page 31
Ces besoins englobent ainsi la représentation abstraite des services que le système est censé
fournir aux différents utilisateurs.
Notre système doit permettre :
 La création d’un compte : Notre système doit permettre la création d’un compte
pour qu’un vendeur puisse rejoindre la place de marché.
 La gestion des catégories de boutiques : Notre système doit permettre la gestion
des catégories de boutiques avec la possibilité d’ajout, de modification et de
suppression.
 La gestion des boutiques : Notre système doit permettre la gestion des boutiques
avec la possibilité d’ajout, de modification, de suppression, de confirmation, de
verrouillage et d’ajout aux favoris.
Afin de pouvoir déposer ses produits, le vendeur doit créer et paramétrer sa propre
boutique. La définition des paramètres des boutiques, tel que par exemple leur
catégorie permet à un client de filtrer l’affichage des boutiques selon ce critère.
 La gestion des catégories de produits : Notre système doit permettre la gestion
des catégories de produits avec la possibilité d’ajout, de modification et de
suppression. Chaque vendeur peut définir ses propres catégories de produits qu’il
envisage utiliser au futur. En effet pour ajouter un produit, le vendeur aura une liste de
catégories personnalisées et aura seulement le choix de sélectionner cette dernière
parmi la liste qu’il a défini.
 La gestion des marques : Notre système doit permettre la gestion des marques
avec la possibilité d’ajout, de modification et de suppression.
 La gestion des produits : Notre système doit permettre la gestion des produits avec
la possibilité d’ajout, de modification, de consultation, d’ajout aux favoris et de
suppression.
Un vendeur doit bien sûr pouvoir ajouter ou supprimer un produit, lister l’ensemble
des produits existants dans sa boutique et modifier les caractéristiques d’un produit tel
que la description, le nombre d’exemplaires (Quantité en stock), etc…
 La gestion des commandes : Notre système doit permettre la gestion des
commandes avec la possibilité de modification d’état d’une commande spécifique.
 La gestion des clients : Notre système doit permettre la gestion des clients avec la
possibilité de suppression.
 La gestion des vendeurs : Notre système doit permettre la gestion des vendeurs
avec la possibilité de suppression.
 La gestion des statistiques : Notre système doit permettre l’affichage d’un tableau
de bord comportant des indicateurs et des statistiques.
I.3 Besoins non fonctionnels
Il s’agit des besoins qui peuvent être perçus par l’utilisateur et qui sont reliés
indirectement au comportement du système.
Projet de fin d’études Page 32
Les besoins non fonctionnels de notre système se décrivent comme suit :
 Ergonomie : Le back office doit être facile à utiliser. Il doit y avoir une certaine
cohérence et homogénéité entre les différentes interfaces pour les utilisateurs.
 Rapidité : Les traitements doivent être optimisés pour avoir un court temps de
réponse.
 Efficacité: L’application doit être fonctionnelle indépendamment de toutes
circonstances pouvant entourer l’utilisateur.
 Sécurité : Assurance de la confidentialité et sécurité des données.
 Maintenabilité : La solution doit être facile à maintenir.
II. Structure et découpage du projet
Nous commençons par l’identification de l’équipe Scrum, l’établissement du
backlog de produit, la planification des releases et finalement la structuration de ces derniers
en sprints.
II.1. Identification de l’équipe Scrum
Dans un projet SCRUM, l’équipe a un rôle fondamental : elle permet
d’optimiser la productivité et la flexibilité.
En effet, Elle doit être auto organisée et multifonctionnelle.
«L’équipe Scrum est auto-organisée et choisit la façon d'accomplir son travail, sans que ce
soit imposé par une personne externe. Il n'y a pas non plus de notion de hiérarchie interne :
toutes les décisions sont prises ensemble. Ce mode d'organisation a pour objectif d'augmenter
l'efficacité de travail de l'équipe. Elle est pluridisciplinaire et comporte toutes les compétences
pour réaliser son projet, sans faire appel à des personnes externes à celle-ci.»[N10]
Cette méthode agile intègre généralement la participation de plusieurs acteurs, dans notre
contexte il s’agit de M. Hatem Belhassine qui est à la fois le propriétaire et le directeur de
produit vu qu’il satisfait les prérequis de ces deux acteurs tout en mentionnant que l’équipe se
compose de deux membres : Rami Raddaoui et Mounir Homrani.
Projet de fin d’études Page 33
Figure 3 : Équipe et rôles
II.2. Le Backlog du Produit
Le backlog du produit est l’ensemble des fonctionnalités attendues du produit.
C’est l’ensemble des spécifications fonctionnelles et techniques de ce dernier.
«Le Backlog de produit est un élément indispensable de toute démarche Scrum. C’est une liste
ordonnée de tout ce qui pourrait être requis dans le produit. Il retrace la vision utilisateur et
reste ouvert et évolutif sur toute la durée du projet. Géré sous la responsabilité du PO, il est
créé par décomposition successive à partir de la vision du produit.»[N5]
ID Fonctionnalité ID Users Stories Priorité Risque
1 Gestion d’inscription
et d’authentification
1.1 En tant que vendeur, je
veux m’inscrire et créer
mon propre compte.
Elevé Faible
1.2 En tant qu’utilisateur, je
veux récupérer mon mot de
passe en cas d’oubli.
Moyenne Moyen
1.3 En tant qu’utilisateur, je
veux m’authentifier via
mon email et mon mot de
passe en toute sécurité.
Elevé Faible
2 Gestion des
boutiques
2.1 En tant que vendeur, je
veux créer ma boutique.
Elevé Faible
2.2 En tant que vendeur, je
veux paramétrer ma
boutique.
Elevé Faible
2.3 En tant qu’administrateur,
je veux lister les boutiques.
Elevé Faible
2.4 En tant qu’administrateur,
je veux accepter/refuser la
publication d’une boutique
Elevé Faible
Projet de fin d’études Page 34
suite à la demande d’un
vendeur.
2.5 En tant qu’administrateur,
je veux
verrouiller/déverrouiller
une boutique.
Moyenne Faible
2.6 En tant qu’administrateur,
je veux ajouter/supprimer
une boutique du favoris.
Faible Faible
2.7 En tant qu’administrateur,
je veux consulter une
boutique.
Elevé Faible
2.8 En tant qu’administrateur,
je veux supprimer une
boutique.
Elevé Faible
3 Gestion des produits 3.1 En tant que vendeur, je
veux afficher la liste des
produits de ma boutique.
Elevé Faible
3.2 En tant que vendeur, je
veux ajouter un ou
plusieurs produits.
Elevé Moyen
3.3 En tant que vendeur, je
veux modifier un produit
appartenant à ma boutique.
Elevé Moyen
3.4 En tant que vendeur, je
veux supprimer un produit
appartenant à ma boutique
Elevé Faible
3.5 En tant qu’administrateur,
je veux lister les produits
d’une boutique spécifique.
Elevé Faible
3.6 En tant qu’administrateur,
je veux consulter un
produit d’une boutique
spécifique.
Moyenne Faible
3.7 En tant qu’administrateur,
je veux ajouter/supprimer
un produit spécifique du
favoris.
Faible Faible
4 Gestion des
commandes
4.1 En tant que vendeur, je
veux afficher la liste des
commandes relatives à mes
clients.
Elevé Faible
4.2 En tant que vendeur, je
veux modifier l’état d’une
commande spécifique.
Elevé Faible
4.3 En tant qu’administrateur,
je veux afficher la liste des
commandes de toute la
place de marché.
Elevé Faible
4.4 En tant que vendeur, je
veux exporter la liste de
mes commandes.
Faible Faible
Projet de fin d’études Page 35
4.5 En tant qu’administrateur,
je veux exporter la liste des
commandes de toute la
place de marché.
Faible Faible
5 Gestion des marques 5.1 En tant que vendeur, je
veux lister mes marques.
Elevé Faible
5.2 En tant que vendeur, je
veux créer une ou plusieurs
marques.
Elevé Faible
5.3 En tant que vendeur, je
veux modifier une marque
spécifique parmi la liste
des marques créées.
Elevé Faible
5.4 En tant que vendeur, je
veux supprimer une
marque spécifique parmi la
liste des marques créées.
Elevé Faible
6 Gestion des catégories
de produits
6.1 En tant que vendeur, je
veux lister mes catégories
de produits.
Elevé Faible
6.2 En tant que vendeur, je
veux créer une ou plusieurs
catégories de produits.
Elevé Faible
6.3 En tant que vendeur, je
veux modifier une
catégorie de produit
spécifique parmi la liste
des catégories créées.
Elevé Faible
6.4 En tant que vendeur, je
veux supprimer une
catégorie de produit
spécifique parmi la liste
des catégories créées.
Elevé Faible
7 Gestion des catégories
de boutiques
7.1 En tant qu’administrateur,
je veux lister les catégories
de boutiques.
Elevé Faible
7.2 En tant qu’administrateur,
je veux créer une ou
plusieurs catégories de
boutiques.
Elevé Faible
7.3 En tant qu’administrateur,
je veux modifier une
catégorie de boutiques.
Elevé Faible
7.4 En tant qu’administrateur,
je veux supprimer une
catégorie de boutique.
Elevé Faible
8 Gestion des vendeurs 8.1 En tant qu’administrateur,
je veux afficher la liste des
vendeurs.
Elevé Faible
8.2 En tant qu’administrateur,
je veux supprimer un
vendeur spécifique.
Elevé Faible
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.
PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.

Contenu connexe

Tendances

Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webSalma Gouia
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachAyoub Mkharbach
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Anas Riahi
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopieRamiJOUDI2
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique ayoub daoudi
 
Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Anouar Kacem
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...Bilel Khaled ☁
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)safwenbenfredj
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"étudesMohamed Boubaya
 
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRRapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRAHMEDAKHACHKHOUCH
 
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...MOHAMMED MOURADI
 
Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...Mohamed Boubaya
 
Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelBelwafi Bilel
 
Conception et développement d’une plateforme d'import-export avec paiement en...
Conception et développement d’une plateforme d'import-export avec paiement en...Conception et développement d’une plateforme d'import-export avec paiement en...
Conception et développement d’une plateforme d'import-export avec paiement en...Karim Ben Alaya
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementNassim Bahri
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatiqueHicham Ben
 
Rapport stage pfe
Rapport stage  pfe Rapport stage  pfe
Rapport stage pfe rimeh moussi
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaIlef Ben Slima
 

Tendances (20)

Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_webRapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
Rapport final pfe_systeme_de_gestion _de_cabinet_de_formation_mobile_web
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbach
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopie
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique
 
Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRRapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
 
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
 
Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...
 
Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilel
 
Conception et développement d’une plateforme d'import-export avec paiement en...
Conception et développement d’une plateforme d'import-export avec paiement en...Conception et développement d’une plateforme d'import-export avec paiement en...
Conception et développement d’une plateforme d'import-export avec paiement en...
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatique
 
Rapport stage pfe
Rapport stage  pfe Rapport stage  pfe
Rapport stage pfe
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben Slima
 

Similaire à PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.

Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti MohammedMohammed JAITI
 
salwfrarapp137.pdf
salwfrarapp137.pdfsalwfrarapp137.pdf
salwfrarapp137.pdfSASarah3
 
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !Massimo Russo
 
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !Massimo Russo
 
Rapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftRapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftOussama BAHLOULI
 
Rapport_deStage
Rapport_deStageRapport_deStage
Rapport_deStageOmar TRAI
 
Rapport de stage boite à idées innovantes avec dashboard
Rapport de stage boite à idées innovantes avec dashboardRapport de stage boite à idées innovantes avec dashboard
Rapport de stage boite à idées innovantes avec dashboardSiwar GUEMRI
 
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...Ashok Ramassamy
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemSarra ERRREGUI
 
Thèse Bureautique 2.0 - Stephane LAU
Thèse Bureautique 2.0 - Stephane LAUThèse Bureautique 2.0 - Stephane LAU
Thèse Bureautique 2.0 - Stephane LAUstephou85
 
Camille MERTZ & Aurore DUPONT d’APREMONT -
Camille MERTZ & Aurore DUPONT d’APREMONT - Camille MERTZ & Aurore DUPONT d’APREMONT -
Camille MERTZ & Aurore DUPONT d’APREMONT - MBA ESG
 
Rapport de stage de fin d'etudes du DUT
Rapport de stage de fin d'etudes du DUTRapport de stage de fin d'etudes du DUT
Rapport de stage de fin d'etudes du DUTKarim Souabni
 
OURIREM-SALAH.pdf
OURIREM-SALAH.pdfOURIREM-SALAH.pdf
OURIREM-SALAH.pdfGhezza
 
Rapport de projet de fin d’étude
Rapport  de projet de fin d’étudeRapport  de projet de fin d’étude
Rapport de projet de fin d’étudeOumaimaOuedherfi
 
Rapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaRapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaNazih Heni
 
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Alexis Legrand
 

Similaire à PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques. (20)

Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
 
salwfrarapp137.pdf
salwfrarapp137.pdfsalwfrarapp137.pdf
salwfrarapp137.pdf
 
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
 
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
La VoIP, une solution d'avenir pour les entreprises... mais pas seulement !
 
Recommandations organismes de formation métiers internet
Recommandations organismes de formation métiers internet Recommandations organismes de formation métiers internet
Recommandations organismes de formation métiers internet
 
Rapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftRapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI Microsoft
 
Rapport_deStage
Rapport_deStageRapport_deStage
Rapport_deStage
 
Rapport de stage boite à idées innovantes avec dashboard
Rapport de stage boite à idées innovantes avec dashboardRapport de stage boite à idées innovantes avec dashboard
Rapport de stage boite à idées innovantes avec dashboard
 
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...
Une SSII doit elle faire appel à une web agency ou avoir sa propre équipe de ...
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment system
 
Rapport PFE2021.pdf
Rapport PFE2021.pdfRapport PFE2021.pdf
Rapport PFE2021.pdf
 
Thèse Bureautique 2.0 - Stephane LAU
Thèse Bureautique 2.0 - Stephane LAUThèse Bureautique 2.0 - Stephane LAU
Thèse Bureautique 2.0 - Stephane LAU
 
Camille MERTZ & Aurore DUPONT d’APREMONT -
Camille MERTZ & Aurore DUPONT d’APREMONT - Camille MERTZ & Aurore DUPONT d’APREMONT -
Camille MERTZ & Aurore DUPONT d’APREMONT -
 
Rapport de stage de fin d'etudes du DUT
Rapport de stage de fin d'etudes du DUTRapport de stage de fin d'etudes du DUT
Rapport de stage de fin d'etudes du DUT
 
OURIREM-SALAH.pdf
OURIREM-SALAH.pdfOURIREM-SALAH.pdf
OURIREM-SALAH.pdf
 
Rapport de projet de fin d’étude
Rapport  de projet de fin d’étudeRapport  de projet de fin d’étude
Rapport de projet de fin d’étude
 
Rapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaRapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédia
 
GEmploi : Smart school timetable management software using RFID technology
GEmploi : Smart school timetable management software using RFID technologyGEmploi : Smart school timetable management software using RFID technology
GEmploi : Smart school timetable management software using RFID technology
 
IntenrnshipMyApp
IntenrnshipMyAppIntenrnshipMyApp
IntenrnshipMyApp
 
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
 

PFE::Conception et développement du Back Office d'une application mobile de gestion d'une place de marché multi-boutiques.

  • 1. ‫تلخيص‬ ‫شهادة‬ ‫على‬ ‫للحصول‬ ‫الدروس‬ ‫ختم‬ ‫مشروع‬ ‫إطار‬ ‫في‬ ‫يندرج‬ ‫العمل‬ ‫هذا‬‫التصرف‬ ‫إعالمية‬ ‫في‬ ‫أساسية‬ ‫إجازة‬. ‫شركة‬ ‫داخل‬ ‫العمل‬ ‫هذا‬ ‫تم‬ ‫قد‬ ‫و‬‫من‬ ‫الفترة‬ ‫خالل‬ "‫"إتقان‬01‫فيفري‬2017‫إلى‬11‫ماي‬2017. ‫لتطبيق‬ ‫الخلفي‬ ‫المكتب‬ ‫إلدارة‬ ‫تطبيق‬ ‫تنفيذ‬ ‫و‬ ‫تصميم‬ ‫هو‬ ‫المشروع‬ ‫هذا‬ ‫من‬ ‫والهدف‬‫محمول‬‫عبارة‬ ‫وهو‬‫سوق‬ ‫عن‬ ‫التي‬ ‫افتراضية‬.‫التجارية‬ ‫المحالت‬ ‫من‬ ‫العديد‬ ‫تضم‬‫المستخ‬ ‫من‬ ‫للعديد‬ ‫متاح‬ ‫التطبيق‬ ‫هذا‬ ‫سيكون‬ ‫و‬‫يوفر‬ ‫أنه‬ ‫كما‬ ‫دمين‬ .‫اإلفتراضية‬ ‫للسوق‬ ‫التابعة‬ ‫التجارية‬ ‫المحالت‬ ‫إلدارة‬ ‫الوظائف‬ ‫من‬ ‫العديد‬ ‫المفاتيح‬ ‫الكلمات‬:‫افتراضية,سيمفون‬ ‫سوق‬‫ي‬.‫الويب,جيسون‬ ‫,خدمات‬ Résumé Ce présent mémoire a été rédigé dans le cadre du projet de fin d’études pour l’obtention du diplôme de licence fondamentale en informatique de gestion. Ce projet a été effectué au sein de l’organisme "ITCANE" pendant la période de 01 Février 2017 au 11 mai 2017. L'objectif de ce travail est de concevoir et développer le back office d'une application mobile de gestion de place de marché multi-boutiques. Le back office sera accessible d’une manière sécurisée à plusieurs profils d’utilisateurs et proposera plusieurs fonctionnalités pour la gestion et l’administration des boutiques de la place de marché. Le back office proposera aussi une API pour communiquer avec l’application mobile. Mots clés : Place de marché, Symfony, Services WEB, JSON. Abstract This project is a part of the final studies project graduation to obtain the diploma of the computer science management licence. The work was realized within ITCANE company during the period of 01 February 2017 to 11 May 2017. The objective of this work is to design and implement the back-end of a mobile multi-store marketplace management application. The back-end will be accessible to several users and will offer several functionalities for the management and administration of shops in the marketplace. The back-end will also offer an API (Application Programming Interface) to communicate with the mobile application. Key words: Marketplace, Symfony, WEB Services, JSON
  • 2. Projet de fin d’études Page 2 Dédicace A mes parents, Pour avoir cru en moi et mes capacités et pour m’avoir permis de me développer dans un endroit différent afin d’accroitre mes connaissances et expériences dans mon domaine d’études. A toute ma famille ainsi qu'à mes amis. A tous ceux que j'aime et qui m'aiment. Je dédie ce travail espérant avoir répondu à leurs souhaits de me voir réussir. Rami
  • 3. Projet de fin d’études Page 3 Remerciements C’est avec un grand plaisir que nous réservons ces lignes en signe de gratitude et de reconnaissance à tous ceux qui ont contribué de près ou de loin à la réalisation de ce modeste travail. Nous nous adressons en premier lieu aux membres de jury que nous remercions d’avoir accepté d’évaluer ce travail. Nous tenons à remercier monsieur «Karim KAMOUN», notre encadrant au sein de l’ESEN, pour son aide, la patience qu’il a su exercer à notre égard et les conseils précieux qu’il nous a prodigué tout au long de ce stage. Nos remerciements s’adressent à notre encadrant au sein d’ITCANE monsieur «Hatem BELHASSINE» de nous avoir offert cette opportunité d’effectuer notre stage de fin d’études au sein de la société ITCANE ainsi que pour sa disponibilité, ses conseils et sa confiance. Il convient à la fin de remercier profondément tous nos enseignants de l’ESEN pour la qualité de la formation qu’ils nous ont fournit tout au long de notre cursus universitaire. Qu’ils trouvent dans ce modeste travail une graine de ce qu’ils ont semé. Rami
  • 4. Projet de fin d’études Page 4 Table des matières Introduction générale.................................................................................................................. 19 Chapitre I : Étude de projet Introduction..................................................................................................................... 22 I. Cadre du projet ............................................................................................................ 22 I.1.Présentation de l’organisme d’accueil ...................................................................... 22 II. État de l’art ................................................................................................................. 23 II.1. Étude de l’existant .................................................................................................23 II.2. Critiques de l’existant ............................................................................................ 24 III. Solution proposée ...................................................................................................... 24 IV. Langage et méthodologie adoptée ............................................................................... 25 IV.1. Les méthodes agiles ............................................................................................. 25 IV.1.1 Les quatre piliers des méthodes agiles................................................................ 25 IV.1.2 Les principales méthodes agiles......................................................................... 25 IV.2. Pourquoi Scrum ? .................................................................................................26 IV.2.1 Rôles définis par Scrum.................................................................................... 27 IV.2.2 Les artéfacts de Scrum...................................................................................... 27 IV.2.3 Les activités du sprint....................................................................................... 28 IV.3. Langage de modélisation ....................................................................................... 29 Conclusion ...................................................................................................................... 29 Chapitre II : Planification et architecture Introduction..................................................................................................................... 31 I. Spécification des besoins .............................................................................................. 31 I.1. Identification des acteurs ......................................................................................... 31 I.2. Besoins fonctionnels ............................................................................................... 31 I.3. Besoins non fonctionnels ......................................................................................... 32 II. Structure et découpage du projet .................................................................................. 33 II.1. Identification de l’équipe SCRUM .......................................................................... 33 II.2. Le backlog du produit ............................................................................................ 34 II.3. Planification des releases ....................................................................................... 37 II.4. Structuration des releases en sprints ........................................................................ 38 II.4.1 Planning de réalisation du projet ........................................................................ 39 II.5. Diagramme de cas d’utilisation global .................................................................... 39 Conclusion ...................................................................................................................... 41 Chapitre III : Sprint 1 : Gestion des accès, catégories de boutiques et vendeurs Introduction..................................................................................................................... 43 I. La spécification fonctionnelle ....................................................................................... 43 I.1. Le sprint Backlog ...................................................................................................43 I.2. Classification des cas d’utilisations par acteur ........................................................... 47
  • 5. Projet de fin d’études Page 5 I.3. Diagramme de cas d’utilisation ................................................................................ 48 II. Analyse des cas d’utilisations ...................................................................................... 49 II.1. Analyse du cas d’utilisation «S’authentifier» ........................................................... 49 II.2. Analyse du cas d’utilisation «S’inscrire»..................................................................50 II.3. Analyse du cas d’utilisation «Récupérer mot de passe»............................................. 52 II.4. Analyse du cas d’utilisation «Changer mot de passe» ............................................... 53 II.5. Analyse du cas d’utilisation «Gérer mon profil» ...................................................... 55 II.5.1 Raffinement du cas d’utilisation «Gérer mon profil» ........................................... 55 II.5.1.1 Analyse du cas d’utilisation «Afficher mon profil» ........................................ 55 II.5.1.2 Analyse du cas d’utilisation «Modifier mon profil» ....................................... 56 II.6. Analyse du cas d’utilisation «Gérer catégories boutiques» ........................................ 57 II.6.1 Raffinement du cas d’utilisation «Gérer catégories boutiques» ............................. 57 II.6.1.1 Analyse du cas d’utilisation «Lister catégories boutiques» ............................. 58 II.6.1.2 Analyse du cas d’utilisation «Ajouter catégorie boutiques» ............................ 58 II.6.1.3 Analyse du cas d’utilisation «Modifier catégorie boutiques» .......................... 60 II.6.1.4 Analyse du cas d’utilisation «Supprimer catégorie boutiques» ........................ 61 II.7. Analyse du cas d’utilisation «Gérer vendeurs» ........................................................ 62 II.7.1 Raffinement du cas d’utilisation «Gérer vendeurs» .............................................. 62 II.7.1.1 Analyse du cas d’utilisation «Lister vendeurs» .............................................. 63 II.7.1.2 Analyse du cas d’utilisation «Supprimer vendeur» ......................................... 63 III. Conception des cas d’utilisations ................................................................................ 64 III.1. Conception du cas d’utilisation «S’authentifier» ..................................................... 65 III.2. Conception du cas d’utilisation «S’inscrire» ........................................................... 66 III.3. Conception du cas d’utilisation «Gérer mon profil» ................................................ 67 III.3.1. Conception du cas d’utilisation «Afficher mon profil» ...................................... 67 III.3.2. Conception du cas d’utilisation «Modifier mon profil» ...................................... 68 III.4. Conception du cas d’utilisation «Gérer catégories boutiques» .................................69 III.4.1. Conception du cas d’utilisation «Lister catégories boutiques» ............................ 69 III.4.2. Conception du cas d’utilisation «Ajouter catégorie boutiques» ........................... 70 III.4.3. Conception du cas d’utilisation «Modifier catégorie boutiques» ......................... 71 III.4.4. Conception du cas d’utilisation «Supprimer catégorie boutiques» ...................... 72 III.5. Conception du cas d’utilisation «Gérer vendeurs» .................................................. 73 III.5.1. Conception du cas d’utilisation «Lister vendeurs» ............................................. 73 III.5.2. Conception du cas d’utilisation «Supprimer vendeur» ....................................... 74 III.6. Diagramme de classes global du premier sprint ...................................................... 75 IV. Implémentation ........................................................................................................... 75 V. Tests ............................................................................................................................ 78 V.1 Les tests unitaires ..................................................................................................... 78 V.1.1 Le test unitaire du cas d’utilisation «Ajouter catégorie boutiques» ......................... 79
  • 6. Projet de fin d’études Page 6 V.1.2 Le test unitaire du cas d’utilisation «Supprimer catégorie boutiques»...................... 80 VI. Revue de sprint ........................................................................................................... 82 VI.1 Diagramme de «Burndown Chart» ........................................................................... 82 VI.2 Calcul de vélocité ...................................................................................................83 Conclusion ....................................................................................................................... 83 Chapitre 4 : Sprint2 : Gestiondesboutiques,marques,catégoriesde produits et produits Introduction..................................................................................................................... 85 I. La spécification fonctionnelle ...................................................................................... 85 I.1 Le sprint backlog.................................................................................................... 85 I.2 Classification des cas d’utilisations par acteur .......................................................... 91 I.3 Diagramme de cas d’utilisation................................................................................ 92 II. Analyse des cas d’utilisations ...................................................................................... 92 II.1 Analyse de cas d’utilisation «Gérer ma boutique» .................................................... 92 II.1.1 Raffinement du cas d’utilisation «Gérer ma boutique» ........................................ 92 II.1.1.1 Analyse du cas d’utilisation «Créer ma boutique» ............................................ 93 II.1.1.2 Analyse du cas d’utilisation «Paramétrer ma boutique» .................................... 94 II.2 Analyse de cas d’utilisation «Gérer mes produits».................................................... 95 II.2.1 Raffinement du cas d’utilisation «Gérer mes produits»........................................ 95 II.2.1.1 Analyse du cas d’utilisation «Lister produits» ............................................... 96 II.2.1.2 Analyse du cas d’utilisation «Ajouter produit» .............................................. 96 II.2.1.3 Analyse du cas d’utilisation «Modifier produit» ............................................ 97 II.2.1.4 Analyse du cas d’utilisation «Supprimer produit».......................................... 98 II.3 Analyse du cas d’utilisation «Gérer les boutiques» ................................................... 99 II.3.1 Raffinement du cas d’utilisation «Gérer les boutiques» ..................................... 100 II.3.1.1 Analyse du cas d’utilisation «Lister boutiques»........................................... 101 II.3.1.2 Analyse du cas d’utilisation «Confirmer boutique»...................................... 101 II.3.1.3 Analyse du cas d’utilisation «Supprimer boutique» ..................................... 102 II.3.1.4 Analyse du cas d’utilisation «Verrouiller boutique»..................................... 103 II.3.1.5 Analyse du cas d’utilisation «Consulter boutique»....................................... 105 II.3.1.6 Analyse du cas d’utilisation «Ajouter boutique aux favoris» ........................ 105 II.3.1.7 Analyse du cas d’utilisation «Lister produits boutique» ............................... 106 II.3.1.8 Analyse du cas d’utilisation «Consulter produit»......................................... 107 III. Conception des cas d’utilisations ............................................................................ 108 III.1 Conception du cas d’utilisation «Gérer ma boutique» .......................................... 108 III.1.1 Conception du cas d’utilisation «Créer ma boutique»..................................... 108 III.1.2 Conception du cas d’utilisation «Paramétrer ma boutique»............................. 110 III.2 Conception du cas d’utilisation «Gérer mes produits».......................................... 111 III.2.1 Conception du cas d’utilisation «Lister produits»........................................... 111 III.2.2 Conception du cas d’utilisation «Ajouter produit».......................................... 112
  • 7. Projet de fin d’études Page 7 III.2.3 Conception du cas d’utilisation «Modifier produit»........................................ 114 III.2.4 Conception du cas d’utilisation «Supprimer produit» ..................................... 116 III.3 Conception du cas d’utilisation «Gérer les boutiques» .......................................... 117 III.3.1 Conception du cas d’utilisation «Lister boutiques» ......................................... 117 III.3.2 Conception du cas d’utilisation «Confirmer boutique» .................................... 118 III.3.3 Conception du cas d’utilisation «Supprimer boutique».................................... 119 III.3.4 Conception du cas d’utilisation «Verrouiller boutique» ................................... 120 III.3.5 Conception du cas d’utilisation «Consulter boutique» ..................................... 121 III.3.6 Conception du cas d’utilisation «Ajouter boutique aux favoris»....................... 122 III.3.7 Conception du cas d’utilisation «Lister produits boutique».............................. 123 III.3.8 Conception du cas d’utilisation «Consulter produit» ....................................... 124 III.3.9 Diagramme de classes global du deuxième sprint............................................ 125 IV. Implémentation ...................................................................................................... 125 V. Tests....................................................................................................................... 127 V.1 Les tests unitaires................................................................................................ 127 V.1.1 Le test unitaire du cas d’utilisation «Verrouiller boutique» ............................... 127 V.1.2 Le test unitaire du cas d’utilisation «Paramétrer ma boutique» .......................... 128 V.1.3 Le test unitaire du cas d’utilisation «Ajouter produit aux favoris» ..................... 129 V.1.4 Le test unitaire du cas d’utilisation «Confirmer boutique» ................................ 130 VI. Revue de sprint ...................................................................................................... 131 VI.1 Diagramme de «Burndown Chart»...................................................................... 132 VI.2 Calcul de vélocité .............................................................................................. 132 VI.3 Réajustements à faire pour le prochain sprint ....................................................... 133 Conclusion .................................................................................................................. 133 Chapitre 5 : Sprint3 : Gestiondeséchanges,commandes,statistiqueset clients Introduction................................................................................................................... 135 I. La spécification fonctionnelle .................................................................................... 135 I.1 Le sprint backlog.................................................................................................. 135 I.2 Classification des cas d’utilisations par acteur........................................................ 138 I.3 Diagramme de cas d’utilisation.............................................................................. 138 II. Analyse des cas d’utilisations ................................................................................... 138 II.1 Analyse de cas d’utilisation «Gérer les clients» ..................................................... 139 II.1.1 Raffinement du cas d’utilisation «Gérer les clients» ......................................... 139 II.1.1.1 Analyse du cas d’utilisation «Lister les clients».......................................... 139 II.1.1.2 Analyse du cas d’utilisation «Supprimer client» ......................................... 140 II.2 Analyse de cas d’utilisation «Gérer mes commandes» ........................................... 141 II.2.1 Raffinement du cas d’utilisation «Gérer mes commandes» ............................... 141 II.2.1.1 Analyse du cas d’utilisation «Lister mes commandes»................................ 141 II.2.1.2 Analyse du cas d’utilisation «Modifier état commande».............................. 142
  • 8. Projet de fin d’études Page 8 II.3 Analyse du cas d’utilisation «Gérer les commandes»............................................. 143 II.3.1 Raffinement du cas d’utilisation «Gérer les commandes»................................. 143 II.3.1.1 Analyse du cas d’utilisation «Lister les commandes».................................. 143 II.3.1.2 Analyse du cas d’utilisation «Afficher les statistiques de ma boutique»........ 144 II.3.1.3 Analyse du cas d’utilisation «Afficher les statistiques de la place de marché» ................................................................................................................................................. 144 III. Conception des cas d’utilisations ............................................................................. 146 III.1 Conception du cas d’utilisation «Gérer les clients»............................................... 146 III.1.1 Conception du cas d’utilisation «Lister les clients» ......................................... 146 III.1.2 Conception du cas d’utilisation «Supprimer client»......................................... 147 III.2 Conception du cas d’utilisation «Gérer mes commandes»..................................... 148 III.2.1 Conception du cas d’utilisation «Lister mes commandes» ............................... 148 III.2.2 Conception du cas d’utilisation «Modifier état commande»............................. 149 III.3 Conception du cas d’utilisation «Gérer les commandes»....................................... 150 III.3.1 Conception du cas d’utilisation «Lister les commandes» ................................. 150 III.4 Conception du cas d’utilisation «Afficher les statistiques de ma boutique»............. 151 III.5 Conception du cas d’utilisation «Afficher les statistiques de la place de marché»... 152 IV. Les services WEB.................................................................................................. 153 IV.1 Conception des services WEB ........................................................................... 155 IV.1.1 Conception de l’API «Inscription client» ....................................................... 156 IV.1.2 Conception de l’API «Authentification client» .............................................. 156 IV.1.3 Conception de l’API «GET Catégories boutiques» ......................................... 157 IV.1.4 Conception de l’API «GET boutiques favoris»............................................... 158 IV.1.5 Conception de l’API «GET boutiques By Catégorie»...................................... 159 IV.1.6 Conception de l’API «GET produits By Boutique»......................................... 160 IV.1.7 Conception de l’API «GET produits By Catégorie»........................................ 161 IV.1.8 Conception de l’API «GET Catégories produits By Boutique» ........................ 162 IV.1.9 Conception de l’API «GET libellé By ID catégorie »...................................... 163 IV.1.10 Conception de l’API «GET produit By ID».................................................. 164 IV.1.11 Conception de l’API «GET produits favoris»................................................ 165 IV.1.12 Conception de l’API «GET Images By ID Produit» ...................................... 166 IV.1.13 Conception de l’API «GET Commande Client»............................................ 167 IV.1.14 Diagramme de classes global du troisième sprint .......................................... 168 V. Implémentation ....................................................................................................... 169 VI. Tests...................................................................................................................... 171 VI.1 Les tests unitaires............................................................................................... 171 VI.1.1 Le test unitaire de l’API «GET Catégories boutiques» .................................... 171 VI.1.2 Le test unitaire de l’API «GET produits By Boutique».................................... 172 VI.1.3 Le test unitaire du cas d’utilisation «Modifier état commande»........................ 173
  • 9. Projet de fin d’études Page 9 VII. Revue de sprint ..................................................................................................... 174 VII.1 Diagramme de «Burndown Chart»..................................................................... 174 VII.2 Calcul de vélocité ............................................................................................. 175 Conclusion .................................................................................................................. 176 Chapitre 6 : Phase de clôture Introduction ................................................................................................................. 178 I. Environnement de développement............................................................................... 178 I.1 Environnement matériel......................................................................................... 178 I.2 Environnement logiciel.......................................................................................... 178 II. Choix technologiques................................................................................................ 179 II.1 L’architecture MVC............................................................................................. 179 II.2 Le Framework Symfony ....................................................................................... 180 II.2.1 Le gestionnaire ORM...................................................................................... 181 II.2.2 Pourquoi Symfony ? ....................................................................................... 181 II.3 L’outil de versionning GIT ................................................................................... 181 II.4 REST.................................................................................................................. 181 II.5 JSON .................................................................................................................. 182 III. Gestion de projet ..................................................................................................... 182 III.1 Tableaux des tâches ............................................................................................ 182 III.2 Diagramme de GANTT....................................................................................... 183 Conclusion ................................................................................................................................ 183 Conclusion et perspectives........................................................................................................184 ANNEXE A..............................................................................................................................185 ANNEXE B..............................................................................................................................188 ANNEXE C..............................................................................................................................215 Nétographie .............................................................................................................................217 Bibliographie ...........................................................................................................................218
  • 10. Projet de fin d’études Page 10 Table des figures Figure 1 : Cycle de vie d’un projet Scrum [N6]..............................................................................25 Figure 2 : Diagramme de Burndown Chart [N7].............................................................................27 Figure 3 : Équipe et rôles..............................................................................................................33 Figure 4 : Découpage des releases en sprints..................................................................................37 Figure 5 : Planification des sprints ................................................................................................37 Figure 6 : Planning de réalisation du projet....................................................................................38 Figure 7 : Diagramme de cas d’utilisation global............................................................................39 Figure 8 : Diagramme de cas d’utilisation du premier sprint............................................................47 Figure 9 : Diagramme de séquences système du cas d’utilisation «s’authentifier»............................49 Figure 10 : Diagramme de séquences système du cas d’utilisation «s’inscrire»................................50 Figure 11 : Diagramme de séquences système du cas d’utilisation «Récupérer mot de passe»...........52 Figure 12 : Diagramme de séquences système du cas d’utilisation «Changer mot de passe»..............53 Figure 13 : Diagramme de cas d’utilisation de «Gérer mon profil»..................................................54 Figure 14 : Diagramme de séquences système du cas d’utilisation «Afficher mon profil»..................55 Figure 15 : Diagramme de séquences système du cas d’utilisation «Modifier mon profil».................56 Figure 16 : Diagramme de cas d’utilisation du cas «Gérer catégories boutiques».............................56 Figure 17 : Diagramme de séquences système du cas d’utilisation «Lister catégories boutiques»......57 Figure 18 : Diagramme de séquences système du cas d’utilisation «Ajouter catégorie boutiques».....58 Figure 19 : Diagramme de séquences système du cas d’utilisation «Modifier catégorie boutiques» ...60 Figure 20 : Diagramme de séquences système du cas d’utilisation «Supprimer catégorie boutiques».61 Figure 21 : Diagramme de cas d’utilisation du cas «Gérer vendeurs»..............................................61 Figure 22 : Diagramme de séquences système du cas d’utilisation «Lister vendeurs» .......................62 Figure 23 : Diagramme de séquences système du cas d’utilisation «Supprimer vendeur» ..................63 Figure 24 : Diagramme de classes participantes du cas d’utilisation «s’authentifier» ........................64 Figure 25 : Diagramme de séquences détaillées du cas d’utilisation «s’authentifier».........................64 Figure 26 : Diagramme de classes participantes au cas d’utilisation «s’inscrire»...............................65 Figure 27 : Diagramme de séquences détaillées du cas d’utilisation «s’inscrire»...............................65 Figure 28 : Diagramme de classes participantes au cas d’utilisation «Afficher mon profil»................66 Figure 29 : Diagramme de séquences détaillées du cas d’utilisation «Afficher mon profil»................66 Figure 30 : Diagramme de classes participantes au cas d’utilisation «Modifier mon profil»...............67 Figure 31 : Diagramme de séquences détaillées du cas d’utilisation «Modifier mon profil»...............67 Figure 32 : Diagramme de classes participantes au cas d’utilisation «Lister catégories boutiques».....68 Figure 33 : Diagramme de séquences détaillées du cas d’utilisation «Lister catégories boutiques».....68 Figure 34 : Diagramme de classes participantes au cas d’utilisation «Ajouter catégorie boutiques»...69 Figure 35 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter catégorie boutiques»...69 Figure 36 : Diagramme de classes participantes au cas d’utilisation «Modifier catégorie boutiques»..70 Figure 37 : Diagramme de séquences détaillées du cas d’utilisation «Modifier catégorie boutiques».70 Figure 38 : Diagramme de classes participantes au cas d’utilisation «Supprimer catégorie boutiques» ...................................................................................................................................................71 Figure 39 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer catégorie boutiques» ...................................................................................................................................................71 Figure 40 : Diagramme de classes participantes au cas d’utilisation «Lister vendeurs» .....................72 Figure 41 : Diagramme de séquences détaillées du cas d’utilisation «Lister vendeurs» .....................72 Figure 42 : Diagramme de classes participantes au cas d’utilisation «Supprimer vendeur»................73 Figure 43 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer vendeur»................73 Figure 44: Diagramme de classes global du premier sprint..............................................................74 Figure 45 : Interface d’authentification..........................................................................................75 Figure 46 : Interface d’inscription .................................................................................................76
  • 11. Projet de fin d’études Page 11 Figure 47 : Interface du cas «Lister catégories boutiques»..............................................................76 Figure 48 : Interface du cas «Lister vendeurs»...............................................................................77 Figure 49 : Code de source de la méthode de test d’ajout d’une catégorie de boutiques.....................78 Figure 50 : Interface de résultat du test d’ajout...............................................................................78 Figure 51 : Interface de résultat du test d’ajout en cas d’échec.........................................................79 Figure 52 : Code source de la méthode de test de suppression .........................................................80 Figure 53 : Interface de résultat du test de suppression....................................................................80 Figure 54 : Interface de résultat du test de suppression en cas d’échec.............................................80 Figure 55 : Diagramme de Burndown Chart du premier sprint.........................................................81 Figure 56 : Diagramme de cas d’utilisation du deuxième sprint.......................................................91 Figure 57 : Diagramme de cas d’utilisation : Gérer ma boutique......................................................91 Figure 58 : Diagramme de séquences système du cas d’utilisation «Créer ma boutique»...................93 Figure 59 : Diagramme de séquences système du cas d’utilisation «Paramétrer ma boutique»..........94 Figure 60 : Diagramme de cas d’utilisation du cas «Gérer mes produits».........................................94 Figure 61 : Diagramme de séquences système du cas d’utilisation «Lister produits».........................95 Figure 62 : Diagramme de séquences système du cas d’utilisation «Ajouter produit» .......................96 Figure 63 : Diagramme de séquences système du cas d’utilisation «Modifier produit»......................97 Figure 64 : Diagramme de séquences système du cas d’utilisation «Supprimer produit»...................98 Figure 65 : Diagramme de cas d’utilisation du cas «Gérer les boutiques»........................................99 Figure 66 : Diagramme de séquences système du cas d’utilisation «Lister boutiques» .................... 100 Figure 67 : Diagramme de séquences système du cas d’utilisation «Confirmer boutique»............... 101 Figure 68 : Diagramme de séquences système du cas d’utilisation «Supprimer boutique»............... 102 Figure 69 : Diagramme de séquences système du cas d’utilisation «Verrouiller boutique».............. 103 Figure 70 : Diagramme de séquences système du cas d’utilisation «Consulter boutique»................ 104 Figure 71 : Diagramme de séquences système du cas d’utilisation «Ajouter boutique aux favoris».. 105 Figure 72 : Diagramme de séquences système du cas d’utilisation «Lister produits boutique»......... 106 Figure 73 : Diagramme de séquences système du cas d’utilisation «Consulter produit».................. 107 Figure 74 : Diagramme de classes participantes au cas d’utilisation «Créer ma boutique» .............. 108 Figure 75 : Diagramme de séquences détaillées du cas d’utilisation «Créer boutique».................... 108 Figure 76 : Diagramme de classes participantes au cas d’utilisation «Paramétrer ma boutique»...... 109 Figure 77 : Diagramme de séquences détaillées du cas d’utilisation «Paramétrer ma boutique»...... 109 Figure 78 : Diagramme de classes participantes au cas d’utilisation «Lister produits» .................... 110 Figure 79 : Diagramme de séquences détaillées du cas d’utilisation «Lister produits» .................... 110 Figure 80 : Diagramme de classes participantes au cas d’utilisation «Ajouter produit» ................... 111 Figure 81 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter produit» ................... 112 Figure 82 : Diagramme de classes participantes au cas d’utilisation «Modifier produit».................. 113 Figure 83 : Diagramme de séquences détaillées du cas d’utilisation «Modifier produit».................. 114 Figure 84 : Diagramme de classes participantes au cas d’utilisation «Supprimer produit»............... 115 Figure 85 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer produit»............... 115 Figure 86 : Diagramme de classes participantes au cas d’utilisation «Lister boutiques» .................. 116 Figure 87 : Diagramme de séquences détaillées du cas d’utilisation «Lister boutiques» .................. 116 Figure 88 : Diagramme de classes participantes au cas d’utilisation «Confirmer boutique»............. 117 Figure 89 : Diagramme de séquences détaillées du cas d’utilisation «Confirmer boutique»............. 117 Figure 90 : Diagramme de classes participantes au cas d’utilisation «Supprimer boutique»............. 118 Figure 91 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer boutique»............. 118 Figure 92 : Diagramme de classes participantes au cas d’utilisation «Verrouiller boutique»............ 119 Figure 93 : Diagramme de séquences détaillées du cas d’utilisation «Verrouiller boutique»............ 119 Figure 94 : Diagramme de classes participantes au cas d’utilisation «Consulter boutique».............. 120 Figure 95 : Diagramme de séquences détaillées du cas d’utilisation «Consulter boutique».............. 120 Figure 96 : Diagramme de classes participantes au cas d’utilisation «Ajouter boutique aux favoris» 121
  • 12. Projet de fin d’études Page 12 Figure 97 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter boutique aux favoris» 121 Figure 98 : Diagramme de classes participantes au cas d’utilisation «Lister produits boutique»....... 122 Figure 99 : Diagramme de séquences détaillées du cas d’utilisation «Lister produits boutique»....... 122 Figure 100 : Diagramme de classes participantes au cas d’utilisation «Consulter produit».............. 123 Figure 101 : Diagramme de séquences détaillées du cas d’utilisation «Consulter produit».............. 123 Figure 102 : Diagramme de classes global du deuxième sprint ...................................................... 124 Figure 103 : Interface du cas «Lister boutiques» .......................................................................... 125 Figure 104 : Interface du cas «Paramétrer ma boutique».............................................................. 126 Figure 105 : Code source de la méthode de test du cas «Verrouiller boutique» ............................... 127 Figure 106 : Interface de résultat du test du cas «Verrouiller boutique» ......................................... 127 Figure 107 : Code source de la méthode de test du cas «Paramétrer ma boutique»......................... 128 Figure 108 : Interface de résultat du test du cas «Paramétrer ma boutique» .................................... 128 Figure 109 : Code source de la méthode de test d’ajout d’un produit aux favoris ............................ 129 Figure 110 : Interface de résultat du test d’ajout d’un produit aux favoris....................................... 129 Figure 111 : Code source de la méthode de test de confirmation d’une boutique............................. 130 Figure 112 : Interface de résultat du test de confirmation d’une boutique ....................................... 130 Figure 113 : Diagramme de Burndown Chart du sprint 2 .............................................................. 131 Figure 114 : Diagramme de cas d’utilisation du troisième sprint.................................................... 137 Figure 115 : Diagramme de cas d’utilisation : Gérer les clients ..................................................... 138 Figure 116 : Diagramme de séquences système du cas d’utilisation «Lister les clients».................. 138 Figure 117 : Diagramme de séquences système du cas d’utilisation «Supprimer client».................. 139 Figure 118 : Diagramme de cas d’utilisation : Gérer mes commandes............................................ 140 Figure 119 : Diagramme de séquences système du cas d’utilisation «Lister mes commandes»......... 140 Figure 120 : Diagramme de séquences système du cas d’utilisation «Modifier état commande»...... 141 Figure 121 : Diagramme de cas d’utilisation : Gérer les commandes ............................................. 142 Figure 122 : Diagramme de séquences système du cas d’utilisation «Lister les commandes»........... 142 Figure 123 : Diagramme de séquences système du cas d’utilisation «Afficher les statistiques de ma boutique».................................................................................................................................. 143 Figure 124 : Diagramme de séquences système du cas d’utilisation «Afficher les statistiques de la place de marché»....................................................................................................................... 144 Figure 125 : Diagramme de classes participantes au cas d’utilisation «Lister les clients»................ 145 Figure 126 : Diagramme de séquences détaillées du cas d’utilisation «Lister les clients»................ 145 Figure 127 : Diagramme de classes participantes au cas d’utilisation «Supprimer client»................ 146 Figure 128 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer client»................ 146 Figure 129 : Diagramme de classes participantes au cas d’utilisation «Lister mes commandes»....... 147 Figure 130 : Diagramme de séquences détaillées du cas d’utilisation «Lister mes commandes»....... 147 Figure 131 : Diagramme de classes participantes au cas d’utilisation «Modifier état commande».... 148 Figure 132 : Diagramme de séquences détaillées du cas d’utilisation «Modifier état commande».... 148 Figure 133 : Diagramme de classes participantes au cas d’utilisation «Lister les commandes»......... 149 Figure 134 : Diagramme de séquences détaillées du cas d’utilisation «Lister les commandes»......... 149 Figure 135 : Diagramme de classes participantes au cas d’utilisation «Afficher les statistiques de ma boutique».................................................................................................................................. 150 Figure 136 : Diagramme de séquences détaillées du cas d’utilisation «Afficher les statistiques de ma boutique».................................................................................................................................. 150 Figure 137 : Diagramme de classes participantes au cas d’utilisation «Afficher les statistiques de la place de marché»....................................................................................................................... 151 Figure 138 : Diagramme de séquences détaillées du cas d’utilisation «Afficher les statistiques de la place de marché»....................................................................................................................... 151 Figure 139 : Mise en place d’un service WEB [N14].................................................................... 154 Figure 140 : Diagramme de classes participantes à l’API «Inscription client»................................ 154
  • 13. Projet de fin d’études Page 13 Figure 141 : Diagramme de séquences détaillées de l’API «Inscription client»............................... 155 Figure 142 : Diagramme de classes participantes à l’API «Authentification client»......................... 155 Figure 143 : Diagramme de séquences détaillées de l’API «Authentification client»....................... 156 Figure 144 : Diagramme de classes participantes à l’API «GET catégories boutiques»................... 156 Figure 145 Diagramme de séquences détaillées de l’API «GET catégories boutiques»................... 157 Figure 146 : Diagramme de classes participantes à l’API «GET boutiques favoris»........................ 157 Figure 147 : Diagramme de séquences détaillées de l’API «GET boutiquesfavoris»....................... 158 Figure 148 : Diagramme de classes participantes à l’API «GET boutiques By Catégorie»............... 158 Figure 149 : Diagramme de séquences détaillées de l’API «GET boutiques By Catégorie»............. 159 Figure 150 : Diagramme de classes participantes à l’API «GET produits By Boutique».................. 159 Figure 151 : Diagramme de séquences détaillées de l’API «GET produits By Boutique»................. 160 Figure 152 : Diagramme de classes participantes à l’API «GET produits By Catégorie»................. 160 Figure 153 : Diagramme de séquences détaillées de l’API «GET produits By Catégorie»............... 161 Figure 154 : Diagramme de classes participantes à l’API «GET Catégories produits By Boutique».161 Figure 155 : Diagramme de séquences détaillées de l’API «GET Catégories produits By Boutique»162 Figure 156 : Diagramme de classes participantes à l’API «GET Libellé By ID Catégorie».............. 162 Figure 157 : Diagramme de séquences détaillées de l’API «GET libellé By ID catégorie».............. 163 Figure 158 : Diagramme de classes participantes à l’API «GET Produit By ID»............................. 163 Figure 159 : Diagramme de séquences détaillées de l’API «GET Produit By ID»........................... 164 Figure 160 : Diagramme de classes participantes à l’API «GET produits Favoris»......................... 164 Figure 161 : Diagramme de séquences détaillées de l’API «GET produitsfavoris»......................... 165 Figure 162 : Diagramme de classes participantes à l’API «GET Images By ID Produit»................. 165 Figure 163 : Diagramme de séquences détaillées de l’API «GET Images By ID Produit»................ 166 Figure 164 : Diagramme de classes participantes à l’API «GET Commande Client»....................... 166 Figure 165 : Diagramme de séquences détaillées de l’API «GET Commande Client»..................... 167 Figure 166 : Diagramme de classes global du troisième sprint....................................................... 167 Figure 167 : Interface du cas «Lister mes commandes».................................................................169 Figure 168 : Interface du cas «Afficher les statistiques de ma boutique» ........................................ 169 Figure 169 : Code source de la méthode de test de l’API «GET Catégories boutiques»................... 170 Figure 170 : Interface de résultat du test de l’API «GET Catégories boutiques»............................. 171 Figure 171 : Code source de la méthode de test de l’API «GET produits By Boutique»................... 171 Figure 172 : Interface de résultat du test de l’API «GET produits By Boutique»............................. 172 Figure 173 : Code source de la méthode de test du cas d’utilisation «Modifier état commande» ...... 172 Figure 174 : Interface de résultat du test de modification d’état d’une commande........................... 173 Figure 175 : Diagramme de Burndown Chart du troisième sprint .................................................. 174 Figure 176 : Architecture MVC [N21]......................................................................................... 179 Figure 177 : Répartition des tâches du premier sprint ................................................................... 181 Figure 178 : Répartition des tâches du deuxième sprint.................................................................181 Figure 179 : Répartition des tâches du troisième sprint .................................................................182 Figure 180 : Diagramme de GANTT........................................................................................... 182 Figure 181 : Diagramme de cas d’utilisation du cas «Gérer catégories produits»........................... 188 Figure 182 : Diagramme de séquences système du cas d’utilisation «Lister catégories de produits» 189 Figure 183 : Diagramme de séquences système du cas d’utilisation «Ajouter catégorie produits» ... 190 Figure 184 : Diagramme de séquences système du cas d’utilisation «Modifier catégorie produits».. 191 Figure 185 : Diagramme de séquences système du cas d’utilisation «Supprimer catégorie produits» ................................................................................................................................................. 192 Figure 186 : Diagramme de cas d’utilisation du cas «Gérer marques»........................................... 193 Figure 187 : Diagramme de séquences système du cas d’utilisation «Lister marques».................... 193 Figure 188 : Diagramme de séquences système du cas d’utilisation «Ajouter marque»................... 194 Figure 189 : Diagramme de séquences système du cas d’utilisation «Modifier marque» ................. 195
  • 14. Projet de fin d’études Page 14 Figure 190 : Diagramme de séquences système du cas d’utilisation «Supprimer marque»............... 196 Figure 191 : Diagramme de séquences système du cas d’utilisation «Déverrouiller boutique» ........ 197 Figure 192 : Diagramme de séquences système du cas d’utilisation «Supprimer boutique du favoris» ................................................................................................................................................. 198 Figure 193 : Diagramme de séquences système du cas d’utilisation «Ajouter produit aux favoris».. 199 Figure 194 : Diagramme de séquences système du cas d’utilisation «Supprimer produit du favoris»201 Figure 195 : Diagramme de classes participantes au cas d’utilisation «Lister catégories produits» .. 201 Figure 196 : Diagramme de séquences détaillées du cas d’utilisation «Lister catégories produits» .. 202 Figure 197 : Diagramme de classes participantes au cas d’utilisation «Ajouter catégorie produit»... 202 Figure 198 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter catégorie produit»... 203 Figure 199 : Diagramme de classes participantes au cas d’utilisation «Modifier catégorie produit».203 Figure 200 : Diagramme de séquences détaillées du cas d’utilisation «Modifier catégorie produit».204 Figure 201 : Diagramme de classes participantes au cas d’utilisation «Supprimer catégorie produit» ................................................................................................................................................. 204 Figure 202 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer catégorie produit» ................................................................................................................................................. 205 Figure 203 : Diagramme de classes participantes au cas d’utilisation «Lister marques».................. 205 Figure 204 : Diagramme de séquences détaillées du cas d’utilisation «Lister marques».................. 206 Figure 205 : Diagramme de classes participantes au cas d’utilisation «Ajouter marque»................. 206 Figure 206 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter marque»................. 207 Figure 207 : Diagramme de classes participantes au cas d’utilisation «Modifier marque»............... 207 Figure 208 : Diagramme de séquences détaillées du cas d’utilisation «Modifier marque»............... 208 Figure 209 : Diagramme de classes participantes au cas d’utilisation «Supprimer marque»............. 208 Figure 210 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer marque»............. 209 Figure 211 : Diagramme de classes participantes au cas d’utilisation «Déverrouiller boutique» ...... 209 Figure 212 : Diagramme de séquences détaillées du cas d’utilisation «Déverrouiller boutique» ...... 210 Figure 213 : Diagramme de classes participantes au cas d’utilisation «Supprimer boutique du favoris» ................................................................................................................................................. 210 Figure 214 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer boutique du favoris» ................................................................................................................................................. 211 Figure 215 : Diagramme de classes participantes au cas d’utilisation «Ajouter produit aux favoris» 211 Figure 216 : Diagramme de séquences détaillées du cas d’utilisation «Ajouter produit aux favoris» 212 Figure 217 : Diagramme de classes participantes au cas d’utilisation «Supprimer produit du favoris» ................................................................................................................................................. 212 Figure 218 : Diagramme de séquences détaillées du cas d’utilisation «Supprimer produit du favoris» ................................................................................................................................................. 213
  • 15. Projet de fin d’études Page 15 Liste des tableaux Tableau 1 : Backlog du produit .....................................................................................................36 Tableau 2 : Backlog du premier sprint ...........................................................................................46 Tableau 3 : Classification des cas d’utilisation par acteur................................................................47 Tableau 4 : Description textuelle du cas d’utilisation «s’authentifier»..............................................48 Tableau 5 : Description textuelle du cas d’utilisation «s’inscrire»...................................................50 Tableau 6 : Description textuelle du cas d’utilisation «Récupérer mot de passe»..............................51 Tableau 7 : Description textuelle du cas d’utilisation «Changer mot de passe».................................53 Tableau 8 : Description textuelle du cas d’utilisation «Afficher mon profil».....................................54 Tableau 9 : Description textuelle du cas d’utilisation «Modifier mon profil»....................................55 Tableau 10 : Description textuelle du cas d’utilisation «Lister catégories boutiques»........................57 Tableau 11 : Description textuelle du cas d’utilisation «Ajouter catégorie boutiques».......................58 Tableau 12 : Description textuelle du cas d’utilisation «Modifier catégorie boutiques».....................59 Tableau 13 : Description textuelle du cas d’utilisation «Supprimer catégorie boutiques»..................61 Tableau 14 : Description textuelle du cas d’utilisation «Lister vendeurs».........................................62 Tableau 15 : Description textuelle du cas d’utilisation «Supprimer vendeur»...................................63 Tableau 16 : Table «Utilisateur»...................................................................................................75 Tableau 17 : Table «Vendeur»......................................................................................................75 Tableau 18 : Table «Admin».........................................................................................................75 Tableau 19 : Table «Categorie_boutique».....................................................................................75 Tableau 20 : Table «Boutique» .....................................................................................................75 Tableau 21 : Calcul de vélocité estimée .........................................................................................82 Tableau 22 : Backlog du deuxième sprint ......................................................................................90 Tableau 23 : Classification des cas d’utilisation par acteur..............................................................90 Tableau 24 : Description textuelle du cas d’utilisation «Créer boutique».........................................92 Tableau 25 : Description textuelle du cas d’utilisation «Paramétrer ma boutique»...........................94 Tableau 26 : Description textuelle du cas d’utilisation «Lister produits»..........................................95 Tableau 27 : Description textuelle du cas d’utilisation «Ajouter produit».........................................96 Tableau 28 : Description textuelle du cas d’utilisation «Modifier produit».......................................97 Tableau 29 : Description textuelle du cas d’utilisation «Supprimer produit»....................................98 Tableau 30 : Description textuelle du cas d’utilisation «Lister boutiques»...................................... 100 Tableau 31 : Description textuelle du cas d’utilisation «Confirmer boutique» ................................ 101 Tableau 32 : Description textuelle du cas d’utilisation «Supprimer boutique»................................ 102 Tableau 33 : Description textuelle du cas d’utilisation «Verrouiller boutique»............................... 103 Tableau 34 : Description textuelle du cas d’utilisation «Consulter boutique».................................104 Tableau 35 : Description textuelle du cas d’utilisation «Ajouter boutique aux favoris» ................... 105 Tableau 36 : Description textuelle du cas d’utilisation «Lister produits boutique».......................... 106 Tableau 37 : Description textuelle du cas d’utilisation «Consulter produit»................................... 106 Tableau 38 : Table «Categorie_produit»..................................................................................... 125 Tableau 39 : Table «Marque»..................................................................................................... 125 Tableau 40 : Table «Produit» ..................................................................................................... 125 Tableau 41 : Table «Image»........................................................................................................ 125 Tableau 42 : Calcul de vélocité estimée ....................................................................................... 132 Tableau 43 : Backlog du troisième sprint..................................................................................... 136 Tableau 44 : Classification des cas d’utilisation par acteur............................................................ 137 Tableau 45 : Description textuelle du cas d’utilisation «Lister les clients» ..................................... 138 Tableau 46 : Description textuelle du cas d’utilisation «Supprimer client»..................................... 139 Tableau 47 : Description textuelle du cas d’utilisation «Lister mes commandes»............................ 140 Tableau 48 : Description textuelle du cas d’utilisation «Modifier état commande» ......................... 141
  • 16. Projet de fin d’études Page 16 Tableau 49 : Description textuelle du cas d’utilisation «Lister les commandes».............................. 142 Tableau 50 : Description textuelle du cas d’utilisation «Afficher les statistiques de ma boutique».... 143 Tableau 51 : Description textuelle du cas d’utilisation «Afficher les statistiques de ma boutique».... 144 Tableau 52 : Description des APIs .............................................................................................. 153 Tableau 53 : Table «Client»........................................................................................................ 168 Tableau 54 : Table «Produit» ..................................................................................................... 168 Tableau 55 : Table «Commande»................................................................................................ 168 Tableau 56 : Table «ligne_commande»........................................................................................ 168 Tableau 57 : Calcul de vélocité estimée ....................................................................................... 174 Tableau 58 : Environnement matériel .......................................................................................... 177 Tableau 59 : Description textuelle du cas d’utilisation «Lister catégories produits»........................ 188 Tableau 60 : Description textuelle du cas d’utilisation «Ajouter catégorie produits»....................... 189 Tableau 61 : Description textuelle du cas d’utilisation «Modifier catégorie produits»..................... 191 Tableau 62 : Description textuelle du cas d’utilisation «Supprimer catégorie produits».................. 192 Tableau 63 : Description textuelle du cas d’utilisation «Lister marques» ....................................... 193 Tableau 64 : Description textuelle du cas d’utilisation «Ajouter marque»...................................... 194 Tableau 65 : Description textuelle du cas d’utilisation «Modifier marque»..................................... 195 Tableau 66 : Description textuelle du cas d’utilisation «Supprimer marque».................................. 196 Tableau 67 : Description textuelle du cas d’utilisation «Déverrouiller boutique»............................ 197 Tableau 68 : Description textuelle du cas d’utilisation «Supprimer boutique du favoris»................. 198 Tableau 69 : Description textuelle du cas d’utilisation «Ajouter produit aux favoris» ..................... 199 Tableau 70 : Description textuelle du cas d’utilisation «Supprimer produit du favoris»................... 200
  • 17. Projet de fin d’études Page 17 Table des abréviations API : Application Programming Interface UML : Unified Modeling Language JSON : JavaScript Object Notation XML : eXtensible Markup Language FTP : File Transfer Protocol EDI : Environnement de Développement Intégré MVC : Model View Controller ORM : Object Relational Mapping CMS : Content Management System REST : Representational State Transfer
  • 18. Projet de fin d’études Page 18 Introduction générale De nos jours, le commerce électronique a pris une place considérable dans les habitudes d’achats. Selon le site jumia.com.tn, le commerce électronique en Tunisie, ayant 5.8 millions d’internautes et un chiffre d’affaires pour l’année 2014, qui dépasse 100 millions de dinars est considéré comme un secteur dynamique. Selon aujourdhui.ma1, le commerce électronique au Maroc rejoint de plus en plus un rythme précipité. «Les commerçants et e-marchands ont enregistré, durant l’année 2015, 32.8 millions d’opérations de paiement, par cartes bancaires pour un montant global de 22,9 milliards de dirhams.»[N1] Aujourd’hui, la question est de transformer la société pour répondre aux demandes de notre nouvelle ère du numérique. En fait, chaque client a sa spécificité, donc il est devenu de plus en plus complexe de vendre mais aussi de garder nos clients. Les places de marchés viennent alors pour améliorer le ciblage et la prise de contact avec les clients, où qu’ils soient localisés et tendent de plus en plus à augmenter la compétitivité des entreprises. Elles permettent ainsi d’offrir aux vendeurs une opportunité leur permettant de diversifier leurs canaux de ventes, augmenter leur chiffres d’affaires, améliorer leur perception à l’égard des consommateurs et renforcer la visibilité de leurs produits sur le web. «La place de marché, ou marketplace, est un support mettant en relation un acheteur et des vendeurs. La place de marché intervient donc comme un intermédiaire entre la demande de l’acheteur et l’offre proposée par les commerçants en échange d’une commission.»[N2] C’est dans ce cadre que s’inscrit notre projet de fin d’études intitulé : «Conception et développement du backoffice d’une application mobile de gestion de place de marché multi- boutiques» dont l’objectif est de gérer les transactions entre les vendeurs et les acheteurs. Notre rapport est divisé comme suit : Un premier chapitre «Étude de projet» où on présentera le cadre du projet, l’état de l’art, la solution proposée, le langage de modélisation et la méthodologie adoptée. Un deuxième chapitre «Planification et architecture» qui sera la première partie dans l’application du cadre méthodologique SCRUM. Il s’agit du sprint 0. Il abordera les fonctionnalités, l’ensemble des besoins fonctionnels et non fonctionnels, les acteurs qui vont réagir avec notre système, le diagramme de cas d’utilisation général et l’équipe SCRUM affecté à ce projet avec la précision du rôle de chaque membre de l’équipe. Ce chapitre présentera également le backlog du produit, le processus de découpage de notre projet ainsi que la planification de nos sprints à l’intérieur de chaque release. Un troisième chapitre «Gestion des accès, catégories de boutiques et vendeurs» avec lequel on va initier notre première itération et donc notre premier sprint. 1 http://aujourdhui.ma/economie/e-commerce-le-grand-boom
  • 19. Projet de fin d’études Page 19 Un quatrième chapitre «Gestion des boutiques, catégories de produits, marques et produits» qui représente le deuxième sprint de notre application. Un cinquième chapitre «Gestion des échanges, commandes, statistiques et clients» qui représente le troisième sprint et donc la dernière itération. Un sixième chapitre «Phase de clôture» qui comporte l’ensemble des outils utilisées lors de la conception et développement de notre projet ainsi que les technologies que nous avons utilisées pour implémenter notre application. Finalement, on clôture notre rapport par une conclusion générale qui résume tout le travail et l’effort consacré à la réalisation de ce projet ainsi que tout ce qu’on a acquis et retenu de cette expérience qui représente un point fondamental dans notre carrière.
  • 20. Projet de fin d’études Page 20 Chapitre 1 Étude de projet
  • 21. Projet de fin d’études Page 21 Introduction Durant ce premier chapitre, on va présenter notre projet d’une manière générale afin d’avoir une vision complète et éclairée sur celui-ci. Cette vision va nous aider à dessiner le chemin que notre projet va traverser et par conséquent on obtiendra une très bonne organisation de déroulement de ce dernier. Ce chapitre va traiter les sections relatives à la présentation de l’organisme d’accueil, l’étude et les critiques de l’existant, la solution proposée, le langage de modélisation et la méthodologie adoptée. I. Cadre du projet Le présent projet s’intitule «Conception et développement du backoffice d’une application mobile de gestion de place de marché multi-boutiques».Il a été proposé comme un projet de fin d’études en vue de l’obtention du diplôme de licence fondamentale en informatique appliquée à la gestion. Ce stage a été effectué au sein de l’agence web ITCANE. I.1. Présentationde l’organisme d’accueil «ITCANE est une agence Web en Tunisie qui opère sur le marché tunisien et international et compte parmi ses partenaires et ses clients des entreprises tunisiennes, françaises et belges. ITCANE a été fondée en 2007 par Hatem BELHASSINE. Cette société offre des solutions Web aux entreprises et ses services couvrent tous les métiers du Web. Les prestations qu’elle propose sont :  Création de sites web et de portails web  Développement de sites web e-commerce et boutiques en ligne  Développement d'applications Web sur mesure  Réalisation de sites et applications pour mobiles (smartphones et tablettes)  Outsourcing et la mise à disposition d'équipes qualifiées en développement Web  Conseil en stratégie Internet  Hébergement et maintenance de serveurs Web et de serveurs de messagerie  Vente de matériel et d'accessoires informatiques.» [N3] ITCANE propose aux entreprises des solutions web personnalisées conformément à leurs besoins et exigences. Ses clients bénéficient de sa spécialisation dans les nouvelles technologies ainsi que de son dynamisme. Elle cherche à occuper la position de leader sur le marché tunisien, pour cela, elle a signé des accords de partenariat avec des partenaires nationaux et internationaux.
  • 22. Projet de fin d’études Page 22 II. État de l’art II.1.Étude de l’existant L’étude de l’existant est une étape très importante, voire essentielle lors de la réalisation d’un projet. Elle se définit par la recherche des applications qui sont similaires ou semblables à la nôtre en vue d’avoir une idée sur ce qui existe actuellement. Deux cas peuvent se présenter :  Le produit existe déjà, il faut donc chercher comment améliorer ses fonctionnalités.  Le produit est inexistant : il faut donc le créer. Pour nous, nous n’avons pas trouvé un produit existant déjà chez l’organisme d’accueil sur lequel on va dégager les différents points négatifs et par conséquent tenter de l'améliorer. Nous allons donc créer un nouveau produit. Pour ce faire, on doit chercher ailleurs les applications similaires à la nôtre et qui portent sur le même thème pour dégager les fonctionnalités de base communes, les points forts qui différencient une application des autres et les points faibles. Après avoir effectué une recherche, nous avons relevé quelques constats qui peuvent nous aider pour élaborer la liste des fonctionnalités de notre future application. Comme nous sommes en train de traiter la partie relative au Back Office de l’application, nous avons relevé avec difficulté quelques constats relatifs aux parties d’administration vu qu’on ne peut pas avoir un accès administrateur sur les applications existantes pour pouvoir analyser et dégager les points négatifs et même les points positifs.  Le site www.joker.tn Les points positifs : 1. Facilité d’utilisation : le site joker.tn offre aux vendeurs un tableau de bord ergonomique et facile à manipuler. Si l’utilisateur ne connaît pas grand-chose en informatique, il peut quand même s’inscrire, déposer ses produits, gérer ses commandes, etc… 2. Pas de frais de maintenance : un commerçant veille toujours à mettre à jour son site web et le rendre de plus en plus sécurisé. Le site de joker n’impose pas aux vendeurs de payer des frais de maintenance. 3. Bonne visibilité des produits : Les produits du site web joker.tn sont référencés par les moteurs de recherche. Les vendeurs n’ont pas besoin de faire appel à un référenceur.  Le site www.ebay.com  Les points positifs : 1. Excellente visibilité des produits : Une annonce déposé par un vendeur et qui comporte un titre ayant des mots clés généralement saisis dans les barres de recherches apparaisse en premier lieu dans les résultats retournées par les moteurs de recherches.
  • 23. Projet de fin d’études Page 23 2. Possibilité de cibler un grand public à l’échelle internationale : Un vendeur inscrit sur le site d’eBay peut déposer des annonces qui seront facilement perçues par des acheteurs étrangers. II.2. Critiques de l’existant  Les points négatifs du site www.joker.tn : 1. Pas de représentation graphique des données statistiques. 2. Absence d’un système de notification pour avertir les vendeurs si par exemple la quantité d’un produit en stock est épuisée. 3. Les vendeurs sont soumis à des contraintes imposés par l’application. Par exemple, ils ne peuvent pas définir leurs propres catégories de produits. Ils ont une liste prédéfinie et ils sont obligés de vendre des produits qui appartiennent à des catégories disponibles. 4. Espace de vente impersonnel : Les vendeurs n’ont pas le droit ni de définir de nouvelles marques, ni de créer de nouvelles catégories pour leurs produits de façon que la vitrine d’un vendeur ressemble beaucoup à celle de son voisin. 5. Pas de possibilité d’apparition en premier : Certains vendeurs veulent que leurs boutiques apparaissent en premier lors de l’accès à une place de marché. Ils sont même prêts à payer n’importe quel prix pour se positionner en premier pour une certaine durée ce qui augmente la visibilité de leurs boutiques et par conséquent leurs produits.  Les points négatifs du site www.ebay.com : 1. Espace de vente impersonnel : Le même problème constaté au niveau du site de joker.tn on le retrouve encore une autre fois dans le site d’ebay.com. La boutique d’un vendeur ressemble beaucoup à celle de son voisin de façon qu’à un premier regard, on n’arrive pas à différencier une boutique de l’autre. 2. Frais mensuel : Les vendeurs sont soumis à des frais mensuels ce qui peut être dur surtout pour ceux qui sont nouveaux dans le e-commerce et qui cherchent à attirer les acheteurs. III. Solution proposée Après avoir relevé un ensemble de constats, nous avons décidé en premier lieu de permettre à tout vendeur de notre place de marché de gérer ses propres catégories de produits et marques d’une façon indépendante des autres pour qu’il soit plus libre et bénéficie d’une notoriété personnelle. Dans notre application, le vendeur est un maître de lui-même. Il peut vendre les produits qu’il veut quelque soit leur marques, catégories, etc … Nous avons également décidé d’inclure un très bon système de gestion des statistiques et des indicateurs pour permettre aux vendeurs de visualiser l’état de leurs boutiques le plus précisément possible afin de pouvoir prendre les décisions appropriées dans les bon délais. Nous avons décidé aussi d’inclure un système de gestion des favoris qui va permettre l’affichage des boutiques et produits en premier dans l’application mobile. Ce système va
  • 24. Projet de fin d’études Page 24 certainement être géré par l’administrateur de la place de marché à partir du Back Office que nous allons développer. Nous essayerons d’inclure un système de notification pour les différents acteurs de notre système s’il nous reste encore assez de temps sinon on l’ajoutera plus tard. IV. Langage et méthodologie adoptée Tout projet ayant un niveau de complexité considérable rend l’adoption d’une méthodologie de développement une nécessité pour garantir une qualité acceptable et éviter tout retard au niveau des délais. Une méthodologie de développement définit les règles de conduite de notre projet, les rôles des différents acteurs, l’ordonnancement des tâches, l’enchainement des actions, etc… IV.1. Les méthodes AGILES «La méthode Agile se base sur un cycle de développement qui porte le client au centre. Le client est impliqué dans la réalisation du début à la fin du projet. L’implication du client dans le processus permet à l’équipe d’obtenir un feedback régulier afin d’appliquer directement les changements nécessaires. Cette méthode vise à accélérer le développement d’un logiciel. De plus, elle assure la réalisation d’un logiciel fonctionnel tout au long de la durée de sa création.»[N4] ITCANE utilise les méthodologies de développement agiles comme cycle de vie pour ses projets, de même pour le projet en cours. Ce choix est basé sur les avantages offerts par ces méthodologies tels que leurs capacités d’adaptation aux changements de contexte et à l’instabilité des spécifications qui subissent des modifications fréquentes durant le processus de développement. IV.1.1. Les quatre piliers des méthodes agiles  Individu et interaction au lieu de processus et outils.  Logiciel fonctionnel au lieu de documentation massive  Collaboration du client au lieu de négociation de contrats  Réagir aux changements au lieu de suivre le plan IV.1.2. Les principales méthodes agiles Les méthodes agiles les plus connues et utilisées actuellement sont :  Scrum  XP (Extreme Programming)  Test Driven Development  Crystal Clear Suite à une réunion qu’on a faite avant le démarrage du projet, on a décidé de travailler avec SCRUM vu qu’il convient le plus à notre projet.
  • 25. Projet de fin d’études Page 25 IV.2. Pourquoi SCRUM ? «Le Scrum est un Framework d’organisation de développement de produits complexes. Il est défini par ses créateurs comme un cadre de travail permettant de répondre à des problèmes complexes et changeants tout en livrant de manière productive et créative des produits de la plus grande valeur possible.»[N5] Le terme «SCRUM» se rapproche plus d’une gestion de ressources humaines plutôt que d’une réelle méthode de développement. SCRUM se base sur un ensemble d’itérations appelées également sprints d’une durée en moyenne entre deux et quatre semaines. En effet, parmi les problèmes majeurs qui peuvent se présenter avec les méthodes classiques, la faible implication du client de façon que le produit développé n’est visible qu’à la fin de sa réalisation ce qui peut engendrer un décalage important entre ce qui a été demandé par le client et ce qui a été développé. Avec SCRUM, l’équipe de projet veille toujours à satisfaire le client à travers des livraisons rapides et à avoir un contact direct avec lui. Le client intervient à la fin de chaque sprint, après la génération d’un produit potentiellement livrable pour donner son feed-back. L’équipe de projet doit ainsi réagir aux changements et ajustements demandés par le client. Le processus de Scrum peut être représenté par la figure 1. Figure 1 : Cycle de vie d’un projet Scrum [N6]
  • 26. Projet de fin d’études Page 26 IV.2.1. Rôles définis par Scrum Les rôles définis par la méthode Scrum :  Le Product Owner : Il s’agit du propriétaire du produit. La définition des exigences du produit et l’ajustement de ses fonctionnalités au cours des itérations sont parmi ses missions. C’est lui qui confirme ou refuse la version partiellement livrable présentée.  L’équipe de développement : L’équipe de développement est généralement d’une taille de 4 à 6 membres. Elle est multi compétente et auto-organisée. Elle est engagée à livrer un produit partiellement livrable à la fin de chaque sprint.  Le Scrum Master : Il s’agit d’un membre de l’équipe qui doit essentiellement bien connaître Scrum. Il doit également être courageux pour pouvoir communiquer sincèrement sur l’état d’avancement du projet. Il vérifie aussi si les membres de l’équipe sont en train de bien appliquer la méthode Scrum. De plus, il résout les conflits et les obstacles rencontrés ainsi qu’il contrôle le niveau de production de l’équipe. IV.2.2. Les artéfacts de Scrum  Product Backlog Le backlog de produit, appelé également «carnet du produit» contient l’ensemble des exigences et des besoins exprimés par le client. Comme les besoins du client sont généralement instables, ce carnet va subir des changements de façon fréquente au cours du projet. Ce dynamisme affectant le backlog de produit est un avantage majeur de la méthode Scrum. «Le product backlog est un document qui contient les exigences initiales dressées puis hiérarchisées avec le client en début de projet. Néanmoins il va évoluer tout au long de la durée du projet, en fonction des divers besoins du client.»[N4]  Sprint Backlog Le sprint backlog, appelé également «carnet de sprint » est l’ensemble de fonctionnalités extraites à partir du backlog de produit et qui vont être réalisés au cours d’un sprint bien déterminé. «En chaque début de sprint, l’équipe définit un but. Puis lors de la réunion de sprint, l’équipe de développement choisit les éléments du carnet à réaliser. L’ensemble de ces éléments constitue alors le sprint backlog.»[N4]  Burn Down Chart Le Burndown Chart, appelé également «graphique d’avancement» permet à une équipe travaillant sur un projet de visualiser son état d’avancement par rapport à ce qui a été planifié au début du sprint. Ce graphe doit être actualisé régulièrement afin de prendre les mesures nécessaires dans les bons moments.
  • 27. Projet de fin d’études Page 27 Figure 2 : Diagramme de Burndown Chart [N7] IV.2.3. Les activités du sprint  Planification d’itération La planification d’itération se traduit par une réunion où les membres de l’équipe tentent de fixer les objectifs du sprint en question et les fonctionnalités qui vont être développés au cours de celui-ci.  Mêlée quotidienne Il s’agit d’une réunion très courte dont l’objectif est de permettre à chaque membre de l’équipe de présenter son état d’avancement vers l’atteinte de l’objectif du sprint fixé lors de la planification d’itération. Pour mieux tirer les avantages de cette réunion, les membres de l’équipe doivent un par un répondre aux questions suivantes : - Qu’avez-vous fait depuis la dernière mêlée ? - Quels sont les obstacles que vous avez rencontrés au cours de votre avancement ? - Que ce que vous allez faire d’ici à la prochaine mêlée ?  Revue d’itération La revue d’itération est une activité faite régulièrement à la fin du développement d’un sprint donné. Le Product Owner est responsable dans cette étape de la comparaison du produit livré par l’équipe par rapport aux engagements établis au cours de la planification d’itération. La revue d’itération est suivie par un nouveau sprint et donc une nouvelle itération avec le cycle quotidien : planification, développement et revue. «La revue d'itération est le moment où l'on présente le travail de l'équipe. C'est l'occasion, pour l'équipe, de célébrer ses réussites, de présenter les tâches terminées dans le cadre de l'itération et d'obtenir un feedback immédiat de la part des parties prenantes du projet. Les tâches doivent être complètement présentables et répondre aux critères de qualité de l'équipe pour être considérées comme terminées et prêtes pour la revue.»[N8]
  • 28. Projet de fin d’études Page 28  Rétrospective de sprint : Il s’agit d’une réunion qui aura lieu à la fin du sprint. Cette fois-ci, c’est le Scrum Master qui intervient pour organiser cette réunion. Au cours de cette rencontre, les idées de chaque membre de l’équipe sont prises en considération en vue d’améliorer le rendement global de l’équipe «La rétrospective du sprint est faite en interne avec toute l’équipe du projet le dernier jour de l’itération. L’objectif est d’inspecter l’itération précédente, afin de déterminer quels sont les éléments du processus de développement qui ont bien fonctionné et ceux qui sont à améliorer. Chaque membre de l’équipe s’exprime sur le déroulement de l’itération, afin d’améliorer en continu le processus projet.»[N5] IV.3. Langage de modélisation «UML (en anglais Unified Modeling Language ou «langage de modélisation unifié») est un langage de modélisation graphique à base de pictogrammes. Il est apparu dans le monde du génie logiciel, dans le cadre de la «conception orientée objet». Couramment utilisé dans les projets logiciels, il peut être appliqué à toutes sortes de systèmes ne se limitant pas au domaine informatique. UML est l’accomplissement de la fusion de précédents langages de modélisation objet : Booch, OMT et OOSE.»[N9] Deux points importants qu’on peut retenir de la notation «UML» :  Le terme ‘Unified’ parce que des auteurs ont essayé de regrouper les fondamentaux des concepts objets.  Le terme ‘Language’ parce qu’on parle d’un langage de modélisation et non pas d’une méthode. Pour notre projet, nous avons opté pour l’utilisation d’UML (Unified Modeling Language) comme langage de modélisation. Conclusion Dans ce chapitre, nous avons présenté le cadre de notre projet, ensuite nous avons dégagé une liste comportant les critiques de l’existant, et en se basant sur cette liste, nous avons proposé une solution qui tente de résoudre quelques problèmes constatés. Enfin, nous avons évoqué le choix du langage de modélisation et de la méthodologie adoptée. À ce niveau, nous pouvons passer au chapitre suivant qui comportera la planification et l’architecture du projet.
  • 29. Projet de fin d’études Page 29 Chapitre 2 Planification et architecture
  • 30. Projet de fin d’études Page 30 Introduction Dans ce chapitre, nous allons commencer à élaborer la première phase de la méthodologie Scrum, appelée également «planification et architecture» ou «sprint zéro». L’objectif de ce chapitre est d’établir une vision globale de notre produit, dégager les besoins et les fonctionnalités, identifier les acteurs qui vont interagir avec notre système, élaborer la planification des releases, établir le backlog de produit et finalement préparer la planification initiale des sprints et le planning de réalisation du projet. La particularité de ce sprint se manifeste par le fait qu’on n’aura pas un produit potentiellement livrable à la fin de sa réalisation. Cette phase de planification et architecture est consacrée essentiellement à la préparation de l’environnement de développement. I. Spécification des besoins Nous commençons par l’identification des acteurs puis l’extraction des besoins fonctionnels et non fonctionnels. I.1. Identifier les acteurs «Un acteur représente un rôle joué par une entité externe (utilisateur humain, dispositif matériel ou autre système) qui interagit directement avec le système étudié. Un acteur peut consulter et/ou modifier directement l’état du système, en émettant et/ou en recevant des messages susceptibles d’être porteurs de données.»[B1] Notre projet se déroule dans le contexte de développement du back office qui donne l’accès seulement à l’administrateur et aux vendeurs de la place de marché tout en donnant à chacun d’eux des privilèges bien déterminés. Notre application va interagir avec deux acteurs : Administrateur : Un acteur qui va accéder au Back Office et gérer l’ensemble des composants de la place de marché (clients, vendeurs, boutiques, etc…) ainsi que d’afficher des informations utiles tel que des indicateurs et des statistiques sur les ventes de toute la place de marché. Vendeur : Un acteur qui va accéder au BackOffice, créer un compte, créer et paramétrer sa boutique, gérer l’ensemble de ses produits, catégories de produits, marques et les commandes de ses clients ainsi que d’afficher des informations utiles tel que des indicateurs et statistiques sur les ventes de sa boutique. I.2. Besoins fonctionnels Les besoins fonctionnels expriment ce que doit effectuer le système afin de répondre à ce qui a été demandé par le client.
  • 31. Projet de fin d’études Page 31 Ces besoins englobent ainsi la représentation abstraite des services que le système est censé fournir aux différents utilisateurs. Notre système doit permettre :  La création d’un compte : Notre système doit permettre la création d’un compte pour qu’un vendeur puisse rejoindre la place de marché.  La gestion des catégories de boutiques : Notre système doit permettre la gestion des catégories de boutiques avec la possibilité d’ajout, de modification et de suppression.  La gestion des boutiques : Notre système doit permettre la gestion des boutiques avec la possibilité d’ajout, de modification, de suppression, de confirmation, de verrouillage et d’ajout aux favoris. Afin de pouvoir déposer ses produits, le vendeur doit créer et paramétrer sa propre boutique. La définition des paramètres des boutiques, tel que par exemple leur catégorie permet à un client de filtrer l’affichage des boutiques selon ce critère.  La gestion des catégories de produits : Notre système doit permettre la gestion des catégories de produits avec la possibilité d’ajout, de modification et de suppression. Chaque vendeur peut définir ses propres catégories de produits qu’il envisage utiliser au futur. En effet pour ajouter un produit, le vendeur aura une liste de catégories personnalisées et aura seulement le choix de sélectionner cette dernière parmi la liste qu’il a défini.  La gestion des marques : Notre système doit permettre la gestion des marques avec la possibilité d’ajout, de modification et de suppression.  La gestion des produits : Notre système doit permettre la gestion des produits avec la possibilité d’ajout, de modification, de consultation, d’ajout aux favoris et de suppression. Un vendeur doit bien sûr pouvoir ajouter ou supprimer un produit, lister l’ensemble des produits existants dans sa boutique et modifier les caractéristiques d’un produit tel que la description, le nombre d’exemplaires (Quantité en stock), etc…  La gestion des commandes : Notre système doit permettre la gestion des commandes avec la possibilité de modification d’état d’une commande spécifique.  La gestion des clients : Notre système doit permettre la gestion des clients avec la possibilité de suppression.  La gestion des vendeurs : Notre système doit permettre la gestion des vendeurs avec la possibilité de suppression.  La gestion des statistiques : Notre système doit permettre l’affichage d’un tableau de bord comportant des indicateurs et des statistiques. I.3 Besoins non fonctionnels Il s’agit des besoins qui peuvent être perçus par l’utilisateur et qui sont reliés indirectement au comportement du système.
  • 32. Projet de fin d’études Page 32 Les besoins non fonctionnels de notre système se décrivent comme suit :  Ergonomie : Le back office doit être facile à utiliser. Il doit y avoir une certaine cohérence et homogénéité entre les différentes interfaces pour les utilisateurs.  Rapidité : Les traitements doivent être optimisés pour avoir un court temps de réponse.  Efficacité: L’application doit être fonctionnelle indépendamment de toutes circonstances pouvant entourer l’utilisateur.  Sécurité : Assurance de la confidentialité et sécurité des données.  Maintenabilité : La solution doit être facile à maintenir. II. Structure et découpage du projet Nous commençons par l’identification de l’équipe Scrum, l’établissement du backlog de produit, la planification des releases et finalement la structuration de ces derniers en sprints. II.1. Identification de l’équipe Scrum Dans un projet SCRUM, l’équipe a un rôle fondamental : elle permet d’optimiser la productivité et la flexibilité. En effet, Elle doit être auto organisée et multifonctionnelle. «L’équipe Scrum est auto-organisée et choisit la façon d'accomplir son travail, sans que ce soit imposé par une personne externe. Il n'y a pas non plus de notion de hiérarchie interne : toutes les décisions sont prises ensemble. Ce mode d'organisation a pour objectif d'augmenter l'efficacité de travail de l'équipe. Elle est pluridisciplinaire et comporte toutes les compétences pour réaliser son projet, sans faire appel à des personnes externes à celle-ci.»[N10] Cette méthode agile intègre généralement la participation de plusieurs acteurs, dans notre contexte il s’agit de M. Hatem Belhassine qui est à la fois le propriétaire et le directeur de produit vu qu’il satisfait les prérequis de ces deux acteurs tout en mentionnant que l’équipe se compose de deux membres : Rami Raddaoui et Mounir Homrani.
  • 33. Projet de fin d’études Page 33 Figure 3 : Équipe et rôles II.2. Le Backlog du Produit Le backlog du produit est l’ensemble des fonctionnalités attendues du produit. C’est l’ensemble des spécifications fonctionnelles et techniques de ce dernier. «Le Backlog de produit est un élément indispensable de toute démarche Scrum. C’est une liste ordonnée de tout ce qui pourrait être requis dans le produit. Il retrace la vision utilisateur et reste ouvert et évolutif sur toute la durée du projet. Géré sous la responsabilité du PO, il est créé par décomposition successive à partir de la vision du produit.»[N5] ID Fonctionnalité ID Users Stories Priorité Risque 1 Gestion d’inscription et d’authentification 1.1 En tant que vendeur, je veux m’inscrire et créer mon propre compte. Elevé Faible 1.2 En tant qu’utilisateur, je veux récupérer mon mot de passe en cas d’oubli. Moyenne Moyen 1.3 En tant qu’utilisateur, je veux m’authentifier via mon email et mon mot de passe en toute sécurité. Elevé Faible 2 Gestion des boutiques 2.1 En tant que vendeur, je veux créer ma boutique. Elevé Faible 2.2 En tant que vendeur, je veux paramétrer ma boutique. Elevé Faible 2.3 En tant qu’administrateur, je veux lister les boutiques. Elevé Faible 2.4 En tant qu’administrateur, je veux accepter/refuser la publication d’une boutique Elevé Faible
  • 34. Projet de fin d’études Page 34 suite à la demande d’un vendeur. 2.5 En tant qu’administrateur, je veux verrouiller/déverrouiller une boutique. Moyenne Faible 2.6 En tant qu’administrateur, je veux ajouter/supprimer une boutique du favoris. Faible Faible 2.7 En tant qu’administrateur, je veux consulter une boutique. Elevé Faible 2.8 En tant qu’administrateur, je veux supprimer une boutique. Elevé Faible 3 Gestion des produits 3.1 En tant que vendeur, je veux afficher la liste des produits de ma boutique. Elevé Faible 3.2 En tant que vendeur, je veux ajouter un ou plusieurs produits. Elevé Moyen 3.3 En tant que vendeur, je veux modifier un produit appartenant à ma boutique. Elevé Moyen 3.4 En tant que vendeur, je veux supprimer un produit appartenant à ma boutique Elevé Faible 3.5 En tant qu’administrateur, je veux lister les produits d’une boutique spécifique. Elevé Faible 3.6 En tant qu’administrateur, je veux consulter un produit d’une boutique spécifique. Moyenne Faible 3.7 En tant qu’administrateur, je veux ajouter/supprimer un produit spécifique du favoris. Faible Faible 4 Gestion des commandes 4.1 En tant que vendeur, je veux afficher la liste des commandes relatives à mes clients. Elevé Faible 4.2 En tant que vendeur, je veux modifier l’état d’une commande spécifique. Elevé Faible 4.3 En tant qu’administrateur, je veux afficher la liste des commandes de toute la place de marché. Elevé Faible 4.4 En tant que vendeur, je veux exporter la liste de mes commandes. Faible Faible
  • 35. Projet de fin d’études Page 35 4.5 En tant qu’administrateur, je veux exporter la liste des commandes de toute la place de marché. Faible Faible 5 Gestion des marques 5.1 En tant que vendeur, je veux lister mes marques. Elevé Faible 5.2 En tant que vendeur, je veux créer une ou plusieurs marques. Elevé Faible 5.3 En tant que vendeur, je veux modifier une marque spécifique parmi la liste des marques créées. Elevé Faible 5.4 En tant que vendeur, je veux supprimer une marque spécifique parmi la liste des marques créées. Elevé Faible 6 Gestion des catégories de produits 6.1 En tant que vendeur, je veux lister mes catégories de produits. Elevé Faible 6.2 En tant que vendeur, je veux créer une ou plusieurs catégories de produits. Elevé Faible 6.3 En tant que vendeur, je veux modifier une catégorie de produit spécifique parmi la liste des catégories créées. Elevé Faible 6.4 En tant que vendeur, je veux supprimer une catégorie de produit spécifique parmi la liste des catégories créées. Elevé Faible 7 Gestion des catégories de boutiques 7.1 En tant qu’administrateur, je veux lister les catégories de boutiques. Elevé Faible 7.2 En tant qu’administrateur, je veux créer une ou plusieurs catégories de boutiques. Elevé Faible 7.3 En tant qu’administrateur, je veux modifier une catégorie de boutiques. Elevé Faible 7.4 En tant qu’administrateur, je veux supprimer une catégorie de boutique. Elevé Faible 8 Gestion des vendeurs 8.1 En tant qu’administrateur, je veux afficher la liste des vendeurs. Elevé Faible 8.2 En tant qu’administrateur, je veux supprimer un vendeur spécifique. Elevé Faible