Vous êtes sur la page 1sur 70

DÉDICACE

De plus profond de mon cœur, je dédie ce travail:

A celui qui m’a indiqué la bonne voie en me rappelant que la volonté fait toujours les
grands hommes...

A mon Père Naoufel.

A celle qui a attendu avec patience les fruits de sa bonne éducation...

ma Mère Houda ,à mon frère Sofien ,à ma chère sœur Mariem.

A tous les membres de mes familles, mes amis ceux qui me sont cher et a tous ceux
qui ont participé à l’élaboration de ce travail.

Que Dieu vous gardes…

Bembli Mohamed

REMERCIEMENTS
Nos remerciements les plus vifs à voyage 130 au sein de laquelle nous avons bénéficié
ce stage pour l’attention et l’encadrement don’t nous avons eu de la part de son
personnel afin de faire ce travail.

Nous exprimons notre gratitude et nos sentiments de respect à monsieur Yassine


Rouatbi qui m’a offert cette chance d’effectuer ce stage pour évaluer et enrichir mes
connaissances.

Nos remerciements le plus distingués vont également au personnel travaillant dans


Agence 130 pour leurs précieux conseils et pour leurs collaborations en nous donnant
les meilleurs directives pour accomplir notre stage et de nous avoir intégrer dans la vie
professionelle.

Nous aimerons exprimer nos remerciements aussi à monsieur Rouatbi Adnen pour son
encadrement tout au long du stage, pour tous les conseils théoriques, techniques et sa
participation pour la préparation de ce rapport.

Nous voudrons aussi remercier les membres de jury pour leurs efforts et leurs
partialités pour l’évaluation de notre travail.

Nous profitons de cette occasion pour exprimer notre reconnaissance et notre gratitude
envers tous nos professeurs et enseignants à ISET SOUSSE, nous ayant enseigné
durant mes trois ans d’études.

Enfin, nous exprimons notre reconnaissance à toute personne qui a contribué au bon
déroulement de notre projet.
Table des matières

Introduction générale …............................1

CHAPITRE 1 : CADRE GÉNÉRAL DU PROJET

Introduction............................................

1. Présentation de la société:….................................

1.1. Historique et identité …..............................

1.2. Activités de l’entreprise...........................

1.3. Adresse et coordonnées......................

2. Etude préalable …................................

2.1. Etude et critique de l’existant …..................................

2.1.1 Plateforme « Airbnb »

2.1.2 Plateforme « BNB Tunisie »

2.2. Tableau Comparatif........................

3. La solution proposée…...........................
4. Spécification des besoins …...................

4.1. Identification des acteurs

4.2. Spécification des besoins fonctionnels….......................

4.3. Spécification des besoins non fonctionnels…............

CHAPITRE 2 : CONCEPTION

Introduction...........................

1. La langage UML.
2. Les diagrammes d’UML.
3. Modèles d’UML utilisés.
4. Conception détaillée

4.1. Identification des acteurs

4.2 Identification des cas d’utilisations.

4.2.1 Modèle global de cas d’utilisation

4.2.2. Description détaillée des cas d’utilisation

4.3 Diagrammes de séquence système

4.4 Diagramme de classes

CHAPITRE 3 : Réalisation

1. Environnement de développement

1.1 Environnement matériel

1.2 Environnement logiciel

1.2.1 Choix des logiciels

1.2.1.1 Hebergement

1.2.1.2 Cpanel

1.2.1.3 Service de messagerie SMS

1.2.1.7 STRIPE

1.2.1.8 BLOCK.IO

1.2.2 Choix des langages

2. Présentation de la solution Web

2.1 Enchainement des interfaces

2.2 Interfaces
Introduction Générale

Dans le cadre de notre projet de fin d’études en vue de l’obtention du

diplôme de la Licence Appliquée Sciences Informatiques, Nous avon effectué notre


stage au sein de l’agence Immobilière 130 à Kalâa Seghira.

Le projet réalisé nous à donner le privilège d’approfondir notre connaissance dans le


Framework Symfony et les langages spécifiques au domaine de web ( PHP, Javascript,
HTML5, CSS3, …). Il s’agit en fait de concevoir et développer une plateforme
communautaire payante de location et de réservation de logements de particuliers.

En effet, cette expérience m’a offert l’occasion de contacter la vie professionnelle


et de découvrir ses mécanismes de fonctionnement et d’avoir une idée sur le
déroulement et l’importance de la précision dans le domaine.

Pour avoir compléter notre mission, nous avons détaillé les différentes étapes
d’analyse, de conception et de réalisation de ce système.

Le premier chapitre a été consacré au cadre général du projet. Il a commencé


par une phase de recherche et de documentation.

Une fois nos objets ont été fixés nous avons enchainé dans le deuxième chapitre
une conception afin de mener à bien notre projet. Nous avons utilisé UML comme un
langage de modélisation.

Le troisième chapitre a été dédié a l’aspect implémentation qui contient le choix


de l’environnement de travail ainsi qu’une copie de quelques interfaces réalisés de la
partie web.
Chapitre 1 :

CADRE GÉNÉRAL DU PROJET

Introduction

Ce chapitre représente la première étape dans la réalisation d’une platforme donnée


qui est consacré en premier lieu à présenter la société profit de laquelle est effectué ce
projet, en second lieu à faire une étude de la situation existante pour montrer ses
insuffisances afin de dégager par la suite les solutions prévues et en dernier lieu à citer
les besoins de l’application qui englobe la spécification des besoins fonctionnel et non
fonctionnel.

1- Présentation de la société

Agence 130 est une agence immobilière créée en 2018 spécialisé dans la
vente, achat et location des immobiliers sise à l’Avenue Habib Bourguiba, Kalâa
Seghira,

2. Etude préalable

Pour assurer les buts à atteindre, il est nécessaire que nous commencions par
une vue claire et simple des différents besoins escomptés. C’est pour cela
qu’une étude du système existant nous nous permettra de justifier et de dégager
une solution.

2.1 Etude et critique de l’existant

Le marché Tunisien des réservations de location de logement de vacance est


complexe et peu structuré, le bouche à oreille reste le moyen le plus utilisé par
les voyageurs, il n’existe presque aucun type de réservation en ligne. De cela
nous distinguons, les réservations en ligne ne s’effectuent que dans des sites
multinationaux, les réservations de location de logement des vacances se
déroulent d’une façon purement ancienne. Et pour répondre au développement
technologique, au progrès des plateformes, il est vraiment primordial de créer
une plateforme web pour la réservation de location de logement de vacance en
ligne.

