Vous êtes sur la page 1sur 75

Table des matières

I - Introduction ......................................................................................................................................... 4
1 - Objectifs du Projet .......................................................................................................................... 5
2 - Justifications du choix du projet ..................................................................................................... 6
2.1 - Justification du projet .............................................................................................................. 6
II - Présentation du Projet........................................................................................................................ 7
1 - Présentation de l’équipe Geek Compagnon ................................................................................... 7
2 - Description et objectifs du projet .................................................................................................. 9
2.1 - Objectifs techniques du projet ................................................................................................ 9
3 - Spécifications fonctionnelles ........................................................................................................ 11
3.1 - Fonctionnalités détaillées ...................................................................................................... 11
3.2 - Fonctionnalités communes au site web et à l'application mobile ........................................ 11
3.3 - Sur le site web ....................................................................................................................... 12
3.4 - Sur l'application mobile ......................................................................................................... 12
3.5 - Flux de travail ........................................................................................................................ 13
3.6 - Interactions avec d'autres systèmes ..................................................................................... 15
4 - Contraintes ................................................................................................................................... 17
4.1 - Technologiques ...................................................................................................................... 17
4.2 - Budget ................................................................................................................................... 18
4.3 - Temps .................................................................................................................................... 19
4.4 - Ressources humaines ............................................................................................................ 20
4.5 - Réglementation ..................................................................................................................... 21
5 - Besoins ......................................................................................................................................... 22
5.1 - Ergonomie et design .............................................................................................................. 22
5.2 - Performance .......................................................................................................................... 22
5.3 - Sécurité.................................................................................................................................. 22
5.4 - Tolérance aux pannes ............................................................................................................ 23
III - Analyse et mise en œuvre ............................................................................................................... 24
1 - Étude d'opportunité ..................................................................................................................... 24
2 - Étude de faisabilité ....................................................................................................................... 28
3 - Étude de communication ............................................................................................................. 30
4 - Etude des risques ......................................................................................................................... 33
5 - Étude détaillée et conception générale........................................................................................ 35
IV - Comparatif technologique de la solution proposée........................................................................ 36
1 - Description, Critères de sélection et justification de la solution retenue .................................... 36
1.1 - Backend : python Flask .......................................................................................................... 36

2
1.2 - Choix d’un framework CSS .................................................................................................... 38
1.3 - Transition de Bulma vers Tailwind CSS .................................................................................. 40
1.4 - Système de gestion de base de données : PostgreSQL ......................................................... 42
1.5 - Serveur : Apache ................................................................................................................... 44
1.6 - Application Mobile : Windev Mobile..................................................................................... 46
V - Méthodologie de gestion de projet employée................................................................................. 49
1 - Déroulement du projet................................................................................................................. 49
1.1 - Méthodologie Agile ............................................................................................................... 49
1.2 - Gestion des tâches Kanban ................................................................................................... 49
1.3 - Techniques de travail complémentaires ................................................................................ 50
2 - Méthodologie : ............................................................................................................................. 51
2.1 - Méthodologie de gestion de projet ....................................................................................... 51
2.2 - Méthodologie de gestion des taches .................................................................................... 52
2.3 - Méthodologie de gestion de travail ...................................................................................... 53
3 - Phases du projet et planification prévisionnelle .......................................................................... 54
3.1 - Planification ........................................................................................................................... 54
3.2 - Phase 1 : Étude ...................................................................................................................... 55
3.3 - Phase 2 : Conception ............................................................................................................. 57
3.4 - Phase 3 : Déploiement .......................................................................................................... 58
4 - Gestion des ressources humaines et matérielles ......................................................................... 59
4.1 - Ressources Humaines ............................................................................................................ 59
4.2 - Ressources Matérielle ........................................................................................................... 59
5 - Gestion des budgets et coûts ....................................................................................................... 61
VI - Bilan du projet ................................................................................................................................. 62
1 - Avancement du projet et respect des délais ................................................................................ 62
1.1 - Backend ................................................................................................................................. 62
1.2 - Application Mobile ................................................................................................................ 64
1.3 - Frontend ................................................................................................................................ 65
2 - Perspectives d’avenir .................................................................................................................... 66
2.1 - En route vers le Web3 ........................................................................................................... 66

3
I - Introduction

Dans un monde rempli de médias geek passionnants et en constante évolution, il est


parfois difficile de rester à jour et de suivre les sorties, les numéros et les actualités de tous
nos médias préférés. Imaginez-vous dans une foire geek animée, entouré de stands de comics,
de jeux vidéo, de films et de séries, mais vous vous retrouvez à galérer pour vous rappeler à
quel numéro vous en êtes dans chaque série, à quel moment sort le prochain épisode de votre
série préférée, ou même à quel endroit vous avez laissé votre collection incomplète !

C'est dans ce contexte que l'idée de GeekCompagnon a vu le jour. En tant que


passionné inconditionnel des médias geek, je me suis souvent retrouvé confronté à ces
problèmes. J'ai passé des heures à chercher des informations sur différents sites, à noter les
numéros manquants de mes comics, à éviter les spoilers sur les réseaux sociaux, et à espérer
ne pas manquer une sortie importante.

C'est lors d'une discussion animée avec mon collègue de travail, partageant cette
même frustration, que nous avons réalisé qu'il n'existait pas de plateforme centralisée
regroupant toutes ces informations essentielles pour les collectionneurs et les passionnés de
l'univers geek. Nous avons donc décidé de prendre les choses en main et de créer
GeekCompagnon.

Bien plus qu'un simple site web ou une application mobile. C'est un compagnon fidèle
qui nous accompagne dans notre aventure geek, nous offrant une expérience sans tracas et
nous permettant de rester connectés à tout ce qui compte pour nous.

Avec GeekCompagnon, vous pourrez facilement suivre les sorties de vos comics
préférés, garder une trace de votre progression dans les séries télévisées, être informé des
nouvelles sorties de jeux vidéo, et bien plus encore. Vous n'aurez plus à vous inquiéter de rater
une sortie ou de tomber sur un spoil malencontreux. GeekCompagnon vous permettra de
rester proche de la communauté geek, de partager vos découvertes et de vivre pleinement
votre passion.

Nous sommes fiers de vous présenter GeekCompagnon, fruit de notre détermination


à simplifier la vie des passionnés de l'univers geek. Rejoignez-nous dans cette aventure
excitante et découvrez comment GeekCompagnon peut devenir votre compagnon de
confiance dans votre exploration de l'univers geek.

Bienvenue dans l'univers de GeekCompagnon, votre compagnon ultime pour vivre pleinement votre passion geek !

“ Let’s Collect Together ”

4
1 - Objectifs du Projet

Afin de répondre aux défis rencontrés par les passionnés de collections, nous nous
sommes fixé des objectifs clairs et précis pour le développement de l'application
GeekCompagnon. Notre vision était de créer un outil complet et intuitif qui faciliterait la
gestion des collections tout en offrant une expérience personnalisée et interactive aux
utilisateurs. Voici les objectifs que nous nous sommes fixés :

Développer une application conviviale : Notre premier objectif était de concevoir une
interface utilisateur attrayante et conviviale, permettant aux utilisateurs de naviguer
facilement dans l'application et d'ajouter leurs médias à leur ludothèque.

Gérer les collections de manière efficace : Nous avons cherché à créer des fonctionnalités
avancées pour permettre aux utilisateurs de suivre l'évolution de leur collection, de connaître
les numéros manquants, et de recevoir des notifications sur les prochaines sorties et les mises
à jour.

Proposer des recommandations personnalisées : Nous avons souhaité offrir une expérience
unique à chaque utilisateur en lui proposant des médias en accord avec ses préférences et ses
intérêts. Pour cela, nous avons mis en place un système de recommandations personnalisées
basé sur les ajouts et les notations des utilisateurs.

Encourager l'interaction et le partage : L'aspect communautaire était essentiel pour nous.


Nous avons développé des fonctionnalités permettant aux utilisateurs de noter, commenter et
partager leurs avis sur les médias ajoutés à leur collection, favorisant ainsi l'interaction entre
les passionnés.

Faciliter l'accès aux médias : GeekCompagnon devait être plus qu'une simple application de
gestion de collection. Nous avons intégré des liens directs vers des sites partenaires afin de
permettre aux utilisateurs de commander facilement les prochains numéros, opus ou
extensions de leurs médias préférés.

Être proche de la communauté : Nous avons également mis l'accent sur l'importance d'être
en contact direct avec la communauté des passionnés de collections. Notre objectif était de
créer un lien étroit avec les utilisateurs en écoutant leurs besoins, en recueillant leurs
suggestions et en leur offrant un support réactif.

5
2 - Justifications du choix du projet
2.1 - Justification du projet

Notre choix de projet s'est basé sur plusieurs arguments solides et justifiés, qui ont
contribué à rendre GeekCompagnon une idée prometteuse et pertinente. Voici les principales
raisons qui ont motivé notre décision :

Marché de niche : Nous avons identifié un besoin spécifique au sein de la communauté des
collectionneurs de séries, mangas, romans, BD et jeux vidéo. Malgré la popularité de ces
médias, aucun site ou application ne regroupe de manière exhaustive et complète toutes ces
catégories de collection. Cela crée un manque dans le marché que nous souhaitons combler
avec GeekCompagnon.

Problème commun : Notre choix de projet s'est appuyé sur une réflexion approfondie sur les
problèmes communs rencontrés par les passionnés de collections. En discutant avec des
collègues et en partageant nos expériences, nous avons constaté à quel point il était difficile
de suivre les sorties, de se rappeler du numéro exact auquel on était, et de rester informé des
nouveautés en lien avec nos médias préférés. GeekCompagnon propose une solution pratique
et centralisée pour résoudre ces problèmes.

Expertise technique : En tant que spécialistes en développement et en systèmes


d'information, nous avons acquis les compétences nécessaires pour mener à bien un tel projet.
Nous avons une solide compréhension des technologies requises, de la conception
d'applications conviviales et de la gestion des bases de données. Cette expertise technique
nous donne la confiance nécessaire pour réaliser GeekCompagnon avec succès.

Potentiel de rentabilité : Nous avons également évalué le potentiel de rentabilité de


GeekCompagnon en prenant en compte plusieurs facteurs. La popularité croissante des
médias que nous ciblons, combinée au manque actuel d'une plateforme complète, offre de
réelles opportunités commerciales. De plus, notre modèle économique, basé sur des
partenariats avec des sites de vente en ligne, nous permettra de générer des revenus grâce
aux commissions sur les achats effectués par les utilisateurs.

Notre choix de projet, GeekCompagnon, repose sur une analyse approfondie du marché, la
résolution d'un problème commun et l'exploitation de notre expertise technique. En offrant
une solution complète et centrée sur la communauté des collectionneurs, nous sommes
convaincus que GeekCompagnon a le potentiel de devenir un outil incontournable pour les
passionnés de séries, mangas, romans, BD et jeux vidéo.

6
II - Présentation du Projet

1 - Présentation de l’équipe Geek Compagnon


Nous vous présentons l'équipe dévouée qui se trouve derrière GeekCompagnon.
Chacun de nos membres apporte une expertise unique et une passion commune pour offrir la
meilleure expérience possible aux utilisateurs de notre plateforme.

Tout d'abord, nous avons Claire GAROT :

Notre développeuse frontend. Avec sa créativité et son sens artistique, Claire se charge
de développer l'interface utilisateur du site web. Elle veille à ce que chaque élément visuel soit
à la fois esthétique et convivial, offrant ainsi une expérience agréable aux utilisateurs lors de
leur navigation sur le site web. Elle s’occupe également de la partie graphisme des éléments
prints.

Ensuite, nous avons Matthieu STANCATO :

Notre développeur backend. Matthieu possède un solide bagage technique et apporte


une expertise en intelligence artificielle dans le projet. Il se charge de la partie technique du
site web, optimisant les performances, la sécurité et la stabilité du projet.

Sa contribution en tant qu'administrateur système est essentielle pour assurer le bon


fonctionnement et la sécurité de la plateforme.

Il nous permet aussi de mettre en place des fonctionnalités avancées et d'explorer les
possibilités offertes par l'IA pour améliorer l'expérience des utilisateurs.

Enfin, nous avons Maxime DEPLANO :

Notre développeur d'application mobile, est également responsable de la création et


de la mise en valeur de la marque GeekCompagnon. Son expertise technique et sa passion
pour les médias geek lui permettent de donner vie à notre vision à travers une application
mobile conviviale et immersive. Il va donner vie au projet avec son soutien en communication
pour faire connaître notre marque.

7
Chaque membre de notre équipe apporte donc une contribution précieuse et
complémentaire à GeekCompagnon. Nous travaillons en étroite collaboration pour garantir
que notre plateforme répond aux attentes et aux besoins de notre communauté grandissante.

Nous faisons preuve d’engagement pour faire de GeekCompagnon une référence dans
l'univers des collections geek. Nous sommes déterminés à continuer à innover et à améliorer
constamment notre plateforme pour offrir une expérience exceptionnelle à nos utilisateurs.

8
2 - Description et objectifs du projet

Le projet GeekCompagnon a pour objectif de développer une plateforme numérique


