Académique Documents
Professionnel Documents
Culture Documents
De nos jours, il est devenu de plus en plus courant de faire appel à des professionnels
pour réaliser des travaux ou des services à domicile. Cependant, trouver le professionnel
adapté à ses besoins peut s'avérer difficile et chronophage. C'est dans ce contexte que nous
avons développé une application mobile qui permet à l'utilisateur de chercher des
professionnels qualifiés et disponibles pour intervenir chez lui.
Ce présent rapport présente tout le travail que nous avons réalisé tout au long de ce
projet. Il se divise en trois chapitres décrits brièvement comme suit :
L’étude préalable est une analyse permettant de vérifier la viabilité technique d’un
projet. En effet, dans ce chapitre nous fournirons une meilleure idée sur ce projet en le
comparant aux solutions utilisées actuellement tout en précisant les besoins fonctionnels et
non fonctionnels.
Il propose des solutions innovantes adaptées aux divers besoins de nos clients,
combinant expertise créative et les dernières technologies informatiques pour garantir des
services numériques efficaces et conviviaux. Il déploie également beaucoup d’efforts pour
créer des stratégies marketing solides qui garantiront le succès de son produit.
La réalisation de tout projet doit être précédée par une étude de l'existant qui détermine
les points faibles et les points forts des systèmes actuels et les besoins du client en vue de les
prendre en considération lors de la conception et de la réalisation. Cette section nous mène
alors à une étude basée sur les observations de différents outils spécialisés dans le domaine de
gestion de tournées. Cette étude nous permet de dégager et donner leurs atouts et leurs
faiblesses afin de déterminer les besoins et de les traiter.
La recherche d'un professionnel qualifié et fiable pour réaliser des travaux ou des
services à domicile peut être un processus difficile et fastidieux pour les particuliers. Les
clients potentiels doivent non seulement trouver des prestataires de services adaptés à leurs
besoins, mais aussi s'assurer qu'ils disposent des compétences, de l'expérience et des
qualifications nécessaires pour mener à bien les travaux ou les services requis.
« Ijeni » est une application mobile de prestation de service. Il permet aux utilisateurs de
demander de services et aux prestataires de service de recevoir des offres d’emploi.
L’application compte plusieurs utilisateurs et prestataires de service actif.
- L’application Ijeni ne fournit pas suffisamment d'informations sur les prix et les
tarifs pour les services proposés, ce qui peut décourager les utilisateurs de
Pour répondre aux besoins des utilisateurs qui cherchent à trouver rapidement et
facilement des professionnels qualifiés pour les services à domicile, notre projet d'application
mobile se concentre sur la création d'une plateforme de recherche innovante et facile à utiliser.
Nous prévoyons de développer une application mobile qui permettra aux utilisateurs de
trouver des professionnels triés par spécialité et zone géographique, et d'obtenir des
informations sur les services proposés, et une approximation de prix dans un intervalle bien
précis
Notre application mobile offrira également des fonctionnalités clés telles que la prise
de rendez-vous en ligne, la gestion des réservations et la possibilité de laisser des
commentaires et des avis sur les services proposés. Nous prévoyons également d'utiliser des
technologies de pointe pour assurer la sécurité et la fiabilité des professionnels proposés sur
notre plateforme, en vérifiant leurs certifications et qualifications avant de les autoriser à
offrir leurs services.
Ces sont les actions et les réactions que le système doit faire suite à une demande d’un
acteur principal. Notre solution doit assurer les fonctionnalités suivantes à chacun de
ces acteurs.
1.4.2.1 Visiteur
Le visiteur a la possibilité de faire les tâches suivantes :
● S’inscrire : Créer un compte sur notre application
● Consulter les services : Il peut naviguer sur la plateforme, parcourir les services offerts
par les professionnels, et prendre une décision éclairée avant de s'inscrire ou de réserver
un service
1.4.2.2 Client
Le client a la possibilité de faire les tâches suivantes :
● Consulter les services : Il peut naviguer sur la plateforme, parcourir les services offerts
par les professionnels.
● Demander un service : il peut demander un service.
● Noter le service : Il peut donner une note au professionnel, la note sera marquée sur
son profil.
● Gérer son profil : Consulter, modifier et supprimer son profil.
1.4.2.3 Professionnel
Le professionnel a la possibilité de faire les tâches suivantes :
● Gérer son profil : Consulter, modifier et supprimer son profil.
● Gérer sa disponibilité : Préciser s’il est disponible pour la réservation ou non
● Consulter les statistiques : Voir les statistiques de son profile
● Gérer les Demande : Il peut accepter ou refuser les demandes des clients en temps réel
1.4.2.4 Administrateur
L’administrateur a la possibilité de faire les tâches suivantes :
● Gérer les clients : Consulter, ajouter, modifier et supprimer des clients
● Gérer les services : Consulter, ajouter, modifier et supprimer des services
● Consulter les avis : Consulter, ajouter, modifier et supprimer des avis
● Gérer les employés : Consulter, ajouter, modifier et supprimer des employés.
● Consulter les demandes
● Consulter les statistiques : Voir les statistiques de l’application.
1.4.3 Besoins non fonctionnels
Ce sont les besoins qui permettent de fournir un produit fiable qui respecte les exigences de
l’utilisateur et qui peut faire face à des risques de panne ou de dysfonctionnement. Les besoins
non fonctionnels de notre application seront :
● Confidentialité : Chaque utilisateur peut accéder à son espace sachant qu’il est déjà
authentifié à travers son login et mot de passe.
● Performance : Notre application doit être performante, autrement-dit, elle doit répondre
aux besoins de ses utilisateurs d’une façon optimale et en un temps réduit. - Le temps
de réponse : À la suite des actions des utilisateurs, l’application doit réagir dans un
délai raisonnable.
● La disponibilité : Le système doit être toujours accessible.
● Ergonomie : L’application offre une interface conviviale et facile à utiliser.
1.5 Méthodologie en de travail
Avec la complexité croissante des solutions logicielles, le besoin d'un ensemble de règles pour
organiser la programmation est devenu une nécessité absolue. Par conséquent, de nombreuses
lignes directrices sont apparues et ont été condensées dans ce que nous appelons aujourd'hui les
méthodologies de développement logiciel. L'objectif de ces méthodologies est de diviser le flux
de travail du projet en différentes phases dans l’intention d’une meilleure planification et
gestion.
1.5.1 Méthodologie en V
Pour notre projet nous avons opté pour la méthode en V qui est une amélioration du modèle en
cascade qui était auparavant le modèle le plus utilisé lors de la réalisation des projets. Le cycle
en V est composé de neuf (9) étapes appartenant à trois (3) grandes phases, à savoir :
conception, réalisation et validation, comme le montre la figure suivante
Figure 4:Schéma descriptif du modèle en V[1]
2. Conclusion
Ce chapitre a été dédié à la définition du contexte général du projet ainsi que la spécification des
besoins divers de l’application. Il nous a servi à bien comprendre le problème posé afin de préciser nos
objectifs à atteindre. Cet aperçu général est l’appui et le support de base de notre conception que nous
mettrons en évidence dans le chapitre qui suit.
Chapitre 2 : Etude Conceptuelle
1 Introduction
Dans le chapitre précédent, nous avons précisé les différents acteurs de notre solution
en détaillant les nombreuses fonctionnalités qu’ils seront capables d’exploiter. Nous arrivons
maintenant à l’une des phases les plus importantes lors du développement d’une application,
la conception. Dans cette étape nous allons présenter le diagramme de cas d’utilisation
général et raffiné, le diagramme de classes et les diagrammes de séquences.
UML a été choisi comme langage de modélisation, car la notion UML est la plus
appropriée pour les projets orientés objets. Ce choix peut être justifié également par plusieurs
raisons :
Trois acteurs majeurs (Grady Booch, Ivra Jacobson et Jim Rumbaugh) se sont
regroupés au sein de la société rational pour définir le langage unifié UML. On se contente de
modéliser notre système en créant les trois diagrammes UML suivants :
Dans ce qui suit, nous présentons les diagrammes des cas d’utilisation avec une brève
description de chaque cas. Ensuite, nous introduisons le diagramme de classes qui nous
donnera une vue globale du système. Enfin nous passons au diagramme de séquences avec les
scénarios correspondants.
Figure 6:Logo UML[3]
Nous allons présenter les cas les plus marquants tout en les analysant.
1.2.2.1 Diagramme de cas d'utilisation raffiné de gérer les services
Le diagramme de cas d’utilisation raffiné de gérer les services est illustré par la figure
suivante:
Acteur ● Administrateur
Description ● L’administrateur
affiche une liste détaillée
des services
● L’administrateur peut
ajouter un nouveau
service
● L’administrateur peut
modifier les
informations du service
ou la supprimer
totalement
1.2.2.2 Diagramme de cas d'utilisation raffiné de gérer les utilisateurs
Le diagramme de cas d’utilisation raffiné de gérer les utilisateurs est illustré par la
figure suivante :
Le diagramme de cas d’utilisation raffiné de gérer son profile est illustré par la figure
suivante :
Dans de ce chapitre, nous avons défini l’aspect statique et l’aspect dynamique de notre
système grâce au diagramme de classes, une description détaillée des différents cas
d’utilisation et les diagrammes de séquences. Dans le chapitre suivant, nous allons procéder à
l’étape de réalisation de notre solution.
Chapitre 3 : réalisation
1. Introduction
Après la phase de conception, nous arrivons à une étape critique : la réalisation du
projet. Afin de réussir cette phase, il est important de choisir judicieusement les outils et les
technologies à utiliser
Dans cette sous-section, nous décrivons les Framework et les logiciels exploités pour
concevoir notre solution.
1.1.1.1 Node Js
Elle utilise la machine virtuelle V8, la bibliothèque libuv pour sa boucle d'évènements,
et implémente sous licence MIT les spécifications CommonJS.
Parmi les modules natifs de Node.js, on retrouve http qui permet le développement de
serveur HTTP. Ce qui autorise, lors du déploiement de sites internet et d'applications web
développés avec Node.js, de ne pas installer et utiliser des serveurs webs tels que Nginx ou
Apache.
1.1.1.2 Express Js
Express.js est un Framework pour construire des applications web basées sur Node.js.
C'est de fait le Framework standard pour le développement de serveur en Node.js. L'auteur
original, TJ Holowaychuck, le décrit comme un serveur inspiré de Sinatra dans le sens qu'il
est relativement minimaliste tout en permettant d'étendre ses fonctionnalités via des plugins.
1.1.1.3 Socket.io
Socket.IO est une bibliothèque qui permet une communication à faible latence,
bidirectionnelle et basée sur les événements entre un client et un serveur.
Figure 14: Logo socket.io [6]
1.1.1.4 Flutter
Flutter est un Framework open-source, parfois appelé kit de développement logiciel
(SDK), utilisé pour créer des applications multiplateformes compilées en mode natif.
Vous pouvez créer des solutions mobiles, web et Mac à partir d’une base de code
unique.
1.1.2.1 JavaScript
1.1.3 Logiciel
1.1.3.1 Visual Studio Code
Il s’agit d’un éditeur de code extensible gratuit et open-source développé par Microsoft.
Android Studio est l'environnement de développement intégré (IDE) officiel des applications
Android. Basé sur le puissant outil de développement et d'édition de code d'IntelliJ IDEA,
Android Studio offre encore plus de fonctionnalités qui améliorent votre productivité lorsque
vous créez des applications Android.
1.1.3.4 PostMan
PostMan est une application permettant de tester des API, créée en 2012 par Abhinav
Asthana, Ankit Sobti et Abhijit Kane à Bangalore pour répondre à une problématique de test
d'API partageable. D'abord module complémentaire de Google Chrome, puis client lourd, et
finalement client léger, elle est à présent utilisée par plus de 500 000 entreprises dans le
monde et a son siège à San Francisco
.
Figure 21: Logo Postman[11
Dans cette partie, nous allons exposer quelques interfaces de notre application Mobile
en essayant de présenter les fonctionnalités les plus importantes dans notre travail.
1.3.1. Interface Authentification
1 Conclusion
Nous avons développé cette application en tenant compte des défis courants tels que la
difficulté de trouver des professionnels fiables et qualifiés, ainsi que la complexité de la
recherche et de la réservation des services à domicile. Notre application offre des
fonctionnalités clés telles que la recherche par spécialité et zone géographique, ainsi que la
prise de rendez-vous en ligne et la gestion des réservations.
Nous avons également pris en compte les besoins des utilisateurs en leur permettant de
laisser des commentaires et des avis sur les professionnels, favorisant ainsi la transparence et
la confiance.
En réalisant ce projet, nous avons relevé des défis techniques, tels que le
développement d'une interface utilisateur conviviale, l'intégration de fonctionnalités avancées
et la mise en place de mesures de sécurité robustes. Cependant, nous sommes fiers du résultat
final qui offre une expérience utilisateur améliorée et une solution pratique pour la recherche
de professionnels à domicile.
Pour l'avenir, nous envisageons d'élargir notre application pour couvrir d'autres régions
et secteurs de travail, offrant ainsi une plus grande variété de services à nos utilisateurs. Nous
continuerons également à mettre à jour et à améliorer notre application en fonction des
commentaires et des besoins des utilisateurs, afin de garantir une expérience optimale et une
satisfaction continue.
En résumé, notre projet d'application mobile a pour objectif de simplifier la recherche
de professionnels à domicile en offrant une plateforme conviviale, sécurisée et fiable. Nous
croyons fermement que notre application améliorera la vie des utilisateurs en leur permettant
de trouver rapidement les professionnels dont ils ont besoin, tout en favorisant des relations
de confiance et de qualité entre les utilisateurs et les professionnels.
Références