L'objectif de notre projet est de concevoir une solution qui doit répondre
principalement à un certain besoin précis et bien élaboré et résoudre un
problème existant et persistant, dans ce cas nous avons bien étudié la situation
actuelle de la planification des besoins.

Avant de commencer notre projet, nous avons étudier quelques solutions


existantes :

2.1.1 Plateforme « Airbnb »

Airbnb est une plateforme référence de réservation en ligne, crée en 2007 par
deux américains, le site contient plus 1,5 millions d’annonces.

Devenu l’un des sites les plus connus au monde, la plateforme recense
aujourd’hui 3 millions de logements dans plus de 190 pays et est valorisée à 31
milliards de dollars.

Au-delà du concept novateur du site, Airbnb a su perfectionner son expérience


utilisateur et son design pour établir une relation de confiance avec ses 150
millions d’utilisateurs et booster son taux de conversion. Dans ce qui suit nous
présentons les points forts et les points faibles de cette plateforme.

a. Les points forts du système :


 La page d’accueil est intuitive donne de l’importance de la première impression
 Des paramètres de recherche personnalisés
 La place grandissante des visuels
 La carte interactive (map)
 Les avis et la communauté
 Incitations et principe d’urgence
b. Les points faibles du système :
 Non disponible en tunisie.
 Non sécurisé au niveau des paiements (risque de fraude).

2.1.2 Plateforme « BNB Tunisie »

BNB Tunisie est une plateforme de référence de réservation en ligne, crée en 2016,
le site contient plus 4000 annonces.

a. Les points forts du système :


 Aucun.
b. Les points faibles du système :
 La page d’accueil, ou l’importance de la première impression (mauvaise qualité)
 Absence de recherche personnalisés
 Pas de paiement en ligne.
 La place grandissante des visuels ( mauvaise conception)

2.2. Tableau Comparatif

Nous pouvons classer le résultat de l'analyse des applications web existantes


mentionnées précédemment selon septs critères (Cx) pris en considération dans le
processus d'évaluation des applications

C1: Attractivité : Le visiteur doit se sentir ciblé, il faut qu'il soit attiré par le site et que da
navigation soit orientée et balisée.

C2: Espace client : Un espace client permet de faciliter les actions des utilisateurs
telque gérer profil,compte,réservation, etc.

C3 : Gestion des logements : Un site web est connu par des fonctionnalités. Dans notre
cas on a besoin d'une partie de gestion de logements, on a comparé les sites par la
disponibilité de cette fonctionnalité.
C4 : Paiement en ligne : Le paiement en ligne est aujourd'hui la méthode la plus simple
et le plus rapide, en plus il est plus sécurisé que les méthodes classiques, donc pour
cela on a choisi le paiement en ligne comme un critère dans l'évaluation des sites.

C5 : Frais de service : Ils peuvent être gratuit ou payant.

C6 : Rang global de site : Un bon classement signifie que le site a une meilleure
optimisation pour les moteurs de recherche, un nombre important des visites et
plusieurs d'autres propriétés positive de sorte que si le rang est plus élevé l'application
est plus fiable. On a utilisé Alexa.com pour savoir le rang global des sites. Alexa.com
est un site web principalement connu pour fournir des statistiques sur le trac du Web

C7 : Rang de site en Tunisie : Dans le meme cadre on a utilisé Alexa.com pour savoir le
rang des sites en Tunisie.

Airbnb.com Bnb.tn
Attractivité Bien Faible

Espace client Oui Non

Gestion de logements Oui Oui

Paiement en ligne Oui Non

Frais de service 6 à 12% Gratuit


Rang Global 246 1,921,016

Rang TN - 7,388
3. La solution proposée

Aprés avoir étudier l’existant et définir les anomalies des systèmes en cours
d’utilisation nous proposons de concevoir et développer une plateforme communautaire
payante de location et de réservation de logements de particuliers plus efficace, facile
et sécurisé.

Notre plateforme offre un moyen qui permet de :

 Chercher un logement
 Réserver un logement
 S’inscrire / Connexion
 Gérer logement
 Payer en ligne
 Evaluer réservation
 Gérer réservation
 Gérer profil
 Gérer compte
Dans la partie suivante, nous allons décrire les besoins fonctionnels et non fonctionnels
de notre futur plateforme.

4. Spécification des besoins


Au cours de cette partie nous avons énuméré et expliquer les fonctionnalités offertes
par notre application à travers la spécification des besoins fonctionnels et non
fonctionnels.

4.1. Identification des acteurs


Les acteurs que nous avons réussi à identifier sont :
 Visiteur : c’est l’acteur qui permet de s’inscrire sur le site , rechercher des
logements et inscrire au Newsletter.
 Client : c’est l’acteur qui a pour rôle principal de réserver les logements.
 Propriétaire : : c’est l’acteur chargé de rajouter les logements en sa possession.
 Administrateur : Responsable de platforme.

4.2. Spécification des besoins fonctionnels:


Dans cette section, nous représentons l’ensemble des besoins fonctionnels auxquels
devrait répondre notre plateforme . Les besoins fonctionnels et les attentes par rapport
à notre application dépendent de la nature de l'acteur.Pour cela, nous avons décrit pour
chaque acteur les besoins fonctionnels qui lui sont reliés. Les besoins fonctionnels
auxquels notre plateforme doit répondre pour chaque type d’acteur :

▪ Le système doit permettre aux utilisateur de s’authentifier par un login et un mot de


passe pour accéder aux différentes fonctionnalités.
▪ S’inscrire
▪ Récupérer son mot de passe

- Le système doit permettre au client de :

 Consulter ses réservations.


 Rechercher un logement.
 Réserver un logement
 Evaluer une réservation
 Contacter le service clientele
 Gérer son compte.
 Gérer son profile.

- Le système doit permettre au propriétaire de :

 Gérer ses réservations.


 Gérer ses logements.
 Consulter les avis des clients.
 Contacter service propriétaire
 Ajouter logement.

- Le système doit permettre à l’administrateur de :

 Gérer les utilisateurs.


 Consulter les logements.
 Saisir Newsletter.
 Consulter les statistique.
 Consulter les avis des clients.
 Consulter les virements bancaire.

4.3. Besoins non fonctionnels :

A part les besoins fondamentaux, notre systéme doit répondre à d’autres critères citant
:

Ergonomie de l’interface : L’application doit être facile à utiliser, les interfaces


utilisateurs doivent être conviviales c'est-à-dire simples, ergonomiques et adaptées à
l'utilisateur.

Fiabilité : Les informations apportées par l’application doivent être fiables et sûres

Disponibilité : L’application doit être disponible à tout instant pour être utilisée par
n’importe quel utilisateur.