complète dédiée aux médias geek. Cette plateforme comprendra un site web et une
application mobile, offrant aux utilisateurs une expérience interactive et conviviale.
GeekCompagnon regroupera les informations et les fonctionnalités nécessaires pour la gestion
des collections, l'accès aux actualités, la participation à une communauté et la
personnalisation de l'expérience utilisateur.

2.1 - Objectifs techniques du projet

Les objectifs techniques de GeekCompagnon sont les suivants :

Interface utilisateur intuitive : Concevoir une interface utilisateur attrayante, conviviale et


facile à naviguer, offrant une expérience utilisateur fluide et agréable.

Gestion des collections : Développer des fonctionnalités de suivi, de catalogage et de gestion


des collections permettant aux utilisateurs d'ajouter, de supprimer, de rechercher et de filtrer
facilement leurs médias geek.

Informations complètes sur les médias : Intégrer une base de données étendue et fiable
comprenant les détails des films, des séries, des jeux vidéo, des bandes dessinées et des
figurines, tels que les titres, les synopsis, les acteurs, les réalisateurs, les dates de sortie, les
évaluations, etc.

Actualités et mises à jour en temps réel : Intégrer un système d'actualités en temps réel pour
fournir aux utilisateurs les dernières informations sur les sorties, les événements, les bandes-
annonces, les articles et les mises à jour dans le monde geek.

Interaction communautaire : Mettre en place des fonctionnalités de discussion, de partage,


de recommandation et de notation permettant aux utilisateurs de se connecter, d'échanger
des avis, des critiques, des recommandations et de participer à des discussions avec d'autres
passionnés.

Personnalisation de l'expérience utilisateur : Offrir aux utilisateurs la possibilité de


personnaliser leur profil, leurs préférences, leurs notifications et de recevoir des
recommandations personnalisées en fonction de leurs intérêts et de leurs collections.

9
Sécurité et fiabilité : Mettre en place des mesures de sécurité robustes pour protéger les
données des utilisateurs, garantir la confidentialité et prévenir toute utilisation abusive.
Assurer une disponibilité permanente et des performances optimales du site web et de
l'application.

En combinant ces objectifs techniques, GeekCompagnon s'efforce de fournir aux


utilisateurs une plateforme complète, fiable et immersive pour la gestion de leurs collections
et l'accès aux informations sur les médias geek, tout en favorisant l'interaction et la
participation en son sein.

10
3 - Spécifications fonctionnelles

3.1 - Fonctionnalités détaillées

Geek-Compagnon offre une gamme de fonctionnalités à la fois sur son site web et sur son
application mobile, avec certaines fonctionnalités spécifiques à chaque plateforme. Le site
web permet aux utilisateurs d'ajouter des produits ou des collections qui n'existent pas dans
nos données, tandis que l'application mobile offre la possibilité de scanner automatiquement
les produits possédés par l'utilisateur via un code-barres.

3.2 - Fonctionnalités communes au site web et à l'application mobile

1. Catalogage des produits culturels : Les utilisateurs peuvent cataloguer, évaluer et partager
leurs expériences avec divers produits culturels.

2. Collections et succès : Les utilisateurs peuvent gérer des collections de produits, suivre
leur taux de complétion et obtenir des succès lorsqu'ils complètent une collection.

3. Statistiques et paramètres de l'utilisateur : Les utilisateurs peuvent afficher leurs produits,


leurs statistiques et modifier leurs paramètres, supprimer leur compte.

4. Forum et commentaires : Les utilisateurs peuvent partager leurs opinions et discuter de


leurs passions communes dans une section de forum et de commentaires.

5. Authentification des utilisateurs : Les utilisateurs peuvent se connecter à Geek-


Compagnon en utilisant leurs identifiants uniques.

6. Mystery Caps : Chaque jour, les utilisateurs reçoivent un tirage de produit culturel aléatoire
à collectionner.

11
3.3 - Sur le site web

Ajout de produits et de collections :

Les utilisateurs peuvent ajouter des produits ou des collections qui n'existent pas dans
nos données. Cela permet à la communauté de contribuer à l'enrichissement de la base de
données de Geek-Compagnon.

3.4 - Sur l'application mobile


Scan de produits :

L'application mobile permet aux utilisateurs de scanner automatiquement les produits


qu'ils possèdent via un code-barres. Cela facilite l'ajout de nouveaux produits à leur catalogue
personnel.

Ces fonctionnalités ont été conçues pour offrir une expérience utilisateur intuitive tout
en assurant la sécurité et la confidentialité des informations des utilisateurs. Elles visent à créer
une communauté engagée autour de la passion commune pour tout un pan de la culture, qui
reste l’un des principaux objectifs de ce projet.

12
3.5 - Flux de travail

13
La création de deux acteurs – Fondateur et modérateur – peut intégrer tant ils sont
proches dans leurs rôles et leurs fonctions. Dans le cadre de l'élaboration de ce projet de
conception d'une application communautaire, il est essentiel de justifier l'architecture
bifurquée du système de modération qui distingue clairement les rôles entre les modérateurs
et les fondateurs. Cette structure à deux niveaux a été conçue pour assurer une gestion
optimale des contenus, un meilleur contrôle des sanctions et une organisation plus claire des
responsabilités.

La structure permet en premier lieu de garantir un traitement approprié des sanctions,


avec une approche graduelle liée à la gravité des infractions commises. Les modérateurs, qui
forment le premier niveau de cette structure, sont responsables de la gestion des cas moins
graves. Ils se chargent de trier et de résoudre les problèmes courants et simples de la
communauté. En revanche, les cas plus graves, qui nécessitent des sanctions plus sévères, sont
escaladés vers les fondateurs. Ceux-ci, faisant partie du second niveau de la structure, ont
l'autorité nécessaire pour imposer des sanctions plus lourdes. Cette approche à deux niveaux
garantit une adéquation entre la gravité de la sanction et l'ampleur de l'infraction commise.

Par ailleurs, cette configuration à deux échelons est aussi fondamentale pour la gestion
des appels. Dans les cas où un membre de la communauté conteste une décision de
modération, cette plainte peut être réexaminée par le niveau supérieur. Les fondateurs
agissent ainsi comme un organe d'appel, permettant un contrôle de qualité supplémentaire
sur les décisions de modération prises et garantissant un processus de prise de décision plus
équitable et impartial.

Enfin, la différenciation des rôles de modération à travers ces deux niveaux favorise une
plus grande granularité dans l'administration de la plateforme. Plus la structuration des
administrateurs est détaillée, plus elle est susceptible de limiter les contentieux. Chaque
niveau de modération a des responsabilités clairement définies, limitant ainsi les
chevauchements de rôles et les conflits potentiels. Cela contribue à l'efficacité globale de la
gestion de la communauté et assure une meilleure cohésion au sein de l'équipe de
modération.

Cette architecture à deux niveaux de modération, en plus de garantir une gestion


efficace du contenu, permet de maintenir l'ordre et le respect au sein de la communauté. Ainsi,
elle crée une expérience utilisateur plus positive et une communauté en ligne plus saine et
plus respectueuse.

14
3.6 - Interactions avec d'autres systèmes

Dans le cadre du projet Geek-Compagnon, diverses interactions avec d'autres systèmes


ont été mises en place pour assurer le bon fonctionnement de l'application. Ces interactions
sont essentielles pour la gestion des données, l'authentification des utilisateurs, la modération
des commentaires, l'envoi de courriels et le suivi des performances.

La gestion des données est assurée par une base de données PostgreSQL hébergée
localement. Cette base de données est utilisée pour stocker et gérer les informations sur les
produits culturels, les collections, les utilisateurs et leurs interactions. L'utilisation d'une base
de données locale offre un contrôle total sur les données et évite les problèmes de
confidentialité et de sécurité qui peuvent survenir avec les bases de données hébergées dans
le cloud.

L'authentification des utilisateurs est gérée de deux manières différentes selon la


plateforme. Sur le site web, une authentification classique par session est utilisée. Cela permet
de maintenir l'état de la session de l'utilisateur tout au long de sa visite sur le site. Sur
l'application mobile, l'authentification est gérée par un système d'API qui utilise le protocole
JWT (JSON Web Token). Ce protocole permet de sécuriser les échanges entre l'application
mobile et le site web.

Contrairement à de nombreuses applications de catalogage social, Geek-Compagnon


ne fait pas appel à des API externes pour obtenir des informations sur les produits culturels.
En effet, aucune des API disponibles ne répondait aux exigences spécifiques du projet,
notamment en ce qui concerne la gestion des collections. Par conséquent, toutes les
informations sur les produits sont stockées et gérées en interne.

Pour le stockage des images et des fichiers multimédias, Geek-Compagnon utilise un


NAS (Network Attached Storage). Ce système de stockage en réseau offre une solution flexible
et évolutive pour le stockage des données, sans les coûts et les problèmes de confidentialité
associés au stockage en nuage.

Bien que Geek-Compagnon ne propose pas de fonctionnalités payantes, l'application a


besoin d'un système pour envoyer des notifications par courrier électronique aux utilisateurs.
Pour cela, elle utilise Mailjet, un service d'envoi de courriels en masse.

15
La modération des commentaires et des discussions sur le forum est une fonctionnalité
clé de Geek-Compagnon. Pour cela, l'application utilise un système de modération intégré qui
combine une intelligence artificielle de classification de la toxicité des commentaires et une
modération manuelle. Cela permet de maintenir un environnement sûr et respectueux pour
tous les utilisateurs.

Enfin, le suivi des performances de l'application est assuré par un tableau de bord
interne accessible aux administrateurs. Ce tableau de bord permet de surveiller l'état de
l'application et de détecter rapidement tout problème ou anomalie.

En somme, le projet Geek-Compagnon illustre comment une application peut interagir


avec divers systèmes pour offrir une expérience utilisateur riche et sécurisée.

16
4 - Contraintes

4.1 - Technologiques

Dans le cadre du projet Geek-Compagnon, diverses contraintes techniques ont été


identifiées et abordées de manière proactive pour assurer le bon fonctionnement de
l'application.

La gestion de la base de données est une contrainte technique majeure. Geek-


Compagnon utilise une base de données PostgreSQL hébergée localement, ce qui nécessite
une surveillance constante pour garantir la disponibilité et la sécurité des données. De plus,
des stratégies de sauvegarde et de récupération des données ont été mises en place pour
prévenir toute perte de données en cas de défaillance du système.

La synchronisation des données entre le site web et l'application mobile est assurée
par l'utilisation d'une API. Cette solution permet de maintenir une cohérence des données
entre les différentes plateformes, garantissant ainsi une expérience utilisateur fluide et
uniforme.

L'authentification des utilisateurs est gérée par une authentification par session pour
le site web et un système d'API basé sur JWT pour l'application mobile. Ces systèmes ont été
rigoureusement testés pour garantir leur sécurité et leur résistance aux attaques.

Pour la gestion des images et des fichiers multimédias, Geek-Compagnon utilise un


NAS. Ce système de stockage en réseau offre une solution flexible et évolutive pour le stockage
des données. De plus, grâce à la configuration en RAID 1, le système assure une redondance
des données, augmentant ainsi la fiabilité du stockage.

La modération des commentaires est une autre contrainte technique importante.


Geek-Compagnon utilise un système de modération intégré qui combine une intelligence
artificielle de classification de la toxicité des commentaires et une modération manuelle. Ce
système hybride permet de maintenir un environnement sûr et respectueux pour tous les
utilisateurs.

En ce qui concerne la performance et la scalabilité, Geek-Compagnon est conçu pour


maintenir une performance élevée même avec une augmentation du nombre d'utilisateurs et
de données. En cas de charge excessive, il est prévu de migrer vers un hébergement chez
o2switch.

17
Enfin, la compatibilité et le support des différentes plateformes sont assurés par
l'utilisation de frameworks adaptatifs tels que Tailwind pour le site web et Windev Mobile pour
l'application mobile. Ces frameworks permettent à Geek-Compagnon de fonctionner
correctement sur différents navigateurs web, systèmes d'exploitation et tailles d'écran.

En somme, malgré les contraintes techniques inhérentes à tout projet de


développement d'application, Geek-Compagnon a su mettre en place des solutions efficaces
pour garantir une expérience utilisateur de qualité.

4.2 - Budget

Dans le cadre du projet Geek-Compagnon, la gestion budgétaire a été un élément clé


pour assurer la viabilité et la réussite du projet. Bien que le projet ait été réalisé dans un
contexte académique, une attention particulière a été accordée à la budgétisation des
différents aspects du projet.

Le développement de l'application web et mobile a été réalisé en interne, ce qui a


permis de minimiser les coûts de développement. Cela a également permis de maintenir un
contrôle total sur le processus de développement et d'assurer que l'application répond aux
exigences spécifiques du projet.

L'hébergement de la base de données et du site web a été réalisé sur un NAS déjà
amorti, ce qui a permis de réduire considérablement les coûts d'hébergement. Cependant, il
est important de noter que le passage à un hébergement chez O2switch en cas de charge
excessive pourrait entraîner des coûts supplémentaires. Ces coûts ont été anticipés et inclus
dans le budget du projet.

