République Algérienne Démocratique et
Populaire
Ministère de l'Enseignement Supérieur et de la
Recherche Scientifique
2015/2016
UniversitéAMO de Bouira
Facultédes Sciences et des Sciences
Appliquées Département d'Informatique
Mémoire de Licence
en Informatique
Spécialité: Système
Informatique
Thème
Portail web de location des véhicules
Encadrépar Réalisépar
-- Badis Lyes
-- Bouakline Toufik
|
-- Hadjadj Abd Elkrim
-- Saibi Ibrahim
-- Lamraoui Mourad
|
Remerciements
Nous devons remercier ALLAH le tout puissant pour toute la
volontéet le courage qu'il nous a donnée pour l'achèvement
de ce travail.
Nous tenons à remercier le Président et les
membres du jury, qui ont bien daignésiéger la soutenance de notre
mémoire .
Aussi nous exprimons nos très sincères
remerciements à nos encadreures Mr : Lyes Badis le chef du departement
informatique et Mr : Toufik Bouakline le directeur de l'en-terprise itsoft pour
son soutien, ses conseils jud icieux et sa grande bien vaillance durant
l'élaboration de ce travail.
Nous remerciements s'adressant égalment a tout les
enseignent de l'universite de Akli Mohaned Oulhadj Bouira Algerié,
departemet informatique ayant participéd'une manière ou d'une
autre a notre formation de licience .
A la fin nous remerciements les plus sincères
à toutes les personnes qui ont contribuéde près ou de loin
à l'élaboration de ce mémoire ainsi qu'àla
réussite de cette formidable année Universitaire...
Dédicaces
Je dédie ce travail à:
Mes très chers parents
Mes frères et Mes soeurs
A tout la famille
Et tous mes amis.
Spécialement à Ibrahim et Mourad et Abd
Elouhabe
Hadjadj Abd Elkrim.
Je dédie ce mémoire à:
Mes très chers parents
Mon frère et mes soeurs, chacun à son
nom;
Tous mes chers amis et mes collègues de
l'Universitéde Bouira surtout Abdelkrim, Ibrahim
et Achour;
Tout l'amour dont vous m'avez entouré, pour tout ce
Que vous avez fait pour moi.
Tous mes chers enseignants qui m'ont enseigné.
Lamraoui Mourad.
Je dédie ce projet à:
Mes très chers parents.
Mes frères, mes soeurs, mes oncles et mes
tantes.
Tous mes chers amis et mes collègues de
l'Universitéde Bouira surtout Abdelkrim et
Mourad, Abd Elouhabe Walid, Amin
Tous les enseignants.
Saibi Ibrahim.
...agúrtú31
rbà z_14al ,ÛICAys1
CA~·tF1,~úrtú3l
TkbJ Ylà T111w~ :
Igtt A CUS
Résumé
Ce document est le rapport final du Projet de Fin
d'Études de licence systeme informatique, On générale
L'objectif de ce travail est de développer un portail web dynamique pour
les locations de voitures on Algérie, Cette idée de projet est
apparue suite au besoin des nouveaux outils de communication entre les agences
de location de voitures et leurs clients on Algérie ou on
étranger, parce que les clients peuvent faire la réservation en
ligne selon leur besoin et leurs préférences de véhicules
;
Mots clés : portail web, location de
voitures, réservation en ligne, ...
Abstract
This document is report of the Computery Systems Studies Final
Project, The general purpose of this work is to develop a dynamic web portal
for car rental in Algeria, This project idea came after the need of new tools
of communication between car rental and their customers in Algeria or abroad
it, because customers can make online booking according to their needs and
preferences of Cars ;
Key words : web portal, car rentals, online
booking, ...
viakil
·l
·®àj T~AA1 Tns1 «wts
, ribi.t1 rKm
·Ahn1 r§rqt1 ·
Tqy3wl £@
ry~1t TykyAn§
Tyúrtkj T:11w.:1 r§wW'
w TMm`1 I@ · ·A`l
`dh1 TAà TfOb,
ry--11 ûAsF · TM · T--A~
T~ytú rKml I@ rk ·
û ,rz · · ûICAys1
ms§
3/4 -Ð ,d§d> AO.3j
TM·AF Yi Ah ·?CA-:' · 1
rlz-?,.?1 · Ah®mà
ûICAys1 . oeh3A->Ayt+
Aq · -,úrtú3l rbà
1z-?'-'4§ ~
·A3zl
1
Table des matières
Table des matières 1
Table des figures 4
Liste des tableaux 6
Liste des abréviations 7
Introduction générale 1
1 Phase d'étude de la
faisabilité2
1.1 Introduction 2
1.2 Objectif 2
1.3 Etat de l'art 3
1.3.1 La Location de voiture 3
1.3.2 La réservation en ligne 4
1.3.3 Présentation des sites de réservation
célèbres en ligne : 5
1.4 Présentation du projet : 11
1.4.1 Le Portail web : 12
1.4.2 Etudes de l'existence de projet en Algérie : 13
1.4.3 Qu'est ce qu'un portail de Group Location Véhicule?
13
1.4.4 L'analyse de besoin (Collecte des exigences) 13
1.5 Conclusion 14
2 Conception 15
2
Table des matières
2.1 Introduction : 15
2.2 Choix de la méthode de modélisation : 15
2.3 méthode de coneception MERISE 16
2.3.1 Présentation de la méthode MERISE 17
2.4 Conception detaillé 18
2.4.1 Modèle de Conception de communication: MCC 18
2.4.2 Modèle de Conception de traitement MCT 22
2.4.3 Modèle Conceptuel de Données MCD. 25
2.4.4 Modèle logique des données MLD : 29
2.5 Dictionnaire de données : 32
2.6 Conclusion : 36
3 Réalisation et implimentation de projet
37
3.1 Introduction : 37
3.2 Présentation des tables de la base de données :
37
3.3 Les langages de programmation : 41
3.3.1 le langage php : 42
3.3.2 Le langage HTML et CSS : 42
3.3.3 JavaScript et Ajax : 43
3.3.4 Le Framework jQuery : 43
3.3.5 Le Framework Bootstrap : 44
3.3.6 Le langage des requêtes SQL : 44
3.4 Les Logiciels utilisés : 45
3.4.1 WampServer 45
3.4.2 Notepad++ 45
3.4.3 Les navigateurs web 45
3.5 Présentation de portail web 46
3.5.1 Architecture de navigation 46
3.5.2 La page d'accueil : 46
3.5.3 La page de connexion : 48
3.5.4 La page de l'inscription : 48
3.5.5 Les pages de résultat de rechercher : 49
3.5.6 La formulaire remplie par client : 50
3
Table des matières
3.5.7 La page de contrat de réservation : 50
3.6 Conclusion : 51
Conclusion générale et perspectives
52
Bibliographie 54
A Algorithme de recherche 55
4
Table des figures
1.1
www.rentalcars.com(étape1)
6
1.2
www.rentalcars.com(étape2)
6
1.3
www.rentalcars.com(étape3)
7
1.4
www.rentalcars.com(étape3)
7
1.5
www.rentalcars.com(étape4)
8
1.6
www.rentalcars.com(étape5)
8
1.7 Air France-Réservation de vols 9
1.8 Air France-Réservation d'hôtels 9
1.9 Air France-Réservation étape 2 10
1.10 Air France-Finalisation Réservation 11
2.1 MCC de client 19
2.2 MCC de résponsable d'agence 20
2.3 MCC de l'administrateur 21
2.4 MCT de client 23
2.5 MCT de l'adminstrateur de portail 24
2.6 MCT de résponsable de l'agence 25
2.7 le schéma de Modèle conceptuelle des
données 28
2.8 le schéma de Modèle logique des
données 32
3.1 les tables de base données 38
3.2 la table d'agence. 38
3.3 la tabe de vehicule 39
3.4 la table de client. 39
5
Table des figures
3.5 la table contrat 39
3.6 la tabe de marque. 40
3.7 La table categorie : 40
3.8 la table de modele. 40
3.9 la table reservation 40
3.10 la table wilaya. 41
3.11 la table admin. 41
3.12 la table lettre 41
3.13 le principe de fonctionnement de PHP. 42
3.14 la page d'accueil de portail. 47
3.15 la page de connexion 48
3.16 la page de l'inscription 48
3.17 page des agences. 49
3.18 page des véhicules. 49
3.19 formulaire de réservation. 50
3.20 la page de contrat. 51
6
Liste des tableaux
2.1 les flux de client 19
2.2 les flux de résponsable d'agence 20
2.3 les flux de l'administrateur de portail 21
2.4 les informations de la wilaya. 32
2.5 les informations de l'admin 33
2.6 les informations de véhicule 33
2.7 les informations de l'agence. 34
2.8 les Informations de client. 34
2.9 les informations de la marque 35
2.10 les informations de la modèle. 35
2.11 les informations de la catégorie. 35
2.12 les Informations de contrat. 36
2.13 les Informations de lettre. 36
3.1 Titre du tableau 47
7
Liste des abréviations
UML Unified Modeling Language.
POO Programation OrientéObjet.
CTI Centre Technique d'Informatique.
CETE Centre d'Etudes Techniques de l'Equipement. MCC
Modèle de Conception de communication.
DCC Diagramme conceptuel de contexte. MCT Modèle de
Conception de traitement. MCD Modèle Conceptuel de Données. MLD
Modèle logique des données.
PHP Hypertext Preprocessor.
HTML HyperText Markup Language.
CSS Cascading Style Sheets.
SQL Structured Query Language.
DDL Data Definition Language en français LDD : langage de
définition des données
XML Extensible Markup Language.
1
Introduction générale
Aujourd'hui, l'Internet et exécutésur une grande
échelle pour la plupart des institutions culturelles scientifiques,
économiques et autres ...
Aujourd'hui, dans chaque agence de location des voitures
utilise une application desktop, pour gérer les taches de
location(gérer les voitures, stocker tout ancienne opération ) ,
et pour faciliter les relations avec les clients, mais avec cette solution il y
à toujours des manques ( le client doit déplacer toujours vers
l'agence pour visiter et choisir les voitures, le client ne sait pas les
nouvelles promotions des agences à l'exception des supports
traditionnels tels que les journaux ... ), ce qui rend la relation entre les
clients et l'agence désagréable, Dans ces contexte l'agence de
location de voiture doit avoir un espace de travail sur l'Internet pour publier
les annonces et pour en savoir plus sur les nouveaux développements dans
le monde de réservation en ligne pour les voitures.
Notre projet consiste à réaliser un portail web
de réservation des véhicules en ligne pour la
sociétéalgérienne, et les touristes.
La réalisation de projet comporte trois chapitres. Le
premier chapitre présente l'étude de faisabilitédu projet,
Le deuxième chapitre est consacréà la conception et la
modélisation des données de portail, Le troisième chapitre
présentera les outils de développement et la technologie
utilisée pour implémenter le projet.
Enfin, on présentera la mise en oeuvre
(hébergement) et l'implémentation de portail et les
différents Résultats obtenus.
2
Chapitre1
Phase d'étude de la faisabilité
1.1 Introduction
Nous somme dans Le XXIe siècle, c'est la
mondialisation, la communication entre les hommes devient de plus en plus
rapide et par tout, grâce a une nouvelle technologie qui est l'Internet.
Aujourd'hui la plus part des personnes communiquent avec Internet parce qu'elle
est disponible pour tous et offre des millions d'informations et services
Pour cela nous avons réaliséun portail web
dynamique pour la location des véhicules qui est apprue suite au besoin
des clients on Algérie ou on étranger qui peuvent faire la
réservation en ligne selon leur besoin et leurs
préférences de véhicules avec les agences de location.
Dans ce chapitre on represente l'étude de
faisabilitéde notre projet de la réalisation d'un portail web
pour la reservation des véhicules
1.2 Objectif
Pour obtenir une bonne qualitéde projet informatique, il
faut maitriser les processus
d'élaboration.
L'étude de la faisabilitéest la première
étape de cycle de vie d'un projet après l'idée. Cette
étape est une cléde développement, elle permet de
déterminer si le développement proposévaut la peine
d'être mis en oeuvre et déterminer les fonctionnalités que
doit
Chapitre 1 Premier chapitre
3
posséder le projet. Grâce à cette phase on
peut étudier l'existence de projet, le marchépotentiel
de produit et ses exigences.
1.3 Etat de l'art
La phase élémentaire dans l'initiation d'une
étude, d'une rédaction, d'un mémoire commence par
l'état de l'art. Elle comprend l'état de connaissances, les
différentes parties de réalisations, et permet de :
| Connaître l'exploitabilitéde votre idée.
| Vérifier l'originalitéde votre idée :elle
réalisépar quelqu'un d'autre ou non.
| Donner des nouvelles idées sur le
développement de votre projet, et des indications sur les
problèmes qui peuvent être trouvés dans la
réalisation de projet.
1.3.1 La Location de voiture
Définition [1] La location de voiture est
un service offert par des professionnels détenteurs d'automobiles de
tourisme ou de véhicules utilitaires. Ce service consiste pour le client
(professionnel ou particulier) à réserver et à jouir d'un
véhicule pour une période donnée allant de quelques heures
à plusieurs mois.
Il existe enfin des systèmes de location de
véhicules de luxe avec chauffeurs. Ceux-ci sont réservés
pour les évènements.
Le marchéde la location se partage entre :
| la location à courte durée, d'une journée
à plusieurs jours.
| la location à longue durée, pour un an et
plus.
| la location à très courte durée, de moins
d'une heure à quelques heures de location.
Evolution des usages de location de voiture
[2]
La location de voitures est apparue aux Etats-Unis en tant que
complément des transports en commun, notamment pour les personnes qui
traversaient le pays en avion et qui avaient besoin d'une automobile à
leur arrivée. Par la suite, cette pratique s'est diffusée en
Europe : la location était proposée dans les gares et les
aéroports pour compléter un trajet
Chapitre 1 Premier chapitre
en train ou en avion. Puis la location s'est
développée auprès d'une clientèle d'entreprises
locales qui utilisent la location pour leurs besoins ponctuels.
Les Statistiques sur les locations de voitures en
Algérie
À titre d'exemple, Lorsqu'on lance une recherche dans
dz compass sur la location de voiture, on trouve plus de 8067 locations [3], et
sachant que chaque wilaya contient plusieurs agences, Mais malgrétout
ça, on ne trouve que des informations sur les agences et les tarifs sans
réservation en ligne. Ce resultat de recherche démontre la
nécessitéd'un espace web [portail web] qui regroupe tout les
agences de véhicules, et permet de créer des comptes de gestion
et de réservations en ligne.
1.3.2 La réservation en ligne
Définition:
La réservation en ligne est une demande de
réservation d'un produit ou d'un service d'une agence par un simple clic
(réserver) oùle client peut être dans sa maison. Autrement
dit, la réservation en ligne est une option rendant les
réservations plus rapides, plus sures, simples et par tout.
Cycle de vie :
1. l'agence ou le vendeur doivent choisir une façon de
mettre leur produit sur web: -- Crée un site web personnel (une
méthode traditionnelle).
-- S'inscrire dans un portail web qui garanti un grand nombre de
visites plus que dans un site web personnel.
2. Mettre ces produits sur le site avec pleins d'informations
(nom de produit, le prix, type de vente, location, type de payement,...).
3. le client doit choisir ses demandes sur web et
réserver selon ses besoins en respectant le type de payement de
produit.
4
Les domaines de réservation en ligne :
Chapitre 1 Premier chapitre
5
Il y a plusieurs domaines qui exploitent la réservation en
ligne, parmi ses domaines on
cite :
-- la réservation des voyages.
-- la réservation des hôtels.
-- la réservation des voitures (location de voitures).
-- réservation des mini-services telles : dîner dans
un restaurant, nouvelles marques
des vêtements , des produits informatiques . .
.
L'importance de la réservation en ligne
:
Grâce à la réservation en ligne on peut
choisir le produit comme dans un magasin réel: -- sans se
déplacer, et à toute heure de la journée.
-- sans prendre son téléphone pour communiquer avec
une langue étrangère. -- sans passer par un intermédiaire
physique.
-- la réservation en ligne influence sur l'indice de
Qualitéet améliore ainsi le positionnement de l'agence sur le web
(la réputation) et augmente le chiffre d'affaire. -- le prix du produit
déminut en le réservant en ligne.
1.3.3 Présentation des sites de réservation
célèbres en ligne :
Nous allons maintenant présenter la méthode de
réservation en ligne tel qu'elle est disponible dans des sites de
réservation célèbres. Cette étape permet de
présenter l'ex-ploitabilitéde notre idée.
Rentalcars.com
:
Rentalcars est un site de réservation de
véhicules en ligne. Etape1
Le visiteur du site se trouve devant le premier formulaire du
processus. Il est invitéàfournir le lieu de l'gence du
départ , la date et l'heure du départ doivent être
précisées ainsi
que la date et l'heure d'arrivée et le but de location
(loisirs ou affaires). La réservation est faite forcément par un
conducteur agéentre (30ans-65ans),(voir Figure 1.1).
Chapitre 1 Premier chapitre
FIGURE 1.1:
www.rentalcars.com(étape1)
Etape2
Après avoir spécifier les paramètres de
la réservation, le site renvoi la liste des véhicules qui sont
disponibles à cette période avec ces prix et ces informations.Le
site propose aussi des options pour filtrer les résultats des recherches
Le visiteur ne peut réserver qu'un seul véhicule à la
fois.(voir Figure 1.2).
6
FIGURE 1.2:
www.rentalcars.com(étape2)
Chapitre 1 Premier chapitre
7
Etape3
Après l'étape 02 (click sur reserver ), le
visiteur est dirigévers une autre page pour confirmer la
résarvation(voir Figure 1.3 et Figure 1.4).
FIGURE 1.3:
www.rentalcars.com(étape3)
FIGURE 1.4:
www.rentalcars.com(étape3)
Etape4
Après avoir fait le choix, le visiteur est
dirigévers une page de réservation avec la
possibilitéd'ajouter et modifier d'autres choses (changer les dates), et
pour confirmer
Chapitre 1 Premier chapitre
notre réservation en ligne. Cette dernière
étape de réservation demande également des informations
sur le conducteur. (voir Figure 1.5 et Figure 1.6).
8
FIGURE 1.5:
www.rentalcars.com(étape4)
FIGURE 1.6:
www.rentalcars.com(étape5)
Air France : Etape1
Le site de cette compagnie aérienne permet d'effectuer
une réservation de vols, de chambres d'hôtel et de voitures.Cette
étape permet de spécifier les paramètres de la
réservation. Ces paramètres, bien que variant en fonction de la
ressource à réserver, comporte à chaque fois, la date de
début de la réservation ainsi que la date de fin de même
que les lieu de départ et d'arrivée. (voir Figure 1.7 et Figure
1.8)
Chapitre 1 Premier chapitre
FIGURE 1.7: Air France-Réservation de vols
FIGURE 1.8: Air France-Réservation d'hôtels
9
Etape2
Après le choix des paramètres de la
réservation pour un vol et un hôtel en même temps, nous
sommes redirigés vers la page de liste des ressources disponibles
à cette période. (voir Figure 1.9)
Chapitre 1 Premier chapitre
10
FIGURE 1.9: Air France-Réservation
étape 2
Etape3
Après le choix des paramètres de la
réservation pour un vol et un hôtel en même temps, nous
sommes redirigés vers la page de liste des ressources disponibles
à cette période. (voir Figure 1.10)
Chapitre 1 Premier chapitre
11
FIGURE 1.10: Air France-Finalisation
Réservation
Les critiques sur les sites précédent
:
On a remarquédans les sites précédents
que lorsqu'un client essaye de réserver un véhicule ou une
chambre, le système de site le dirige vers plusieurs pages est plusieurs
étapes. Avec cette méthode, le client peut abandonner la
réservation. On plus de ça il y à des interfaces dans les
sites précédentes très chargés et n'est pas bien
distribuésur les fenêtres, cela augmente le temps
nécessaire pour comprendre le contenu des pages et augmente les
erreurs.
1.4 Présentation du projet :
L'objectif du projet consiste à développer un
portail web dynamique qui regroupe tout les agences de voitures de
l'Algérie et garanti les services suivants :
-- Visualisation des agences disponibles dans chaque
région de l'Algérie.
Chapitre 1 Premier chapitre
12
Chapitre 1 Premier chapitre
-- L'abonnement des agences (chaque responsable d'une agence
peut mettre l'agence dans le portail) et réserver un espace
spéciale pour l'agence qui permette de mettre les véhicules
à louer.
-- Chaque personne peut réserver une voiture selon son
besoin.
En générale le portail permettra de gérer
les relations clients-agences (agences de location de voitures) de
manière facile et rapide .
1.4.1 Le Portail web:
Avec l'augmentation des capacités d'informations
pouvant être conservées sur des serveurs, se sont aussi
développés des sites pouvant accueillir une pléthorique
d'informations, celles-ci pouvant être regroupées par
thème. D'oùle concept de portail.
Historique
Le terme portail tire son origine du latin
Médiéval « portale », signifiant
« porte d'entrée principale de la ville»
Les portails web sont apparus durant la décennie des
années 1990. Durant la fin de cette décennie, certains ont
étévendus à un prix très
élevé
Définition
un portail web(de l`anglais Web portal) est
un site web qui offre une porte d'entrée commune à un large
éventail de ressources et de services accessibles sur l'Internet et
centrés sur un domaine d'intérêt ou une
communautéparticulière. Les ressources et services dont
l'accès est ainsi rassemblépeuvent être des sites ou des
pages web, des adresses des courriers électroniques, espaces de
publication, etc.
Les utilisateurs ont la plupart du temps la
possibilitéde s'enregistrer à un portail pour s'y connecter
ultérieurement et utiliser l'ensemble des services proposés, dont
notamment la personnalisation de leur espace de travail,
13
1.4.2 Etudes de l'existence de projet en Algérie
:
Depuis quelques années, dans la plupart des pays
développés, la réservation en ligne est devenue l'un des
principaux sujets des acteurs de « l'e-tourisme », et devrait le
rester dans les années à venir.
En Algérie, il y a quelques sites Web pour vendre les
véhicules en ligne et aussi des sites pour contacter les agences des
véhicules. Ouedkniss, le site le plus populaire, selon les staistiques
de site [4], est classée dans la neuvième place dans la liste des
sites les plus visitéen Algérie en 2016 et le premier site
d'annonces.
Ouedkniss peut être classéaussi dans la
première place si on ne considère que les sites algeriens
Cela montre que la sociétéalgérienne a
commencéà se soucier de ces sites.
1.4.3 Qu'est ce qu'un portail de Group Location
Véhicule?
C'est un site web, qui regroupe touts les agences de location
véhicules dans une région. Ce site porte toutes les informations
des agences (Adresses, Téléphones, email, site web . . .) et il
permet de faire une réservation des véhicules en ligne. Ce
portail web dispose d'une interface web graphique, et il doit pouvoir aussi
connecter à une base de données qui contient touts les
informations dynamiques des agences abonnées, aussi ce portail contient
un espace de l'administrateur qui permet de faire des modifications ou
suppression... etc.
1.4.4 L'analyse de besoin (Collecte des exigences)
On va présenter l'exigence et les besoins de
déférents acteurs ainsi leur interaction avec le système
et en va présenter les communications des acteurs, pour mieux comprendre
les rôles, les actions et les droites de chaque acteur dans notre portail
Web
Dans ce système de portail web il y a quatre acteurs
(le public visé, le client, le responsable D'agence et l'administrateur
de portail) chaqu'un possède des exigences spéciales :
les exigences de public visé:
-- Toute personne peut voir ou réserver une ou plusieurs
véhicules.
Chapitre 1 Premier chapitre
14
les exigences de client :
-- Réserver un ou plusieurs véhicule(s).
-- Choisir son réservation, à l'aide des
informations spécifiques concernant le type de
véhicule le tarif et des autres fonctionnalités de
véhicule.
-- Remplir un formulaire après Le choix de
véhicule.
-- Le client doit signer un contrat de location à
l'agence.
les exigences de responsable de l'agence :
-- gérer son agence dans le portail.
-- ajouter des véhicules sur son parc.
-- modifier informations des véhicules de son parc.
-- supprimer des véhicules de son parc.
les exigences de l'administrateur de portail
:
-- Supprimer des agences.
-- Ajouter des marques, modèles, ou des
catégories.
-- Désactiver ou activer les agences.
-- Modifier son information (mot de passe ou nom), et ajouter des
autres administra-
teurs secondaires.
1.5 Conclusion
Ce chapitre, s'intéressant à la
présentation des notions théoriques et pratiques de projet pour
mettre en évidence le sujet du nouveau système, il est
nécessaire, de même, de faire une étude sur les besoins
fonctionnels qui sera le sujet du prochain chapitre et Détecter des
difficultés potentielles pour éviter toute les
problèmes.
15
Chapitre2
Conception
2.1 Introduction:
Apres la phase d'etude de faisabilité, nous allons
comencer la conception du projet, cela permet de définier le concept
d'un portail web, et les étapes importantes pour la réalisation
de ce projet.
Dans ce chapitre on va présenter la solution
conceptuelle que nous proposons , le rôle de conception est de rendre les
tâches de la gestion de système trés flexible .En d'autre
terme, ce chapitre devrait répondre à la question : comment
faire? La structure de ce chapitre dépend de besoin de chaque projet.
La conception d'un système nécessite des
méthodes pour mettre en place un modèle. Il existe plusieurs
méthodes d'analyse, les plus utilisée c'est MERISE et UML.
Finalement il ne faut pas négliger cette étape pour produire un
système conforme aux attentes des utilisateurs par ce que la phase de
l'implémentation de projet est basésur cette étape (avant
de se lancer dans la programmation, il convient de bien déterminer
l'ensemble des données ainsi que les liaisons qu'elles ont entre
elles).
2.2 Choix de la méthode de
modélisation:
[6] Merise et UML sont deux grands principes de «
traduction » ou modélisation d'un système d'information.
Néanmoins, ils ne sont pas aussi proches qu'on pourrait le penser.
Chapitre 2 Deuxième chapitre
16
Le choix de l'un ou de l'autre se fait selon trois axes
à savoir l'accessibilité, la précision et
l'exploitabilité.
Pour le premier axe (accessibilité) MERISE
présente l'intérêt d'avoir des modèles logiques
moins détaillés facilement compréhensibles
Tandis qu'UML conçu pour s'adapter à n'importe
quel langage de programmation orientée objet (POO), présente
plusieurs modèles (diagrammes) dont leurs compréhensions
nécessitent une grande attention.
En ce qui concerne le deuxième critère
(précision), MERISE est moins préférable. Malgrésa
clarté, il manque une précision du fait qu'elle est
éloignée du langage donc difficile
à implémenter alors qu'UML intègre les
éléments communs des différents langages, sa
volontéest d'être fidèle à la réalisation
finale. Elle est beaucoup plus complète avec ses différents
diagrammes.
Pour en finir avec l'exploitabilité, MERISE est une
méthode plus généraliste. Elle donne
une vue globale de la solution sans autant entrer dans les petits
détails. Contrairement àUML qui est conçu pour
l'implémentation objet avec ses différents détails et sa
portabilité(s'adapte à n'importe quelle plateforme)
elle est donc plus exploitable.
L'une ou l'autre présente des avantages et des
inconvénients. Il est réservéau concepteur de choisir la
méthode la mieux adaptée pour son cas. Si on cherche la
précision et l'exploitabilitéUML devance MERISE. Tandis que, si
c'est la clartéet l'accessibilitéqui sont en question MERISE est
préférable.
Notre portail gère des données moins complexes
d'oùqui la méthode MERISE est le mieux pour modéliser la
base de données.
2.3 méthode de coneception MERISE
[7] La conception d'un système d'information n'est pas
évidente car il faut réfléchir
àl'ensemble de l'organisation que l'on doit mettre en place.
La phase de conception nécessite des méthodes permettant de
mettre en place un modèle sur lequel on va s'appuyer. La
Chapitre 2 Deuxième chapitre
17
modélisation consiste à créer une
représentation virtuelle d'une réalitéde telle
façon àfaire ressortir les points auxquels on
s'intéresse.
Ce type de méthode est appeléanalyse. Il existe
plusieurs méthodes d'analyse, la méthode qu'on a adoptée
était la méthode MERISE.
2.3.1 Présentation de la méthode MERISE
[7] La méthode MERISE date de 1978-1979, et fait suite
à une consultation nationale lancée en 1977 par le
ministère de l'Industrie dans le but de choisir des
sociétés de conseil en informatique afin de définir une
méthode de conception de systèmes d'information. Les deux
principales sociétés ayant mis au point cette méthode sont
le CTI (Centre Technique d'Informatique) chargéde gérer le
projet, et le CETE (Centre d'Etudes Techniques de l'Equipement)
implantéà Aix-en-Provence.
MERISE est une méthode de conception, de
développement et de réalisation de projets informatiques. Le but
de cette méthode est d'arriver à concevoir un système
d'informa-
tion. La méthode MERISE est basée sur la
séparation des données et des traitements
àeffectuer en plusieurs modèles conceptuels et
physiques. La séparation des données et des
traitements assure une longévitéau modèle.
En effet, l'agencement des données n'a pas àêtre
souvent remanié, tandis que les traitements le sont plus
fréquemment.
MERISE modélise les connaissances de maniére duale
:
Modèles des Traitements :
(réaction aux évènements...).
Modèles des Données : (vocabulaire
de la structure...).
Les 2 aspects sont complémentaires, synchronisés et
validés entre eux
La méthode MERISE contient plusieurs modèles, dans
notre projet on à utilisée les
quatres modèles suivants :
-- modèle de Conception de communication.
-- modèle de Conception de traitement.
-- modèle de Conception de données.
Chapitre 2 Deuxième chapitre
18
-- modèle de Conception de logique.
2.4 Conception detaillé
2.4.1 Modèle de Conception de communication: MCC
Ce modèle appeléaussi diagramme conceptuel de
flux, permet de représenter les flux d'informations
(représentés par des flèches dont l'orientation
désigne le sens du flux d'infor-mation) entre les acteurs internes
(représentés par des éclipses) ou externes
(représentés par des éclipses avec un trait interrompu).
Le MCC est un modèle de traitement de méthode MERISE.
Choix d'outile pour dessiner le MCC
Le dessin de Modèle de Conception de communication, se
fait par le logiciel JFlux.qui est un logiciel de modélisation des
diagrammes conceptuels de flux (MCC) et des diagrammes conceptuels de contexte
(DCC).
Le MCC de client
Le client, qui souhaite éventuellement effectuer des
réservation ,peut chercher un véhicule avec sont
préference, puis remplire sont informations dans une formulaire pour
confirmer la réservation .le client reçoit les nouvelles
informations s'il contacte l'adminstrateure du portail. dans notre portail,nous
avons décidéde ne pas distingue entre le visiteur et le client
dans la partie de communication avec l'administrateur de portail (parce que
chaque client est un visiteur) (voir Figure 2.1)
Chapitre 2 Deuxième chapitre
19
FIGURE 2.1: MCC de client
Table des flux voir Table 2.1
Numero
|
Information
|
Commentaire
|
1
|
Rechercher un véhicule
|
|
2
|
Réponse de rechrche
|
Si la rechercher est reussit
|
3
|
Réserver un véhicule
|
|
4
|
Remplir un formilaire
|
|
5
|
Vérifier la résrvation
|
|
6
|
Imprimer le contrat
|
|
7
|
Réponse de réservation
|
Si les informations sont valides
|
8
|
Contacter avec email
|
|
9
|
Reponse
|
Si il y à des nouvlles informations
|
TABLE 2.1: les flux de client
Chapitre 2 Deuxième chapitre
Le MCC de résponsaple d'agence
Le résponsable de chaque agence peut gérer sont
éspace (ajouter,supprimer et modifier des véhicule, ou consulter
ou supprimer les réservations des clients ,et gérer les contrats)
,mais il faut absolument se connecter pour pouvoir faire tout ça, (voir
Figure 2.2)
FIGURE 2.2: MCC de résponsable d'agence
Table des flux voir Table 2.2
Numero
|
Information
|
Co
|
1
|
demande d'accées à l'espace.
|
S'il
|
2
|
la réponse de demande d'accées
|
|
3
|
consulter et gérer les reservation
|
|
4
|
Gérer les véhicules (ajouter, supprimer,
modifier)
|
|
5
|
reception des reservations de client
|
|
6
|
la reponse.
|
|
7
|
consulter et gérer les contrats(imprimer les
contrats,supprimer les contrats expirés)
|
Si il
|
20
TABLE 2.2: les flux de résponsable d'agence
Chapitre 2 Deuxième chapitre
Le MCC de l'administrateure de portail
L'administrateur gère intégralement le bon
fonctionnement du portail web, (voir Figure 2.3)
FIGURE 2.3: MCC de l'administrateur
Table des flux voir Table 2.3
Numero
|
Information
|
1
|
demande d'accées à l'espace.
|
2
|
la réponse de la demande d'accées
|
3
|
consulter et gérer les agences(modifier, supprimer,
activer, desactiver),répondre sur les m
|
4
|
Mettre à jour les marque,modèles et
catégories des véhicules.
|
5
|
Demande des nouvelles informations
|
6
|
la reponse.
|
21
TABLE 2.3: les flux de l'administrateur de portail
Chapitre 2 Deuxième chapitre
22
2.4.2 Modèle de Conception de traitement MCT
Le MCT est un modèle de traitement qui
représente le compertement des opérations effuctuer par un acteur
externe et exécutées par le système sous forme d'un
déroulment étape par étape , suite à un
événement, ou à une conjonction
d'événements. Dans ce modèle chaque
activité(nommée opération) regroupe un ensemble
d'activités élémentaires réalisables au sein du
domaine.
Choix d'outile pour dessiner le MCT
Le dessin de Modèle de Conception de traitement se fait
par le logiciel JMCT.qui est un logiciel de modélisation des diagrammes
conceptuels de traitements (MCT), il permet de la sauvegarde et l'exportation
de vos diagrammes sous forme d'image.
Le MCT de client :
Le client peut rechercher un véhicule parmi les
véhicules qui sont existants dans les parcs des agences inscrites dans
le portail Web, selon ses préferences(wilaya de l'agence, marque et
catégorie de voiture), après cette étape le client choisit
le véhicule et valide,ensuite sa réservation.(valider avec le
button réserver),finalement le client rempli une formulaire qui contient
ses informations et envoyévers l'agence .Donc le client a
terminéla réservation et peut imprimer un contrat pour justifier
la réservation dans l'agence.(voir Figure 2.4)
Chapitre 2 Deuxième chapitre
23
FIGURE 2.4: MCT de client
Le MCT de l'administrateur de portail Web:
On parle sur l'adminstrateur principale du portail Web par ce
qui il y à deux types d'administrateurs (principal, secondaire),
L'administrateur ajoute les nouvelles marques, les nouvelles
modèles et les nouvelles catégories ainsi que le suivi les
agences et messages (activéou désctivéles agences et
Chapitre 2 Deuxième chapitre
24
réponder sur les messages des clients), et ajouter ou
supprimer un administrateur secondaire, mais il faut absolument s'identifie
avec un nom et un mot de passe pour pouvoir faire ces taches(voir Figure
2.5)
FIGURE 2.5: MCT de l'adminstrateur de portail
Le MCT de résponsable de l'agence :
Le responsable de l'agence Rempli un formulaire pour
créer un espace spécial dans le portail, si cette création
reussit il faut s'identifie avec son email et son mot de passe pour
gérer son éspace( ajouter,supprimer ou modifier un
véhicule).après les réceptions des réservations, il
peut également enregistrer ou imprimer les contrats des
résevations (voir Figure 2.6)
Chapitre 2 Deuxième chapitre
25
FIGURE 2.6: MCT de résponsable de
l'agence
2.4.3 Modèle Conceptuel de Données MCD.
Un Modèle Conceptuel de Données est la
formalisation de la structure et de la signification des informations
décrivant des objets et des associations perçus
d'intérêt dans le domaine étudié, en faisant
abstraction aux solutions et aux contraintes techniques et informatiques
d'implémantation en base de données.
Chapitre 2 Deuxième chapitre
26
Un MCD est expriméen entitérelation Merise qui
comporte les concepts basiques suivants:
· Entité: modélisation d'un objet
d'intérêt (en termes de gestion) pour l'utilisateur.
· Relation :modélisation d'une
association entre deux ou plusieurs entités.
· Cardinalités :modélisation
des participations mini et maxi d'une entitéà une Rela-
tion.
· Propriétés
:modélisation des informations descriptives rattachées
à une entitéou Une relation
· Identifiant :modélisation des
propriétés contribuant à la détermination unique
d'une occurrence d'une entité.(dans notre MCD les Identifiants
sont soulignés ).
nous utilsant le logiciel Win'Designe pour concevoir le
MCD.(voir Figure 2.7) Choix d'outile pour dessiner le MCD
Présentation [8]
Le dessin de Modèle Conceptuel de Données se
fait par le logiciel WinDesig,qui est Un environnement
modulaire, articuléautour d'un référentiel partagé,
pour la modélisation des systèmes d'information organisationnel
et
informatique.au travers de 3
modules dédiés, autonomes et communicants, offre un environnement
complet et intégré, articuléautour d'un
référentiel partagé, permettant de couvrir l'ensemble des
modélisations des systèmes d'information, Organisationnel et
Informatique:
| Modélisation des cartographies Métier et
SI
| Modélisation des données
| Modélisation UML
Les règles de gestion pour réaliser le
MCD
| une agence se trouve dans une wilaya à la fois. | une
wilaya regroupe plusieurs agences.
Chapitre 2 Deuxième chapitre
27
-- une agence a un ou plusieurs véhicules.
-- un véhicule appartient à une seule
agence.
-- un client peut réserver un ou plusieurs
véhicules.
-- un véhicule peut réserver par un ou
plusieurs clients.
-- un véhicule appartient à une marque
-- une marque contient un ou plusieurs véhicules.
-- un véhicule appartient à une
modèle.
-- une modèle contient un ou plusieurs
véhicules.
-- un véhicule appartient à une
catégorie.
-- une catégorie contient un ou plusieurs
véhicules.
-- un client a un ou plusieurs contrats.
-- un contrat concerne un client.
-- une marque regroupe plusieurs modèles.
-- un modèle appartient à une marque.
-- un modèle appartient à une
catégorie.
-- une catégorie a plusieurs modèles.
c7 id contrat date_depart date_retour
date_contrat
Chapitre 2 Deuxième chapitre
se trouve
reserver
ate_reservation
|
agence
|
|
|
|
|
G. id agence
tel_agence email
adresse ville
site web password nom confirmed confirm_code active logo
1,n
|
|
|
1,1
|
|
|
|
|
|
|
|
|
|
1,1
|
|
|
|
|
w ilaya
o id wilaya nom
veh icu le
num chassis
energie
matricule
prix
n u morte
num.assager
Abs
Gbs
Couleur
km
climat
image
anti_derap
airebage
alarme
etat
aide arriere
|
|
|
|
client
|
|
|
|
1,n
|
|
|
num permis nom prenom adresse_client
tel_client
email
|
|
|
|
|
|
|
1,n
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,1
contrat
|
|
|
|
|
|
|
|
|
|
|
|
1,n
1.n
categorie
12. id categorie categorie
1,n
marque
.2m id marque marque
t
modale
c id modele modele
28
FIGURE 2.7: le schéma de Modèle conceptuelle des
données
Chapitre 2 Deuxième chapitre
29
2.4.4 Modèle logique des données MLD
|
:
|
|
Le Modèle Logique des Données (MLD) est la
suite normale du processus Merise. Son but est de nous rapprocher au plus
près du modèle physique. Pour cela, nous partons du Modèle
Conceptuel des Données et nous lui enlevons les relations, mais pas
n'importe comment, il faut en effet rèspecter certaines règles.
Voici la procédure à suivre.
Nous avons expliquéla démarche de
réalisation de modèles conceptuels de données dans le
paragraphe Modèle conceptuelle des données « MCD » et
dans cette paragraphe on va Présenter les concepts de modèle
logique de données. On plus les règles qui permettent de
transformer le MCD en MLD
Ces règles, au nombre de trois, permettent d'effectuer
la transformation automatiquement et Sans empêcher la sémantique
du modèle conceptuel de données
Remarque :
-- un véhicule appartient à une marque -- une
marque contient un ou plusieurs
Les trois règles de Passage entre le MCD et
MLD
· Règle 1 :
-- agence (Id agence, nom, tel agence,
email, adresse, ville, site web, password, ac-
tive,
confirmed, confirm code, logo).
-- vehicule(num chassis , energie ,
matricule , prix ,num porte ,num passager,Abs,Gps,couleur,
km, climat, alarm, airbag ,image, system anti derap, etat, aide
park arriere).
-- client(num permis, nom, prenom, adresse client, tel client,
email,).
-- wilaya (id wilaya, nom).
-- marque(id marque, marque).
-- modele(id modele, modele).
-- categorie (id categorie,
categorie).
-- contrat (id contrat, date contrat,
date depart, date retour).
·
Chapitre 2 Deuxième chapitre
30
Règle 2 : Toute association
hiérarchique (de type [1, n]) se traduit par une
cléétrangère. La cléprimaire correspondant à
l'entitépère (côtén) migre comme
cléétrangère dans la relation correspondant à
l'entitéfils (côté1).
· agence vehicule :
-- vehicule(num-chassis , energie , matricule , prix ,num
porte ,num passager,Abs
,Gps ,couleur, km, climat, alarm, airbag ,image, system anti
derap, etat, aide park arriere, #id agence).
· wilaya agence :
-- agence(id agence, nom, tel agence, email,
adresse, ville, site web, password, active, confirmed, confirm code, logo, # id
wilaya).).
· marque vehicule :
-- vehicule(num chassis , energie , matricule , prix
,num porte ,num passager,Abs
,Gps ,couleur, km, climat, alarm, airbag ,image, system anti
derap, etat, aide park arriere, #id marque).
· modele vehicule :
-- vehicule(num chassis , energie , matricule , prix
,num porte ,num passager,Abs
,Gps ,couleur, km, climat, alarm, airbag ,image, system anti
derap, etat, aide park arriere, #id modele).
· catégorie vehicule :
-- vehicule(num chassis , energie , matricule , prix
,num porte ,num passager,Abs
,Gps ,couleur, km, climat, alarm, airbag ,image, system anti
derap, etat, aide park arriere, #id categorie).
· marque modele :
-- modele(id modele, modele, #id marque)
· modele categorie :
-- modele(id modele, modele, #id categorie)
· Chapitre 2 Deuxième chapitre
31
client contrat :
-- contrat(id contrat, date contrat,
date depart, date retour,#num permis)
· vehicule contrat :
-- contrat(id contrat, date contrat,
date depart, date retour,#num chassis)
· Règle 3 : Toute
association non hiérarchique (de type [n, n] ou de dimension2) devient
une relation. La cléprimaire est formée par la
concaténation l'ensemble des identifiants des entités
reliées. Toutes les propriétés éventuelles
deviennent des attributs qui ne peuvent pas faire partie de la clé.
· vehicule client : (une nouvelle relation
s'appeléreservation) : -- reservation(#num chassis, #num-permis, date
reservation).
Choix d'outile pour dessiner le MLD :
Le dessin de Modèle logique des données se fait
par le logiciel MYSQL Workbench, qu'est un logiciel de gestion
et d'administration de bases de données MySQL crée en 2004. Via
une interface graphique intuitive, il permet, de créer, modifier ou
supprimer des tables, et d'effectuer toutes les opérations à la
gestion d'une base de données. Pour ce projet on à utilsée
seulment pour dessiner,(voir Figure 2.8)
Chapitre 2 Deuxième chapitre
FIGURE 2.8: le schéma de Modèle logique des
données
2.5 Dictionnaire de données :
Le dictionnaire de données permet de recenser les
informations nécessaires de la base de données BDD.Il
précise le nom de chaque champ dans la base de données,le type de
données,la taille et la signification de champ (voir les tablaux
suivantes).
Information de wilaya voir table 2.4
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id wilaya
|
Entier
|
11
|
Identificateure de wilaya.
|
nom
|
Varchar
|
45
|
Nom de wilaya.
|
|
32
TABLE 2.4: les informations de la wilaya.
Chapitre 2 Deuxième chapitre
information de l'admin voir Table 2.5
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
user
|
Varchar
|
45
|
Le nom de l'administrateur
|
password
|
Varchar
|
45
|
Mot de passe de l'administrateur
|
type
|
Varchar
|
45
|
Type de l'administrateur
|
|
TABLE 2.5: les informations de l'admin
Information de véhicule voir table
2.6
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
num chassis
|
Varchar
|
45
|
Numéro chaissis de véhicule
|
energie
|
Varchar
|
45
|
type d'énergie consomépar la véhicule
|
matricule
|
Varchar
|
25
|
Matricule de véhicule
|
prix
|
Entier
|
11
|
Prix du véhicule dans chaque jour
|
num porte
|
Entier
|
11
|
Nombre de portes du véhicule
|
num passager
|
Entier
|
11
|
Nombre de passagers
|
Abs
|
Boolean
|
1
|
L'integration de l'ABS
|
Gbs
|
Boolean
|
1
|
L'integration de GPS
|
Couleur
|
Varchar
|
45
|
La couleur du véhicule
|
image
|
Varchar
|
255
|
L'image du véhicule
|
anti derap
|
Boolean
|
1
|
L'integration du système anti derapage
|
Airbag
|
Boolean
|
1
|
L'integration de l'airbag
|
alarme
|
Boolean
|
1
|
L'integration de l'alarme
|
Km
|
Entier
|
11
|
Kilométrage
|
climat
|
Boolean
|
1
|
L'integration de climatisation
|
etat
|
Boolean
|
1
|
L'etat du véhicule (réserver ou non
réserver)
|
aide arriere
|
Boolean
|
1
|
L'integration de l'Aide park arriere
|
|
33
TABLE 2.6: les informations de véhicule
Chapitre 2 Deuxième chapitre
34
Information de l'agence voir table 2.7
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id agence
|
Entier
|
11
|
Identificateur de l'agence.
|
tel agence
|
Varchar
|
25
|
Telephone de l'agence.
|
email
|
Varchar
|
45
|
Email de l'agence.
|
adresse
|
Varchar
|
45
|
Adresse de l'agence.
|
ville
|
Varchar
|
45
|
Ville de l'agence.
|
site web
|
Varchar
|
45
|
Site web de l'agence.
|
nom
|
Varchar
|
45
|
Nom de l'agence.
|
logo
|
Varchar
|
255
|
Image de logo de l'agence
|
password
|
Varchar
|
45
|
Mot de passe de l'agence.
|
active
|
Boolean
|
1
|
Etat de l'agence.
|
confirm code
|
Varchar
|
45
|
Code de confirmation de l'agence.
|
confirmed
|
Boolean
|
1
|
Confirmation d'inscription.
|
|
TABLE 2.7: les informations de l'agence.
Information de client voir table 2.8
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
nom
|
Varchar
|
45
|
Nom du client.
|
prenom
|
Varchar
|
45
|
Prénom du client.
|
adresse client
|
Varchar
|
45
|
Adresse du client.
|
tel client
|
Varchar
|
45
|
Télephone du client.
|
email
|
Varchar
|
25
|
Email du client .
|
num-permis
|
Varchar
|
25
|
numéro de permis du client.
|
piece identique
|
Varchar
|
255
|
Image de passeport du client .
|
|
TABLE 2.8: les Informations de client.
Chapitre 2 Deuxième chapitre
Information de marque voir table 2.9
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id marque
|
Entier
|
11
|
Identificateure de marque.
|
marque
|
Varchar
|
45
|
Nom de marque.
|
|
TABLE 2.9: les informations de la marque.
Information de modele voir table 2.10
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id modele
|
Entier
|
11
|
Identificateur de modèle.
|
modele
|
Varchar
|
45
|
Nom de modele du véhicule.
|
|
TABLE 2.10: les informations de la modèle.
Information de categorie voir table 2.11
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id categorie
|
Entier
|
11
|
Identificateure de catégorie.
|
categorie
|
Varchar
|
45
|
Nom de catégorie de véhicule.
|
|
35
TABLE 2.11: les informations de la catégorie.
Chapitre 2 Deuxième chapitre
36
Information de contrat voir table 2.12
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id contrat
|
Entier
|
11
|
Identificateur du contrat.
|
date depart
|
Date
|
-
|
Date de départ du contrat.
|
date retour
|
Date
|
-
|
Date de retour du véhicule.
|
date contrat
|
Date
|
-
|
Date de Signature du contart.
|
|
TABLE 2.12: les Informations de contrat.
Informtion de lettre voir table 2.13
Nom de champ
|
Type de donnée
|
Taille
|
Signification de champ
|
id lettre
|
Entier
|
11
|
Identificateure du message.
|
email
|
Varchar
|
45
|
Email de l'expiditeur.
|
contenu
|
Varchar
|
255
|
Contenu du message.
|
objectif
|
Varchar
|
45
|
Objectif du message.
|
preuve
|
Boolean
|
1
|
Pour l'historique des messages .
|
|
TABLE 2.13: les Informations de lettre.
2.6 Conclusion:
La phase conceptuelle est une étape fondamentale pour
la réalisation de n'importe quel projet. Elle permet de
représenter les différentes étapes de conception et
préparer la phase de la réalisation et l'implémentation de
la base de données. Parce que pour programmer un projet informatique, il
ne convient pas de se commencer avec l'écriture de code ,il faut d'abord
organiser ses idées et chercher les moyens et les outils possibles pour
développer le projet , puis démarrer la réalisation du
travail. Par la suite on présentant les détails de
réalisation et implimentation de projet .
37
Chapitre3
Réalisation et implimentation de projet
3.1 Introduction:
Les deux derniers chapitres seront consacrés sur la
partie théorique de projet, après cette partie nous allons
commencer la partie pratique cela permet de réaliser l'idée de
projet dans la réalité.
Ce chapitre expliquéles différents outils,
technologies et langages de programmations utilisés pour
développer ce portail, en générale dans cette phase on va
présenter les différents résultats obtenus dans la phase
de réalisation.
3.2 Présentation des tables de la base de
données :
Nous avons choisis le nom portail2 comme nom de notre base de
données qui contient 11 tables,(voir Figure 3.1).
Chapitre 3 Troisième chapitre
38
FIGURE 3.1: les tables de base données.
La table agence :La table agence est
représentée comme ci-dessous :(voir Figure 3.2).
FIGURE 3.2: la table d'agence.
Chapitre 3 Troisième chapitre
La table vehicule : La table vehicule est
représentée comme ci-dessous :(voir Figure 3.3).
FIGURE 3.3: la tabe de vehicule.
La table client : La table client est
représentée comme ci-dessous :(voir Figure 3.4).
FIGURE 3.4: la table de client.
La table contrat :La table contrat est
représentée comme ci-dessous :(voir Figure 3.5).
FIGURE 3.5: la table contrat.
39
Chapitre 3 Troisième chapitre
40
La table marque : La table marque est
représentée comme ci-dessous :(voir Figure 3.6).
FIGURE 3.6: la tabe de marque.
La table categorie :La table categorie est
représentée comme ci-dessous :(voir Figure 3.7).
FIGURE 3.7: La table categorie :
La table modele :La table modele est
représentée comme ci-dessous :(voir Figure 3.8).
FIGURE 3.8: la table de modele.
La table reservation :La table est reservation
représentée comme ci-dessous :(voir Figure 3.9).
FIGURE 3.9: la table reservation.
Chapitre 3 Troisième chapitre
41
La table wilaya :La table wilaya est
représentée comme ci-dessous :(voir Figure 3.10).
FIGURE 3.10: la table wilaya.
La table admin :La table admin est
représentée comme ci-dessous :(voir Figure 3.11).
FIGURE 3.11: la table admin.
La table lettre :La table lettre est
représentée comme ci-dessous :(voir Figure 3.12).
FIGURE 3.12: la table lettre.
3.3 Les langages de programmation:
L'implémentation et la réalisation d'un projet
informatique ce n'est pas facile par ce qui il faut connaitre au mois un
langage de programmation.
Dans l'implémentation de ce travaille nous avons
utiliséles langages de programmation plus courante dans les domaines de
programmation web. On va définie l'un après l'autres avec les
avantages et les inconvénients de chaque langage.
Chapitre 3 Troisième chapitre
42
3.3.1 le langage php :
Le langage PHP a étéinventépar Rasmus
LERDORF en 1995 pour son usage personnel (mise en ligne de son CV en
l'occurence).Autrefois abbréviation de Personal HomePage devenue
aujourd'hui Hypertext Preprocessor, PHP s'impose comme un standard dans le
monde de la programmation web par ses performances, sa fiabilitéet sa
rapidité.[9]
Ce langage est principalement utilisépour produire un
site web dynamique. Il est courant que ce langage soit associéà
une base de données, tel que MySQL.
Exécutédu côtéserveur (l'endroit
oùest hébergéle site) il n'y a pas besoin aux visiteurs
d'avoir des logiciels ou plugins particulier.lorsqu'une page PHP est
exécutée par le serveur, alors celui-ci renvois
généralement au client (aux visiteurs du site) une page web qui
peut contenir du HTML, CSS, JavaScript. [[10], Le
schéma ci-dessous illustre le principe de fonctionnement de PHP.
FIGURE 3.13: le principe de fonctionnement de
PHP.
3.3.2 Le langage HTML et CSS :
L'HTML est un langage est utilisépour créer des
pages web. L'acro-nyme signifie HyperText Markup Language, ce qui signifie en
français »langage de balisage d'hypertexte». Cette
signification porte bien son nom puisqu'effectivement ce langage permet de
réaliser de l'hypertexte à base d'une structure de balisage.
Chapitre 3 Troisième chapitre
43
Les balises permettent de mettre en forme le texte et de
placer des éléments interactif, tel des liens, des images ou bien
encore des animations. Ces éléments ne sont pas dans le code
source d'une page codéen HTML mais »àcoté» et la
page en HTML ne fait que reprendre ces éléments.[11]
Le terme CSS est l'acronyme anglais de Cascading Style Sheets
qui peut se traduire par »feuilles de style en cascade». Le CSS est
un langage informatique utilisésur l'internet pour mettre en forme les
fichiers HTML , Ainsi, les feuilles de style, aussi appeléles fichiers
CSS, comprennent du code qui permet de gérer le design d'une page en
HTML.[12]
3.3.3 JavaScript et Ajax:
Javascript est un langage de script qui peut
intégrer directement dans un document HTML. Historiquement il s'agit
même du premier langage de script pour le Web. Ce langage est un langage
de programmation qui permet d'apporter des améliorations au langage HTML
en permettant d'exécuter des commandes du côtéclient,
c'est-à-dire au niveau du navigateur et non du serveur web.[13]
Généralement, JavaScript sert à
contrôler les données saisies dans des formulaires
HTML.
Ajax(JavaScript asynchrone et XML) est une méthode de
développement web basée sur l'utilisation d'un script JavaScript
pour effectuer des requêtes web à l'intérieur d'une page
web sans recharger la page web autre fois, utilise grandement le JavaScript
dans le but d'interagir sur la page de manière dynamique.
On à utiliséAjax par exemple pour
récupérer les modèles de chaque marque.
3.3.4 Le Framework jQuery :
JQuery est un framework Javascript sous
licence libre qui permet de faciliter des fonctionnalités communes de
Javascript, L'utilisation de cette bibliothèque permet de gagner du
temps de développement lors de l'interaction sur le code HTML d'une
Chapitre 3 Troisième chapitre
44
page web, l'AJAX ou la gestion des
évènements.JQuery s'utilise au travers d'un fichier
javascript.[14]
On à utiliséjQuery par exemple pour
récupérer les détails de chaque véhicule.
3.3.5 Le Framework Bootstrap:
Bootstrap est un framework qui peut rendre votre vie plus
facile pour créer l'architec-ture d'une page web. Mais Bootstrap va bien
plus loin qu offrir du code CSS déjàbien organiséet
structuré. Il offre aussi des plugins jQuery de qualitépour
enrichir vos pages.
Bootstrap est un framework CSS, mais pas seulement, puisqu il
embarque également des composants HTML et JavaScript. Il comporte un
système de grille simple et efficace pour mettre en ordre laspect visuel
d une page web. Il apporte du style pour les boutons, les formulaires, la
navigation ... Il permet ainsi de concevoir un site web rapidement et avec peu
de lignes de code ajoutées.[15]
Bootstrap c'est la tendance de création d'application
web.
3.3.6 Le langage des requêtes SQL:
SQL (Structured Query Language, traduisez Langage de
requêtes structuré) est un langage de définition de
données (LDD, ou en anglais DDL Data Definition Language), un langage de
manipulation de données (LMD, ou en anglais DML, Data Manipulation
Language), et un langage de contrôle de données (LCD, ou en
anglais DCL, Data Control Language), pour les bases de données
relationnelles
· SQL est un langage de définition de
données (LDD), c'est-à-dire qu'il permet de créer des
tables dans une base de données relationnelle, ainsi que d'en modifier
ou en supprimer.
· SQL est un langage de manipulation de données
(LMD), cela signifie qu'il permet de sélectionner, insérer,
modifier ou supprimer des données dans une table d'une base de
données relationnelle.
· Il est possible avec SQL de définir des
permissions au niveau des utilisateurs d'une base de données. On parle
de DCL (Data Control Language). [16]
Chapitre 3 Troisième chapitre
45
Dans notre projet nous avons utilseéle LDD pour
créer les tables de base de donées et LMD pour faire toute les
operations de portail web.mais Dans ce projet le DCL pas utilisé.
3.4 Les Logiciels utilisés :
3.4.1 WampServer
WampServer est une plate-forme de développement Web
sous Windows pour des applications Web dynamiques à l'aide du serveur
Apache2, du langage de scripts PHP et d'une base de données MySQL. Il
possède également PHPMyAdmin pour gérer plus facilement
vos bases de données.[17]
Dans notre projet on a utilséla version WampServer 2.5,
avec la version de php 5.5.12, et la version 5.6.17 de MYSQL, et la version
2.4.9 de l'Apache.
3.4.2 Notepad++
Notepad++ est un éditeur de texte
générique codéen C++, qui intègre la coloration
syntaxique de code source pour les langages et fichiers C, C++, Java, C#, XML,
HTML, PHP, JavaScript, CSS, ainsi que pour tout autre langage informatique, car
ce logiciel propose la possibilitéde créer ses propres
colorations syntaxiques pour un langage quelconque.[18]
3.4.3 Les navigateurs web
Une fois que l'on a déjàcodéun programme
web, pour le tester on a besoin d'un navigateur web. Un navigateur permet donc
de lire le code HTML/CSS et d'afficher ce qu'il représente, Il existe
plusieurs navigateurs sur le marché. Les plus populaires utilisent:
Mozilla Firefox, Google Chrome. Il est recommandéd'utilise au moins deux
navigateurs différents pour assurer que le projet fonctionne
correctement sur la plupart de navigateurs.
Chapitre 3 Troisième chapitre
46
3.5 Présentation de portail web
Dans cette partie, nous allons décrire les pages
principales pour la réalisation de notre projet.
3.5.1 Architecture de navigation
3.5.2 La page d'accueil:
C'est la page principale du portail et elle contient la
majoritédes options dont l'utili-sateur à besoin, exemple
(créer un compte, une zone de recherche, une zone de connexion pour
l'administrateur. . . )(voir Figure 3.14).
Chapitre 3 Troisième chapitre
47
FIGURE 3.14: la page d'accueil de portail. Table
explicatif : voir table 3.1
Numéro
|
Explication
|
1
|
Connexion d'agences inscrit.
|
2
|
Connexion de l'administrateur de portail.
|
3
|
Crée un compte.
|
4
|
Recherche des véhicules par wilaya.
|
5
|
Recherche dirigépar wilaya, marque et categorie
(rapidement).
|
6
|
Réserver un véhicule luxe.
|
7
|
Système newsletter (pour obtenir des nouvelles
informations).
|
8
|
Rechercher par toutes les wilayas et toutes les marques.
|
TABLE 3.1: Titre du tableau
Chapitre 3 Troisième chapitre
3.5.3 La page de connexion:
C'est la page principale pour la connexion de responsable
d'agence (accéder à votre espace) :(voir Figure 3.15).
FIGURE 3.15: la page de connexion.
3.5.4 La page de l'inscription:
cette page présentée par un formulaire qui
regroupe toutes les informations indispensables pour l'inscription de l'agence
(voir Figure 3.16).
FIGURE 3.16: la page de l'inscription.
48
Chapitre 3 Troisième chapitre
49
3.5.5 Les pages de résultat de rechercher :
Page des agences trouvé: cette page
représente toutes les agences trouvéselon les
préférences du client (voir Figure 3.17).
FIGURE 3.17: page des agences.
Page des véhicules trouvé:
(cette page apparue après un click sur le buttons voir
vehicule), (voir Figure 3.18).
FIGURE 3.18: page des véhicules.
Chapitre 3 Troisième chapitre
50
3.5.6 La formulaire remplie par client :
Aprés un click sur le buttons Reserver le client saisie
les informations sur ce formulaire (voir Figure 3.19).
FIGURE 3.19: formulaire de
réservation.
3.5.7 La page de contrat de réservation:
Aprés la réservation le client imprime un
contrat qui regroupe tout les informations de réservation (information
de client, véhicule, agence, et les dates de contrat), pour justifier sa
réservation dans l'agence de location.(voir Figure 3.20).
Chapitre 3 Troisième chapitre
51
FIGURE 3.20: la page de contrat.
3.6 Conclusion:
Dans la partie réalisation et implémentation, on
a détailléles étapes de construction de la base de
données et présentéles différents outils et
langages utilisés dans l'implémentation de notre projet. Ensuite,
on a présentéquelques interfaces du portail web qu'on a
conçu. On général ce chapitre a pour présenter les
différents aspects pratiques de projet.
52
Conclusion générale et perspectives
Durant les derniers trois mois, nous avons tentéde
réaliser un portail web dynamique pour location de véhicules
L'objectif visédans ce projet de fin d'études
est la mise en place d'un portail Web, pour atteindre cet objectif, on a
abordénotre problème en s'appuyant sur la démarche de
Merise, en ce qui concerne la réalisation, on a utiliséle langage
PHP. Cette application a permis de répondre aux besoins des
algériennes d'un espace web qui permet de faciliter les taches de
réservations des véhicules en ligne.
Ce projet a fait l'objet d'une expérience
intéressante, qui nous a permis d'améliorer nos connaissances et
nos compétences dans le domaine de la programmation. Nous avons appris
à mieux manipuler les langages PHP, HTML, MYSQL, CSS et Java Script.
En effet, ce travail étant une oeuvre humaine, n'est
pas un modèle unique et parfait, c'est pourquoi nous restons ouverts
à toutes les critiques et nous sommes prêts à recevoir
toutes les suggestions et remarques tendant à améliorer
d'avantage cette étude. Etant donnéque tout travail informatique
a ététoujours l'oeuvre d'une équipe.
Nous espérons que ce travaille, soit d'une
utilitépour les citoyens algériens.
Quelques perspectives Nombreuses sont les
idées dont on pouvait incorporer dans ce projet. Cependant, vu le temps
imparti, il a fallu une limite pour cette version première de
l'application. Ainsi, en perspective nous pouvons envisager quelques
améliorations ci et làvisant à rendre cette projet de plus
en plus performante. Mais aussi à ce stade, l'idéal
53
Conclusion générale
serait de faire héberger ce site et pour ce faire nous
lançons un appel au public en général et à toute
personne intéressée par le présent travail de bien vouloir
nous aider dans ce sens.
Ci-dessous nous formulons quelques suggestions des modules
dont pourrait avoir besoin cette application en vue de sa continuité,
sécuritéet meilleure performance.
· Un système de gestion du portail avec beaucoup
plus de fonctionnalités surtout dans le domaine d'archivage et dans la
sécurisation des données
· Une communication entre les responsables des
agences.
· Un autre espace qui permet de mettre les
véhicules à vendre.
· Faire la liaison avec les compte dans le réseau
sociaux.
54
Bibliographie
[1]
fr.wikipedia.org/wiki/locationdevoiture.
[2] Valérie
CHIRON. la location automobile de courte
durée. 1(1) :29, 05/2010.
[3]
www.dz.kompass.com.
[4] http ://
www.alexa.com/siteinfo/ouedkniss.com.
[5] author. Conception et réalisation dun frameworkpour
le développement de systèmes de
réservation enligne][universitédakare].
[6]
www.memoireonline.com.
[7]
www.journaldunet.com.
[8]
www.win-design.com/fr.
[9]
www.apprendre-php.com/tutoriels/tutoriel-19-introduction-au-langage-php.html.
[10] http ://
glossaire.infowebmaster.fr/php/.
[11] http ://
glossaire.infowebmaster.fr/html/.
[12] http ://
glossaire.infowebmaster.fr/css/.
[13] http ://
glossaire.infowebmaster.fr/javascript/.
[14] http ://
glossaire.infowebmaster.fr/jquery/.
[15]
www.openclassroms.com.
[16]
www.commentcamarche.net/contents/1062-le-langage-sql.
[17]
www.wampserver.com.
[18]
fr.wikipedia.org/wiki/notepad
55
AnnexeA
Algorithme de recherche
Objectif de l'algorithme : L'objectif principal
de ce algorithme c'est la recherche autoumatique dans les wilayas voisines, il
est appeléquant la recherche dans une wilaya ne retourne aucun
résultat.on peut offre que c'est une recherche intelligente.
Les entrées de l'algorithme :
identificateur de wilaya (classement de wilaya dans l'algerie).
Les sorties de l'algorithme : les
identificateurs des wilayas voisines (pour utiliser dans la selection de base
de donneés).
Le code d'algorithme :
Function cherche (id) switch (id){
case1 : $a = 37; $b = 8; $c
=
|
32; $d =
|
47; $e =
|
11; $f =
|
0; $g = 0; $h = 0; break;
|
case2 : $a = 3; $b = 48; $c
=
|
38; $d =
|
44; $e =
|
42; $f =
|
0; $g = 0; $h = 0break;
|
case3 :a=47; b = 32;c=17; d = 14;e=0;
f = 0; $g = 0; $h = 0; break;
case4 : $a = 5;$b = 40;$c =
12;$d = 41;$e = 42;$f = 25;$g = 43;$h
= 0;break; case5 : $a = 7; $b = 40; $c = 4;
$d = 43; $e = 19; $f = 28; $g = 0; $h = 0; break; case6
: $a = 18; $b = 19; $c = 34; $d = 10; $e = 15;
$f = 0; $g = 0; $h = 0; break; case7 : $a =
39; $b = 40; $c = 5; $d = 28; $e = 17; $f = 0;
$g = 0; $h = 0; break; case8 : $a = 1; $b
= 37; $c = 32; $d = 45; $e = 0; $f = 0;
$g = 0; $h = 0; break; case9 : $a = 16; $b =
35; $c = 10; $d = 26; $e = 44; $f = 42; $g
= 0; $h = 0; break; case10 : $a = 28; $b = 34; $c
= 6; $d = 15; $e = 35; $f = 9; $g =
26; $h = 0; break;
Annexe A Algorithme de recherche.
$a=11;
|
$b=30; $c=0; $d=0; $e=0; $f=0; $g=0; $h=0; break;
|
$a=10;
|
$b=6; $c=19; $d=28;
|
|
$e=0;
|
$f=0;
|
$g=0; $h=0; break;
|
$a=16;
|
$b=15;
|
$c=10;
|
$d=9;
|
$e=0;
|
$f=0;
|
$g=0; $h=0; break;
|
$a=23;
|
$b=24;
|
$c=41;
|
$d=0;
|
$e=0;
|
$f=0;
|
$g=0; $h=0; break;
|
56
case11 : $a = 33; $b = 1; $c
= 30; $d = 47; $e = 0; $f = 0; $g = 0; $h = 0;
break; case12 : $a = 41; $b = 40; $c = 4;
$d = 39; $e = 0; $f = 0; $g = 0; $h = 0; break;
case13 : $a = 46; $b = 22; $c = 45; $d = 0;
$e = 0; $f = 0; $g = 0; $h = 0; break; case14 : $a
= 17; $b = 26; $c = 38; $d = 48; $e =
29; $f = 20; $g = 32; $h = 3; break; case15
: $a = 35; $b = 6; $c = 10; $d = 0; $e
= 0; $f = 0; $g = 0; $h = 0; break; case16 : $a = 35;
$b = 9; $c = 42; $d = 0; $e = 0; $f =
0; $g = 0; $h = 0; break; case17 : $a = 14; $b = 26;
$c = 28; $d = 7; $e = 3; $f = 47; $g
= 30; $h = 0; break; case18 : $a = 21; $b = 43;
$c = 19; $d = 6; $e = 0; $f = 0; $g = 0; $h = 0;
break; case19 : $a = 18; $b = 6; $c = 34;
$d = 5; $e = 43; $f = 0; $g = 0; $h = 0; break;
case20 : $a = 14; $b = 29; $c = 22; $d =
45; $e = 32; $f = 0; $g = 0; $h = 0; break; case21 :
$a = 18; $b = 23; $c = 25; $d = 24; $e
= 43; $f = 0; $g = 0; $h = 0; break; case22 : $a = 13;
$b = 46; $c = 31; $d = 29; $e = 20; $f
= 45; $g = 0; $h = 0; break; case23 : $a = 36; $b
= 24; $c = 21; $d = 0; $e = 0; $f = 0; $g =
0; $h = 0; break; case24 : $a = 41; $b = 36; $c
= 23; $d = 21; $e = 25; $f = 4; $g = 0; $h
= 0; break; case25 : $a = 4; $b = 24; $c = 21;
$d = 43; $e = 0; $f = 0; $g = 0; $h = 0; break;
case26 : $a = 10; $b = 9; $c = 44; $d =
38; $e = 14; $f = 17; $g = 28; $h = 0;
break; case27 : $a = 48; $b = 2; $c = 27;
$d = 31; $e = 0; $f = 0; $g = 0; $h = 0; break;
case28 : $a = 10; $b = 26; $c = 17; $d =
7; $e = 5; $f = 19; $g = 34; $h = 0; break;
case29 : $a = 20; $b = 22; $c = 31; $d =
27; $e = 48; $f = 14; $g = 0; $h = 0; break;
case30 : $a = 33; $b = 39; $c = 47; $d =
17; $e = 11; $f = 0; $g = 0; $h = 0; break; case31 :
$a = 46; $b = 27; $c = 29; $d = 22; $e
= 0; $f = 0; $g = 0; $h = 0; break; case32 : $a = 45;
$b = 3; $c = 8; $d = 1; $e = 47;f=14;
g = 20;h=0; break; case 33 : case 34 : case 35 : case
36 : case 37 : $a=1; $b=8; $c=0; $d=0; $e=0; $f=0; $g=0; $h=0; break; case 38 :
$a=2; $b=48; $c=14; $d=44; $e=26; $f=0; $g=0; $h=0; break; case 39 : $a=30;
$b=12; $c=40; $d=7; $e=0; $f=0; $g=0; $h=0; break; case 40 : $a=4; $b=5; $c=7;
$d=12; $e=39; $f=0; $g=0; $h=0; break; case 41 : $a=36; $b=24; $c=4; $d=12;
$e=0; $f=0; $g=0; $h=0; break; case 42 : $a=2; $b=44; $c=9; $d=16; $e=0; $f=0;
$g=0; $h=0; break;
Annexe A Algorithme de recherche.
$a=18;
|
$b=19;
|
$c=5;
|
$d=4; $e=25; $f=21; $g=0; $h=0; break;
|
$a=2;
|
$b=38;
|
$c=26;
|
$d=9; $e=42; $f=0; $g=0; $h=0; break;
|
$a=8;
|
$b=32;
|
$c=13;
|
$d=22; $e=20; $f=0; $g=0; $h=0; break;
|
$b=32;
|
$c=1; $d=11; $e=30;
|
$f=17;
|
$g=0; $h=0; break;
|
$b=29;
|
$c=14; $d=38; $e=2;
|
$f=0;
|
$g=0; $h=0; break }
|
57
case 43 : case 44 : case 45 : case 46 : $a=13; $b=31; $c=22;
$d=0; $e=0; $f=0; $g=0; $h=0; break; case 47 : $a=3; default : $a=27;
reponse = »select*fromagence, vehiculewherevehicule.agence id
agence =
agence.id agence
and(wilaya id
wilayain('$a','
$b',' $c','
$d',' $e','
$f',' $g','
$h'))»; }
|