La performance : L’application doit être performante c'est-à-dire à travers ses


fonctionnalités, répond à toutes les exigences des usagers d'une manière optimale.

Sécurité : L’application comporte des informations personnelles et sensibles, donc elle


doit respecter les règles relatives à la sécurité des systèmes informatiques.
Conclusion :
Nous avons présenté dans ce chapitre le cadre général de projet . Dans le chapitre
suivant nous allons présenter la partie conceptuelle.

CHAPITRE 2 : CONCEPTION

Introduction :
Dans cette partie nous traitons l’aspect conceptuel de notre application. Pour la
conception et la réalisation de cette dernière, nous nous adoptons le formalisme UML
basé sur les diagrammes et offrant une flexibilité marquante.

1. La language UML

Pour faciliter notre tâche nous avons recours au langage de modélisation unifié ( UML :
Unified Modelling Language ) c’est une notation qui permet de modéliser un problème
de facon standard. Ce langage qui est né de la fusion de plusieurs méthodes existantes
auparavant est devenu une référence en termes de modélisation objet, UML est
caractérisé par :
 C’est un langage formel et normalisé.
 Il permet le gain de précision, encourage l’utilisation d’outils et constitue à cet
effet un gage de stabilité.

 UML est un support de communication performant.


 Il cadre l’analyse et facilite la compréhension de représentations absraites
complexes. Son caractère poluvalent et sa souplesse en font un langage
universel.

2. Les diagrammes d’UML


UML 2 s’articule autour de treize types de diagrammes, chacun d’eux étant dédié
à la réprésentation des concepts particuliers d’un système logiciel. Ces types de
diagrammes sont répartis en deux grands groupes:

1. Six diagrammes structurels :


 Diagramme de classes : Il montre les briques de base statiques : classes,
associations, interfaces , attributes, opérations, généralisations, etc.
 Diagramme d’objects : Il montre les instances des éléments structurels et
leurs liens à l’exécution.
 Diagramme de packages : Il montre l’organisation logique du modèle et
les relations entre packages.
 Diagramme de stucture composite : Il montre l’organisation interne d’un
élément statique complexe.
 Diagramme de composants : Il montre des structures complexes, avec
leurs interfaces fournies et requises.
 Diagramme de déploiement : Il montre le déploiement physique des ‘
artefacts ‘ sur les ressources matérielles.
2. Sept diagrammes comportementaux :
 Diagrammes de cas d’ulisation : Il montre les interactions fonctionnelles
entre les acteurs et le système à l’étude.
 Diagramme de vue d’ensemble des interractions : Il fusionne les
diagrammes d’activité et de séquence pour combiner des fragments
d’interaction avec des décisions et des flots.
 Diagramme de séquence : Il montre la séquence verticale des message
passés entre objets au sein d’une interaction.
 Diagrammme de communication : Il montre la communication entre objets
dans le plan au sein d’une interaction.
 Diagramme de temps : Il fusionne les diagrammes d’états et de séquence
pour montrer l’évolution de l’état d’un objet au cours du temps.
 Diagramme d’activité : Il montre l’enchainnement des actions et décisions
au sein d’une activité.
 Diagramme d’états : Il montre les différents états et transitions possibles
des objets d’une classe.

3. Modèles d’UML utilisés :

Les diagrammes qu’on a montré dans la partie précedente sont des moyens de
description des objets ainsi que des liens qui les relient. Nous n’utilisons pas les treize
types de diagrammes proposés par UML 2, mais seulement 3 diagrammes parmi eux
en insistant particulièrement sur les diagrammes suivants :
 Diagramme de cas d’utilisation
 Diagramme de sé15quences
 Diagramme de classes
Cette limitation est largement suffisante pour la plupart des projets et particulièrement
pour notre travail.

4. Conception détaillée
4.1 Identification des acteurs.
Les acteurs que nous avons réussi à identifier sont :
o Visiteur : c’est l’acteur qui permet de inscrire sur le site , rechercher des
logements et inscrire au Newsletter.
o Client : c’est l’acteur qui a pour rôle principal de réserver les logements.
o Propriétaire : : c’est l’acteur chargé d’ajouter les logements en sa
possession.
o Administrateur : Responsable de platforme.
4.2 Identification des cas d’utilisations.
Un cas d’utilisation représente une unité discrète d’interaction entre un utilisateur
(humain ou machine ) ou un système. Il est une unité significative de travail. Dans un
diagramme de cas d’utilisation, les utilisateurs sont appelés acteurs (actors), ils
interragissent avec les cas d’utilisation ( use cases). Ce diagramme permet d’identifier
les possibilités d’interaction entre le système et les acteurs. Il représente toutes les
fonctionnalités que le système doit fournir.

4.2.1 Modèle global de cas d’utilisation


Pour affiner le diagramme de cas d’utilisation, UML définit trois types de relations
standardiséés entre cas d’utilisation:
 Une relation d’inclusion, formalisée par le mot-clé “ include “ : le cas
d’utilisation de base en incorpore explicitement un autre, de façon
obligatoire.
 Une relation d’entension, formalisée par le mot-clé “ extend “ : le cas
d’utilisation de base en incorpore implicitement un autre, de facon
optionnelle.
 Une relation de généralisation / spécialisation : les cas d’utilisation
descendants héritent de la description de leur parent commun. Chacun
d’netre eux peut néanmoins comprendre des interactions spécifiques
supplémetaires.

Types de relations :
 L’association ( trait plein avec ou sans flèche ) entre acteurs et cas
d’utilisation.
 La d”pendance ( flèche pointillée ) entre cas d’utilisation, avec les mots-
clées “extend” ou “include”
 La relation de généralisation ( flèche fermée vide ) entre cas d’utilisation.

La figure ci-dessous illustre le diagramme de cas d’utilisation globale, il nous permet


d’obtenir une vision globale du comportement fonctionnel de l’application web.
Figure 8 : Diagramme de cas d’utilisation globale
Le tableau suivat représnete les différents cas d’utilisation, les acteurs impliqués et une
description pour chaque cas :

Cas d’utilisation Acteur(s) Description


Créer compte Visiteur Un visiteur peut créer un
compte.
Rechercher logements Visiteur- Un visiteur peut rechercher
Client- des logements.
Propriétaire

Inscrir Newsletter Visiteur- Un visiteur ou un


Client- propriétaire peut faire une
Propriétaire inscription au newsletter.

Réserver logements Visiteur- Un visiteur ou un


Client- propriétaire peut réserver
Propriétaire un logement
Évaluer logements Client- Un client ou un propriétaire
Propriétaire peut évaluer un logement.
Contactez nous Client- Un client peut contacter le
Propriétaire service clientele