Les coûts d'exploitation, y compris la maintenance de l'application, les mises à jour, la


correction des bugs et la modération des commentaires, ont été soigneusement budgétisés.
De même, les coûts associés aux efforts de marketing pour attirer des utilisateurs vers
l'application ont été pris en compte.

En ce qui concerne les licences et les services tiers, le projet a été conçu pour minimiser
ces coûts. La seule licence payante utilisée est celle de Windev pour le développement de
l'application mobile. Le reste du projet repose sur des logiciels et des bibliothèques open
source. Le seul service externe payant utilisé est Mailjet pour l'envoi des emails, dont le coût
est basé sur le volume d'emails envoyés.

18
En somme, une gestion budgétaire rigoureuse a été mise en place pour le projet Geek-
Compagnon, permettant de contrôler les coûts et d'assurer la viabilité financière du projet.
Pour plus de détails sur la répartition des coûts, je vous invite à consulter la prévision
budgétaire placée en annexe.

4.3 - Temps

Dans le cadre du projet Geek-Compagnon, les contraintes temporelles ont été un


facteur déterminant à plusieurs niveaux.

Le développement du projet a été encadré par l'établissement d'enseignement,


imposant une durée d'un an et demi depuis la conceptualisation de l'idée jusqu'à la réalisation
d'un produit minimum viable (MVP). Cette période a été essentielle pour définir, développer
et tester les différentes fonctionnalités de l'application.

La mise en production a été réalisée en une semaine, grâce à une architecture


préexistante qui a simplement nécessité une configuration. Cette rapidité de déploiement a
été rendue possible grâce à une planification efficace et une bonne gestion des ressources. En
cas de transfert vers un autre hébergeur, comme o2switch, un délai similaire est prévu pour
assurer une transition en douceur.

La modération des commentaires et du forum est une tâche continue qui dépend de la
fréquence et de la nature des publications des utilisateurs. Un système de signalement est en
place pour faciliter cette tâche.

La réponse aux demandes des utilisateurs est également une activité continue, dont le
délai peut varier en fonction de la nature de la demande. Pour les problèmes juridiques, par
exemple, le délai de réponse peut être plus long.

Concernant les mises à jour, une réactivité est de mise. Les bugs critiques sont traités
en 24 heures et les bugs mineurs en cinq jours maximum. L'ajout de nouvelles fonctionnalités
est prévu sur une période de deux à trois semaines, permettant des phases de tests.

Enfin, le marketing est une activité permanente qui nécessite une attention constante.
La gestion des réseaux sociaux est effectuée en continu et la préparation d'une campagne de
marketing peut nécessiter plusieurs mois, en fonction de la stratégie adoptée.

19
Ces contraintes temporelles ont été intégrées dans la planification du projet pour
assurer son bon déroulement. Pour plus de détails sur la répartition des temps et des coûts,
nous vous invitons à consulter la prévision budgétaire en annexe.

4.4 - Ressources humaines

Dans le cadre du projet Geek-Compagnon, la gestion des ressources humaines a été


une composante essentielle pour assurer le bon déroulement et la réussite du projet.

En premier lieu, l'équipe du projet a été constituée de manière à maximiser l'utilisation


des compétences techniques de chaque membre. Chaque individu a été assigné à des tâches
et des responsabilités qui correspondaient à ses domaines de compétence et d'intérêt. Cela a
permis non seulement d'optimiser l'efficacité de l'équipe, mais aussi de garantir un niveau
d'engagement élevé de la part de tous les membres.

En ce qui concerne la disponibilité, le projet a dû faire face à des défis uniques.


Initialement composée de deux membres, l'équipe s'est agrandie avec l'arrivée d'un troisième
membre au cours des derniers mois du projet. De plus, tous les membres de l'équipe ont été
en alternance à un moment donné, ce qui signifie que le travail sur le projet devait souvent
être réalisé pendant leur temps libre. Malgré ces contraintes, l'équipe a réussi à maintenir une
progression constante du projet.

Pour ce qui est de la formation, l'équipe a adopté une approche d'autoformation.


Lorsqu'une nouvelle compétence ou connaissance était nécessaire, du temps était alloué pour
permettre à l'individu concerné d'apprendre et de se familiariser avec cette nouvelle
compétence. Cette approche a permis à l'équipe de rester flexible et adaptable face aux défis
techniques du projet.

Enfin, en ce qui concerne la gestion des conflits, l'équipe a eu la chance de ne pas


rencontrer de conflits majeurs au cours du projet. Cependant, il est important de noter que la
prévention des conflits est tout aussi importante que leur résolution. Une communication
ouverte et honnête, le respect mutuel et la compréhension des perspectives de chacun sont
des éléments clés pour prévenir les conflits au sein d'une équipe.

En conclusion, la gestion des ressources humaines a été un aspect crucial du projet


Geek-Compagnon. Les défis ont été relevés grâce à une répartition efficace des compétences,
une gestion adaptative de la disponibilité, une approche d'autoformation et une
communication efficace. Pour plus de détails sur la répartition des tâches et des
responsabilités, veuillez consulter la section "Organisation du projet" en annexe.

20
4.5 - Réglementation

Dans le cadre du projet Geek-Compagnon, plusieurs aspects de la législation et de la


réglementation ont été pris en compte et intégrés dans la conception et la mise en œuvre du
projet.

La protection des données personnelles est une préoccupation majeure. Le projet


implique la collecte et le traitement de données personnelles des utilisateurs, ce qui nécessite
une conformité stricte avec le Règlement général sur la protection des données (RGPD) de
l'Union européenne. Pour ce faire, le consentement explicite des utilisateurs est obtenu pour
la collecte de leurs données, une politique de confidentialité claire et accessible est fournie, et
des mesures de sécurité appropriées sont mises en place pour protéger les données. De plus,
le projet se finance par plusieurs moyens, notamment une bannière publicitaire sur la page
d'accueil, des partenariats divers pour les "Mystery Caps", et un système de liens d'affiliation.
Ces méthodes de financement sont également conformes au RGPD.

En ce qui concerne les droits d'auteur et la propriété intellectuelle, le projet pourrait


impliquer l'utilisation de matériel protégé par des droits d'auteur ou des marques déposées,
comme les images des produits culturels. Cependant, l'utilisation de ce matériel est légale car
elle tombe sous le coup de l'exception de citation à des fins de critique ou de revue.

Enfin, le projet comprend un forum et des commentaires, ce qui implique une


responsabilité en matière de modération des contenus. En France, la loi pour une République
numérique impose aux hébergeurs de retirer rapidement tout contenu illégal signalé, et de
mettre en place un dispositif facilement accessible et visible permettant à toute personne de
signaler de tels contenus. Le projet Geek-Compagnon a pris en compte cet aspect lors de sa
conception, en intégrant un système de signalement et en s'assurant de la réactivité de la
modération.

Ces aspects juridiques et réglementaires sont essentiels pour assurer le respect de la


loi et la protection des utilisateurs dans le cadre du projet Geek-Compagnon. Pour plus de
détails sur ces aspects, il est recommandé de consulter la section juridique en annexe.

21
5 - Besoins
Dans le cadre du projet Geek-Compagnon, plusieurs besoins ont été identifiés et pris
en compte lors de la conception et du développement du système. Ces besoins concernent
l'ergonomie et le design, la performance, la sécurité et la tolérance aux pannes.

5.1 - Ergonomie et design

Concernant l'ergonomie et le design, le projet a été conçu avec une attention


particulière portée à l'expérience utilisateur. L'interface utilisateur a été conçue pour être
intuitive et facile à utiliser, avec des fonctionnalités clairement définies et accessibles.
L'application mobile et le site web ont été conçus pour être réactifs, ce qui signifie qu'ils
s'adaptent automatiquement à la taille de l'écran de l'utilisateur, qu'il utilise un ordinateur de
bureau, un ordinateur portable, une tablette ou un smartphone. De plus, l'application mobile
a été développée en utilisant Windev Mobile, ce qui permet une compatibilité
multiplateforme.

5.2 - Performance

En ce qui concerne la performance, le projet a été optimisé pour assurer une réponse
rapide et une utilisation efficace des ressources. La base de données PostgreSQL est utilisée
pour stocker les données, ce qui permet des opérations de lecture et d'écriture rapides. De
plus, l'application mobile communique avec le site web via une API, ce qui permet une
synchronisation rapide et efficace des données entre les différents clients. Tout cela est couplé
avec une politique de cache.

5.3 - Sécurité

La sécurité est une autre préoccupation majeure du projet. Le système


d'authentification utilise des sessions pour le site web et des tokens JWT pour l'application
mobile, ce qui assure la sécurité des données de l'utilisateur. De plus, toutes les données sont
stockées localement sur un NAS, ce qui évite les risques associés au stockage en nuage. Enfin,
comme dit précédemment, un système de modération est en place pour surveiller les
commentaires et les contenus générés par les utilisateurs, avec une combinaison de
modération automatique par IA et de modération manuelle.

22
5.4 - Tolérance aux pannes

Enfin, la tolérance aux pannes a été prise en compte lors de la conception du système.
Le NAS utilisé pour le stockage des données est configuré en RAID 1, ce qui signifie qu'il y a
une redondance des données en cas de défaillance d'un disque. De plus, en cas de charge trop
élevée sur le système, il est prévu de basculer vers un hébergement cloud chez O2Switch.

Ces besoins ont guidé la conception et le développement du projet Geek-Compagnon,


afin de fournir une solution qui répond aux attentes des utilisateurs tout en respectant les
contraintes techniques et réglementaires.

23
III - Analyse et mise en œuvre

1 - Étude d'opportunité

L'étude d'opportunités est une phase essentielle dans tout projet, car elle permet
d'évaluer les perspectives de succès et de déterminer si l'idée proposée répond à un besoin
réel sur le marché. Dans le cadre de notre projet GeekCompagnon, une application d'assistant
de collection pour les geeks, une analyse approfondie des opportunités a été réalisée pour
mieux comprendre le contexte et les avantages concurrentiels potentiels. Voici une
présentation détaillée des opportunités identifiées :

Lors de l'établissement de notre projet nous avons effectué une matrice des
opportunités, des forces et des faiblesses, aussi appelée MOFF ou SWOT en anglais (Strengths,
Weaknesses, Opportunities, Threats). Il s’agit d’un outil d’analyse stratégique qui permet
d’évvaluer les aspects positifs et négatifs d’un projet ou d’une entreprise. Mais il est également
utilisé pour identifier les opportunités à saisir, les forces à valoriser, les faiblesses à corriger et
les menaces à anticiper. Cette matrice sous forme de tableau est essentielle, comme pour
beaucoup de projet, afin d’évaluer la faisabilité et l'opportunité de notre initiative.

Cette analyse nous permet de prendre en compte les aspects internes et externes qui
peuvent influencer la réussite de notre projet. Voici pourquoi nous avons effectué cette
matrice et en quoi elle nous a été utile.

24
Tableau SWOT du projet Geek Compagnon

En résumé, l'analyse MOFF/SWOT nous a aidé aide à comprendre notre


positionnement sur le marché, à identifier les actions à entreprendre et à prendre des
décisions stratégiques pour maximiser les chances de réussite de notre projet.

25
1.1 - Un marché quasi inexistant en France

L'étude a révélé que le marché des applications d'assistance à la collection pour les
geeks est encore peu développé en France. Bien que les collectionneurs de séries, mangas,
romans, BD, jeux vidéo et jeux de rôle soient nombreux, il existe une lacune en termes d'outils
dédiés à la gestion et au suivi de leurs collections. En effet, les applications actuellement
existantes sont souvent basées sur un ou deux types de média maximum. Cette opportunité
d'innovation dans un marché émergent offre de grandes possibilités de croissance et
d'adoption par les passionnés.

1.2 - Une réglementation favorable

Le cadre réglementaire actuel favorise le développement d'applications mobiles et


d'outils numériques. Les politiques gouvernementales soutiennent l'innovation technologique
et la numérisation des services, offrant ainsi un environnement propice à la création et à la
diffusion de notre application. Cette opportunité permettra à l'entreprise de bénéficier d'un
soutien institutionnel et d'un climat favorable à son expansion.

1.3 - Un public réceptif aux partenariats

La communauté geek est connue pour être ouverte aux partenariats avec des marques
et des entreprises qui partagent leurs intérêts et valeurs. GeekCompagnon peut tirer parti de
cette dynamique en établissant des collaborations avec des partenaires stratégiques tels que
des librairies, des maisons d'édition et des distributeurs de médias. Cette opportunité de
partenariat permettra d'élargir la portée de l'application, d'accéder à de nouveaux utilisateurs
et de stimuler la croissance de manière synergique.

1.4 - Coût fixe bas et technologie moderne

Le modèle économique de notre projet bénéficie de coûts fixes bas, notamment en


raison de l'utilisation de technologies modernes et éprouvées. Les avancées dans le domaine
du développement d'applications mobiles et de la gestion des données permettent de
développer une solution rentable tout en offrant une expérience utilisateur de haute qualité.
Cette opportunité de maîtrise des coûts tout en proposant une technologie de pointe confère
à GeekCompagnon un avantage concurrentiel significatif.

