Rapport PFE
Rapport PFE
ET DE LA RECHERCHE SCIENTIFIQUE
UNIVERSITE DE SOUSSE
Réalisé par :
Bouthaina GHACHEM
Encadré par :
Encadrant pédagogique : Mr. Ali El Kamil
Encadrante Technique : Mme. Dhekra Rouatbi
Société d’accueil
Réalisé par :
Bouthaina GHACHEM
À mon cher père Abderrazek, pour tous ses sacrifices consentis en veillant à me
procurer toutes les conditions de réussite.
À ma très chère mère Awatef, affable, honorable, aimable : Tu représentes pour moi
le symbole de la bonté par excellence, la source de tendresse et l'exemple du dévouement
qui n'a pas cessé́ de m'encourager et de prier pour moi. Ta prière et ta bénédiction m'ont été
d'un grand secours à bien mener mes études.
À mes très chères sœurs Zahra, Rania, et à mon cher frère Rami, pour leur amour,
encouragement et leur soutien moral tout en long de mes études.
À ma chère tante Wahida, que la force et le courage soient avec toi et que la
patience t’aide à affronter cette maladie maligne.
À tous les membres de ma famille, petits et grands, pour leurs soutiens et leurs
bonheurs de me voir réussir mes études.
À mes chers amis : Salma, Rania, Cheima, Aymen, Houssem, Hassine et Bassem.
Je ne peux pas trouver les mots justes et sincères pour vous exprimer mon affection et mes
pensées, vous êtes pour moi des frères, sœurs et des amis sur qui je peux compter. En
témoignage de l’amitié qui nous unit et des souvenirs de tous les moments que nous avons
passé ensemble, je vous dédie ce travail et je vous souhaite une vie pleine de santé et de
bonheur.
À tous mes amis, qui m’aiment et avec qui je trouve le bonheur d’une bonne
compagnie.
À toutes personnes qui m’ont appris un mot que ce travail soit un témoignage de ma
gratitude et mon profond respect.
Puisse ce travail s'élever au rang d'une référence qui attire tout l'intérêt dans
les domaines de projets guidés par Scrum et réunissant mobile iOS, réalité
augmentée et e-commerce.
… Bouthaïna
Remerciements
Je remercie Dieu tout-puissant de m’avoir donné la santé, la force physique et mentale pour
pouvoir terminer mes études dans les meilleures conditions.
Je remercie vivement toutes les personnes qui ont participé de différentes façons à la
réussite de mon stage et plus particulièrement :
Madame Hedia Jegham, pour ses instructions et ses conseils qui ont été pour moi d’un
apport précieux et enrichissant.
Madame Dhekra Rouatbi, mon encadrante professionnelle pour m'avoir intègré rapidement
au sein de l'entreprise et m'avoir accordé toute sa confiance, pour le temps qu'elle m'a
consacré tout au long de cette période, en répondant à toutes mes interrogations.
Monsieur Salmene Nouire, pour sa créativité qui s’est reflétée dans l’idée de ce projet et
pour ses inestimables directives.
Tous mes enseignants pour les efforts qu’ils ont fourni tout au long de ma formation.
… Bouthaïna
Table Des Matières
Introduction Générale ............................................................................................................................. 1
Chapitre 1 : Cadre Général du Projet .................................................................................................... 3
Introduction......................................................................................................................................... 4
1.1 Présentation de l’organisme d’accueil .................................................................................. 4
1.1.1 Proxym-IT .......................................................................................................................... 4
1.1.2 Activités de base et savoir-faire ......................................................................................... 5
1.1.3 Départements et équipes .................................................................................................... 5
1.2 Présentation du contexte du projet ........................................................................................ 6
1.2.1 M-Commerce en chiffre .................................................................................................... 6
1.2.2 Réalité augmentée ............................................................................................................. 7
1.3 Présentation du projet ............................................................................................................ 8
1.3.1 Problématique et étude de l’existant ................................................................................. 8
1.3.2 Solution proposée .............................................................................................................. 9
1.4 Méthodologie de travail ....................................................................................................... 10
1.4.1 Framework Scrum ........................................................................................................... 10
1.4.2 Scrum Rôle, événement et artefacts ................................................................................ 10
Conclusion......................................................................................................................................... 12
Chapitre 2 : Lancement Du Projet « HomeShop » .............................................................................. 13
Introduction....................................................................................................................................... 14
2.1 Architecture de la solution .................................................................................................. 14
2.1.1 Architecture physique ...................................................................................................... 14
2.1.2 Architecture logique ........................................................................................................ 15
2.2 Analyse et Spécification des besoins de « HomeShop » ..................................................... 16
2.2.1 Identification des acteurs ................................................................................................ 16
2.2.2 Diagramme de contexte ................................................................................................... 16
2.2.3 Identification des besoins ................................................................................................ 17
2.3 Product Backlog ................................................................................................................... 18
2.3.1 Technique de priorisation du PB .................................................................................... 19
2.3.2 Product Backlog priorisé ................................................................................................. 19
2.3.3 Transposition du PB en diagramme de cas d’utilisation général.................................. 21
2.4 Pratique de principes Scrum ............................................................................................... 23
2.4.1 Établissement de la « Definition of Done » .................................................................... 23
2.4.2 Planification des sprints du projet « HomeShop » ......................................................... 23
2.5 Environnements de travail................................................................................................... 24
2.5.1 Environnement matériel.................................................................................................. 24
2.5.2 Environnement technique ............................................................................................... 25
Conclusion......................................................................................................................................... 25
Chapitre 3 : Sprint 1 : Préparation de la Base de Données et de l’API REST ................................... 26
Introduction....................................................................................................................................... 27
3.1 HomeShop Sprint 1 planning .............................................................................................. 27
3.1.1 Objectif du sprint 1 .......................................................................................................... 27
3.1.2 Sprint Backlog du Sprint 1 .............................................................................................. 27
3.2 Analyse ................................................................................................................................. 28
3.2.1 Étude comparative des plateformes de E-Commerce ..................................................... 28
3.2.2 Étude comparative des APIs graphique 3D .................................................................... 29
3.3 Conception ........................................................................................................................... 30
3.3.1 Conception des objets 3D ................................................................................................ 30
3.3.2 Intégration des objets 3D................................................................................................. 31
3.4 Réalisation ............................................................................................................................ 31
3.4.1 Outils ................................................................................................................................ 31
3.4.2 Captures d’écran de l’incrément 1 potentiellement livrable .......................................... 32
Conclusion......................................................................................................................................... 34
Chapitre 4 : Sprint 2 : Écran d’Accueil « HomeShop » ...................................................................... 35
Introduction....................................................................................................................................... 36
4.1 HomeShop Sprint 2 planning .............................................................................................. 36
4.1.1 Objectif du sprint 2 .......................................................................................................... 36
4.1.2 Sprint Backlog du Sprint 2 .............................................................................................. 36
4.2 Analyse ................................................................................................................................. 37
4.2.1 Raffinement et description des cas d’utilisations ........................................................... 37
4.2.2 Proposition des maquettes ............................................................................................... 37
4.3 Conception ........................................................................................................................... 38
4.3.1 Diagramme d’activité ...................................................................................................... 38
4.3.2 Diagramme de classes ..................................................................................................... 39
4.4 Réalisation ............................................................................................................................ 39
4.4.1 Outils ................................................................................................................................ 39
4.4.2 Captures d’écran de l’incrément 2 potentiellement livrable .......................................... 40
Conclusion......................................................................................................................................... 42
Chapitre 5 : Sprint 3 : Écran Scène de Test Avec La Réalité Augmentée .......................................... 43
Introduction....................................................................................................................................... 44
5.1 HomeShop Sprint 3 planning .............................................................................................. 44
5.1.1 Objectif du sprint 3 .......................................................................................................... 44
5.1.2 Sprint Backlog du Sprint 3 .............................................................................................. 44
5.2 Analyse ................................................................................................................................. 45
5.2.1 Raffinement et description des cas d’utilisations ........................................................... 45
5.2.2 Proposition des maquettes ............................................................................................... 48
5.3 Conception ........................................................................................................................... 48
5.3.1 Diagramme de séquences ................................................................................................ 48
5.3.2 Diagramme de classes ..................................................................................................... 51
5.4 Réalisation ............................................................................................................................ 51
5.4.1 Outils ................................................................................................................................ 51
5.4.2 Captures d’écran de l’incrément 3 potentiellement livrable .......................................... 51
Conclusion......................................................................................................................................... 59
Chapitre 6 : Sprint 4 : Écran de Gestion du Panier « HomeShop » ................................................... 60
Introduction....................................................................................................................................... 61
6.1 HomeShop Sprint 4 planning .............................................................................................. 61
6.1.1 Objectif du sprint 4 .......................................................................................................... 61
6.1.2 Sprint Backlog du Sprint 4 .............................................................................................. 61
6.2 Analyse ................................................................................................................................. 62
6.2.1 Raffinement et description des cas d’utilisations ........................................................... 62
6.2.2 Proposition des maquettes ............................................................................................... 62
6.3 Conception ........................................................................................................................... 63
6.3.1 Diagramme de séquence.................................................................................................. 63
6.3.2 Diagramme de classes ..................................................................................................... 64
6.4 Réalisation ............................................................................................................................ 66
6.4.1 Outils ................................................................................................................................ 66
6.4.2 Captures d’écran de l’incrément 4 potentiellement livrable .......................................... 66
Conclusion......................................................................................................................................... 68
Chapitre 7 : Sprint 5 : Écran d’Inscription, Connexion et Profil « HomeShop ».............................. 69
Introduction....................................................................................................................................... 70
7.1 HomeShop Sprint 5 planning .............................................................................................. 70
7.1.1 Objectif du sprint 5 .......................................................................................................... 70
7.1.2 Sprint Backlog du Sprint 5 .............................................................................................. 70
7.2 Analyse ................................................................................................................................. 71
7.2.1 Raffinement et description des cas d’utilisations ........................................................... 71
7.2.2 Proposition des maquettes ............................................................................................... 72
7.3 Conception ........................................................................................................................... 73
7.3.1 Diagramme d’Activité...................................................................................................... 73
7.3.2 Diagramme de classes ..................................................................................................... 74
7.4 Réalisation ............................................................................................................................ 76
7.4.1 Outils ................................................................................................................................ 76
7.4.2 Captures d’écran de l’incrément 5 potentiellement livrable .......................................... 76
Conclusion......................................................................................................................................... 80
Chapitre 8 : Sprint 6 : Processus de Passage de Commande et Écran d’Historique ......................... 81
Introduction....................................................................................................................................... 82
8.1 HomeShop Sprint 6 planning .............................................................................................. 82
8.1.1 Objectif du Sprint 6 ......................................................................................................... 82
8.1.2 Sprint Backlog du Sprint 6 .............................................................................................. 82
8.2 Analyse ................................................................................................................................. 83
8.2.1 Raffinement et description des cas d’utilisations ........................................................... 83
8.2.2 Proposition des maquette ................................................................................................ 84
8.3 Conception ........................................................................................................................... 85
8.3.1 Diagramme de temps ....................................................................................................... 85
8.3.2 Diagramme de classes ..................................................................................................... 85
8.4 Réalisation ............................................................................................................................ 87
8.4.1 Outils ................................................................................................................................ 87
8.4.2 Captures d’écran de l’incrément 6 potentiellement livrable .......................................... 87
Conclusion......................................................................................................................................... 91
Chapitre 9 : Synthèse de la Release : Préparation au Déploiement de « HomeShop » ..................... 92
Introduction....................................................................................................................................... 93
9.1 Lunch Screen de l’application ............................................................................................ 93
9.2 Icône de l’application .......................................................................................................... 93
9.3 Diagramme de classes final ................................................................................................. 94
9.4 Diagramme de paquetages................................................................................................... 97
9.5 Diagramme de déploiement ................................................................................................. 98
9.6 Analyse SWOT ..................................................................................................................... 98
9.7 Product Backlog de la deuxième release ............................................................................ 99
Conclusion......................................................................................................................................... 99
Conclusion Générale ........................................................................................................................... 100
Webographie ........................................................................................................................................ 101
1 Liste Des Figures
Figure 1-1 : Logo du Proxym-IT ............................................................................................................................ 5
Figure 1-2 : Organigramme de Proxym Group...................................................................................................... 5
Figure 1-3 : Images descriptives du Problématique ............................................................................................... 8
Figure 1-4 : Logo Meublatex Figure 1-5 : Logo Graït ................................................................. 9
Figure 1-6 : Logo Ikea Places Figure 1-7 : Logo Wayfair .............................................................................. 9
Figure 1-8 : Processus Scrum ............................................................................................................................... 11
Figure 2-1: Architecture physique de « HomeShop ».......................................................................................... 14
Figure 2-2 : Architecture MVC traditionnelle ..................................................................................................... 15
Figure 2-3 : Apple MVC « Cocoa MVC » ............................................................................................................ 15
Figure 2-4 : Diagramme de Contexte ................................................................................................................... 16
Figure 2-5: Diagramme de cas d'utilisation global.............................................................................................. 22
Figure 3-1 : Logo SceneKit Figure 3-2 : Logo SpriteKit ............................................................................ 29
Figure 3-3 : Logo Unity Figure 3-4 : Logo Metal ........................................................................................... 29
Figure 3-5 : Arborescence de répertoires fournit par Apple................................................................................ 31
Figure 3-6 : Architecture physique complète de « HomeShop » ......................................................................... 33
Figure 3-7 : Dashboard Moltin ............................................................................................................................. 33
Figure 3-8 : Capture démonstrative de l'intégration des objets 3D ..................................................................... 34
Figure 4-1 : Raffinement de cas d'utilisation « Consultation des catégories » .................................................. 37
Figure 4-2 : Maquette « Écran d'accueil »........................................................................................................... 38
Figure 4-3 : Diagramme d'activité de cas d'utilisation « Consulter les catégorie » ........................................... 38
Figure 4-4 : Incrément du Diagramme de classes du Sprint 1 ............................................................................ 39
Figure 4-5 : Barre de navigation « HomeShop » ................................................................................................. 40
Figure 4-6 : Chargement de l’interface de l’écran d'accueil « HomeShop » ..................................................... 41
Figure 4-7 : Écran d'accueil « HomeShop »........................................................................................................ 41
Figure 5-1 : Raffinement de cas d'utilisation « Test des articles dans le monde réel via caméra » .................. 46
Figure 5-2 : Maquettes « Écran de test RA » ....................................................................................................... 48
Figure 5-3 : Diagramme de séquence « Détection d'un plan » ........................................................................... 49
Figure 5-4 : Diagramme de séquence « Chargement des modèles 3D » ............................................................. 50
Figure 5-5 : Incrément du diagramme de classe de Sprint 2 ............................................................................... 51
Figure 5-6 : Écrans d’initialisation de la scène AR ............................................................................................. 52
Figure 5-7 : Écrans de détection du plan ............................................................................................................. 53
Figure 5-8 : Écran de détection des points caractéristiques ................................................................................ 54
Figure 5-9 : Écrans d’affichage de Catalogue en 3D .......................................................................................... 54
Figure 5-10 : Écrans de chargement des modèles 3D.......................................................................................... 55
Figure 5-11 : Écran d'erreur de chargement de modèle...................................................................................... 55
Figure 5-12 : Écrans « Menu help »..................................................................................................................... 56
Figure 5-13 : Écran de suppression d’un modèle de la scène AR ....................................................................... 57
Figure 5-14 : Écrans de Changement de couleur d’un modèle........................................................................... 57
Figure 5-15 : Écrans de prise d’une instance de photo ....................................................................................... 58
Figure 5-16 : Écran d’ajout des modèle dans le panier ....................................................................................... 59
Figure 6-1 : Raffinement du cas d’utilisation « Gestion du panier » ................................................................. 62
Figure 6-2 : Maquettes « Écran de panier » ........................................................................................................ 63
Figure 6-3 : Diagramme de séquence du cas d'utilisation « Ajouter au panier » .............................................. 64
Figure 6-4 : Incrément du diagramme de classes du Sprint 4 ............................................................................. 65
Figure 6-5 : Écran de panier « HomeShop » ....................................................................................................... 66
Figure 6-6 : Processus de gestion de panier « Modification des quantités » ...................................................... 67
Figure 6-7 : Processus de gestion de panier « Suppression d’un article » ......................................................... 68
Figure 7-1 : Raffinement de cas d’utilisation « Inscription » ............................................................................. 71
Figure 7-2 : Raffinement du cas d’utilisation « Gestion du compte » ................................................................ 72
Figure 7-3 : Maquettes « Écran d’inscription, de connexion et de profil utilisateur » ...................................... 73
Figure 7-4 : Diagramme d’activité du cas d’utilisation « Authentification » ..................................................... 74
Figure 7-5 : Incrément du diagramme de classe du Sprint 5 .............................................................................. 75
Figure 7-6 : Incrément de l’écran de Profil du Sprint 5 ...................................................................................... 76
Figure 7-7 : Écrans d’inscription et de connexion « HomeShop » ..................................................................... 77
Figure 7-8 : Processus de création d’un Compte sur « HomeShop » ................................................................. 78
Figure 7-9 : Processus d’accès au Compte sur « HomeShop » ........................................................................... 79
Figure 7-10 : Écrans de gestion du compte sur « HomeShop » .......................................................................... 80
Figure 8-1 : Raffinement de cas d’utilisation « Passage d’une commande »..................................................... 83
Figure 8-2 : Raffinement du cas d’utilisation « Consultation de l’historique des commandes » ...................... 84
Figure 8-3 : Maquette « Écran du profil » modifiée Figure 8-4 : Maquette « Écran d’ajout d’adresse » ... 85
Figure 8-5 : Diagramme de temps de l’objet « Panier » ...................................................................................... 85
Figure 8-6 : Incrément du diagramme de classe du Sprint 6 .............................................................................. 86
Figure 8-7 : Écran d’ajout d’une adresse de livraison ........................................................................................ 87
Figure 8-8 : Processus de passage du commande pour un client qui a une adresse de livraison ...................... 88
Figure 8-9 : Processus de passage du commande pour un client qui n’a pas encore une adresse de livraison 89
Figure 8-10 : Écran de profil utilisateur final de « HomeShop » ....................................................................... 90
Figure 8-11 : Écran de l’historique des commandes de « HomeShop » ............................................................. 91
Figure 9-1 : Écran de lancement « HomeShop »................................................................................................. 93
Figure 9-2 : Logo « HomeShop » ......................................................................................................................... 94
Figure 9-3 : Diagramme de classe de la Release.................................................................................................. 95
Figure 9-4 : Diagramme de paquetage de la release............................................................................................ 97
Figure 9-5 : Diagramme de déploiement .............................................................................................................. 98
Introduction Générale
Depuis ces deux dernières décades, l’humanité a fait des pas énormes dans tout ce qui a
attrait à l’innovation, progrès technologique et évolution de l’image. Cette grande évolution a
grandement servi l’homme dans son environnement et aussi a amélioré de façon considérable
son niveau de vie. L’informatisation a facilité la tâche de l’homme, il devient donc possible de
partager les informations et d’accéder à distance à tout ce dont on a besoin.
C’est dans cette optique, plusieurs entreprises n'ont pas hésité à exploiter les technologies
avancées pour offrir des services innovants et rapides à leurs consommateurs. « PROXYM
GROUP » est une des sociétés qui vise à exploiter les nouvelles technologies dans ses services.
Dans ce cadre s'inscrit notre stage de fin d'études pour l’obtention du Diplôme National
d’Ingénieur en Téléinformatique. Ce projet a eu lieu dans la société « Proxym-IT », une des
entités les plus connues de « PROXYM GROUP », ayant pour but le développement d’une
application mobile e-commerce sous la plateforme iOS basée sur la réalité augmenté, qui est
un des marchés les plus prometteurs. Elle représente un store virtuel de meubles de maison.
Le troisième chapitre forme l’objet d’un premier Sprint et a pour objectif la préparation de
la base de données et API REST.
Le quatrième chapitre présente le deuxième Sprint qui vise à développer l’écran d’accueil
de notre application mobile.
Le cinquième chapitre présente le troisième Sprint qui est le maitre d’ouvrage de notre
travail et a pour but de développer le processus de test des meubles de maison avec la réalité
augmentée.
Le sixième chapitre expose le quatrième Sprint qui a pour objectif l’implémentation des
écrans des comptes et profils de notre application.
Ce rapport est clôturé par un dernier chapitre qui forme l’objet d’une synthèse du travail
réalisé et une conclusion générale.
Enfin, il est porté à l’attention de tous lecteurs de ce modeste rapport que nous avons eu
recours aux termes anglais originaux de Scrum, afin d’assurer un maximum de juxtaposition
avec le travail sur le terrain et éviter la perte de sens des termes par la diversité des traductions.
Plan
Introduction........................................................................................................................................ 4
1.1 Présentation de l’organisme d’accueil ................................................................................ 4
1.2 Présentation du contexte ...................................................................................................... 6
1.3 Présentation du projet .......................................................................................................... 8
1.4 Méthodologie de travail ...................................................................................................... 10
Conclusion ........................................................................................................................................ 12
Chapitre 1. Cadre Général Du Projet
Introduction
1.1.1 Proxym-IT
« PROXYM Group » [1] , a été lancée en 2006, c’est une société informatique
internationale présente en Europe, au Moyen-Orient et en Afrique, avec des bureaux à Dubaï,
Paris et Sousse. Avec ses différentes entités Proxym-IT, Proxym France, Proxym ME et Apptiv-
IT situées en France, au Royaume-Uni, au Moyen-Orient et en Tunisie, le groupe est considéré
comme leader dans le secteur IT notamment les solutions convergentes autour du Web, Mobile
et Systèmes d’information. « PROXYM Group » fut sélectionnée parmi les 100 business
partenaires les plus innovants d’IBM.
Ses valeurs qui sont construites autour de l'indépendance, le goût du challenge, l'exigence,
l’esprit d'équipe, la transparence et le sens de l'éthique ont permis de construire des équipes
expérimentées, innovantes et multilingues, dotées d'expertises techniques diversifiées. Jusqu’à
maintenant, elle compte plus de 170 ingénieurs passionnés qui ont numérisé avec succès plus
de 400 projets et fourni plus de 200 applications mobiles à des clients de divers secteurs et
tailles.
• Mobilité et Iot
• Applications commerciales web
• Conseil et support en m & e-commerce
• Soutien technologique aux acteurs de la santé
• Intégration des solutions IBM
• Edition d’applications mobiles pour les entreprises
• Direction générale : La société Proxym-IT est gérée par M. Wassel Berrayana, un ancien
responsable qualité de Sun Microsystems, qui cumule les fonctions du chef de projet et
de directeur exécutif.
Il n’est plus à démontrer que la révolution du numérique a touché l’économie avec tous ses
secteurs primaire, secondaire et tertiaire. Dans le secteur commercial, les consommateurs
utilisent de plus en plus le commerce en ligne, connu sous le nom de e-commerce. Les
consommateurs maîtrisent l’usage du système de catalogue en ligne, de panier et de module de
gestion des commandes, l’achat en ligne est beaucoup plus simple, facile et rapide pour eux que
l’achat naturel. Ce secteur est en plein essor et tire bénéfice de la forte croissance d’utilisation
des appareils mobiles. Dans ce sens, de multiples innovations technologiques telle que la réalité
augmentée, permettant l’essayage et la simulation, se basent sur des processus qui se veulent
de plus en plus fluides sur téléphone et profitent d’une expérience client répondant de mieux en
mieux aux attentes du consommateur connecté et la devançant même. Les deux paragraphes
qui suivent vont appuyer l’opportunité et l’intérêt de notre projet d’un point de vue économique
et d’un point de vue accès à la dernière innovation technologique.
Partant d’une enquête réalisée par la FEVAD 1 [2] et le CSA2 [3] le 5 février 2019 sur
les perspectives d’achats sur Internet et qui a comme titre « Le M-commerce prend de plus en
plus d’ampleur » [4]. Nous constatons que : 39% des e-acheteurs et 56% des jeunes de moins
de 35 ans achètent en ligne depuis leur smartphone, un score en hausse de 7 points depuis 2018
et de 15 points depuis 2017.
FEVAD affirme que le M-Commerce a progressé de 38% en 2017, contre 14,3% pour
le E-Commerce. La fédération estime que, sur l'ensemble du marché, plus de 20% des ventes
ont été réalisées sur smartphones et tablettes. Pendant ce temps, les ventes sur ordinateur
poursuivent une baisse amorcée depuis 2014.
Dans le même contexte Médiamétrie3 [5] affirme que les usages sur Internet favorisent
la bascule vers le mobile et les produits les plus achetés sur mobile en 2018 sont [6] :
1
FEVAD : Fédération du e-commerce et de la vente à distance.
2
CSA : Conseil Supérieur de l’Audiovisuel.
3
Médiamétrie : Société anonyme spécialisée dans la mesure d'audience et l'étude des usages des médias
audiovisuels et numériques.
• Habillement : 14%
• Beauté – Santé : 10%
• Voyage – tourisme : 9%
• Produits techniques : 9%
• Jeux – Jouets : 9%
• Alimentation : 9%
• Univers maison 8%
C’est dans ce contexte que s’intègre notre projet, nous visons améliorer l’expérience
utilisateur dans le domaine du M-Commerce (Mobile Commerce) plus précisément dédié à
l’univers maison en intégrant la technologie de la réalité augmentée pour l’offre d’essai de
meubles sur des surfaces réelles.
Tous les experts s’entendent sur un point, la personnalisation de l’offre et du service est
l’avenir du commerce et le mobile a un rôle très important à jouer dans cette personnalisation
[7]. Outre, l’offre qui doit répondre aux besoins des clients, les services doivent également
s’adapter pour proposer une expérience client la plus riche possible. L’exemple le plus
marquant de personnalisation de l’expérience client offert par le mobile c’est la technologie de
réalité augmentée. Nous nous se demandons alors qu’est-ce que la réalité augmentée ?
1.2.2.1 Définition
Sachant que la « Réalité augmentée » est considérée comme le maitre d’ouvrage de notre
application, nous proposons de la définir en relevant la confusion qui gravite autour d’elle. Il
ne faut pas la confondre avec les termes de « Réalité virtuelle » et de « Réalité mixte ». Ces
trois termes sont définis comme suit [8] :
• Réalité virtuelle (VR) : Exclut le monde physique et plonge les utilisateurs dans
un environnement numérique totalement artificiel ou imaginaire à l'aide
d'appareils dédiées tels que « HTC Vive », « Oculus Rift » ou « Google
Cardboard ».
• Réalité augmentée (AR) : Permet d’insérer, au moyen d’un appareil photo sur un
smartphone, et de façon très réaliste, un objet virtuel dans un environnement réel
en utilisant des coordonnées spatiales bien précises qui permettent la persistance
géométrique en ce qui concerne le placement et l'orientation dans le monde réel.
Le premier système de réalité augmentée fut conçu en 1968 dans le cadre des recherches
qui ont posé les bases de la réalité augmentée, mais il faudra attendre les années 90 pour que le
terme « réalité augmentée » soit évoqué [9]. L’arrivée des Smartphones et Tablettes à la fin des
années 90 : appareil photo, écran et informatique embarquée ont permis le développement des
projets réellement mobiles et pertinents basés sur la réalité augmentée, mais il s’agissait plus
de projets expérimentaux que des outils réels destinés au grand public.
Ce projet rentre dans le cadre du projet de fin d'études qui vient de conclure notre formation
d'ingénieur. L'application demandée s'intitule « HomeShop ». Elle a pour objectif le
développement d’une application mobile sous la plateforme iOS basée sur ARKit, elle
représente un store virtuel de meuble de maison.
Qui parmi nous n’as pas passé du temps à prendre des mesures à chaque fois qu’il a
besoin d’acheter un nouveau meuble ? Qui n’a pas rencontré des difficultés de choix des
meubles et même parfois regretté ses choix après l’achat ?…
Il serait fantastique de tester les différents meubles pour décider qui est le plus
convenable à leurs locaux sans prendre de mesures, sans se déplacer, sans porter des poids
lourds, en étant allongé sur sa chaise longue et de manière ludique.
En Tunisie, Les fournisseurs de meubles les plus connus n’offrent pas à leurs
consommateurs l’opportunité de tester les différents meubles, ni physiquement, ni
virtuellement, avant la procédure d’achat. D’ailleurs la nature du produit, contrairement à
l’habillement, ne s’apprête à aucune forme de test ou d’essai ! On cite par exemple
« Meublatex » et « Graït » :
Alors qu’ailleurs, quelques applications tels que « IKEA Place » et « Wayfair » ont été
réalisées dans le but de remédier à ce manque de confort et booster le processus d’achat des
meubles en ligne en offrant aux consommateurs la possibilité de visualisation et de test des
meubles en réalité augmentée.
Le terrain est donc totalement vierge et l’occasion est fortement propice pour développer
une première application tunisienne de e-commerce basée sur la réalité augmentée permettant
de simuler l’ameublement.
« HomeShop » sera donc une solution M-Commerce basée sur la réalité augmentée
tournant sur la plateforme iOS. Elle représente un store virtuel de meuble maison où l’utilisateur
peut parcourir le catalogue sous forme d’objets modélisés en 3D. Après le choix d’un article,
l’utilisateur peut le placer et le tester directement dans l’endroit où il veut le mettre via la caméra
de son iPhone. Une fois le choix est validé, l’utilisateur peut l’ajouter à son panier pour le passer
en commande, le workflow d’achat en ligne se déclenche alors.
La finalisation du travail en respectant un standard de qualité dans les délais est notre
souci majeur. L’un des problèmes les plus fréquemment affrontés lors du développement de
ce genre de projet, c’est la mauvaise gestion du temps face à l’utilisation d’une technologie
émergeante. Cela peut influencer non seulement le rendement et la vélocité en créant un
environnement de stress, mais aussi la bonne gestion du projet et donc les délais de livraison.
Scrum [10] a été utilisé pour gérer le travail sur des produits complexes depuis le début
des années 1990. Il n'est pas en soi un processus, une technique ou une méthode définitive.
C'est plutôt un framework (cadre de processus) dans lequel nous pouvons utiliser différents
processus et techniques. Scrum met en évidence l'efficacité relative à la gestion de notre produit
et aux techniques de travail afin que nous puissions continuellement améliorer le produit,
l’équipe et l’environnement de travail. Scrum est :
• Léger
• Simple à comprendre
• Difficile à maîtriser
Donc c’est un cadre de travail dans lequel les personnes peuvent aborder des problèmes
complexes et adaptatifs tout en livrant de manière régulière, incrémentale, efficace et créative
des produits de la plus grande valeur possible.
Scrum est constitué d’équipes Scrum et leurs rôles, événements, artefacts et règles
associés. Chaque composante de ce cadre a un but précis et est essentielle au succès et à
l’utilisation de Scrum. La figure 1-8 [11] illustre à la fois les différents rôles de Scrum et le
déroulement du processus :
1.4.2.1 Rôles
En guise de récapitulatif des rôles Scrum et comment ils seront répartis au cours du
guidage de mon projet « HomeShop », Salmene NOUIRE jouera le rôle du PO, Dhekra
ROUATBI jouera le rôle du SM et la DevTeam sera limitée à une seule personne qui est
moi-même Bouthaina GHACHEM. En tant qu’étudiante stagiaire encore en phase
d’apprentissage je profiterai pour jouer le rôle tantôt d’un SM, tantôt d’un PO et tantôt d’une
Dev Team composée de diverses compétences.
1.4.2.2 Artefacts
• Product Backlog (PB) : tout le travail est décrit par le Backlog. En effet, tout le projet
est découpé en un ensemble de « User Stories » classés par priorité́ et listés dans le
Backlog. Le backlog de « HomeShop » sera présenté dans les page 19 et 20.
• Sprint Backlog (SB) : une sélection de tâches retenues du « Product Backlog » pour
construire l'objectif du sprint.
1.4.2.3 Évènements
Sur le terrain pratique du cadre de processus Scrum nous faisons recours à ces termes que
nous devons savoir d’avance :
• Sprint : C’est le cœur de Scrum, une durée d'un mois ou moins au cours de laquelle un
incrément Produit fonctionnel est créé. Un nouveau Sprint commence immédiatement
après la conclusion du Sprint précédent.
• Sprint Planning meeting : « Réunion de Planification du Sprint », réalisée par tous les
membres de l'équipe Scrum pour définir le travail à effectuer durant chaque Sprint. Elle
dure au maximum huit heures pour un Sprint d'un mois.
• Daily Meeting : c'est un point quotidien qui permet de mettre le point sur ce qui a été
réalisé ,les problèmes rencontrés et les objectifs de la journée.
• Sprint Review : « Revue de Sprint », est tenue à la fin du Sprint pour inspecter
l’incrément réalisé et adapter le Backlog Produit si nécessaire. Pendant la revue de
Sprint, l'équipe Scrum et les parties prenantes contrôlent la qualité du produit en
échangeant sur ce qui a été fait durant le Sprint.
Conclusion
A travers ce chapitre, nous avons présenté la société PROXYM-GROUP à travers ses
activités et son organisation interne. Dans un second lieu, nous avons décrit le contexte du
projet en avançant des chiffres et statistiques afin de sensibiliser à son importance et souligner
sa grande Business Value pour PROXYM-GROUP ou toute entreprise œuvrant dans le
domaine de l’IT. Puis nous avons détaillé la problématique et estimé les degrés de difficulté en
vue de cerner la méthode, les technologies et les compétences nécessaires au développement et
de là envisager une solution.
Plan
Introduction...................................................................................................................................... 14
2.1 Architecture de la solution ................................................................................................. 14
2.2 Analyse et Spécification des besoins .................................................................................. 16
2.3 Product Backlog .................................................................................................................. 18
2.4 Pratique de principes de Scrum ........................................................................................ 23
2.5 Environnements de travail ................................................................................................. 24
Conclusion ........................................................................................................................................ 25
Chapitre 2 . Lancement Du Projet « HomeShop »
Introduction
« HomeShop » est une application mobile iPhone iOS de e-commerce qui offre une
simulation 3D d’ameublement d’une surface et permet de remplir un caddy puis le transformer
en commande. Avant de se plonger dans sa conception et développement une architecture trois-
tiers s’apprête parfaitement pour bâtir sa structure. Ce modèle d’architecture se compose de
trois composantes fondamentales qui facilitent la récupération des données situées au niveau de
la base de données.
Cette architecture n’apparait pas totalement détaillée pour le moment car elle sera
construite au fur et à mesure durant l’avancement dans les Sprints par l’intégration des
différents incréments potentiellement livrables.
Notre projet « HomeShop » est une application mobile sous la plateforme iOS, toutefois,
et selon Apple, l’architecture MVC traditionnel ne semble pas être applicable au développement
iOS moderne. Pour cette raison, Apple a inventé une autre vision sur MVC [13] qui est
conforme à ses besoins.
Avant de discuter de la vision MVC d’Apple, jetons un coup d’œil sur la vision
traditionnelle. Le concept de base est la séparation des données (modèle), de l'affichage (vue)
et des actions (contrôleur) comme le montre la figure 2-2 [13]:
Du point de vue Apple, « View » et « Controller » sont tellement juxtaposés qu’il est
difficile de dire qu’ils sont séparés. On parle d’un fort couplage « View & Controller » et une
séparation complète de la partie « Model » comme le montre la figure 2-3 [13]:
✓ Une indépendance des données, de l'affichage et des actions, ce qui donne plus de
souplesse pour la maintenabilité et l'évolutivité du système.
✓ La moindre quantité de code parmi d'autres modèles. De plus, tout le monde le connaît
bien, il est donc facile à entretenir.
✓ Un gain de temps de maintenance et d'évolution de l'application.
C'est à cet effet que nous optons pour le modèle MVC qui sera également très pratique
pour gérer l'interaction entre les différents composants de notre application iOS « HomeShop ».
Un acteur est une personne ou un autre système informatique qui attend un ou plusieurs
services offerts par l'application « HomeShop ». Il interagit avec le système par envoi ou
réception des messages. Pour « HomeShop » nous distinguons principalement les deux acteurs
suivants :
Visiteur : Un utilisateur qui peut exécuter toute les fonctionnalités de l’application sauf
le processus du passage d’une commande, le workflow de paiement et l’accès au profil
utilisateur puisqu’il ne dispose pas d’un compte.
Client (Visiteur dispose d’un compte) : Un utilisateur qui dispose d’un accès complet à
toutes les fonctionnalités de l’application puisqu’il dispose d’un compte utilisateur.
Un visiteur une fois inscrit dans l’application, il aura accès un son compte et devient un
client. Un client est à l’origine un visiteur.
Le diagramme de contexte montre le système comme étant une « boîte noire ». Il délimite le
domaine d’étude en précisant ce qui est à la charge du système et en identifiant l’environnement
extérieur au système étudié avec lequel ce dernier communique. Cette « boîte noire » sera donc
utile à un ou plusieurs utilisateurs comme il est présenté dans la figure 2-4 :
Il est commode pour une application iOS de décrire les fonctionnalités souhaitées en les
ventilant sur les écrans qui constitueront l’application entière. Chaque écran de notre
application mobile remplit une ou plusieurs fonctions particulières, nous les présentons donc
écran par écran comme suit :
Écran d’Accueil :
Ce sont les besoins qui permettent d’assurer la qualité des services de l’application comme
:
• L’utilisabilité
L’utilisateur aura accès à l’application à travers des Smartphone de type iPhone au format
portrait. L’application est dédiée à tous usager d’un smart phone et qui maîtrise la manipulation
de son écran.
• La compatibilité
Les systèmes d’exploitation et les Smartphone évoluent très vite. Selon Apple, pour assurer
le fonctionnement de la technologie de la réalité augmenté, les appareils iOS doivent avoir une
puce A9, A10, A11 ou A12 Bionic.
Les dispositifs utilisant les puces A9, A10 et A11 sont:
▪ iPhone 6s et 6s Plus
▪ iPhone 7 et 7 Plus
▪ iPhone SE
▪ iPad Pro (9,7, 10,5 ou 12,9) - première et deuxième génération
▪ iPad (2017)
▪ iPhone 8 et 8 Plus
▪ iPhone X, iPhone XR , iPhone Xs, iPhone Xs Max.
Alors, à peu près tous les modèles d'iPhone à partir d'iPhone 6s et supérieurs seront pris en
charge, de même que l'iPhone SE. Tous les iPad Pro et le modèle iPad standard 2017 actuel
seront également pris en charge, ce qui signifie que la dernière série d'iPad, à l'exception de
l'iPad mini, compatible également avec la technologie AR.
• La sécurité
La solution doit respecter la confidentialité des données personnelles des clients. De plus,
elle doit assurer la sécurité des transactions en ligne. Afin de garantir ceci, notre application
utilisera :
- Un processus d’authentification pour chaque utilisateur afin d’accéder à ses données
personnelles
- API de paiement en ligne : lors du processus du paiement aucun détail de la carte ne
doit touchera l’application. Au lieu de cela, les données doivent être transmises de
manière sécurisée via HTTPS de l’appareil du client à l'API utilisé, qui doit être
conforme au deuxième niveau de PCI DSS 4. À partir de là, et en fonction de la
passerelle de paiement spécifique, l'application envoie ces données de manière
transparente à la passerelle de paiement choisie.
• Le temps de réponse
Une fois l’analyse des besoins est entamée, nous les transformons en ce qu’on appelle
des « User Stories » qui seront détaillé dans le « Product Backlog ». Chaque « User Stroy »
permet de décrire avec suffisamment de précision le contenu d'une fonctionnalité à développer.
4
Payment Card Industry Data Security Standard : Un standard de sécurité des données pour les principaux
groupes de cartes de paiement.
À ce niveau, en tant que PO nous devons alors nous demander par quoi commencer ?
et pourquoi une user story est plus prioritaire qu’une autre ?
En fait, la priorisation du Product Backlog est une tâche très importante et afin de la
faire convenablement, il faut spécifier des critères et une méthode de priorisation.
« MoSCoW » [14] est l’une des techniques souvent empruntée sur le terrain par les entreprises
pour prioriser le Product Backlog. Elle consiste à juger de l’importance d’un Product Backlog
Item (PBI : un constituant du BP) pour le profit du client et l’entreprise de développement.
Nous la retenons pour prioriser notre PB :
L’étude de priorisation détaillé dans le paragraphe qui précède a donné comme résultat
le tableau 2.1, qui illustre la liste des « User Story » » ainsi que leurs priorités estimées par
ordre de fonctionnalité pour chaque écran de l’application :
Scrum est un cadre de processus, ceci veut dire qu’au besoin et pour son enrichissement
il peut accueillir des formalismes, des conseils de bonnes pratiques et des techniques de toutes
autres méthodes. Nous sommes au besoin actuellement de transposer notre « Product Backlog
» su-présenté en diagramme de cas d’utilisation global en ayant recours au le langage unifié et
universel de modélisation UML afin de faciliter sa compréhension :
DoD
Analysé
Conçu
Codé
Testé
Réfactoré
Intégré
Documenté
Selon Scrum Guide [15] : « au fur et à mesure que l’équipe Scrum prendra de la maturité,
on s’attend à ce que leur DoD s’étende progressivement pour inclure des critères plus rigoureux,
permettant un niveau de qualité plus élevé ».
Développer le Processus de
Sprint 6 20/05 – 31/05
passage de Commande et
l’écran de l’historique
Les « Users Stories » que nous n’avons pas incluses forment l’objet d’une deuxième
release que Proxym-IT prendra la relève de poursuivre.
Durant la réalisation du présent travail, nous avons utilisé d'un ordinateur « MacBook
Pro » qui a les caractéristiques suivantes :
Nous avons aussi utilisé un téléphone mobile iPhone pour simuler et tester le
comportement de l’application et s’assurer de son bon fonctionnement. L’iPhone dispose des
caractéristiques suivantes :
Modèle iPhone SE
Processeur Apple A9, 1.86 GHz
Mémoire vive (RAM) 1 Go
Écran 4 pouces
OS iOS 11.4
Dans cette partie, nous allons présenter les différents outils de développement et le
langage de programmation que nous avons utilisé pour la réalisation de notre application :
• XCode
• Swift
Conclusion
Ce chapitre nous a permis de bien délimiter le périmètre du projet et d'avoir une vision
plus claire du sujet. Nous avons décrit l'architecture physique, logicielle de l’application visée,
les besoins fonctionnels, non fonctionnels, les acteurs et le Product Backlog. Par la suite, nous
avons planifié et organisé le temps consacré à la réalisation du projet en identifiant les sprints.
Enfin nous avons présenté l'environnement de développement.
Dans les chapitres suivants, nous allons illustrer la réalisation du première release et nous
allons entamer le volet de conception de ces différents sprints. Il est bien clair que les cas
d’utilisation qui constituent le cœur de notre application sont : « Test des objets dans le monde
réel via la caméra » et « Processus de passage du commande » d’ailleurs c’est pour cela qu’en
jouant le rôle du PO je les ai valorisés et hautement priorisés dans le Product Backlog. Il y a
lieu de préciser aussi que nous procèderont à leurs descriptions textuelles détaillées en dehors
des autres.
Plan
Introduction...................................................................................................................................... 27
3.1 HomeShop Sprint 1 planning ............................................................................................ 27
3.2 Analyse ................................................................................................................................. 28
3.3 Conception ........................................................................................................................... 30
3.4 Réalisation ........................................................................................................................... 31
Conclusion ........................................................................................................................................ 34
Chapitre 3 . Sprint 1 : Préparation de la Bases de Données et API REST
Introduction
Ce Chapitre fait l’objet d’une présentation du premier Sprint du projet qui est la création
d’une base de données et le développement d’une API REST. L'étude de chaque Sprint couvre
l'analyse, la conception et la réalisation. Ce Sprint est spécifique comparant aux autres puisqu’il
inclut une partie de travail basée sur des « technical stories » nécessaire pour commencer le
développement, de ce fait la structure de ce Sprint va être différente des autres Sprints. En outre,
ce Sprint ne comportera pas un incrément qui touche la partie frontale de l’application mais
plutôt la partie du back-end.
Cette partie est primordiale pour chaque Sprint. Selon le Scrum Guide, le travail à
effectuer durant le sprint 1 est défini durant la réunion du « Sprint Planning ». Il s’effectue
d’une manière collaborative par tous les membres de l'équipe Scrum et dure au maximum huit
heures pour un Sprint d'un mois. Cette réunion a pour objectif de définir le périmètre
fonctionnel du Sprint, faire sa planification et aussi un peu de conception le tout dans une totale
concertation.
Ce sprint a pour objectif de choisir dans un premier lieu une plateforme E-Commerce
en réalisant une étude comparative entre les différentes plateformes disponibles. Dans un
deuxième lieu, afin d’assurer une expérience d’e-commerce et de test des modèles la plus
réaliste possible, il est nécessaire de préparer un back-end qui comporte les différents produits
qui vont être mis en vente dans l’application et leurs équivalent en 3D.
A ce stade et pour ce premier sprint, nous, en tant que « Dev Team », nous avons
sélectionné à partir du Product Backlog les « User Stories » que nous avons jugé que nous
sommes aptes et capables de développer. Après, nous avons détaillé le plan de travail en « Tasks
» à faire avant la fin du Sprint afin d’arriver à un incrément fini et potentiellement livrable du
produit. Chaque « Task » est caractérisé par son niveau de complexité.
L’estimation de la complexité d’un « Task » peut être faites selon différents méthodes
telles que : « T-Shirts Sizes », « Bucket System » ou « Planning Pocker » [16] ...
Nous avons choisi la méthode de « T-Shirts Sizes », il s’agit d’une technique informelle,
particulièrement adaptée pour traiter rapidement un grand nombre de fonctionnalités. Les
catégories utilisées sont les tailles de t-shirt : XS, S, M, L XL, la catégorie XS va contenir des
activités simples à réaliser, XL contiendra les plus complexes et les plus difficiles. En fin de
« Sprint Planning Meeting » un résultat important est obtenu c’est l’artefact « Sprint Backlog »
dressé dans le tableau 3.1 :
Choix de la plateforme E-
En tant que visiteur, je veux accéder
1.1
Commerce M
1 au catalogue en ligne, afin de voir
les détails des produits.. Familiarisation avec la plateforme
1.2
choisie S
Familiarisation avec un outils de
2.1 création graphique et manipulation XL
des objets 3D.
En tant que visiteur, je veux
interagir avec des modèles 3D
2.2 Préparation des objets 3D L
2 réalistes, afin de pouvoir vivre une
véritable expérience de RA et
meubler une pièce dans ma maison.
2.3 Stockage des objets 3D M
3.2 Analyse
Support
Support
Plateforme Installation SDK REST API PaaS Client
API
/10
Magento Compliqué JavaScript Oui (en V2) Non Non 7/10
Woo-
Compliqué JavaScript Oui Non Non 7/10
Commerce
JavaScript-
Shopify Moyenne Oui (en V2) Non Oui 10/10
iOS-Android
JavaScript-
Moltin Facile iOS-Android- Oui Oui Oui 10/10
Php-Ruby
À travers ce tableau, nous pouvons conclure que la plateforme « Moltin » est vraiment
conçu pour créer plus facilement des systèmes de commerce électronique sur mesure
puisqu’elle supporte diverses SDK. Nous pouvons certainement avoir recours à « Magento »
ou « Woo-Commerce » et créer un système sur mesure, mais l'inconvénient est que nous ne
disposons pas d'un moyen clair d'ajouter des fonctionnalités, des extensions ou une mise à
niveau puisqu’elles ne disposent pas ni d’un SDK iOS, ni d’un support API, ni d’un support
cloud pour le moment, par conséquent, l’équipe de développement va être obligée de se
préoccuper de la configuration d’une infrastructure de base de données et des serveurs
intermédiaires, ce qui est couteux en termes de temps et de développement.
Selon des experts [18], si nous avons besoin d'un moyen de créer un système de
commerce électronique unique et personnalisé et que de plus nous voulons qu'un développeur
construise tout, qui est exactement notre cas, un système d'API comme Moltin nous serait le
meilleur recours au lieu de tout recommencer à zéro.
Notre application est basée sur l’ARkit, la plus grande plateforme de réalité augmentée
du monde développée par Apple. Il s’agit d’une boite à outils qui permet aux développeurs
d’iOS de développer plus facilement des applications basées sur la RA et ce d’une façon bien
plus réaliste et optimisée grâce à des outils dédiés tels que : SceneKit, SpriteKit, Unity, Metal :
« Metal » est une API graphique 3D de bas niveau, c’est-à-dire proche du matériel d’où
elle comporte des fonctions qui permettent un accès direct au matériel mais en contrepartie,
elles a une logique complexe. Nous avons dû l’éliminer puisque nous avons besoin d’un outil
simple à manipuler sans la nécessité de savoir beaucoup de détails technique ou d’écrire
beaucoup de lignes de code.
Mais, « SpriteKit » est un outil adapté pour le cas des animations 2D et ne supporte pas
les animations 3D jusqu’à présent. Donc, cet API aussi ne satisfait pas nos besoins en tant
membre développeur 3D de la DevTeam.
3.3 Conception
Afin d’assurer une expérience utilisateur la plus réaliste possible, nous avons veillé à
mettre à la disposition des utilisateurs de l’application, des modèles 3D de taille réelle.
Néanmoins, la création des objets 3D à partir de zéro est une tâche bien compliquée qui
nécessite beaucoup de temps pour quelqu’un qui n’a pas d’expérience dans le métier d’un
modeleur 3D ou designer graphique, ce qui est notre cas. Cependant, en tant que Dev-Team
notre mission était de chercher sur Internet des modèles 3D qui répondent à nos besoins en
regard des délais de notre sprint (1 mois). Ceci nous a amené à soulever un autre défi qui est le
choix du meilleur format de modèle 3D pour notre application RA. L'un des critères pertinents
de choix, était que la plateforme iOS notamment l’outil SceneKit soient capable de l'intégrer.
5
Un maillage est la discrétisation spatiale d'un milieu continu, ou aussi, une modélisation géométrique d’un
domaine par des éléments proportionnés finis et bien définis.
La manipulation des objets 3D est loin d’être évidente. Le fait de les stocker dans un
serveur n’est pas suffisant pour les manipuler et les afficher sur un dispositif mobile (Téléphone
ou Tablette) au moment de l'exécution. De plus, le chargement de tous les objets en même
temps pourrait affecter le bon fonctionnement de la mémoire et affecter le temps de réponse de
l’application. Comme solution à cet obstacle nous avons eu recours au système de fichiers
fournit par Apple pour chaque application installé qui se compose d’une arborescence de
répertoires standard comme il est représenté dans la figure ci-dessous :
Plus précisément, nous exploité le dossier « tmp » pour stocker les URLs de
téléchargement des modèles 3D et les chargés en cas de besoins dans la scène de réalité
augmenté au moment de l'exécution. Selon Apple, ce répertoire est utilisé pour écrire des
fichiers temporaires qui n'ont pas besoin de persister une fois l’application n'est plus en cours
d'exécution le système peut purger ce répertoire.
3.4 Réalisation
Il devient de plus en plus clair que ce défilé de technologies est le rendu des « technical
stories » qui caractérisent ce premier sprint. Ce sprint s’avère une occasion d’appropriation de
nouvelles compétences pour la Dev Team. Toutefois, il n’est pas accepté de ne rien présenter
au clients et stakeholders au cours de la sprint review. Ce paragraphe et ses sous sections
expliqueront ce que verront les partis prenants précédemment cités.
3.4.1 Outils
Ci-dessous une description détaillé des différents outils utilisés au cours de ce Sprint :
• Blender
• Moltin
Notre choix de Moltin est justifié par son infrastructure unique qui est basé sur cloud,
plus précisément « Amazon web Service cloud », ce qui lui a permis un support large pour
l’architecture de base de données tel que :
Mais vu que le stockage des fichiers en Moltin est limités pour les fichiers de types images,
nous avons fait recours au « Firebase Storage » afin de stocker nos modèles 3D :
• Firebase Storage
Durant cette partie, nous démontrons les résultats de ce sprint à travers la présentation
de quelques captures d'écran de l’incrément back-end réalisé :
Tout d’abord, nous rappellons que nous avons déjà présenté dans le deuxième chapitre
« Initiation du projet » l’architecture physique de notre application et nous avons mentionné
qu’elle sera construite au fur et à mesure durant l’avancement dans les Sprints par l’intégration
des incréments potentiellement livrable. La figure 3.6 représente l’architecture complète et
détaillé de notre application. C’est suite au choix de la plateforme « Moltin » que nous avons
pu identifier les différents composants intervenants.
Ensuite, nous avons préparé le catalogue contenant les articles à mettre en vente à la
disposition des utilisateurs en utilisant le dashboard « Moltin » comme le montre la figure 3.7
ci-dessous :
Conclusion
Durant ce Sprint, nous avons tout d’abord fait l’analyse en comparant les différentes
plateformes d’E-Commerce et APIs graphique 3D en tant qu’application du premier critère de
notre DoD. Puis, nous avons fait la conception des modèles 3D en tant qu’application du
deuxième critère de notre DoD. Et finalement, nous avons pu intégrer nos modèles 3D dans
l’application en stockant les URLs de téléchargement du modèle sous l’arborescence de
répertoires standard d’Apple, plus précisément le dossiers « tmp ».
Ce Sprint a été présenté dans le cadre d'une réunion de fin de sprint appelé « Sprint
Review » qui permet un contrôle qualité par rapport à la DoD. Cette réunion était à la présence
de l'équipe du projet, le PO ainsi que le chef de département mobile comme représentant des
stakeholder. Après avoir été enrichie par leurs remarques et propositions d’améliorations, nous
entamons dans le prochain Sprint « Écran d’accueil HomeShop ».
Plan
Introduction...................................................................................................................................... 36
4.1 HomeShop Sprint 2 planning ............................................................................................ 36
4.2 Analyse ................................................................................................................................. 37
4.3 Conception ........................................................................................................................... 38
4.4 Réalisation ........................................................................................................................... 39
Conclusion ........................................................................................................................................ 42
Chapitre 4 . Sprint 2 : Écran d’Accueil « HomeShop »
Introduction
Ce Chapitre fait l’objet d’une présentation du deuxième Sprint du projet qui est la création
de l’écran d’accueil de l’application et la réalisation des « User Stories » prioritaires pour cet
écran. L'étude de premier Sprint couvre l'analyse, la conception, la réalisation et les test
fonctionnels.
4.2 Analyse
Durant la conclusion du deuxième chapitre page 25, nous avons mis le point sur les cas
d’utilisation les plus importants de notre application. Le cas du « Consultation des catégories
» ne fait pas partie de ces cas, donc nous avons procédé à une description textuelle minimiser
de ce cas d’utilisation comme il est présenté dans le tableau 4-2 :
Afin d’assurer une idée plus précise de l'ergonomie du module, une bonne
compréhension et concrétiser rapidement les attentes et les exigences attendus nous avons
réalisé des maquettes. La figure 4-2 représente une vue préliminaire de l’écran d’accueil de
notre application :
4.3 Conception
Cette partie comporte la conception du sprint, nous avons fait recours au diagramme
d’activité et au diagramme de classes.
Pour assurer une vue global de notre système, nous présentons les classes intervenantes
et les différentes relations entre elles. En adoptant Scrum le diagramme de classe n’apparait pas
totalement détaillé car il sera construit au fur et à mesure durant l’avancement dans les Sprints
par l’intégration des classes intervenant dans la réalisation de chaque Sprint.
4.4 Réalisation
4.4.1 Outils
Au cours de la réalisation de chaque Sprint qui comporte des « Tasks » nécessitant le test
et l’exécution des requêtes http, ainsi que la création et design des interfaces graphique nous
utilisons les outils mentionnées ci-dessous :
• Postman
• Alamofire
Une bibliothèque développé par la société Apple. Elle est
destiné à l’exécution des requêtes d'API REST sur les
systèmes d'exploitation iOS, macOS, watchOS et tvOS.
• Sketch
Un éditeur graphique vectoriel propriétaire pour macOS
d’Apple, développé par la société néerlandaise
Bohemian Coding.
• Prepo
Afin de montrer les résultats de ce sprint, nous allons présenter quelques captures
d'écran. La figure 4-4 représente la barre de navigation que nous avons choisie :
Ces écrans vont être construites au fur et à mesure durant l’avancement dans les Sprints
par l’intégration des incréments potentiellement livrables. Durant ce Sprint, nous avons
construit l’écran de l’accueil. Ci-dessous, la figure 4-6 et 4-5 représentent le résultat :
Conclusion
Durant ce Sprint, tout d’abord, nous avons appliqué le premier critère de notre DoD en
effectuant l’analyse des cas d’utilisations prioritaire pour ce Sprint. Puis, nous avons réalisé la
conception, qui est le deuxième critère de notre DoD , en faisant recours au diagramme de
classes et au diagrammes d’activité du formalisme UML. Finalement, nous avons présenté le
travail réalisé au cours de ce Sprint durant le « Sprint Review » afin de contrôler la qualité de
l’incrément livré.
Après avoir été enrichi par leurs remarques et propositions de perspectives, nous
entamons le prochain Sprint « Écran de scène de test avec la réalité augmentée ».
Plan
Introduction...................................................................................................................................... 44
5.1 HomeShop Sprint 3 planning ............................................................................................ 44
5.2 Analyse ................................................................................................................................. 45
5.3 Conception ........................................................................................................................... 48
5.4 Réalisation ........................................................................................................................... 51
Conclusion ........................................................................................................................................ 59
Chapitre 5 . Sprint 3 : Écran Scène de Test Avec La Réalité Augmentée
Introduction
Implémentation du modèle
1.3 « Produit » XS
En tant que visiteur, je veux accéder
à une scène RA, afin d’essayer les
1 articles dans le monde réel en Test des requêtes permettant la
utilisant la technologie de la réalité 1.4 récupération des données des S
augmentée. articles de catalogues.
Implémentation des managers de
1.5 type REST pour la communication L
avec la partie frontale.
Implémentation des contrôleurs
1.6 pour la consommation des L
managers crées.
Implémentation des contrôleurs
permettant la détection du plan XL
1.7
5.2 Analyse
Figure 5-1 : Raffinement de cas d'utilisation « Test des articles dans le monde réel via caméra »
Un utilisateur quoi qu’il soit un visiteur ou client (visiteur connecté à son compte) a le droit
d’accéder via sa caméra de téléphone à une scène de la réalité augmentée et détecter une surface
horizontale afin d’essayer les différents modèles 3D disponibles. Deux scénarios de
manipulations ont été envisagés qui et longuement débattus par le PO et sa DevTeam :
L’utilisateur pourra par la suite et d’une manière ludique placer, déplacer, supprimer,
changer la couleur voir, ajouter au panier les modèles choisis. De plus, il pourra prendre une
instance de photo pour la scène meublée qu’il pourra consulter ultérieurement dans sa galerie
de photos sur téléphone. Et de là se décider de passer à l’acte d’achat.
Le tableau 5-2 présente une description détaillée du cas d’utilisation « Test des articles dans
le monde réel via caméra » :
Tableau 5-2 : Description textuelle détaillée du cas d'utilisation « Test des articles dans le monde réel »
Scénario nominal 2 :
01. Le système propose des articles à consulter dans l’écran de catégorie et sous-catégorie.
02. L’utilisateur sélectionne les différents articles à tester et confirme son choix.
03. Le système redirige l’utilisateur vers l’écran de la scène de la réalité augmenté et demande
l’autorisation d’accès à l’appareil photo de l’utilisateur.
04. L’utilisateur autorise l’accès et avoir accès à la scène de réalité augmenté.
05. Le système demande le scan du plan.
06. L’utilisateur scan le plan.
07. Le système autorise l’accès au catalogue du catégorie sélectionner.
08. L’utilisateur commence à choisir des modèles et les positionner dans la scène.
09. L'utilisateur quitte la scène de la réalité augmenté.
10. Le système renvoie l’utilisateur vers l’écran des catégorie et sous-catégorie.
Scénario alternatif :
A1. Le plan scanné est détecté
- A1 se déclenche au point 06 du scénario nominal 1 ou 2
01. Le système affiche une signe à l’utilisateur de détection du plan.
Le scénario nominal reprend du point 07.
A2. Le plan scanné n’a pas pu être détecter.
- A2 se déclenche au point 06 du scénario nominal 1 ou 2
01. Le système continue à demander la détection du plan en affichant des renseignement à
l’utilisateur.
Le scénario nominal reprend du point 06.
A3. L’utilisateur choisit de changer l’emplacement d’un modèle
- A3 se déclenche au point 08 du scénario nominal 1 ou 2
01. Le système détecte la nouvelle position du modèle et actualise sa position.
Le scénario nominal reprend du point 08.
A4. L’utilisateur choisit de changer la couleur d’un modèle.
- A4 se déclenche au point 08 du scénario nominal 1 ou 2
01. Le système fournis une liste de couleur à l’utilisateur pour qu’il sélectionne un couleur de son
choix.
Le scénario nominal reprend du point 08.
A5. L’utilisateur choisit de supprimer un modèle de la scène.
- A5 se déclenche au point 08 du scénario nominal 1 ou 2
01. Le système demande à l’utilisateur de confirmer sa suppression et le supprime en cas de
confirmation ou annule en cas où l’utilisateur a annulé la procédure.
Le scénario nominal reprend du point 08.
A6. L’utilisateur choisit d’ajouter les articles testés dans son panier.
- A6 se déclenche au point 08 du scénario nominal 1 ou 2
01. Le système informe l’utilisateur que ses articles ont été bien ajouté au panier ou non.
Le scénario nominal reprend du point 08.
A7. L’utilisateur choisit de prendre une photo de la scène.
- A7 se déclenche au point 08 du scénario nominal 1 ou 2
01. Le système prend une instance de photo de la scène et l’enregistre dans la galerie de photo de
l’appareil mobile.
Le scénario nominal reprend du point 08.
A8. L’utilisateur choisit de redémarrer l’expérience.
- A8 peut se déclencher à tous point du scenario nominal 1 ou 2.
01. Le système initialise supprime les articles chargés sur scène.
Le scénario nominal reprend du point 05
A9. L’utilisateur choisit d’afficher le menu help.
- A9 peut se déclencher à tous point du scenario nominal 1 ou 2.
01. Le système affiche une petite documentation qui montre à l’utilisateur comment interagir avec
les modèles chargés.
Le scénario nominal reprend du point 05
Scénario d'erreur :
E1. Connexion internet interrompue
- E1 peut se déclencher à tous point du scenario nominal 1 ou 2.
01. Le système informe l’utilisateur et lui demander de ressayer ultérieurement.
Post-condition :
- Articles choisit visualisé dans la scène de la réalité augmenté.
- Panier rempli par les articles choisit en cas d’exécution du scenario alternatif A6.
- Instance photo disponible dans la galerie de l’appareil mobile en cas d’exécution du scenario
alternatif A7.
La figure 5-2 montre une représentation préliminaire de l’écran de scène de test avec la
RA qui sera affiché une fois l’utilisateur a choisi une catégorie et de l’écran comportant les
articles proposés en fonction de la catégorie choisie :
5.3 Conception
5.4 Réalisation
5.4.1 Outils
Nous rappelons que chaque écran de notre application nécessite le test et l’exécution
des requêtes http, ainsi que la création et design des interfaces graphique, c’est pour cela nous
faisons recours toujours aux outils mentionnées ci-dessous :
Afin de montrer les résultats de ce sprint, nous allons présenter un défilé de captures
d’écran de l’incrément réalisé en démontrant au fur et à mesure quelques aspects techniques
utilisés:
Tout d’abord, la mise en œuvre derrière le test des articles dans le monde réel en utilisant
« HomeShop » est dû à la correspondance entre les espaces réels et virtuels, ARKit utilise une
technique appelée « visual-inertial odometry » afin de combiner les informations provenant des
capteurs de détection de mouvement du périphérique iOS avec l’analyse de la scène visible par
la caméra du périphérique en utilisant la technologie de l’intelligence artificielle (Computer
Vision). Ci-dessous, la figure 5-6 montre les premières phases d’analyse de scène afin d’arriver
à la détection du plan :
Afin de pouvoir
détecter un plan
horizontal ARKit
utilise des points
caractéristiques ou
« feature points »
« HomeShop » permet à
l’utilisateur de tester un
ou plusieurs modèles en
même temps.
La suppression
d’un modèle
s’effectue en
appuyant
longtemps sur le
modèle à
supprimer
Le changement de
couleur d’un
modèle s’effectue
en appuyant deux
fois de suite sur un
modèle.
« HomeShop »
offre la
possibilité de
prise des
instances de
photos
La consultation du panier et la
gestion de son contenu feront
l’objet du prochain Sprint.
Conclusion
Durant ce Sprint, tout d’abord, nous avons appliqué le premier critère de notre DoD en
effectuant l’analyse des cas d’utilisations prioritaire pour ce Sprint. Puis, nous avons réalisé la
conception, qui est le deuxième critère de notre DoD, en faisant recours au diagramme de
classes et au diagramme de séquence du formalisme UML. Finalement, nous avons présenté le
travail réalisé au cours de ce Sprint durant le « Sprint Review » afin d’assurer un contrôle de
qualité de haut niveau.
Après avoir été enrichi par leurs remarques et propositions de perspectives, nous
entamons le prochain Sprint « Écran de gestion de panier »
Plan
Introduction...................................................................................................................................... 61
6.1 HomeShop Sprint 4 planning ............................................................................................ 61
6.2 Analyse ................................................................................................................................. 62
6.3 Conception ........................................................................................................................... 63
6.4 Réalisation ........................................................................................................................... 66
Conclusion ........................................................................................................................................ 68
Chapitre 6 . Sprint 4 : Écran de Gestion du Panier « HomeShop »
Introduction
6.2 Analyse
Une fois l’utilisateur a ajouté des modèles à son panier, il sera redirigé vers l’écran du
panier afin qu’il puisse modifier des quantités et/ou supprimer un article. Une fois le panier est
validé, l’utilisateur peut passer une commande en accédant à son compte client. Si l’utilisateur
ne dispose pas d’un compte, il doit obligatoirement s’inscrire.
La figure 6-2 donne une perception de l’écran « Gestion de panier » qui sera affiché une
fois l’utilisateur a ajouté des articles à son panier ou en cliquant sur le panier dans la barre de
navigation.
6.3 Conception
La figure 6-4 présente l’incrément du diagramme de classes qui englobe les nouvelles
classes intervenantes dans ce Sprint :
6.4 Réalisation
6.4.1 Outils
Durant cette partie, nous démontrons les résultats de ce sprint à travers la présentation
de quelques captures d’écran de l’incrément réalisé.
Conclusion
Ce Sprint a été présenté dans la réunion de « Sprint Review » ce qui nous a permis la
réalisation d’un contrôle de qualité par rapport à la DoD. Comme d’habitude, cette réunion était
à la présence de l’équipe du projet, le PO ainsi que le chef de département mobile comme
représentant des stakeholder.
Plan
Introduction...................................................................................................................................... 70
7.1 HomeShop Sprint 5 planning ............................................................................................ 70
7.2 Analyse ................................................................................................................................. 71
7.3 Conception ........................................................................................................................... 73
7.4 Réalisation ........................................................................................................................... 76
Conclusion ........................................................................................................................................ 80
Chapitre 7 . Sprint 5 : Écran d’Inscription, Connexion et Profil « HomeShop »
Introduction
Ce Sprint a pour objectif, dans un premier lieu, la préparation des écrans de connexion
au compte, de création d’un nouveau compte, d’accès au compte et du profil utilisateur d’une
maniéré statistique englobant toute les fonctionnalités demandées. Ensuite, le développement
du comportement dynamique des « User Stories » prioritaires demandées.
Implémentation du modèle
1.3 « Client » XS
En tant que visiteur, je veux Test des requêtes permettant la
1 m’inscrire dans l'application, afin 1.4 création d’un nouveau utilisateur S
d’effectuer des achats en ligne. Implémentation des managers de
1.5 type REST pour la communication L
avec la partie frontale.
Implémentation des contrôleurs
1.6 pour la consommation des L
managers crées.
Implémentation des messages et
1.7 signes visuelles indiquant la M
terminaison des actions.
7.2 Analyse
• Inscription :
L’utilisation de l’application par un visiteur est un peu limité. Il ne dispose pas d’un
accès complet à toutes ses fonctionnalités c’est pour cela il est invité dans certain cas critique
à la sécurité de ses données de s’inscrire en créant un compte. Le tableau 7-2 présente une
description textuelle minimiser de ce cas d’utilisation :
Titre : S’inscrire
Acteur : Visiteur.
Résumé : Ce CU permet à l’acteur de créer un compte afin de pouvoir accéder aux fonctionnalités qui exigent
une authentification.
Pré-condition :
- L’utilisateur possède une connexion internet.
- L’utilisateur possède un mail
Post-condition :
- Compte crée.
Une fois le visiteur a créé son compte, il peut se connecter à son compte, et par la suite
il pourra accéder à son profil afin de consulter ou modifier ses données personnelles.
Les tableaux 7-3 et 7-4 forment une description textuelles des cas d’utilisation figurant
dans la figure 7-2 :
Titre : Authentification
Acteur : Client.
Résumé : Ce CU permet à l’acteur d’accéder à son compte.
Pré-condition :
- L’utilisateur possède une connexion internet.
- L’utilisateur possède un compte sur l’application.
Post-condition :
- Accès au compte.
La figure 7-3 représente une vue préliminaire des écrans de connexion au compte, de
création d’un nouveau compte, d’accès au profil utilisateur. Ces maquettes forment une idée
générale sur les fonctionnalités et non pas une représentation final des interfaces mobiles.
7.3 Conception
Pour la conception du cinquième Sprint, nous avons fait recours au diagramme d’activité
et au diagramme de classes.
7.4 Réalisation
7.4.1 Outils
Durant cette partie, nous démontrons les résultats de ce sprint à travers la présentation
de quelques captures d’écran de l’incrément réalisé.
La figure 7-7 présente les écrans de connexion et de création d’un compte de notre
application « HomeShop » :
Conclusion
Ce Sprint a été présenté dans la réunion de « Sprint Review » ce qui nous a permis la
réalisation d’un contrôle de qualité par rapport à la DoD.
Le chapitre suivant fait l’objet du dernier Sprint « Processus de passage des commandes
et écran d’historique ».
Plan
Introduction...................................................................................................................................... 82
8.1 HomeShop Sprint 6 planning ............................................................................................ 82
8.2 Analyse ................................................................................................................................. 83
8.3 Conception ........................................................................................................................... 85
8.4 Réalisation ........................................................................................................................... 87
Conclusion ........................................................................................................................................ 91
Chapitre 8 . Sprint 6 : Processus de Passage de Commande Et Écran d’Historique
Introduction
8.2 Analyse
Afin de pouvoir passer une commande, le client doit obligatoirement avoir accès à son
compte et disposer d’une adresse de livraison. Le tableau 8-2 représente une description
textuelle détaillé du processus de passage d’une commande :
Tableau 8-2 : Description textuelle détaillée du cas d’utilisation « Passage d’une commande »
Une fois l’utilisateur a passé sa commande, il pourra consulter son état dans
l’historique des commandes passées. Le tableau 8-3 présente une description textuelle
minimiser de cas d’utilisation « Consulter l’historique des commandes » :
Tableau 8-3 : Description textuelle du cas d’utilisation « Consultation de l’historique des commandes »
Les maquettes dans la figure 8-3 montre une idée générale sur les fonctionnalités à
ajouter dans la section du profil de l’utilisateur et la figure 8-4 montre une vue préliminaire de
l’interface d’ajout d’une adresse :
Figure 8-3 : Maquette « Écran du profil » modifiée Figure 8-4 : Maquette « Écran d’ajout d’adresse »
8.3 Conception
Pour la conception du sixième Sprint, nous avons fait recours au diagramme de temps et
au diagramme de classes.
Les diagrammes de temps du langages UML sont utilisés pour explorer le comportement
d’un objets dans son système durant une période déterminée. La figure 8-5 ci-dessous montre
le comportement de l’objet « Panier » :
En utilisant l’API Moltin, le contenu du panier reste valable pendant sept jour. Si le
client passe sa commande pendant cette période l’objet se transforme en un objet
« Commande », si non le contenu du panier va disparaître après cette période.
8.4 Réalisation
8.4.1 Outils
Durant cette partie, nous démontrons les résultats de ce sprint à travers la présentation
de quelques captures d’écran de l’incrément réalisé.
La figure 8-7 présente l’écran de l’ajout d’une adresse de livraison. Si le client dispose
déjà d’une adresse, les données des champs seront remplit automatiquement par l’application.
Figure 8-8 : Processus de passage du commande pour un client qui a une adresse de livraison
La figure 8-9 montre le cas où le client ne dispose pas encore d’une adresse de livraison,
il devrai remplir les champs afin de pouvoir passer sa commande :
Figure 8-9 : Processus de passage du commande pour un client qui n’a pas encore une adresse de livraison
Conclusion
Ce Sprint a été présenté dans le cadre d’une réunion de fin de la première release durant
la réunion de la « Sprint Review ». Cette réunion était à la présence de l’équipe du projet, le PO
ainsi que le chef de département mobile comme représentant des stakeholder.
Plan
Introduction...................................................................................................................................... 93
9.1 Lunch Screen de l’application ........................................................................................... 93
9.2 Icône de l’application ......................................................................................................... 93
9.3 Diagramme de classes final ................................................................................................ 94
9.4 Diagramme de paquetages ................................................................................................. 97
9.5 Diagramme de déploiement ............................................................................................... 98
9.6 Analyse SWOT .................................................................................................................... 98
9.7 Product Backlog de la deuxième release ........................................................................... 99
Conclusion ........................................................................................................................................ 99
Chapitre 9 . Synthèse de la Release: Préparation au Déploiement de « HomeShop »
Introduction
Pour le déploiement d’une application mobile iOS sur l’« App Store », il est obligatoire
d’attribuer une icône pour l’application. Elle formera l’ image de marque initial de l’application.
La figure 9-2 présente l’icône de « HomeShop » :
6
SWOT (Strengths / Weaknesses / Opportunities / Threats) ou FFOM en français ( Forces/ Faiblesses /
Opportunités / Menaces) : une méthode permet d’identifier les facteurs internes et externes favorables et
défavorables à la réalisation d’un projet ou produit.
Classes Description
Classe non persistante représente un utilisateur de l’application qui ne possède pas encore un
Visitor
compte.
Classe non persistante gérée dans la session, comporte l’identifiant unique pour un visiteur et sa
Implicit Token
date d’expiration.
Classe persistante contient toutes les informations d’un utilisateur inscrit dans l’application et qui
Customer
possède un compte.
Classe non persistante gérée dans la session, comporte l’identifiant d’authentification d’un client
CustomerToken
et sa date d’expiration.
Classe persistante contient toutes les informations concernant une catégorie, ainsi que les
Category
méthodes à effectuer par l'administrateur pour la gestion des catégorie.
Classe persistante contient toutes les informations concernant un produit, ainsi que les méthodes
Product
à effectuer par l'administrateur pour la gestion des produit.
Classe non persistante gérée dans la session représente un exemplaire d’un produit qui peut être
Item
ajouté, retiré du panier et passé en commande.
Classe non persistante gérée dans la session AR, représente l’équivalent en 3D d’un produit mis
VirtualObject
en vente.
SceneAR Classe non persistante gérée dans la session AR, contient toutes les informations d’une Scène AR.
Photo Gallery Classe non persistante représente l’objet de la galerie de photos sur l’appareil mobile.
Cart Classe non persistante gérée dans la session contient toutes les informations concernant un panier.
Classe d’association entre un panier et un exemplaire de produit non persistante, contient toutes
CartLine
les informations d’une ligne de panier.
Order Classe persistante contient toutes les informations concernant un panier.
Classe d’association non persistante entre un ordre et un exemplaire de produit non persistante,
OrderLine
contient toutes les informations d’une ligne de commande.
Address Classe persistante contient toutes les informations concernant une adresse de livraison d’un client.
Il s’agit d’une méthode qui combine l'étude des forces et des faiblesses d'une organisation,
d'un territoire, d'un secteur ou d’un produit, avec celle des opportunités et des menaces de son
environnement. Le tableau 9-2 présente le résultat d’analyse des applications basé sur réalité́
augmentée tel que « HomeShop » :
Force Faiblesse
Menace Opportunité
Notre stage a duré quatre mois, cette période a suffi d’aboutir une première release. Le
tableau 9-4 présente le Product Backlog contenant les user stories qui forment l’objet d’une
deuxième release que Proxym-IT prendra la relève de poursuivre :
Conclusion
Conclusion Générale
La réalité augmentée est une technologie riche et prometteuse qui touche tous les
domaines. Les principaux fabricants de smartphones (Apple, Samsung et Huawei) pensent que
ce marché pourrait atteindre les 60 milliards de dollars d’ici à 2020.
Nous avons trouvé cette mission très intéressante et enrichissante, puisqu’il s’agit d’un
domaine peu connu où nous aimerons approfondir nos compétences. Au terme de ce projet de
fin d’études, nous estimons que nous avons pu atteindre les objectifs que nous nous sommes
fixés. Toutefois, des perspectives d’amélioration et d’évolution de la version développée se
posent afin d’aboutir à une deuxième release qui inclue :
• L’implémentation des « User Stories » qui forme l’objet d’une deuxième release cité
auparavant dans le chapitre de synthèse de la release.
• L’implémentation d’un module de recommandation des articles automatique en se
basant sur l’historique des commandes passées.
• Le développement d’un module de paiement sécurisé en utilisant la technologie « Block
Chain ».
Finalement, Ce stage a vraiment confirmé nos ambitions futures d’exercer un métier dans
le domaine d’ingénierie informatique.
- AR / RA Augmented Reality / Réalité augmenté. 7, 17, 19, 20, 28, 29, 30, 34, 43, 44,
45, 48, 99, 101.
- VR Virtual Reality. 7, 101.
- MR Mixed Reality. 7, 101.
- PO Product Owner. 11, 14, 19, 25, 29, 34, 42, 44, 46, 48, 58, 59, 68, 91.
- SM Scrum Master. 11.
- DevTeam Develepoment Team. 11, 29, 30, 46, 48, 101.
- IT Technologies de l'information. 4.
- TIC Technologies de l'information et de la Communication. 19.
- Iot Internet of Things. 5.
Ce travail s'inscrit dans le cadre de l’accomplissement de notre stage de fin de nos études
en ingénierie à l’Institut supérieur de l'informatique et des technologies de la communication
(ISITCom). Le stage, a eu lieu dans la société Proxym-IT ayant comme objectif le
développement d’une application mobile, compatible avec tous les dispositifs iOS, qui aide les
clients des agences immobilières à tester des produits et des meubles dans leurs maisons avant
de commander quoi que ce soit. Grâce à la nouvelle technologie de la "Réalité Augmentée" on
a pu donner de très bons résultats et une vision réaliste avec des calculs précis. Une application
simple à manipuler. Avec un simple clic tout sera placer automatiquement. Trouvez le plaisir
de tester votre fourniture immobilière sans même sortir de votre domicile!
Mots clés : iOS, Réalité augmentée, ARKit, SceneKit, API Moltin, Web services.
Abstract
This work is part of the accomplishement of our internship graduation at the Higher
Institute of Computer Science and Communication Technologies (ISITCom). The course was
held in the company Proxym-IT to develop a mobile application, compatible with all iOS
devices, that helps real estate agency customers to test products and furniture in their homes
before ordering anything. Thanks to the new technology "augmented reality" we have been
able to reach encouraging results and a realistic vision with precise calculations. A simple
application to handle. With a simple click, everything will be automatically placed, feel free to
enjoy getting your furniture without even leaving home !
Key words : iOS, Réalité augmentée, ARKit, SceneKit, API Moltin, Web services.