Consulter réservations Client- Un client ou un propriétaire


Propriétaire- peut consulter des
Administrateur réservations.
Gérer compte Client- Un client ou un propriétaire
Propriétaire peut gérer son compte
Gérer profile Client- Un client ou un propriétaire
Propriétaire peut gérer son profile
Consulter avis clients Propriétaire- Un propriétaire ou un
Administrateur administrateur peut
consulter les avis client.
Gérer réservations Propriétaire Un propriétaire peut
accepter ou réfuser des
reservations.
Gérer virements bancaire Propriétaire Un propriétaire peut virer
l’argent a son compte
bancaire.
Gérer logements Propriétaire Un propriétaire peut mettre
un logement en ligne ou
inversement.
Ajouter logement Propriétaire Un propriétaire peut
ajouter un logement.
Gérer utilisateurs Administrateur Un administrateur peut
bloquer un utilisateur et
l’inversement.
Consulter logements Administrateur, Un administrateur ou un
Propriétaire propriétaire peut consulter
logements.
Consulter virements Administrateur Un administrateur peut
consulter tous les
virements bancaire
Consulter statistique Administrateur Un administrateur peut
d’application consulter les statistiques
de la plateforme.
Saisie newsletter Administrateur Un administrateur peut
saisir des newsletters
4.2.2. Description détaillée des cas d’utilisation
Dans cette section nous allons présenter une description détaillée de quelques cas
d’utilisation.

 Cas d’utilisation “ Créer compte “

Description textuelle de cas d’utilisation “ Créer compte “


Sommaire d’identifiant
Acteur(s) Visiteur
Objectif Le visiteur doit créer un compte pour
effectuer des taches que seul un client
peut les effectuer.
Description d’enchainements
Pré conditions Le visiteur n’est pas inscrit.
Post-conditions Le visiteur est soit inscrit ou non.
Scénario nominal 1- Le visiteur accéde au site et demande
de créer un compte.
2- le Système affiche un formulaire
d’inscription.
3- Le visiteur rempli le formulaire
d’inscription par les champs nécessaire.
4- Le système affiche les conditions
générales de la plateforme.
5- Le visiteur accepte les conditions
générales de la plateforme.
6- Le système affiche un formulaire de
téléchargement de photo de profil.
7- Le visiteur peut télécharger son photo
de profil.
8- Le système affiche le formulaire de
confirmation de numéro téléphone.
9- Le systéme envois un code de
validation SMS au numéro de téléphone
saisie.
10- Le visiteur remplit correctement le
formulaire.
11- Le système affiche le formulaire de
vérification d’e-mail.
12- Le visiteur saisie un code de
validation d’e-mail correct.
13- Le système créer un compte client.
Scénario alternatif 3.1 Le visiteur ne peut pas être inscrit :
un champ vide.
+ age >= 18+
3-2 Le système retourne un message de
violation des règles de système.
4-1 Le visiteur réfuse les les conditions
générales MedHomePro.
4-2 Le système retourne sur l'affichage
de la page d'accueil.
7-1 Le visiteur télécharger un fichier (
n’est pas une image )
7-2 Le système affiche un message
d’information.
8-1 Le visiteur ne peut pas confirmer son
numéro de téléphone: un champ vide.
10-1 Le visiteur saisie un code de
validation SMS incorrect
10-2 Le système affiche un message
d’information.
12-1 Le visiteur saisie un code de
validation d’e-mail incorrect.
12-2 Le système affiche un message
d’information.

 Cas d’utilisation “ Rechercher logements “

Sommaire d’identifiant

Acteur(s) Visiteur – le client


Objectif Le visiteur ou le client doit chercher une
logement.
Description d’enchainements

Pré conditions Logement doit exister.


Post-conditions Logement trouvé.
Scénario nominal 1- Le visiteur/client lance une recherche.
2- Le système affiche une page de
résultat.
3- Le visiteur/client selectionne un
logement.
4- Le systéme lui présente une
description détaillée pour le logement
séléctionnée.
Scénario alternatif 1-1 Le systéme n’a pas trouvé le
logement correspondant à la recherche.
+ Le système affiche un message “ Pas
de logements trouvé “
3-1 – Le visiteur / client n’est pas
intéressé par le resultat de recherche.
 Cas d’utilisation “Inscription newsletter “

Sommaire d’identifiant

Acteur(s) Visiteur – le client


Objectif Le visiteur ou le client doit s’inscrire au
newsletter pour recevoir les lettres
d'information périodique dela plateforme.

Description d’enchainements

Pré conditions Le visiteur/client n’est pas inscrit.


Post-conditions Le visiteur/client est soit inscrit ou non.
Scénario nominal 1- Le visiteur accéde au site et demande
de s’inscrire au newsletter.
2- Le visiteur/client remplir correctement
la formulaire.
3- Le visiteur/client est inscrit au
newslettter.
Scénario alternatif 2-1 - Le visiteur/client remplir le
formulaire d’une maniére incorrect.
2-2 Le Système affiche un message
d’information.

 Cas d’utilisation “Réserver logement “

Sommaire d’identifiant

Acteur(s) Le client,propriétaire
Objectif L’acteur peut à tout moment réserver un
logement.
Description d’enchainements

Pré conditions Le client doit s’authentifier.


Le client doit vérifiez son identité (si c’est
la première réservation )
Le client doit séléctionner le logement.
Post-conditions Réservation effectuée et enregistrée
Scénario nominal 1- Le client choisi de faire une
réservation.
2- Le système affiche une page
contenant les réglements interieur de
logement sélectionné.
3- Le client accepte les réglements
intérieur de logement sélectionnée.
4- Le client choisi le mode de paiement
préféré.
5- Le client confirme la commande.
6- Le système confirme et enregistrer la
commande et envoi un email au client et
au propriétere de logement contient les
détails de réservation effectué.
7- envoi d’une notification par sms au
propriétaire si cette option est activé.
Scénario alternatif 3-1 – Le client annule sa commande, le
système retourne sur l’affichage du page
d’acceuil et le cas d’utilisation se termine
avec échec.

 Cas d’utilisation “Contactez Nous “

Sommaire d’identifiant
Acteur(s) Le client
Objectif Le client peut à tout moment contactez le
service client de MedHomePro.

Description d’enchainements

Pré conditions Le client doit s’authentifier.


Post-conditions Le client est soit pris en conctact le
service client, soit non.
Scénario nominal 1- Le visiteur accéde au site et demande
de contacter le service client.
2- Le client remplis correctement le
formulaire de contact.
3- un email envoyé au service client de la
plateforme.
Scénario alternatif 2-1 – L'email n’est pas envoyé : un
champ vide.

 Cas d’utilisation “Consulter réservations “