26
1.5 - Modération participative et communautaire

La modération participative, qui implique la contribution active des utilisateurs à la


surveillance et à la régulation de la communauté, constitue une opportunité unique pour
GeekCompagnon. En encourageant les utilisateurs à noter, commenter et partager leurs avis
sur les médias, l'application crée un environnement collaboratif et engageant. Cette approche
renforce le sentiment d'appartenance à une communauté, encourage la fidélité des
utilisateurs et permet un développement continu en fonction des besoins de la base
d'utilisateurs.

1.6 - Une dépendance de plateformes externes et SEO

L'étude a également identifié certaines contraintes et défis potentiels.


GeekCompagnon dépendra des données et des informations fournies par des plateformes
externes, telles que les sites de vente de médias ou les bases de données de séries. Il sera
essentiel d'établir des partenariats solides avec ces plateformes pour garantir des données
précises et à jour. De plus, une attention particulière devra être accordée au référencement
(SEO) afin d'assurer une visibilité optimale de l'application sur les moteurs de recherche et de
se démarquer de la concurrence.

En conclusion, l'étude d'opportunités réalisée pour le projet GeekCompagnon a révélé


un marché potentiel prometteur en France, avec une demande croissante d'applications
dédiées à la gestion de collections pour les geeks. Les avantages concurrentiels tels que le coût
fixe bas, la technologie moderne, la modération participative et la possibilité de partenariats
stratégiques offrent des opportunités significatives de succès et de croissance. Cependant, il
convient de prendre en compte les défis potentiels liés à la dépendance de plateformes
externes et à l'optimisation du référencement.

27
2 - Étude de faisabilité
L'étude de faisabilité du projet GeekCompagnon a été réalisée pour évaluer sa viabilité
et sa faisabilité. Plusieurs aspects ont été examinés afin de déterminer si le projet peut être
mis en œuvre avec succès.

Sur le plan technique, nous disposons d'une équipe expérimentée en développement


d'applications mobiles et web. Nous avons les compétences nécessaires pour créer une
application robuste et conviviale pour les utilisateurs. De plus, nous avons évalué les
ressources technologiques disponibles, notamment les serveurs, les logiciels de
développement et les licences, et nous avons confirmé que nous disposons de tout le
nécessaire pour mener à bien le projet.

Du point de vue financier, nous avons réalisé une analyse détaillée des coûts de
développement de GeekCompagnon. Cela inclut les salaires de l'équipe, les frais de
développement logiciel, les coûts d'hébergement et les dépenses liées au marketing. Nous
avons également identifié différentes sources de financement potentielles, telles que les
investisseurs, les subventions gouvernementales et les partenariats stratégiques. Un plan
financier solide a été établi pour garantir la rentabilité à long terme du projet.

Pour assurer la faisabilité opérationnelle, nous avons analysé les processus nécessaires
pour développer, déployer et maintenir l'application GeekCompagnon. Cela comprend la
gestion des utilisateurs, la collecte de données et la communication avec les partenaires. Nous
avons évalué les ressources humaines nécessaires et leur disponibilité pour répondre aux
exigences opérationnelles. Nous sommes confiants dans notre capacité à gérer efficacement
les opérations de GeekCompagnon.

De plus, nous avons examiné de près les aspects liés à la collecte de données et à la
conformité au règlement général sur la protection des données (RGPD). Nous avons effectué
une analyse détaillée des exigences en matière de protection des données et nous avons pris
les mesures nécessaires pour garantir que toutes les informations personnelles collectées
seront traitées conformément aux normes de confidentialité les plus strictes.

Nous avons développé des protocoles de sécurité pour protéger les données des
utilisateurs, y compris des mesures de cryptage et de sauvegarde régulières. De plus, nous
avons mis en place des mécanismes permettant aux utilisateurs de contrôler leurs données
personnelles, notamment la possibilité d'accéder, de modifier ou de supprimer leurs
informations.

28
En effectuant cette vérification approfondie du lien collecte de données et du respect
du RGPD, nous nous assurons de la transparence et de la conformité totale avec les
réglementations en vigueur en matière de protection des données. Cela renforce la confiance
des utilisateurs dans notre application GeekCompagnon et garantit que leurs informations
personnelles seront traitées de manière sécurisée et éthique.

Sur le plan commercial, une étude de marché approfondie a été réalisée pour évaluer
la demande pour une application de gestion de collections pour les passionnés de séries, de
mangas, de jeux vidéo, etc. Nous avons identifié un marché potentiellement lucratif avec un
intérêt croissant pour la culture geek. De plus, nous avons analysé la concurrence existante et
identifié des opportunités pour se démarquer en offrant des fonctionnalités uniques et une
expérience utilisateur exceptionnelle. Nous avons également élaboré des modèles de revenus
solides, tels que la mise en avant de produits partenaires et les liens d'affiliation, qui
contribueront à la rentabilité de GeekCompagnon.

En conclusion, l'étude de faisabilité démontre que le projet GeekCompagnon est


techniquement réalisable, financièrement viable, opérationnellement faisable et
commercialement prometteur. Les résultats obtenus nous donnent la confiance nécessaire
pour avancer dans le développement et la mise en œuvre du projet GeekCompagnon, en
offrant une solution complète et innovante aux amateurs de collections geek.

29
3 - Étude de communication

Dans le cadre du projet GeekCompagnon, une étude de communication a été réalisée


pour déterminer les meilleures approches permettant d'atteindre nos publics cibles et de
promouvoir notre application d'assistant de collection pour les geeks.

Lors de l’étude du projet, une recherche approfondie de notre public cible a été réalisée
afin de mieux comprendre leurs besoins, leurs intérêts et leurs comportements. Pour atteindre
efficacement ces utilisateurs potentiels, nous avons procédé à la création de « persona »
représentant différents profils types de notre public cible.

Les persona sont des personnages fictifs qui incarnent les caractéristiques
démographiques, psychographiques et comportementales de nos utilisateurs potentiels. Ils
nous aident à visualiser et à comprendre nos publics cibles de manière plus concrète, en nous
fournissant des indications précieuses pour adapter notre communication et nos actions en
fonction de leurs attentes. Ci-dessous un exemple de persona créé pour GeekCompagnon,
d’autres sont disponibles en annexes.

Extrait d’une persona créé pour l’étude des cibles de GeekCompagnon – disponible en complet en annexe

30
L'axe principal de communication repose sur une stratégie digitale, en utilisant des
formats visuels sur différents supports. Les réseaux sociaux jouent un rôle clé dans cette
approche, avec une présence prépondérante sur Facebook, Instagram, Reddit et TikTok.
Chaque plateforme est ciblée en fonction de l'âge des utilisateurs, allant de 13 à 50 ans.
Facebook vise principalement la tranche d'âge des 30-50 ans, tandis que Reddit est privilégié
pour la cible des 15-30 ans, avec une spécificité "Geek". Instagram et TikTok sont utilisés pour
toucher la tranche d'âge des 13-25 ans. Cette stratégie digitale permet de couvrir un large
éventail d'utilisateurs passionnés de séries, mangas, jeux vidéo et autres médias geek.

En complément, un axe secondaire de communication est mis en place, axé sur des
supports prints. La distribution de flyers et autres supports imprimés est privilégiée, en
particulier dans les librairies et les maisons d'édition. Cette approche vise à toucher
directement les lecteurs de romans, bandes dessinées et mangas, en les informant de notre
application GeekCompagnon. Des flyers sont fournis à nos partenaires avant toute
négociation, afin de toucher notre public cible de 13 à 50 ans. De plus, des marque-pages sont
utilisés comme goodies pouvant être distribués par les libraires ou les maisons d'édition,
renforçant ainsi la visibilité de notre application.

Exemple de flyer promotionnel pour GeekCompagnon

31
Les messages véhiculés par l'entreprise à travers sa communication mettent en avant
le partage, la passion de la collection et la découverte. Chacun de ces aspects est représenté
par une personnalité distincte, afin de créer une connexion avec nos utilisateurs. La
communication adopte un ton informel et convivial, s'inspirant de l'atmosphère
communautaire présente sur les plateformes telles que Discord. L'objectif est de créer un
esprit communautaire "underground" et de se positionner au même niveau que nos
utilisateurs, partageant leurs valeurs et militant pour une culture accessible. Nous
reconnaissons les "sous-cultures" comme des éléments culturels à part entière, renforçant
ainsi l'adhésion de notre public cible.

La stratégie des moyens de communication comprend différentes phases. Une étape


de prototype est prévue pour créer une expérience fluide et intuitive, en particulier pour les
utilisateurs jeunes utilisateurs. La communication digitale est présente tout au long de l'année,
en utilisant des publications sponsorisées pour maintenir une visibilité constante auprès de
nos publics cibles. De plus, lors des sorties exceptionnelles de médias très attendus, une
communication digitale boostée est mise en place pendant une semaine, avec des sujets de
débats et une forte implication des utilisateurs. Les grandes vacances scolaires représentent
également une période propice pour intensifier la communication digitale, afin de toucher
davantage notre public cible qui dispose de plus de temps libre pour consommer de la culture.

En complément de la communication digitale, des supports prints sont distribués à nos


partenaires tous les deux mois, sous la forme d'un package de communication comprenant
des flyers et des marque-pages. Cette approche permet d'informer directement les clients des
librairies et des maisons d'édition de l'existence de notre application GeekCompagnon.

Les critères de succès de notre stratégie de communication sont clairement définis. En


se basant sur trois campagnes distinctes, nous visons une augmentation de 1000 inscriptions
par campagne, 10 000 visites uniques par semaine et un taux de rétention moyen de 40%.
Nous souhaitons également obtenir un seul clic par personne, à l'exception de la campagne
Facebook où nous espérons générer plusieurs clics par personne.

Pour évaluer ces critères, nous nous appuyons sur les outils de tracking fournis par les
réseaux sociaux lors des publications sponsorisées, ainsi qu'un questionnaire obligatoire lors
de l'inscription avec des choix prédéfinis. De plus, des outils de tracking internes sont utilisés
sur notre site, notamment en suivant l'utilisation des liens internes et en classifiant les
messages envoyés en termes de réactions positives ou négatives.

En mettant en place cette stratégie de communication complète, nous visons à


accroître la notoriété de GeekCompagnon, à attirer et fidéliser notre public cible, tout en
valorisant les aspects de partage, de collection et de découverte qui font la singularité de notre
application.

32
4 - Etude des risques
Dans le cadre de GeekCompagnon, une étude approfondie des risques lorsque les
applications web et mobile seront déployées, a été. Ces informations sont regroupées dans un
fichier Excel disponible en annexe. Cette étape est essentielle pour identifier les risques
pouvant survenir à mesure que l'application est utilisée par les utilisateurs.

Les principaux risques identifiés comprennent les problèmes techniques et de


performance de l'application. Il est possible que des bugs, des erreurs de fonctionnement ou
des dysfonctionnements surviennent, ce qui peut affecter l'expérience utilisateur et leur
satisfactions, entraînant comme effet sous-jacent une mauvaise image de. Des tests rigoureux
sont effectués pour minimiser ces risques, et des procédures ont été mises en place pour
détecter rapidement et résoudre les problèmes techniques.

Un risque majeur concerne la sécurité des données des utilisateurs. Étant donné que
notre produit collecte des informations personnelles des utilisateurs, il est crucial de mettre
en place des mesures de sécurité solides pour protéger ces données contre les intrusions et
les violations de confidentialité. Des protocoles de sécurité avancés, tels que le chiffrement
des données et l'authentification à deux facteurs, ont été intégrés à l'application pour réduire
les risques de violation de la sécurité.

Un autre défi potentiel concerne la concurrence sur le marché. Il existe une possibilité
que d'autres applications similaires ou des services concurrents soient lancés, ce qui peut
affecter la part de marché de GeekCompagnon. Pour faire face à ce risque, une veille
concurrentielle est mise en place continuellement pour surveiller les tendances du marché et
les actions des concurrents. Cela permet de prendre des mesures proactives pour améliorer
constamment l'application et rester compétitif.

Enfin, un risque financier est également pris en compte. La viabilité financière de


GeekCompagnon dépend de la génération de revenus par le biais de partenariats, de publicités
et de ventes de produits. Des stratégies de monétisation ont été élaborées pour garantir la
rentabilité du projet à long terme.

Pour chaque risque identifié, des plans d'atténuation ont été élaborés. Ces plans
définissent les mesures spécifiques à prendre en cas de survenance d'un risque afin de
minimiser son impact sur l'application et sur les utilisateurs. Des mécanismes de suivi et de
surveillance continus ont également été mis en place pour évaluer régulièrement l'évolution
des risques et mettre à jour les stratégies d'atténuation en conséquence.

33
En conclusion, GeekCompagnon a réalisé une étude approfondie des risques potentiels
liés à l'application une fois déployée. Des mesures préventives et des plans d'atténuation ont
été élaborés pour réduire les risques techniques, de sécurité, de concurrence et financiers.
Cela garantit que l'application reste performante, sécurisée et compétitive, offrant ainsi une
expérience utilisateur optimale.

Problèmes
techniques

