1
2
Tout au long de
Dr FOKOU PELAP Géraud, notre encadreur, pour son attitude compréhensive, ses
conseils et pour son encadrement
Nos enseignants de l’année en cours et des niveaux précédents, pour leur engagement
à nous instruire malgré les conditions difficiles que connaît l’enseignement supérieur
actuellement. Nous énumérons entre autres : Pr Maurice TCHOUPE, Dr Mathurin
SOH, Pr Elie FUTE, Dr Alain BOMGNI, Dr AZANGUEZET BENOIT, Pr KENGNE
Vianney.
Nos camarades de promotion et nos supérieur académique de master 1, pour leurs
critiques constructives.
Les multiples communautés de développeurs Open-source, pour leur sacrifice au nom
du Logiciel Libre.
3
Introduction générale
4
CHAPITRE 1 :
I- Présentation du projet
1. Sujet du projet :
Le sujet du projet tel qu’il a été définie dans la convention du projet est intitulé : «
Conception et développement d’une application Web de gestion immobilière
»
2. Etude de l’existant :
Comme toutes les applications on peut distinguer deux types de complexités :
5
langage de programmation et le Framework qui sera utilisée pour ce
langage.
• Complexité essentielle : causée par le problème à résoudre qui ne peut
pas être négligeable, on va spécifier cette complexité dans la partie des
besoins fonctionnelles.
Les avantages qu’offrent les applications Web sont décrits dans la figure ci-
dessous.
Après une observation continuelle sur le terrain nous avons pu recenser les
insuffisances suivantes :
6
• Gérer les informations relatives aux biens
• Gérer l’interaction du vendeur avec ses clients après-vente
• Rendre les informations stockées dans la base de données visibles
uniquement à ceux qui ont le droit
7
de métier. Les résultats de l’analyse ne dépendent d’aucune technologie
particulière.
8
Figure 3 : Diagramme de Gantt
9
CHAPITRE 2 :
ANALYSE ET CONCEPTION
10
Modifier un utilisateur.
Supprimer un utilisateur.
• Gérer les rôles :
Consulter les rôles.
Chercher à un rôle.
Ajouter un rôle.
Modifier un rôle.
Supprimer un rôle.
• Gérer les données concernant les biens immobiliers.
Gestion des biens :
• Consulter les biens.
• Chercher à un bien.
• Ajouter un bien.
• Modifier un bien.
• Supprimer un bien.
• Gérer les données relatives aux utilisateurs.
Gestion des utilisateurs :
• Consulter les utilisateurs
• Modifier un utilisateur
• Supprimer un utilisateur
Gérer les réclamations des utilisateurs :
Recevoir une réclamation :
• Chercher le client par son identifiant
• Chercher le bien de ce client
• Créer la réclamation
Traitement de la réclamation
• Actualiser l’état de réclamation
Pour mettre en place une solution adéquate aux attentes des concepteurs des
architectures dynamiques, on doit prendre en considération les contraintes qui
caractérisent ce système.
11
Notre application doit nécessairement assurer les besoins suivants :
• Chaque utilisateur ne doit pas accéder vers des services s’il n’a pas les
permissions de ces services.
• L’application doit respecter les principes d’IHM.
• L’application doit être facile à utiliser.
II. Conception :
1. Les acteurs :
Un acteur représente un rôle joué par une personne qui interagit avec le système.
12
Figure 4 : Diagramme de cas d’utilisation général
b. Authentification :
13
du mot de passe le système donne à l’utilisateur la possibilité de
changer son mot de passe.
14
Figure 6 : Diagramme de cas d’utilisation « publication des biens »
15
Figure 7 : Diagramme de cas d’utilisation « création d’une réclamation
»
16
Figure 8 : Diagramme de cas d’utilisation du « Traiter réclamation
»
17
Figure 9 : Diagramme de cas d’utilisation « Gestion des utilisateurs
»
18
h. gestion des paiements :
• Cas d’utilisation : gérer les paiements
• Acteurs : Utilisateur
• Description : L’utilisateur doit choisir un choisir un bien ou l’ajouter au
panier puis effectuer son paiement.
a. Authentification
Acteurs : Utilisateur
Objectif : Créer une réclamation
Précondition : Le client se doit de s’authentifier et avoir eu à acheter un bien
Postcondition : Le client est en attente d’une réponse de l’admin concernant sa réclamation.
Scénario nominal :
1. S’authentifier
2. Ajouter des informations concernant sa réclamation,
3. Envoyer sa réclamation
Scénario alternatif : Au cas où le formulaire contient des champs obligatoires vide ou
incorrect le système lui demande de compléter les informations manquantes
Acteurs : Administrateur
Objectif : Traiter les plaintes ou réclamations d’un client
Précondition : l’administrateur doit s’authentifier et il doit avoir des réclamations faites par
les utilisateurs.
20
Postcondition : Le client est en attente d’une réponse de l’admin concernant sa réclamation.
Scénario nominal :
1. S’authentifier
2. Consulter la liste des réclamations faites par les clients
3. Mettre à jour une réclamation après son traitement (c’est à dire qu’il change le statut
d’une réclamation après l’avoir traité : soit il est à traiter, soit à non-traiter)
4. Enregistrer la mise à jour de la réclamation
Scénario alternatif
1. S’authentifier
2. Consulter la liste des réclamations faites par les clients
3. Pas de réclamations émis par les clients
4. Enregistrer
Scénario alternatif : S’il y a aucun utilisateur, le système enregistre et fait une mise à jour
Acteurs : Utilisateur
21
Objectif : Effectuer l’achat d’un bien
Précondition : Ajouter un article au panier ou choisir un article.
Postcondition : Recevoir son bien.
Scénario nominal :
1. S’authentifier
2. Ajouter un article au panier
3. Choisir le mode de paiement (par carte bancaire, par Mobile Money, par Orange
money)
4. Confirmer le paiement
5. Effectuer le paiement
Scénario alternatif :
• Si les informations (mot de passe, solde insuffisant…) entrées par l’utilisateur sont
correctes, alors l’achat sera confirmé.
• Sinon, le paiement aura échoué et l’utilisateur aura la possibilité de choisir son
mode de paiement à nouveau
Scénario alternatif :
4. Diagrammes de séquence :
a. Authentification :
22
Pour accéder à l’application, l’utilisateur doit s’authentifier par son login et son
mot de passe, S’il n’y a aucun problème donc il y aura l’accès au système, sinon
l’application affiche un message d’erreur.
23
b. Gestion des utilisateurs
i. Supprimer utilisateur :
24
Lorsque l’admin choisit un utilisateur à supprimer, le système génère une boite de
dialogue pour confirmer la suppression de cet utilisateur, s’il est sur alors le
système supprime cet utilisateur est affiche un message informe que la
suppression est réalisée avec succès.
Lorsque le super admin choisit un admin dont il veut retirer son rôle, le système
génère une boite de dialogue pour confirmer la suppression de ce rôle, si le super
admin est sûr du processus, le système supprime ce rôle est affiche un message
informe que la suppression a été réalisée avec succès.
25
Figure 14 : Diagramme de séquence « Créer une réclamation »
26
i. Publier un bien :
27
Figure 15 : Diagramme de séquence « Publication d’un bien »
28
e. Gestion des paiements :
29
f. Traitement des réclamations :
30
Figure 18 : Diagramme de séquence « Gestion de suggestions »
5. Diagramme d’activité :
32
b. Gestion des utilisateurs
33
c. Création d’une réclamation
Cliquer sur le bouton créer une réclamation : permet à l’utilisateur d’initie une
réclamation.
Remplir un formulaire de réclamation : consiste à renseigner des informations en
désaccords avec le bien acheté où louer.
34
Consulter les réclamations : Ici, l’utilisateur va lancer l’application, ouvrir la liste des
réclamations et pourra la parcourir.
Liste des réclamations : Cette activité sera faite par le système, il fournira à l’utilisateur la
liste des réclamations.
Mise à jour des réclamations : Ici, l’administrateur sera chargé de traiter une réclamation.
Enregistrer la mise à jour : Toujours faite par l’administrateur, après avoir traité une
réclamation il pourra l’enregistrer et changer le statut de cette dernière.
35
Figure 23 : Diagramme d’activité « Publier un bien »
f. Gestion de paiements
Ajouter un article au panier : est une méthode appliquée par tous les utilisateurs du site, qui
consiste à incrémenter les éléments dans le panier de l'utilisateur.
36
Afficher le contenu du panier : le système affiche le contenu du panier pour permettre à
l'utilisateur de vérifier ces différents articles choisir et de modifier sa commande si besoin
s'impose.
Choisir le mode de paiement : consiste à dire par l'utilisateur quel mode de paiement listé, il
va payer ça transaction.
Informations du paiement : le système lui passe un formulaire à remplir les informations qui
correspond à son moyen de paiement choisi.
Entrée les informations de son mode de paiement : consiste juste à donner les informations
nécessaires pour débiter le solde de la transaction effectuée.
Vérification : le système vérifie les informations entrées pour finaliser l'achat et lui retourner
une notification de paiement réussi en cas de Bonne informations ou Entrée les informations
de son mode de paiement en cas d'échec de paiement
37
Saisir suggestions : l’utilisateur saisir sa suggestion
6. Diagramme de classes :
38
On peut dégager les principales classes illustrées dans la figure ci-dessous pour
avoir vue plus claire du système étudié.
39
III. Environnement et outils de développement :
1. Outils de développement :
40
Le JavaScript est un langage informatique utilisé sur les
pages web. Ce langage à la particularité de s'activer sur le
poste client, en d'autres mots c'est votre ordinateur qui va
recevoir le code et qui devra l'exécuter. C'est en opposition à
d'autres langages qui sont activé côté serveur. L'exécution du
code est effectuée par le navigateur internet tel que Firefox
ou Internet Explorer.
L'une des choses primordiales à savoir est de bien se rendre compte que le
JavaScript n'a aucun rapport avec le Java qui est un autre langage informatique.
41
Editeur intégré propose des fonctions de complètement, de contrôles syntaxiques
et sémantiques, d'avertissements et
de conseils, de reprises de code («
refactoring » : renommage,
changement des méthodes, gestion
des classes, …), de sauvegarde et
reprise.
Il supporte principalement les langages suivants :
- Environnement Matériel :
Nous avons utilisé les ordinateurs HP (Hewlett-Packard), DELL, qui sont
caractérisés respectivement par :
42
données qui héberge le système de gestion de base données MySQL et en fin le
ou les postes client qui exploite l’application au travers le navigateur Web.
Les applications Angular et Spring Boot suivent le modèle MVC, De plus des
routes qui sont utilisées pour mapper les URL aux actions de contrôleur
désignées, comme indiqué ci-dessous :
43
Figure 28 : Cycle d’une requête dans une application
Angular& Spring Boot
44
Chapitre 3 :
Réalisation
I. Réalisation :
1. Authentification :
45
Figure 29 : interface d’authentification
46
Figure 30 : interface d’authentification avec un message d’erreur
2. Réinitialiser le mot de passe
Si l’utilisateur oublie son mot de passe il demande de le réinitialiser, donc il
clique sur la phrase « Mot de passe oublié ? », et la page ci-dessous sera affichée :
Si l’utilisateur saisit une adresse email non-valide (n’existe pas dans la base de
données) le système affiche un message d’erreur :
47
Si non, le système envoie la page ci-dessous à l’adresse email
48
Figure 44 : Le formulaire du changement du mot de passe
Si l’utilisateur fait une erreur, un message sera affiché :
49
Figure 46 : L’affichage des utilisateurs
b. Supprimer un utilisateur :
50
Figure 48 : Supprimer un utilisateur
c. Ajouter un utilisateur :
51
Figure 49 : Le formulaire d’ajout utilisateur
a) Créer un rôle :
52
Si le rôle est bien créé l’application affiche la liste des rôles avec un message de
succès, cette page offre à l’utilisateur de modifier, supprimer ou afficher les
permissions d’un rôle.
53
Figure 52 : L’affichage des programmes
54
b. Ajouter un projet :
55
8. Gestion des clients :
a. Liste des clients :
b. Importer un fichier :
On peut importer un fichier contient les informations sur les clients, ce fichier
doit être du type XLSX ou CSV, on utilise dans l’exemple un fichier Excel avec
extension XLSX.
c. Exporter un fichier :
Pour exporter un fichier Excel, on fait choisir le type du fichier (csv ou xlsx) et on
doit cliquer sur « Export ».
57
Figure 59 : résultat d’exporter fichier
Dans la liste des clients il y a une colonne qui peut contenir une petite icone
Cette icone indique que le client a acheté un bien ou non.
L’application donne deux possibilités :
58
Figure 61 : Ajouter un achat
59
Figure 62 : Créer une réclamation
60
Figure 63 : Affichage des réclamations
61
Conclusion générale
L’expérience vécue durant ce cycle de licence était fort profitable, dans la mesure
où il a permis de consolider nos acquis au sein de la Faculté des sciences
notamment en matière de développement informatique.
62
63