Sommaire d’identifiant

Acteur(s) Le client, administrateur; Propriétaire


Objectif L’acteur peut à tout moment consulter
ses réservations.

Description d’enchainements

Pré conditions Le client/admin doit s’authentifier.


Post-conditions Le client/admin peut consulter ses
réservations ou non.
Scénario nominal 1- Le visiteur accéde à son compte et
consulte la page “ mes réservations.”
2- Le système renvoie la page de
réservation.
Scénario alternatif 2-1 Le systéme n’a pas trouvé des
réservations

 Cas d’utilisation “Gérer réservations “

Sommaire d’identifiant

Acteur(s) Le propriétaire
Objectif L’acteur peut gérer ses réservations (
accepter , réfuser ,…)

Description d’enchainements

Pré conditions Le propriétaire doit s’authentifier.


Existance des réservations.
Post-conditions Le propriétaire peut gérer ses
réservations ou non.
Scénario nominal 1- Le propriétaire accéde à son compte et
consulte la page “ mes réservations “
2- Le propriétaire peut accepter ou
réfuser les réservations.
+ Réservation accepté : un email de
confirmation à été envoyé au client
contient le code de validation de
réservation + les details de réservation, le
propriétaire peut virer la totalité de cette
réservation aprés la saisie du code de
validation de réservation.
+ Réservation réfusée : un email
d’annulation à été envoyé au client.
Scénario alternatif 2-1 code de validation incorrect
2-2 Le système affiche un message
d’information.

 Cas d’utilisation “Gérer logements “

Sommaire d’identifiant

Acteur(s) Le propriétaire
Objectif L’acteur peut gérer ses logements et
changer leur status (hors ligne , en ligne)

Description d’enchainements

Pré conditions Le propriétaire doit s’authentifier.


doit avoir au moins un logement.
Post-conditions Le propriétaire peut gérer ses logements
ou non.
Scénario nominal 1- Le propriétaire accéde à son compte et
consulte la page “ mes logements “
2- Le propriétaire peut mettre le logement
en ligne ou hors ligne.
Scénario alternatif

 Cas d’utilisation “Gérer compte / Gérer profile “

Sommaire d’identifiant
Acteur(s) Le propriétaire/client
Objectif L’acteur peut gérer son compte et
modifier certains information (Email,mot
de passe,...)

Description d’enchainements

Pré conditions Le propriétaire doit s’authentifier.


Post-conditions Compte mis à jour.
Scénario nominal 1- Le client choisit de modifier certaine
information de son compte (email, mot de
passe,... )
2- Le client confirme cette modification.
3- Le système le valide et mis à jour la
BD ainsi que le compte.
Scénario alternatif 2-1 L’acteur saisie des informations
erroné alors le système revient sur
l’affichage de formulaire de modification
échoué.

4.2.2.11 Cas d’utilisation “Consulter avis clients “

Sommaire d’identifiant

Acteur(s) Administrateur, propriétaire


Objectif L’acteur peut à tout moment consulter
l’avis clients.

Description d’enchainements

Pré conditions Le client/admin doit s’authentifier.


Post-conditions Le client/admin peut consuler l’avis des
clients.
Scénario nominal 1- L'acteur accéde à son compte et
consulte la page “ Avis clients”
2- Le système renvoi la page de contenu
les avis des clients.
Scénario alternatif 2-1 Le systéme n’a pas trouvé des avis.

4.2.2.12 Cas d’utilisation “Créer logement “


Sommaire d’identifiant

Acteur(s) Propriétaire
Objectif L’acteur doit ajouter un logement

Description d’enchainements

Pré conditions Le propriétaire doit s’authentifier.


Toutes les informations nécessaireu de
compte,profile soit compléte.
Post-conditions Logement ajouté.
Scénario nominal 1- Le visiteur cliquer sur button “ déposer
une annonce”.
2- le système affiche le formulaire pour
saisir l’adresse de logement.
3- le système affiche le formulaire pour
saisir un réglement intérieur de logement.
4- le système affiche le formulaire pour
ajouter les details de logement (
couchage , salle de bains , equipements ,
surface , …).
5- le système affiche le formulaire pour
saisir la description et le titre de
logement.
6- le système affiche le formulaire pour
saisir prix de nuit de location et caution.
7- le système affiche le formulaire pour
saisir les dates d’occupation de logement.
8- le système affiche le formulaire pour
télécharger les images de logements.
9- Logement publié avec succée.
Scénario alternatif L’acteur saisie des informations
erroné alors le système affiche un
message d’informatios pour corriger
les informations saisie.

4.2.2.13 Cas d’utilisation “Gérer utilisateurs “

Sommaire d’identifiant

Acteur(s) Administrateur
Objectif L’administrateur peut gérer les utilisateurs
de l’application ( bloquer , débloquer )

Description d’enchainements

Pré conditions L’administrateur doit s’authentifier.


Post-conditions Changement de status de utilisateur.
Scénario nominal 1- l’administrateur demande la page “
Utilisateurs” .
2- le système affiche la page Utilisateurs.
3- l'administrateur clique sur button (
bloquer ou debloquer)
Si “bloquer" : saisie la raison du
suspension de compte utilisateur.

Scénario alternatif L’acteur saisie des informations erroné


alors le système affiche un message
d’information pour corrieré les
informations saisie.

4.3 Diagrammes de séquence système

Le diagramme de séquence est la représentation graphique des interactions entre les


acteurs et le système selon un ordre chronologique dans la formulation UML.

Ce diagramme est utilisé pour représenter certains aspects dynamiques d’un système :
dans le contexte d’une opération, d’un système, d’un sous-système, d’un cas
d’utilisation ( un scénario d’un cas d’utilisation ) selon un poit de vue temporel.

Dans cette phase, et après identification des cas d’utilisation, nous représentons le
scenario de réservation de logement à l’aide de diagramme de séquences système.
4.4 Diagramme de classes

Le diagramme de classe est un schéma utilisé en génie logiciel pour présneter les
classes et les interfaces des systèmes ainsi que les différentes relations entre celles-ci.
Ce diagramme fait partie de la partie statique d’UML car il faut abstraction des aspects
temporels et dynamiques.
Une classe décrit les reponsabilités, le comportement et le type d’un ensemble d’objets.
Les éléments de cet ensemble sont les instances de la classe.
Une classe est un ensemble de fonctions et de données (attributs) qui sont liées
ensemble par un champ sémantique. Les classes sont utilisées dans la programmation
orientée objet. Elles permettent de modéliser un programme et ainsi de découper une
tâche complexe en plusieurs petits travaux simples.
Génération du modèle logique des données :