Sécurité des
données

Concurrence
du marché

Financier

Schéma représentant les principaux risques itendifier après étude

34
5 - Étude détaillée et conception générale
L'étude détaillée et la conception générale de GeekCompagnon ont été réalisées avec une
approche centrée sur l'utilisateur, en mettant l'accent sur l'expérience utilisateur (UX). Dans
cette optique, des recherches approfondies ont été menées pour comprendre le parcours
utilisateur sur le site et garantir une conception optimale de l'application.

Cette recherche a inclus des entretiens avec nos confrères développeur ainsi que notre
expérience personnelle, en simulant un parcours utilisateur nous avons pu recueillir des
informations précieuses sur les besoins, les comportements et les attentes des collectionneurs
geeks. Ces informations ont été utilisées en prenant en compte nos personas afin de définir
les scénarios d'utilisation les plus courants.

En intégrant les résultats de l'étude UX dans la conception générale, nous avons élaboré des
maquettes qui illustrent de manière visuelle les différentes interfaces de l'application. Elles ont
été créées en tenant compte des meilleures pratiques en matière de conception d'interface
utilisateur, en veillant à ce que l'application soit conviviale, intuitive et attrayante.

Les maquettes intègrent des fonctionnalités spécifiques basées sur les besoins des utilisateurs
identifiés lors de notre étude. Par exemple, l'interface de gestion de collection permet aux
utilisateurs de scanner facilement leurs médias préférés, d'accéder aux informations détaillées
de chaque élément et de gérer leur collection de manière organisée. Les notifications des
sorties sont également intégrées dans l'interface pour informer les utilisateurs des nouvelles
parutions.

La conception générale du site web intègre également une approche responsive, garantissant
une compatibilité multiplateforme. Cela signifie que GeekCompagnon sera accessible sur
différents appareils, tels que les smartphones, les tablettes et les ordinateurs, offrant ainsi une
expérience cohérente et adaptée à chaque utilisateur, même s’il n’a pas l’application installé
sur son support de consultation.

En résumé, l'étude détaillée et la conception générale de notre projet ont intégré les résultats
de l'étude UX et ont été basées sur des maquettes soigneusement conçues. Cette approche
centrée sur l'utilisateur nous a permis de créer une application conviviale, intuitive et adaptée
aux besoins des collectionneurs geeks. En utilisant les meilleures pratiques de conception
d'interface utilisateur, nous avons veillé à ce que l'expérience sur GeekCompagnon soit
agréable et engageante pour notre public cible.

35
IV - Comparatif technologique de la solution
proposée

1 - Description, Critères de sélection et justification de la


solution retenue

1.1 - Backend : python Flask

Python est un langage de programmation populaire qui est largement utilisé dans le
développement web pour sa simplicité, sa lisibilité et sa flexibilité. Flask, un micro-framework
web en Python, a été choisi pour le développement du backend de Geek-Compagnon pour
plusieurs raisons.

Simplicité et flexibilité : Flask est un micro-framework, ce qui signifie qu'il est léger et
simple. Il ne fournit que les fonctionnalités de base nécessaires pour le développement web,
ce qui le rend très flexible. Contrairement à d'autres frameworks plus lourds comme Django,
Flask ne fait pas d'hypothèses sur la structure du projet ou sur les composants à utiliser, ce
qui permet aux développeurs de choisir les outils qui conviennent le mieux à leurs besoins
spécifiques. De plus, sa syntaxe légère permet de créer une application basique en seulement
sept lignes de code.

Facilité d'apprentissage : Python est connu pour sa syntaxe claire et concise qui est
facile à apprendre et à lire. Cela rend Flask particulièrement attrayant pour les développeurs
qui sont nouveaux dans le développement web ou qui veulent se concentrer sur la logique de
l'application plutôt que sur les détails de la syntaxe du langage.

Communauté et support : Python et Flask bénéficient d'une grande communauté de


développeurs qui contribuent activement à l'amélioration du langage et du framework. Cela
signifie qu'il existe une abondance de ressources d'apprentissage, de bibliothèques tierces et
de modules d'extension pour Flask, ainsi qu'un support communautaire robuste pour aider à
résoudre les problèmes. En outre, la stabilité de Flask a été démontrée lorsque les principaux
contributeurs du projet ont annoncé que toutes les issues ouvertes sur GitHub avaient été
résolues et clôturées.

Performance : Bien que Python ne soit pas le langage le plus rapide, sa performance
est généralement suffisante pour la plupart des applications web. De plus, Flask est conçu
pour être léger et efficace, ce qui aide à minimiser les problèmes de performance.

36
Intégration avec d'autres outils Python : Python est largement utilisé dans divers
domaines tels que le traitement de données, l'analyse de données, l'apprentissage
automatique, etc. L'utilisation de Python et de Flask pour le backend de Geek-Compagnon
permet une intégration facile avec d'autres outils et bibliothèques Python utilisés dans ces
domaines.

En comparaison avec d'autres technologies comme Node.js/Express ou Ruby on Rails,


Flask offre une plus grande flexibilité et simplicité, une courbe d'apprentissage plus douce, un
meilleur support communautaire, une stabilité prouvée, et une intégration plus facile avec
d'autres outils Python. Ces facteurs ont contribué à faire de Python/Flask le choix
technologique idéal pour le backend de Geek-Compagnon.

Tableau comparatif des technologies pour le backend

37
1.2 - Choix d’un framework CSS

Dans le cadre du développement du projet, il a été décidé de ne pas utiliser du CSS


classique, mais plutôt d'opter pour le framework CSS Tailwind CSS. Ce choix a été motivé par
plusieurs raisons

L'utilisation de frameworks CSS présente de nombreux avantages par rapport à


l'écriture de CSS classique à partir de zéro. Ces frameworks sont des outils puissants qui
permettent d'accélérer le processus de développement et d'améliorer la cohérence, la
maintenabilité et la flexibilité du code CSS.

Tout d'abord, l'un des avantages majeurs de ces outils est la productivité accrue qu'ils
offrent. Ils fournissent des composants préconstruits et des styles prédéfinis qui permettent
de créer rapidement des interfaces web sans avoir à écrire chaque ligne de code CSS
individuellement. Cela permet de gagner un temps précieux lors du développement, en
particulier pour les tâches répétitives telles que la création de grilles, de boutons, de
formulaires, etc.

Un autre avantage est la cohérence du style. Les frameworks CSS proposent des règles
de conception cohérentes et des conventions de classe bien définies, ce qui facilite le maintien
d'une apparence homogène sur l'ensemble du site ou de l'application. En utilisant les classes
prédéfinies du framework, les développeurs peuvent assurer une cohérence visuelle et une
expérience utilisateur uniforme.

La maintenabilité du code est également améliorée grâce à l'utilisation de frameworks


CSS. Étant donné que les styles sont organisés et regroupés dans des fichiers spécifiques, il est
plus facile de naviguer et de trouver les styles nécessaires. De plus, les mises à jour des
frameworks peuvent être appliquées plus facilement, ce qui permet de bénéficier des
dernières améliorations et correctifs sans avoir à réécrire une grande partie du code CSS.

Les frameworks CSS offrent également une plus grande flexibilité. Ils fournissent une
multitude de classes et d'options pour personnaliser les styles et s'adapter aux besoins
spécifiques du projet. De plus, ces solutions sont généralement bien documentées et
disposent d'une communauté active, ce qui facilite l'accès à des ressources supplémentaires,
des exemples de code et des forums de support en cas de besoin.

38
Bootstrap, qui est également un Framework CSS, est apprécié de beaucoup de
développeur car il propose un ensemble complet de composants et de styles prédéfinis, ce qui
facilite le développement d'interfaces réactives et esthétiquement attrayantes. Cependant,
l'utilisation d'autres frameworks CSS peut offrir une plus grande flexibilité en termes de
personnalisation et de taille du code final, car ils permettent de sélectionner uniquement les
composants et les fonctionnalités nécessaires, évitant ainsi un poids supplémentaire inutile
dans le code. De plus, toujours utiliser les mêmes composants fait que quasiment tous les sites
internet du moment se ressemblent beaucoup.

Ainsi, pour avoir un site qui ressort face à nos concurrents, le style de notre projet a d’abord
été mis en place avec le framework Bulma, pour ensuite passer au Tailwind CSS

39
1.3 - Transition de Bulma vers Tailwind CSS

Initialement, le projet était donc basé sur le framework Bulma pour la mise en forme
du frontend. Cependant, suite à l'arrivée de la développeuse frontend, il a été décidé de passer
à Tailwind CSS. La principale raison de ce changement était que le site n'était pas encore très
avancé graphiquement, ce qui offrait une opportunité de transition sans impact majeur. De
plus, la développeuse avait une connaissance préalable de Tailwind CSS, tandis que Bulma lui
était moins familier. Cette décision a été prise dans le but de faciliter son intégration dans
l'équipe de développement et d'optimiser l'efficacité du processus.

Comme dit précédemment, Tailwind CSS et Bulma sont tous deux des frameworks CSS,
c'est-à-dire des ensembles de règles, de classes prédéfinies et de styles prêts à l'emploi qui
facilitent le développement et la mise en forme des interfaces web.

Tailwind CSS se distingue par son approche utilitaire, où chaque classe correspond à
une propriété CSS spécifique. Au lieu d'utiliser des classes préconfigurées pour des éléments
spécifiques tels que les boutons ou les formulaires, Tailwind CSS propose une large gamme de
classes utilitaires qui permettent de composer rapidement des styles personnalisés. Par
exemple, plutôt que d'appliquer une classe "btn-primary" pour un bouton, on pourrait utiliser
des classes comme "bg-blue-500 text-white font-bold py-2 px-4 rounded" pour définir
directement les couleurs de fond, la couleur du texte, la police, les marges, etc. Ainsi nos
boutons ne seront pas les même que ceux trouvés partout ailleurs.

Bulma, quant à lui, adopte une approche plus conventionnelle basée sur des
composants préconstruits. Il offre une collection complète de classes prédéfinies pour
différents éléments d'interface, tels que les grilles, les formulaires, les boutons, les modales,
etc. Cela permet aux développeurs de créer rapidement des mises en page et des composants
en utilisant les classes prédéfinies correspondantes. Par exemple, il est possible d'appliquer
directement une classe "button is-primary" à un bouton pour lui donner un style spécifique.

En résumé, Tailwind CSS se concentre sur la modularité et la personnalisation en


fournissant des classes utilitaires, tandis que Bulma se concentre sur la création rapide
d'interfaces en utilisant des composants préconfigurés. Le choix entre les deux dépendent des
préférences et des besoins du projet, ainsi que de la familiarité et de l'expérience de l'équipe
de développement avec chaque framework.

40
Avantages Inconvénients

Flexibilité de personnalisation Courbe d'apprentissage initiale pour les


nouveaux utilisateurs

Code léger et optimisé Besoin de connaître les classes utilitaires


pour une utilisation efficace

Productivité accrue Configuration initiale requise pour


personnaliser les styles

Facilité de maintien et de mise à jour

Large communauté de support et de


ressources

Tableau comparatif des avantages et inconvénients Tailwind

Le tableau ci-dessus présente les principaux avantages et inconvénients de l'utilisation


de Tailwind CSS dans le projet. Il met en évidence les aspects positifs tels que la flexibilité de
personnalisation, la légèreté du code, la productivité accrue et la facilité de maintien.
Cependant, il souligne également certains défis potentiels, tels que la courbe d'apprentissage
initiale pour les nouveaux utilisateurs et la nécessité de bien comprendre les classes utilitaires
pour une utilisation efficace.

Dans l'ensemble, l'utilisation de Tailwind CSS dans le projet s'est avérée être une
décision pertinente. Le framework a permis de développer l'interface rapidement, de
personnaliser les styles selon les besoins spécifiques du projet et de maintenir un code
optimisé. Grâce à sa flexibilité et à sa productivité, Tailwind CSS a contribué à améliorer
l'efficacité du processus de développement et à fournir une expérience utilisateur de qualité.

41
1.4 - Système de gestion de base de données : PostgreSQL

PostgreSQL, souvent simplement appelé Postgres, est un système de gestion de base


de données relationnelle open source. Il a été choisi pour plusieurs raisons :

Open Source : PostgreSQL est un logiciel open source. Cela signifie qu'il est gratuit à
utiliser et que vous pouvez le modifier pour répondre à vos besoins spécifiques. Cela peut être
un avantage majeur pour les startups et les projets à budget limité.

Extensible : PostgreSQL est hautement extensible. Il vous permet de définir vos propres
types de données, opérateurs et fonctions. De plus, il prend en charge une grande variété
d'extensions qui peuvent ajouter des fonctionnalités supplémentaires.

ACID Compliant : PostgreSQL est entièrement conforme ACID (Atomicité, Cohérence,


Isolation, Durabilité). Cela garantit que toutes les transactions sont traitées de manière fiable
et garantit l'intégrité des données, même en cas de panne du système ou de crash.

Support des fonctions SQL avancées : PostgreSQL prend en charge de nombreuses


fonctions SQL avancées, telles que les sous-requêtes, les transactions, le contrôle de la
concurrence multi-version (MVCC), les pointeurs de données, les triggers, les contraintes
d'intégrité, etc.

Sécurité : PostgreSQL offre un haut niveau de sécurité, y compris le support pour le


chiffrement SSL et un système robuste de rôles et de permissions.

Performance : PostgreSQL offre d'excellentes performances avec des fonctionnalités


telles que le parallélisme de requête et les index efficaces.

Comparé à d'autres systèmes de gestion de base de données comme MySQL, SQLite


ou MongoDB, PostgreSQL offre un équilibre idéal entre conformité aux normes, performance,
flexibilité et sécurité. C'est pourquoi il a été choisi pour ce projet.

42
Tableau comparatif des technologies pour le système de gestion de base de données

43
1.5 - Serveur : Apache

Apache avec WSGI a été choisi comme serveur pour plusieurs raisons :

- Maturité et fiabilité : Apache est l'un des serveurs web les plus anciens et les plus fiables.
Il a fait ses preuves en termes de performance et de stabilité.

- Compatibilité avec WSGI : WSGI (Web Server Gateway Interface) est une spécification
qui définit une interface entre les serveurs web et les applications web pour Python.
Apache a un excellent support pour WSGI via le module mod_wsgi, ce qui facilite le
déploiement d'applications Python.

- Sécurité : Apache offre de nombreuses fonctionnalités de sécurité, y compris le support


pour SSL/TLS pour des connexions sécurisées, l'authentification et l'autorisation, et une
variété de modules pour renforcer la sécurité.

- Flexibilité : Apache est hautement configurable et peut être ajusté pour répondre à des
besoins spécifiques. Il supporte une variété de modules qui peuvent être ajoutés ou
supprimés selon les besoins.

- Support de la communauté : Apache a une grande communauté d'utilisateurs et de


développeurs, ce qui signifie que vous pouvez trouver beaucoup de documentation, de
tutoriels et de forums pour obtenir de l'aide.

- Comparé à d'autres serveurs web comme Nginx ou Lighttpd, Apache avec WSGI offre
une excellente compatibilité avec Python et une grande flexibilité, ce qui en fait un choix
idéal pour le projet Geek-Compagnon.

44
Tableau comparatif des technologies pour le serveur web

45
1.6 - Application Mobile : Windev Mobile

Spécification de WinDev Mobile :

WinDev Mobile est un environnement de développement intégré (EDI) conçu


spécifiquement pour la création d'applications mobiles multiplateformes. Il offre de nombreux
avantages et fonctionnalités qui facilitent le processus de développement et améliorent
l'efficacité des développeurs.
L'un des principaux atouts de WinDev Mobile est sa capacité à développer des
applications pour différentes plateformes, notamment Android, iOS et Windows Phone. Cela
permet aux développeurs de concevoir une seule application qui peut être déployée sur
plusieurs systèmes d'exploitation, réduisant ainsi le temps et les efforts nécessaires pour
atteindre un large public.
L'EDI offre une interface conviviale et intuitive, permettant aux développeurs de créer
rapidement et facilement des interfaces graphiques attrayantes pour leurs applications
mobiles. Il propose un large éventail d'objets prédéfinis, de widgets et de contrôles interactifs,
facilitant ainsi la création d'interfaces personnalisées et ergonomiques.
WinDev Mobile intègre également un langage de programmation puissant et simple à
utiliser appeler le WLanguage. Ce langage offre une syntaxe claire et concise, permettant aux
développeurs de coder efficacement et de gérer facilement les fonctionnalités de leurs
applications.
Une autre fonctionnalité clé de WinDev Mobile est son intégration avec les bases de
données. L'EDI prend en charge différentes bases de données relationnelles, telles que MySQL,
SQL Server, Oracle, permettant aux développeurs de stocker et de gérer les données de leurs
applications de manière fiable et sécurisée.
En ce qui concerne le déploiement des applications, WinDev Mobile offre des options
flexibles. Les développeurs peuvent choisir de générer des fichiers exécutables autonomes
pour chaque plateforme cible ou de créer des applications hybrides qui s'exécutent dans un
navigateur web intégré.

En résumé, WinDev Mobile est un outil puissant et polyvalent pour le développement


d'applications mobiles. Grâce à sa capacité à cibler plusieurs plateformes, à son interface
conviviale, à son langage de programmation performant et à son intégration avec les bases de
données, il permet aux développeurs de créer rapidement des applications mobiles robustes
et attrayantes. Que ce soit pour le développement d'applications d'entreprise, d'applications
grand public ou d'applications spécifiques à un secteur, WinDev Mobile offre les
fonctionnalités nécessaires pour répondre aux besoins des développeurs et des utilisateurs.

46
Justification de choix de technologie :

Dans le cadre de notre projet de développement d'une application mobile, nous


avons effectué une analyse approfondie des différentes technologies disponibles sur le
marché. Notre objectif était de sélectionner la technologie la plus adaptée pour répondre à
nos besoins spécifiques en termes de performances, de polyvalence et de facilité de
développement. Après avoir examiné plusieurs options, nous avons choisi d'utiliser WinDev
Mobile pour les raisons suivantes :

Facilité de développement : WinDev Mobile offre une interface conviviale et intuitive, ainsi
qu'un langage de programmation simplifié, ce qui permet à notre équipe de développeurs de
créer rapidement et efficacement des fonctionnalités avancées pour notre application mobile.

Multiplateforme : L'un des critères essentiels pour notre projet était de pouvoir cibler
plusieurs plateformes, notamment Android, iOS et Windows Phone. WinDev Mobile répond à
ce besoin en permettant le développement d'applications multiplateformes, ce qui nous
permet de toucher un public plus large.

Intégration des bases de données : Notre application nécessite une gestion efficace des
données, et WinDev Mobile offre une intégration transparente avec différentes bases de
données relationnelles. Cela nous permet de stocker, d'interroger et de manipuler facilement
les données de notre application.

Performances : Nous avons effectué des tests de performance et des benchmarks comparatifs
entre WinDev Mobile et d'autres technologies. Les résultats ont démontré que WinDev Mobile
offrait des performances optimales et une bonne réactivité, ce qui était crucial pour assurer
une expérience utilisateur fluide.

47
Tableau comparatif des technologies :

Les scores attribués dans le tableau représentent une évaluation subjective de


chaque critère, basée sur notre analyse et nos tests. Il est important de noter que les besoins
et les spécifications d'un projet peuvent varier, il est donc essentiel de prendre en compte
ces facteurs lors du choix de la technologie.

En conclusion, notre choix de WinDev Mobile est justifié par sa facilité de


développement, sa capacité multiplateforme, son intégration des bases de données et ses
performances optimales. Cette technologie répond parfaitement à nos besoins et nous
permettra de développer une application mobile robuste et performante.

48
V - Méthodologie de gestion de projet
employée

1 - Déroulement du projet
Le projet GeekCompagnon a suivi un déroulement méthodique et structuré pour
atteindre ses objectifs. À travers une approche agile, l'équipe a réalisé une planification
minutieuse en divisant le projet en trois phases distinctes : l'étude, la conception et la
publication. Les méthodes de gestion de Travail, telles que la méthodologie Kanban et
l'utilisation du cycle de travail Pomodoro, ont été mises en place. Grâce à cette approche, le
projet a progressé de manière fluide et organisée.

1.1 - Méthodologie Agile

La méthodologie Agile est caractérisée par des itérations courtes et itératives, où les
fonctionnalités sont développées en petits morceaux appelés "sprints".

1.2 - Gestion des tâches Kanban

Pour faciliter la gestion des tâches et assurer une visibilité claire de l'avancement du projet,
nous avons adopté la méthode Kanban. Cette méthode se base sur un tableau de bord visuel
où les tâches sont représentées par des cartes et réparties en colonnes (par exemple, "À faire",
"En cours" et "Terminé").

49
1.3 - Techniques de travail complémentaires

Outre la méthodologie Agile et la gestion des tâches Kanban, nous avons également utilisé
d'autres techniques de travail pour optimiser notre productivité. Parmi celles-ci, nous avons
intégré la technique Pomodoro, qui consiste à découper le travail en sessions de 25 minutes,
suivies de courtes pauses. Cette méthode favorise la concentration, la gestion du temps et la
productivité.

La méthodologie Agile et la gestion des tâches Kanban, associées à des techniques de travail
complémentaires telles que Pomodoro, nous ont permis d'optimiser notre processus de
développement et de garantir une progression continue de notre projet GeekCompagnon.
Le projet GeekCompagnon a été divisé en trois phases distinctes sur une période de deux
années.

Phase Etude
Phase Conception
Phase Publication
1 2 3

Les différentes phases du projet GeekCompagnon

50
2 - Méthodologie :

2.1 - Méthodologie de gestion de projet

Lors du développement du projet GeekCompagnon, nous avons choisi d'adopter la


méthodologie Agile pour notre approche de gestion de projet. L'Agilité est une approche
itérative et collaborative qui permet de gérer efficacement les projets en favorisant
l'adaptabilité, la communication et la livraison continue de valeur.

Les principes de l'Agilité sont parfaitement alignés avec les besoins de notre projet, qui
nécessite une évolution constante en réponse aux exigences changeantes du marché geek.
Voici quelques aspects clés de l'Agilité qui ont été bénéfiques pour le développement de
GeekCompagnon :

• Collaboration étroite : L'Agilité encourage la collaboration étroite entre les membres de


l'équipe et les parties prenantes. Dans notre cas, cela a permis d'établir une
communication fluide entre les développeurs, les concepteurs et les utilisateurs finaux,
favorisant ainsi une meilleure compréhension des besoins et des attentes.

• Itérations et livraisons continues : L'approche Agile se base sur des itérations courtes,
appelées "Sprints", qui permettent de livrer régulièrement des fonctionnalités
opérationnelles. Cela nous a d'amélioration et d'ajuster notre développement en
conséquence.

• Flexibilité et adaptabilité : L'Agilité nous a offert la flexibilité nécessaire pour répondre aux
changements et aux défis rencontrés tout au long du projet. Nous avons pu ajuster nos
priorités, revoir nos plans et réallouer les ressources en fonction des besoins émergents.

• Amélioration continue : L'Agilité encourage une réflexion constante sur les pratiques et les
processus, favorisant ainsi une amélioration continue. Nous avons pu identifier les
domaines à optimiser, itérer sur nos solutions et adopter de nouvelles approches pour
mieux répondre aux besoins des utilisateurs.

Bien que nous n'ayons pas travaillé directement avec les parties prenantes, l'approche Agile
nous a permis d'assurer une collaboration étroite avec notre équipe interne. Nous avons pu
prendre en compte les résultats de nos études de faisabilité, de marché et de contraintes
personnelles pour définir nos priorités et orienter notre développement de manière itérative
et incrémentale.

51
2.2 - Méthodologie de gestion des taches

L'utilisation de la méthode Kanban

La gestion des tâches dans le projet GeekCompagnon a apporté de nombreux avantages à


notre équipe. Le Kanban est une approche visuelle qui nous a permis de suivre et de gérer
efficacement nos flux de travail. Grâce à la mise en place d'un tableau Kanban, nous avons pu
avoir une vision claire de l'état d'avancement de chaque tâche, depuis sa création jusqu'à sa
livraison finale.

Le tableau Kanban nous a offert une représentation visuelle intuitive de notre processus de
développement. Chaque tâche était représentée par une carte et était placée dans une
colonne correspondant à son état actuel (par exemple, "À faire", "En cours", "Terminé"). Cela
nous a permis de voir rapidement quelles tâches étaient en cours, quelles étaient prêtes à être
réalisées et quelles étaient terminées.

L'utilisation du Kanban a également favorisé la transparence et la collaboration au sein de


l'équipe. Chaque membre de l'équipe pouvait facilement voir l'état d'avancement des tâches
et se tenir informé des priorités. Cela a facilité la répartition des tâches, l'identification des
goulots d'étranglement et la prise de décisions rapides pour résoudre les problèmes.

Un autre avantage important du Kanban a été la limitation du travail en cours (WIP). En


définissant une limite de tâches en cours pour chaque colonne, nous avons évité la surcharge
de travail et nous avons pu nous concentrer sur les tâches les plus importantes. Cela nous a
aidés à améliorer notre productivité, à réduire les délais d'exécution et à mieux gérer nos
ressources.

52
2.3 - Méthodologie de gestion de travail

La technique du pomodoro

Dans le cadre de notre méthodologie de travail, nous avons utilisé la technique du


Pomodoro pour optimiser notre productivité lors de certaines sessions de co-working.
Le Pomodoro est une méthode de gestion du temps qui consiste à diviser notre temps de
travail en périodes de 25 minutes, appelées "pomodoros", suivies de courtes pauses de 5
minutes.

Les pauses de 5 minutes nous ont permis de recharger nos énergies et de nous
détendre avant de reprendre une nouvelle période de travail.

Cette approche nous a aidés à maintenir notre concentration, à éviter la fatigue


mentale et à améliorer notre efficacité globale.

Ce mettre en condition
de travail dans un
environnement sans
distraction

Prénder une plus longue


Choisir une tâche
pause (25-30mins)