A B Relations
1 1 A chaque entité de la table A correspond
exactement une entité de la table B.
1 0..1 A chaque entité de la table A correspond
aucune ou une entité de la table B.

1 0..* A chaque entité de la table A correspond


aucune ou plusieurs entités de la table B.

1 1..* A chaque entité de la table A correspond


une ou plusieurs entités de la table B.

Dictionnaire des données :

Classe Attribut Description Type de données Identifiant

Utilisateur Id_utilisateur Code utilisateur Int

Utilisateur nom Nom utilisateur Varchar(20)

Utilisateur prenom Prénom Varchar(20)


utilisateur
Utilisateur email Email utilisateur Varchar(30)

Utilisateur pass Mot de passe Varchar(30)


utilisateur
Utilisateur tel Numéro Varchar(30)
téléphone
utilisateur
Utilisateur dob Date de Date
naissance
utilisateur
Utilisateur Type_identite Type d’identité Varchar(20)
d’utilisateur
Utilisateur Compte_status Status de compte Varchar(20)
utilisateur
Utilisateur Profile_photo_l Lien de photo de Varchar(50)
ien profil utilisateur
Utilisateur Description_pr Description Varchar(100)
ofile profile de
l’utilisateur
Utilisateur adresse Adresse de Varchar(30)
l’utilisateur
Utilisateur ville Ville de Varchar(20)
l’utilisateur
Utilisateur région Région de Varchar(20)
l’utilisateur
Utilisateur Pays Pays de Varchar(20)
l’utilisateur
Utilisateur langues Langues parlons Varchar(20)
par l’utilisateur
Utilisateur Reception_sm Option de Boolean
s_bool reception sms de
utilisateur
Utilisateur suspension Suspension de Boolean
compte utilisateur
Utilisateur Registration_a L'année de Int
nne registation de
compte utilisateur
Utilisateur visibilite Visibilité de Boolean
compte utilisateur
Newsletter Id_newsletter Code newsletter int

Newsletter email Email newsletter Varchar(30)


Virement Id_virement Code virement Int

Virement Date_activatio Date activation Varchar(50)


n_code_client de code client
Virement Rib_client Rib bancaire de Varchar(30)
client
Virement Prix_total Totalité de Decimal
virement
Reservation Id_reservation Code réservation int

Reservation Prix_nuit Prix de nuit de decimal


location
Reservation Nb_nuit nombre de nuits int
passée
Reservation Date_debut Date debut de Date
réservation
Reservation Date_fin Date fin de Date
réservation
Reservation Type_paiemen Type de Varchar(20)
t paiement utilisée
Reservation status Status de Varchar(20)
réservation
Reservation Code_validatio Code de Varchar(50)
n_client validation de
réservation
Evaluation Id_evaluation Code evaluation int

Evaluation stars Nombre étoiles int


de l’evaluation
client
Evaluation date Date de Date
l’evaluation
Calendrier Id_calendrier Code calendrier int

Calendrier Date_debut Date debut de Date


période
d’occupation
Calendrier Date_fin Date fin de Date
période
d’occupation
Calendrier status Status de Varchar(20)
calendrier
Logement Id_logement Code logement int

Logement Nom_logement Nom de logement Varchar(30)

Logement Reglement_int Réglement Varchar(100)


erieur intérieur de
logement
Logement Prix_nuit Prix de nuit de Decimal
location de
logement
Logement caution Cautionnement Decimal
de location
Logement Nb_pers Nombre de int
personne
maximale
Logement Log_activation Code d’activation Varchar(50)
_code de logement
Logement latitude Latitude de Varchar(20)
logement dans le
map
Logement longitude Longitude de Varchar(20)
logement dans le
map
Logement adresse Adresse de Varchar(30)
logement
Logement description Description de Varchar(255)
logement
Logement Nb_chambres Nombre de int
chambre de
logement
Logement surface Surface de Decimal
logement
Logement Status Status de Varchar(20)
logement
Logement Principale_img Lien de l’image Varchar(50)
principale de
logement
TypeLogement Id_typelog Code de type int
logement
TypeLogement Libelle Libelle de type Varchar(20)
logement
TypeLogement Description Description de Varchar(50)
type logement
Local Id_local Code local int

Local description Description local Varchar(50)

Local largeur Largeur de local Decimal

Local Hauteur Hauteur de local Decimal

Local orientation Orientation de Varchar(20)


local
Local Nb_fenetre Nombre de int
fenetre de local
Equipement Id_equipement Code equipement int

Equipement Libelle Libelle de Varchar(20)


l’equipement
Equipement description Description de Varchar(20)
l’equipement
Equipement hauteur Hauteur de Decimal
l’equipement
Equipement Largeur Largeur de Decimal
l’equipement
Equipement prix Prix de Decimal
l’equipement
TypeLocal Id_typelocal Code type local int

TypeLocal Libelle Libelle de type Varchar(20)


local
TypeLocal description Description de Varchar(50)
type local
Modèle logique de donnèes :

Utilisateur (id_utilisateur, nom, prenom, email, pass, tel, dob, type_identite,


compte_status,profile_photo_lien,description_profile, adresse, langues,
reception_sms_booln, suspension, registration_name, visibilite).

Newsletter (id_newsletter, email).

TypeLogement (id_typelog, libelle, description).