Mettre le timer à
Repéter 3 fois
25mins

Prendre 5mins de pause Travailler

Arrêter dans la
minuterie est finie

Schéma du fonctionnement dela technique pomodoro (icon provenant de freepik)


53
3 - Phases du projet et planification prévisionnelle
3.1 - Planification

Chaque phase, de l'étude à la conception en passant par la réalisation, a été planifiée


afin de garantir une progression efficace et maîtrisée. Des jalons ont été définis pour marquer
les étapes clés du projet, permettant ainsi d'évaluer régulièrement l'avancement et de prendre
des décisions éclairées. Grâce à cette planification et la méthodologie AGILE, nous avons pu
anticiper les risques et prendre des mesures préventives pour les atténuer. De plus, des
réunions de suivi régulières ont été organisées pour aligner toutes les parties prenantes et
assurer une communication fluide.

Nous répartissons ensuite les tâches par phase afin d’appliquer notre méthodologie
de gestion des tâches : « Kanban »
Voici l’exemple de l’utilisation pour des taches lors de la phase 1 :

54
3.2 - Phase 1 : Étude

Conception du logo :

Le logo de Geek Compagnon est conçu en associant les différentes formes de médias
présentes sur la plateforme. Les couleurs distinctes utilisées dans la synthèse additive des
couleurs représentent l'unification des contenus variés tels que les livres, les vidéos et les jeux
de plateau. Le bleu-gris résultant symbolise cette fusion harmonieuse, tandis que les autres
couleurs rappellent la diversité des médias présents. Cette approche visuelle reflète l'essence
même de Geek Compagnon en tant que plateforme intégrée et diversifiée.

Gestion des Risques :

Durant cette phase, nous avons réalisé une analyse approfondie des risques associés
au projet GeekCompagnon. Grâce à cette évaluation des risques, nous avons pu mettre en
place des mesures préventives et des plans d'atténuation pour minimiser les impacts négatifs
sur le déroulement du projet.

Plan de Communication :

La mise en place d'un plan de communication efficace était essentielle pour assurer
une bonne coordination au sein de l'équipe et maintenir une communication fluide avec les
parties prenantes.

Étude de Faisabilité :

Avant de se lancer dans le développement de GeekCompagnon, nous avons effectué


une étude de faisabilité approfondie. Cette étude nous a permis d'évaluer la viabilité du projet
sur les plans technique, financier et opérationnel. Nous avons analysé les ressources
nécessaires, les contraintes potentielles et les opportunités qui s'offraient à nous. Grâce à cette
étude, nous avons pu prendre des décisions éclairées quant à la faisabilité et à la rentabilité
du projet.
Choix des Technologies :

Un autre aspect clé de la phase d'étude a été le choix des technologies à utiliser pour
la réalisation de GeekCompagnon. Nous avons étudié différentes options, évalué leurs
avantages et inconvénients, et sélectionné les technologies les mieux adaptées à nos besoins.
Ce choix a été crucial pour garantir la performance, la sécurité et la flexibilité de la plateforme.

55
Analyse des Besoins Utilisateurs :

Nous avons consacré une attention particulière à l'analyse des besoins des utilisateurs
de GeekCompagnon. Nous avons mené des enquêtes, réalisé des interviews et recueilli des
retours d'expérience pour comprendre en profondeur les attentes, les préférences et les
difficultés auxquelles font face les passionnés de l'univers geek.
Conception de l’API :

Un des aspects importants du projet est la communication entre l’application mobile


et le serveur reposant sur API, dans le cadre de la coordination entre membres du projet, il a
été décidé conjointement de la façon dont le format des demandes et des réponses de l’API
allait être formulés – sous forme de requête https standardisées en interne pour les demandes,
et sous forme de JSON pour les réponses -, ceci afin d’avoir un cadre de travail et savoir quelles
requêtes était à prioriser dans notre développement serveur/application parallèle.

Au cours de la phase d'étude, nous avons ainsi réalisé une gestion rigoureuse des
risques, mis en place un plan de communication efficace, effectué une étude de faisabilité
approfondie, choisi les technologies appropriées et analysé les besoins des utilisateurs.
Ces étapes préliminaires ont jeté les bases solides du projet GeekCompagnon et ont guidé
notre travail pour les phases suivantes.

56
3.3 - Phase 2 : Conception

La phase de réalisation et de développement du projet GeekCompagnon est


actuellement en cours. Cette étape cruciale consiste à mettre en œuvre la conception établie
lors de la phase précédente et à développer les différentes fonctionnalités de la plateforme.

Nous avons entrepris le développement du site web et de l'application mobile en


utilisant les technologies et les langages de programmation adaptés. Notre équipe de
développeurs s'attèle à transformer les spécifications fonctionnelles en code, en veillant à
respecter les bonnes pratiques de développement et à garantir la qualité du code produit.

Les travaux sont organisés en tâches distinctes, qui sont assignées aux membres de
l'équipe en fonction de leurs compétences et de leur charge de travail. Nous avons mis en
place une méthodologie de gestion des tâches pour suivre l'avancement de chaque
fonctionnalité, gérer les dépendances et résoudre les éventuels problèmes rencontrés en
cours de route.

Bien que la phase de réalisation et de développement ne soit pas encore totalement


aboutie, l'essentiel des fonctionnalités prévues est déjà présent. Les principales
fonctionnalités telles que la création de compte, la consultation de fiches, l'ajout en favoris,
ainsi que les interactions avec la base de données sont en place et fonctionnelles.

Nous accordons une grande importance à la qualité du développement, en effectuant


des tests rigoureux à chaque étape. Des tests unitaires, des tests d'intégration et des tests
fonctionnels sont réalisés pour vérifier la stabilité, la performance et la conformité des
fonctionnalités développées.

Nous continuons également à favoriser la collaboration et la communication au sein de


l'équipe pour garantir une progression fluide du projet. Des réunions régulières sont
organisées pour discuter de l'avancement, partager les problèmes et trouver des solutions
collectives.

Malgré le caractère partiellement achevé de cette phase, l'ensemble des membres de


l'équipe est confiant quant à la réussite de la réalisation et du développement de
GeekCompagnon. Nous mettons tout en œuvre pour finaliser les fonctionnalités restantes
dans les délais impartis, tout en assurant la qualité et la robustesse de la plateforme finale.

57
3.4 - Phase 3 : Déploiement

La phase de déploiement et de lancement de GeekCompagnon sera la dernière étape


de notre projet. Cette phase essentielle consistera à mettre la plateforme à disposition des
utilisateurs et à promouvoir son utilisation auprès de la communauté geek.

Nous avons planifié le déploiement du site web et de l'application mobile sur des
serveurs fiables et sécurisés. Des tests d'intégration seront réalisés pour vérifier le bon
fonctionnement de la plateforme dans son environnement réel. Nous veillerons également à
optimiser les performances et à garantir une expérience utilisateur fluide.

Parallèlement au déploiement technique, nous mettrons en place notre plan de


communication pour faire connaître GeekCompagnon auprès du public cible. Nous utiliserons
des stratégies de marketing numérique, des campagnes publicitaires ciblées et des actions de
relations publiques pour attirer les utilisateurs et générer de l'engagement.

Nous prévoyons également d'établir des partenariats avec des acteurs clés de
l'industrie geek, tels que des éditeurs de comics, des studios de jeux vidéo et des chaînes de
télévision, afin d'amplifier notre visibilité et d'enrichir notre contenu.

Le déploiement et le lancement de GeekCompagnon seront soigneusement préparés


et coordonnés. Nous nous assurerons d'offrir une expérience utilisateur optimale dès le
premier jour, en proposant une interface conviviale, des fonctionnalités complètes et des
informations actualisées.

Nous anticipons également la nécessité de mettre en place un support technique et un


service client réactif pour répondre aux questions des utilisateurs, résoudre les problèmes
techniques et recueillir leurs suggestions d'amélioration.

La phase de déploiement et de lancement est cruciale pour la réussite de


GeekCompagnon. Nous sommes déterminés à faire en sorte que cette étape se déroule sans
accroc, en offrant aux utilisateurs une plateforme fiable, attrayante et utile pour leur passion
geek.

58
4 - Gestion des ressources humaines et matérielles

4.1 - Ressources Humaines

Dans le cadre de notre projet, la gestion des ressources humaines et matérielles revêt
une importance capitale pour assurer le bon déroulement des activités. Nous disposons d'une
équipe de collaborateurs talentueux et compétents, répartis dans différents rôles clés. Claire
occupe les fonctions de responsable du financement et de trésorière, Matthieu est
responsable du développement backend, du système d'information en tant que RSSI
(Responsable de la Sécurité des Systèmes d'Information), du respect du RGPD (Règlement
Général sur la Protection des Données) et de la continuité du projet, et Maxime est
responsable du développement de la communication, du design/graphisme, de la gestion des
intervenants et de la gestion des risques.

Chaque membre de l'équipe joue un rôle spécifique, contribuant ainsi à la gestion


efficace de nos ressources humaines. Claire assure le suivi des finances du projet et veille à
une gestion rigoureuse des ressources financières, tandis que Matthieu se concentre sur les
aspects techniques du développement et de la sécurité des systèmes d'information, ainsi que
sur le respect des réglementations liées à la protection des données. Maxime, quant à lui, est
responsable de la communication, du design/graphisme et de la gestion des intervenants,
assurant ainsi la promotion et la coordination de notre projet.

4.2 - Ressources Matérielle

En ce qui concerne les ressources matérielles, nous avons pris en compte tous les
éléments nécessaires au bon fonctionnement de notre projet. Nous avons prévu un budget
pour les frais courants tels que les locaux, l'eau et l'électricité, ainsi que pour l'acquisition de
matériel informatique indispensable à nos activités. De plus, nous avons inclus les coûts liés
aux licences WinDev, nécessaires pour le développement de notre application.

59
La gestion des ressources humaines et matérielles ne se limite pas uniquement à notre
équipe interne. Nous avons également identifié des intervenants externes qui joueront un rôle
crucial dans la réalisation de notre projet. Cela inclut notre hébergeur O2SWITCH pour la
gestion des aspects web, base de données et fichiers, une agence de communication pour
soutenir nos actions de promotion, un avocat spécialisé en droits numériques pour nous
assister sur les aspects juridiques, un magasin de distribution pour la vente de notre
application, ainsi qu'un auditeur spécialisé en infrastructure et cybersécurité pour garantir la
conformité et la sécurité de notre système.

Concernant le budget, nous avons établi un plan financier prévisionnel mensuel,


prenant en compte les recettes et les dépenses. Nous disposons d'un fonds de roulement
initial de 20 000 € pour assurer une stabilité financière. Les dépenses comprennent les frais
courants, l'achat de matériel, les licences WinDev et le budget communication pour
promouvoir notre projet. Nous prévoyons également des salaires mensuels pour notre équipe,
reflétant leur contribution et expertise.

La gestion des ressources humaines et matérielles constitue un pilier essentiel de notre


projet. Nous avons mis en place une équipe compétente, identifié les intervenants externes
clés, et prévu un budget solide pour répondre à nos besoins. Cette approche nous permettra
d'optimiser l'utilisation de nos ressources et de garantir une gestion efficiente et efficace tout
au long du projet.

60
5 - Gestion des budgets et coûts

La gestion du budget et des coûts est une composante essentielle de notre projet. Nous
avons élaboré un plan financier afin d'assurer une gestion rigoureuse de nos ressources
financières. Tout au long du projet, nous avons suivi de près nos dépenses et nos recettes, en
nous assurant de respecter les lignes directrices établies.

Nous avons commencé par établir un budget prévisionnel mensuel, en tenant compte
des différentes catégories de dépenses. Cela inclut les frais courants tels que les locaux, l'eau
et l'électricité, ainsi que l'acquisition de matériel nécessaire à nos activités. Nous avons
également alloué des ressources pour l'achat des licences WinDev, indispensables au
développement de notre application. De plus, nous avons prévu un budget communication
pour promouvoir notre projet, en utilisant divers canaux tels que l'impression de flyers, les
publications sponsorisées sur les réseaux sociaux et les annonces Google Ads.

La gestion du budget s'est accompagnée d'un suivi précis des dépenses. Nous avons
veillé à ce que chaque dépense soit justifiée et alignée sur les objectifs du projet. En adoptant
une approche prudente et responsable, nous avons pu optimiser l'utilisation de nos ressources
financières, tout en garantissant la qualité et la pertinence de nos investissements.

En parallèle, nous avons également été attentifs aux recettes générées par notre projet.
Nous avons identifié différentes sources de financement, telles que les apports initiaux, les
subventions potentielles, les ventes de l'application et d'autres opportunités de revenus. Nous
avons régulièrement évalué nos recettes, en mettant en place des indicateurs de performance
pour mesurer notre rentabilité et notre croissance.

61
VI - Bilan du projet

1 - Avancement du projet et respect des délais


1.1 - Backend

Dans la phase de réalisation du projet, plusieurs fonctionnalités cruciales ont été


développées pour le backend. Tout d'abord, nous avons mis en place la connexion et
l'inscription des utilisateurs, garantissant ainsi un accès sécurisé à l'application. Ensuite, nous
avons travaillé sur l'algorithme de recommandation basé sur le deep learning, permettant
d'offrir des suggestions personnalisées aux utilisateurs.

Parallèlement, nous avons développé un formulaire d'ajout de produits en base de


données, facilitant ainsi la gestion et l'organisation des informations relatives aux produits.
Nous avons également consacré une étape importante à la sécurisation de l'application, en
mettant en place des mesures telles que l'IP Ban, le CSRF, le XSS et l'utilisation de JWT pour
renforcer la protection des données et des utilisateurs.

Une autre amélioration majeure a été apportée à l'algorithme de recommandation afin


de garantir des suggestions plus précises et pertinentes. De plus, nous avons implémenté
l'authentification à deux facteurs (2FA) pour renforcer la sécurité des comptes utilisateurs.
Parallèlement, nous avons optimisé la gestion des données en compressant les données avant
leur envoi et en mettant en place une politique de cache pour améliorer les performances.

Nous avons également ajouté un formulaire d'ajout de collections en base de données,


permettant aux utilisateurs de regrouper leurs produits de manière organisée. La
fonctionnalité de scroll infini a été mise en place pour faciliter la navigation des utilisateurs,
tandis que les statistiques utilisateur ont été implémentées pour fournir des insights précieux.

Enfin, nous avons développé des paramètres utilisateur tels que la possibilité de
supprimer son compte, offrant ainsi une plus grande flexibilité aux utilisateurs. De plus, nous
avons établi une liaison entre la possession d'un utilisateur et un produit existant, permettant
une gestion efficace des produits.

62
Malgré les défis rencontrés, nous avons réussi à respecter les délais fixés dans notre
planification des trois phases : étude, réalisation et publication. Nous avons également dû faire
face à des difficultés lors de l'implémentation des succès avec Midjourney, nécessitant des
ressources importantes pour notre serveur. Nous avons donc opté pour une approche
permettant à l'utilisateur de fournir une image qui sera automatiquement modifiée par une
autre IA, tout en respectant notre charte graphique.

Cette phase de réalisation a été un succès, permettant de mettre en place des


fonctionnalités essentielles tout en respectant les délais fixés. Nous sommes confiants quant
à la valeur ajoutée de ces développements pour notre application et nous sommes impatients
de passer à la prochaine phase de publication.

63
1.2 - Application Mobile

Dans la phase de réalisation de l'application mobile, nous avons développé différentes


fonctionnalités essentielles. Tout d'abord, nous avons mis en place la connexion et l'inscription
des utilisateurs, garantissant ainsi un accès sécurisé à leurs comptes. Ensuite, nous avons
travaillé sur la récupération des informations utilisateur telles que le pseudo et le niveau,
permettant une personnalisation de l'expérience utilisateur.

Une fonctionnalité clé développée est la possibilité de scanner les produits à l'aide de
l'application. Cela permet aux utilisateurs d'obtenir rapidement des informations détaillées sur
les produits scannés, telles que les caractéristiques, les avis des utilisateurs, etc.

De plus, nous avons configuré la gestion des JSON Web Tokens (JWT) pour assurer une
authentification sécurisée des utilisateurs. Cette configuration permet de protéger les données
sensibles et de maintenir une expérience utilisateur sûre.

Enfin, nous avons implémenté la fonctionnalité d'affichage de la galerie, permettant


aux utilisateurs de parcourir les produits selon différents critères tels que la date d'ajout ou la
popularité. Cela offre une expérience de découverte plus personnalisée et adaptée aux
préférences de chaque utilisateur.

Durant le développement de l'application mobile, nous avons rencontré une difficulté


technique avec l'envoi de requêtes HTTPS pour la connexion. En effet, les cookies de session
n'étaient pas automatiquement récupérés. Nous avons dû mettre en place une solution pour
récupérer manuellement les cookies lors de la requête afin de les inclure dans la demande de
récupération du JWT.

Nous sommes heureux de souligner que les délais fixés pour cette phase de réalisation
ont été respectés. Nous avons réussi à mettre en place ces fonctionnalités clés tout en
maintenant la qualité et la stabilité de l'application mobile. Cela témoigne de notre
engagement à respecter le calendrier prévu dans notre planification de projet. Nous sommes
impatients de poursuivre notre progression vers la phase suivante du projet.

64
1.3 - Frontend

Au cours de la phase de réalisation de la partie frontend de notre application, nous


avons mis en œuvre plusieurs fonctionnalités essentielles pour offrir aux utilisateurs une
expérience complète et enrichissante. Tout d'abord, nous avons développé la page de
connexion et la page d'inscription, permettant aux utilisateurs de créer des comptes et de se
connecter de manière sécurisée.

Ensuite, nous avons conçu une page d'accueil attrayante et conviviale, offrant un
aperçu intuitif du contenu disponible sur Geek Compagnon. Les utilisateurs peuvent naviguer
facilement à travers les différentes sections et découvrir de nouveaux livres, vidéos et jeux de
plateau.

Nous avons également mis en place un système de recherche avancée, permettant aux
utilisateurs de trouver rapidement des éléments spécifiques en fonction de leurs préférences
et de leurs critères de recherche. De plus, nous avons intégré une fonctionnalité de recherche
dynamique qui propose des suggestions en temps réel pendant que les utilisateurs saisissent
leur requête, facilitant ainsi la découverte de contenu pertinent.

Une autre fonctionnalité importante que nous avons développée est l'affichage des
informations détaillées des produits. Les utilisateurs peuvent accéder à des descriptions
complètes, des critiques d'autres utilisateurs, des recommandations personnalisées et bien
plus encore, leur permettant de prendre des décisions éclairées lors de leurs achats.

Malgré la complexité du travail, nous sommes fiers d'annoncer que nous avons
respecté les délais fixés pour la phase de réalisation du frontend. Nous avons réussi à
implémenter ces fonctionnalités clés tout en maintenant la qualité et la performance de
l'application.

65
2 - Perspectives d’avenir
2.1 - En route vers le Web3

Une perspective d'avenir prometteuse pour notre projet se dessine grâce à l'intégration
de la blockchain et à la mise en place d'une modération rémunérée au sein de notre
application communautaire. En utilisant un système basé sur la blockchain, nous offrons à nos
utilisateurs la possibilité de participer activement à la modération de notre plateforme, tout
en étant récompensés sous forme d'utillity tokens.

Cette approche novatrice favorise une communauté engagée et motive les utilisateurs
à contribuer à la qualité de notre application. En gagnant des utillity tokens, les utilisateurs
peuvent accéder à des avantages exclusifs tels que des séances de dédicaces virtuelles avec
leurs artistes préférés, où ils pourront obtenir des scans dédicacés sous forme de NFT. Ces NFTs
créés par notre application pourront également être échangés sur le marché des NFTs, offrant
ainsi une nouvelle dimension à l'expérience multimédia.

En encourageant une participation active et en récompensant la communauté, notre


projet vise à créer une dynamique collaborative et à favoriser l'émergence de conventions
dans le metaverse, où les utilisateurs pourront se retrouver et échanger leurs utillity tokens.
Cette perspective ouvre de nombreuses opportunités de croissance et renforce l'engagement
des utilisateurs envers notre application.

En résumé, l'intégration de la blockchain et la modération rémunérée ouvrent de


nouvelles perspectives passionnantes pour notre projet. En favorisant la participation de la
communauté et en récompensant les utilisateurs, nous créons un écosystème dynamique et
attrayant. Nous sommes convaincus que cette approche contribuera à la croissance continue
de notre application, tout en offrant des opportunités uniques aux utilisateurs de profiter de
contenus exclusifs et de participer à des expériences uniques dans le Metaverse.

66
Lexique technique
• Framework : Un cadre de travail ou une infrastructure logicielle. Il s'agit d'un ensemble
cohérent de composants logiciels structurels, qui sert à créer les fondations ainsi que les
grandes lignes de tout ou d’une partie d'un logiciel (architecture).

• MVP : Minimum Viable Product, ou Produit Minimum Viable en français. Il s'agit de la


version la plus simple d'un produit qui permet à une équipe de collecter le maximum
d'apprentissages validés sur les clients avec le minimum d'effort.

• RAID : Redundant Array of Independent Disks, ou Ensemble Redondant de Disques


Indépendants. Il s'agit d'une technologie de stockage qui combine plusieurs disques durs
en une seule unité logique pour la redondance des données, ou pour améliorer les
performances, ou les deux.

• SWOT : Strengths, Weaknesses, Opportunities, Threats, ou Forces, Faiblesses,


Opportunités, Menaces. Il s'agit d'une méthode d'analyse stratégique d'une organisation
ou d'un projet.

• JWT : JSON Web Token. Il s'agit d'un standard ouvert pour la création de jetons d'accès qui
permettent la sécurisation des échanges d'informations entre deux parties.

• NAS : Network Attached Storage, ou Stockage en réseau. Il s'agit d'un type de dispositif de
stockage dédié qui fournit un stockage de données localisé pour les utilisateurs, les clients
et les applications du réseau.

• Open source : Il s'agit d'un type de logiciel dont le code source est accessible au public
pour être utilisé, modifié et distribué.

• API : Application Programming Interface, ou Interface de Programmation d'Applications. Il


s'agit d'un ensemble de routines, de protocoles et d'outils pour la construction de logiciels
et d'applications.

• SEO : Search Engine Optimization, ou Optimisation pour les moteurs de recherche. Il s'agit
de l'ensemble des techniques visant à améliorer la visibilité d'un site web dans les résultats
des moteurs de recherche.

67
• RGPD : Règlement Général sur la Protection des Données. Il s'agit d'un règlement de
l'Union européenne qui vise à renforcer et à unifier la protection des données pour toutes
les personnes au sein de l'Union européenne.

• CSS : Cascading Style Sheets, ou Feuilles de style en cascade. Il s'agit d'un langage de feuille
de style utilisé pour décrire l'apparence d'un document écrit en HTML ou en XML.

• Frontend : Il s'agit de la partie d'un logiciel avec laquelle l'utilisateur interagit directement.
Dans le développement web, il s'agit généralement de la partie du site web que l'utilisateur
voit et avec laquelle il interagit.

• Backend : Il s'agit de la partie d'un logiciel qui traite les fonctionnalités de l'application, les
calculs et les interactions avec la base de données. Dans le développement web, il s'agit
de la partie du site web qui n'est pas visible pour l'utilisateur.

• ACID : Atomicity, Consistency, Isolation, Durability, ou Atomicité, Cohérence, Isolation,


Durabilité. Il s'agit d'un ensemble de propriétés qui garantissent qu'une transaction de
base de données est traitée de manière fiable.

• MVCC : Multi-Version Concurrency Control, ou Contrôle de concurrence multi-version. Il


s'agit d'une méthode utilisée pour gérer les conflits entre plusieurs utilisateurs qui
accèdent simultanément à une base de données.

• WSGI : Web Server Gateway Interface, ou Interface de passerelle de serveur web. Il s'agit
d'une spécification pour les serveurs web et les applications web en Python.

• EDI : Electronic Data Interchange, ou Échange de données informatisé. Il s'agit de l'échange


d'informations commerciales dans un format électronique standardisé entre partenaires
commerciaux.

• Méthodologie Agile : Il s'agit d'un ensemble de principes pour le développement de


logiciels sous lesquels les exigences et les solutions évoluent grâce à l'effort collaboratif
des équipes auto-organisées et interfonctionnelles.

• JSON : JavaScript Object Notation. Il s'agit d'un format de données textuelles, facile à lire
et à écrire, utilisé pour structurer et échanger des données.

• RSSI : Responsable de la Sécurité des Systèmes d'Information. Il s'agit de la personne en


charge de la sécurité des systèmes d'information dans une organisation.

68
• CSRF : Cross-Site Request Forgery, ou Falsification de requête inter-sites. Il s'agit d'une
attaque qui force un utilisateur authentifié à exécuter une action non intentionnelle.

• XSS : Cross-Site Scripting. Il s'agit d'une vulnérabilité de sécurité qui permet à un attaquant
d'injecter du code malveillant dans les pages web vues par d'autres utilisateurs.

• 2FA : Two-Factor Authentication, ou Authentification à deux facteurs. Il s'agit d'une


méthode de confirmation de l'identité d'un utilisateur en utilisant deux facteurs différents.

69
70
Webographie
Liens vers Drive contenant les documents techniques :
Absolue : https://drive.google.com/drive/folders/1YX48dFs-
KUjwEO2MXhoinUuKDhLuffgE?usp=sharing
Raccourci : https://shorturl.at/bCFL6

71
Annexes

ANNEXE 1 - Schéma de base de données UML ..................................................................................... 73


ANNEXE 2 – Persona numéro 1 ............................................................................................................. 74
ANNEXE 3 – Persona numéro 2 ............................................................................................................. 75
ANNEXE 4 – Personna numéro 3 ........................................................................................................... 76

72
ANNEXE 1 - Schéma de base de données UML

73
ANNEXE 2 – Persona numéro 1

74
ANNEXE 3 – Persona numéro 2

75
ANNEXE 4 – Personna numéro 3

76

Vous aimerez peut-être aussi