Logement (id_logement, nom_logement, reglement_interieur, prix_nuit, caution,


nb_pers, log_activation_code, latitude, longitude, adresse, description, nb_chambres,
surface, status, principale_img, #id_typelog, #id_utilisateur ).

Reservation (id_reservation, prix_nuit, nb_nuit, date_debut, date_fin, type_paiement,


status, code_validation_client, #id_utilisateur, #id_logement).

Virement (id_virement, date_activation_code_client, rib_client, prix_total,


#id_reservation).

Evaluation (id_evaluation, stars, date, #id_reservation).

Calendrier (id_calendrier, date_debut, date_fin, status, #id_reservation).

TypeLocal (id_typelocal, libelle, description).

Local (id_local, description, largeur, hauteur, orientation, nb_fenetre, #id_logement,


#id_typelocal).

Equipement (id_equipement, libelle, description, hauteur, largeur, prix, 0#id_local).


Conclusion
Dans ce chapitre, nous avons présenté la conception détaillée, à la fois, de notre base
de données et de notre application Web. A ce stade, nous avons terminé une phase
importante qui est la conception générale. C’est ainsi qu’on peut aborder une étape
essentielle qui est la réalisation de l’application. Dans le chapitre suivant, nous allons
parler en détails de cette phase.
Chapitre 4 : Réalisation

Introduction

La phase qui suit une conception est éventuellement l’implémentation. Aprés les
trois chapitres précédents, nous arrivons à rassembler nos informations et réaliser notre
système, nous commençons ce chapitre par décrire l’environnement de développement
matériel et logiciel que nous avons adoptés. Nous présentons ensuite quelques
captures d’éctans du site web.

1. Environnement de développement

Dans cette partie, nous présentons les différents outils matériels et logiciels
nécessaires pour le dévloppement de notre application.

1.1 Environnement matériel

Pour la réalisation de ce projet on a disposé d’ :

 Un ordinateur :

Marque : MacBook Pro (15 pouces, 2018)


Processeur: Intel Core i7 à 2,6 GHz 16 Go 2400 MHz DDR4
Disque de démarrage: Macintosh HD
Graphique : Radeon Pro 560X 4 Go Intel UHD Graphics 630 1536 Mo
Mémoire: 16 Go
Disque dur : 512 Go SSD

1.2 Environnement logiciel


Cette section décrit l’environnement logiciel avec lequel nous avons réalisé
ce projet avec le rapport.
1.2.1 Choix des logiciels :
 Visual Paradigm est un outil UML CASE prenant en charge UML 2, SysML et la
notation de modélisation de processus métiers du groupe de gestion des objets.
Outre la prise en charge de la modélisation, il offre des fonctionnalités de
génération de rapports et d’ingénierie de code, y compris la génération de code.

Figure 4.1 : Visual Paradigm


 XAMPP est une distribution Apache entièrement gratuite et facile à installer
contenant MySQL, PHP et Perl. Le paquetage open source XAMPP a été mis au
point pour être incroyablement facile à installer et à utiliser.

Figure 4.2 : XAMPP


 Balsamiq Mockups est un outil permettant de créer facilement des prototypes
d'IHM électronique. Avec Balsamiq Mockups il est ainsi possible de prototyper tout
type d'applications ( desktop , web , smartphone, ..).

Figure 4.3 : Balsamiq Mockups


 Sublime Text est un éditeur de texte générique codé en C++ et Python,
disponible sur Windows, Mac et Linux. Le logiciel a été conçu tout d'abord
comme une extension pour Vim, riche en fonctionnalités.

Figure 4.4 : Sublime Text

 FileZilla Client est un client FTP, FTPS et SFTP, développé sous la licence
publique générale GNU. Il est intégré à la liste des logiciels libres préconisés par
l’État français dans le cadre de la modernisation globale de ses systèmes
d’informations.

Figure 4.5 : FileZilla Client


 Blockchain.info est un Portefeuille Bitcoin et Ethereum de longue date. C’est l’un
des sites Web les plus utilisés dans le monde de la cryptomonnaie. La plate-
forme de portefeuille de cryptomonnaies a été lancée en août 2011 et est basée
au Luxembourg.

Blockchain.info dispose également d’un explorateur complet de toutes les


transactions se produisant sur la blockchain. Cela aide les utilisateurs à
comprendre l’état actuel de Bitcoin, ainsi que visionner les dernières transactions
et le nombre de transactions par jour.

Figure 4.7 : Blockchain.info


1.2.1.1 Hebergement

L’hébergement de nom de domaine consiste à fournir les services des serveurs


DNS requis pour assurer la publication d’un nom de domaine sur internet.

 Ceci est ne nom de domaine de notre application web :

medhomepro.com

Figure 4.8 : site d’hébergement

1.2.1.2 Cpanel

cPanel est un panneau de configuration basé sur Linux conçu pour les hébergeurs
web. Constitué d'une interface graphique permettant l'automatisation des
paramètres, l'hébergement de site web est ainsi simplifié. cPanel est doté de 3
principales fonctions qui permettent d’accéder à différents niveaux d'utilisation tels
que l'administration et la revente d'un hébergement, ou la simple configuration de
site web. Ainsi, tous ces aspects sont contrôlés à partir d'un simple navigateur web.
Figure 4.9 : interface de cPanel

 Taches Cron

Les tâches Cron permettent d’automatiser certains scripts et commandes sur


votre site. Vous pouvez définir l’exécution d’une commande ou d’un script à une
heure spécifique chaque jour, chaque semaine, etc. Par exemple, vous pouvez
configurer une tâche Cron de suppression des fichiers temporaires chaque semaine
pour libérer de l’espace disque.

- Nous avons implémenté une tâche Cron pour les inciter les clients à remplir
le formulaire d’évaluation de réservation.
Figure 4.10 : tâches Cron

1.2.1.3 Service de messagerie SMS

Le service de messagerie SMS, plus connu sous le sigle de SMS (pour “ Short
Message Service “) ou les noms de “texto” ou de “minimessage”, permet de transmettre
de courts messages textuels. C’est l’un des services de la téléphone mobile(il a éét
introduit par la norme GSM).

- Choix de plateforme
Figure 4.11 : Plateforme SMS

Textlocal est la plateforme de SMS la plus avancée au Royaume-Uni. Elle offre aux
entreprises, aux groupes communautaires et aux organisations une solution SMS en
masse pour contacter les gens instantanément.

- Historique

Depuis 2005, plus de 165 000 utilisateurs ont envoyé plus d’un milliard de SMS sur
Textlocal plateforme en ligne. D’un simple message texte à billet ou un bon
personnalisé, ils ont développé une abondance de fonctionnalités adaptés à toutes les
industries, grandes ou petites.

- Utilisation de API SMS


Figure 4.12 : Code PHP de API SMS

Avec votre compte Textlocal vous avez un accès instantané à notre API, cela vous
permet d’intégrer facilement les services SMS et MMS avec votre site web, logiciel ou
application CRM en PHP, ASP, .NET, Java ou tout autre langage.

1.2.1.4 Sécurité

La sécurité des systèmes d’information (SSI) ou plus simplement sécurité


informatique, est l’ensemble des moyens techniques, organisationnels, juridiques et
humains nécessaires à la mise en place de moyens visant à empêcher l'utilisation non-
autorisée, le mauvais usage, la modification ou le détournement du système
d'information. Assurer la sécurité du système d'information est une activité du
management du système d'information.

- Confidentialité de domaine
Avec la confidentialité de domaine, vos informations seront cachées de contact
personnelles de la vue publique, vous protégeant des spammeurs, des mineurs de
données, des pirates informatiques et du grand public qui effectuent des recherches sur
la base de données internet des déclarants WHOIS. Whois.net est un service de
recherche fourni par les registres Internet, par exemple les Registres Internet régionaux
(RIR) ou bien les registres de noms de domaine permettant d'obtenir des informations
sur une adresse IP ou un nom de domaine. Ces informations ont des usages très
variés, que ce soit la coordination entre ingénieurs réseaux pour résoudre un problème
technique, ou bien la recherche du titulaire d'un nom de domaine par une société qui
souhaiterait l'obtenir.
Figure 4.13 : Whois.net

1.2.1.5 STRIPE

Stripe est une société américaine d'origine irlandaise, destinée au paiement par
internet pour particuliers et professionnels.

Stripe développe les outils les plus puissants et les plus flexibles pour le commerce en
ligne. Que vous lanciez un service d'abonnement, une place de marché à la demande,
une boutique en ligne ou une plateforme de financement participatif, les API et les
fonctionnalités de Stripe vous permettent de créer le meilleur produit possible pour vos
utilisateurs. Des millions d'entreprises parmi les plus innovantes du monde accélèrent
leur croissance grâce à Stripe.

- Logistique de paiement

Les développeurs web intègrent des processus de paiement sans être obligé d'avoir un
compte marchand. La société demande 7 jours d'attente pour lutter contre la fraude,
après quoi les fonds vont directement dans le compte de destination.

Figure 4.14 : STRIPE

1.2.1.6 BLOCK.IO
Block.io est un service où vous pouvez ouvrir les portefeuilles des principales crypto-
devises. Après l'enregistrement, vous avez accès à trois portefeuilles: Bitcoin ,
Dogecoin ,Litecoin.

Figure 4.15 : Block.io

- Installation de certificat SSL

SSL signifie Secure Socket Layer, assurant le transfert de données sendsibles


telles qu’une carte de crédit ou des informations de connexion entre un
navigateur Web et un serveur. Avoir un certificat SSL permet de crypter les
données afin qu’elles ne puissent être lues que par le serveur autorisé.
Figure 4.16 : Interface SSL/TLS

- Cryptage

Le chiffrement (ou cryptage) est un procédé de cryptographie grâce auquel on


souhaite rendre la compréhension d'un document impossible à toute personne
qui n'a pas la clé de (dé)chiffrement. Ce principe est généralement lié au
principe d'accès conditionnel.

 Algorithme utilisé MD5

MD5 (Message Digest 5) est une fonction de hachage cryptographique qui


calcule, à partir d'un fichier numérique, son empreinte numérique (en
l'occurrence une séquence de 128 bits ou 32 caractères en notation
hexadécimale) avec une probabilité très forte que deux fichiers différents
donnent deux empreintes différentes.
Figure 4.17 : Cryptage des mot de passe

 Le salage

Le salage, est une méthode permettant de renforcer la sécurité des


informations qui sont destinées à être hachées (par exemple des mots de
passe) en y ajoutant une donnée supplémentaire afin d’empêcher que deux
informations identiques conduisent à la même empreinte (la résultante d’une
fonction de hachage). Le but du salage est de lutter contre les attaques par
analyse fréquentielle, les attaques utilisant des rainbow tables, les attaques par
dictionnaire et les attaques par force brute. Pour ces deux dernières attaques,
le salage est efficace quand le sel utilisé n’est pas connu de l’attaquant ou
lorsque l’attaque vise un nombre important de données hachées toutes salées
différemment.

1.2.2 Choix des langages


Bootstrap est une collection d'outils utiles à la création du
design de sites et d'applications web. C'est un ensemble qui
contient des codes HTML et CSS, des formulaires, boutons,
outils de navigation et autres éléments interactifs, ainsi que
des extensions JavaScript en option.
HTML5 est la dernière révision majeure du HTML. Cette
version a été finalisée le 28 octobre 2014. HTML5 spécifie
deux syntaxes d'un modèle abstrait défini en termes de DOM
: HTML5 et XHTML5.

JavaScript est un langage de programmation de scripts


principalement employé dans les pages web interactives mais
aussi pour les serveurs avec l'utilisation (par exemple) de
Node.js.

PHP: Hypertext Preprocessor, plus connu sous son sigle


PHP, est un langage de programmation libre,
principalement utilisé pour produire des pages Web
dynamiques via un serveur HTTP, mais pouvant également
fonctionner comme n'importe quel langage interprété de façon locale. PHP
est un langage impératif orienté objet.

Symfony est un ensemble de composants PHP ainsi qu'un


Framework MVC libre écrit en PHP. Il fournit des
fonctionnalités modulables et adaptables qui permettent de
faciliter et d’accélérer le développement d'un site web.

2. Présentation de la solution Web

Dans cette partie, nous allons exposer quelques interfaces de notre


application web en essayant de présenter les fonctionnalités les plus importantes
dans notre travail.
2.1 Enchainement des interfaces
2.2 Interfaces
Figure 2.2.1 : Page d’accueil

Figure 2.2.2 : interface de connexion


Figure 2.2.3 : interface de récupération de mot de passe
Figure 2.2.4 : interface de confimation de récupuration de mot de passe

Figure 2.2.5 : interface d'inscription


Figure 2.2.6 : interface de confirmation de conditions générales MedHomePro
Figure 2.2.7 : interface de téléchargement de photo de profil
Figure 2.2.8 : interface de confirmation de numéro de téléphone
Figure 2.2.9 : interface de confirmation d’adresse e-mail

Figure 2.2.10 : tableau de bord utilisateur


Figure 2.2.11 : interface contactez-nous
Figure 2.2.12 : interface mes réservations “ Client “
Figure 2.2.13 : interface mon profil

Figure 2.2.14 : interface mon compte


Conclusion

Dans ce chapitre, nous avons présenté l’environnement matériel et logiciel utilisé


lors du développement du site web. Ensuite, on a présenté quelques captures d’ecran
montrant le bon fonctionnement de notre application.
Conclusion générale

Le présent rapport est réalisé dans le cadre de notre stage de fin d’études en
vue de l’obtention du diplôme de la Licence Appliquée technologie de l’informatiques
parcours DSI.
Ce travail a pour objectif de concevoir et développer une plateforme
communautaire payante de location et de réservation de logements de particuliers.

Ce projet était bénéfique pour nous dans plusieurs sens. Il nous a donnée
l’opportunité de voir de plus proche sur le monde professionnel qui implique de la
responsabilité et de la discripline ainsi que du travail collaboratif d’équipe, il a été une
occasion pour améliorer nos connaissances dans les environnements de travail et de
maitriser les langages de programmation pour qui seront certes utiles au niveau
professionnel.

Enfin, nous espérons que nous avons réussi à réaliser une plateforme
fonctionnels qui satisfait les besoins des futurs utilisateurs et qui répond à leurs
attentes.