Vous êtes sur la page 1sur 72
République Algérienne Démocratique et Populaire Ministère de l’Enseignement supérieur et de la Recherche

République Algérienne Démocratique et Populaire Ministère de l’Enseignement supérieur et de la Recherche Scientifique Université ABDERRAHMANE MIRA BEJAIA Faculté de Science Exacte Département Informatique

BEJAIA Faculté de Science Exacte Département Informatique Mémoire de fin de cycle En vue de l’obtention

Mémoire de fin de cycle

En vue de l’obtention du diplôme de Master professionnel en informatique

Thème

Conception et Réalisation d’une Application Web de Gestion d’Hôtel Sous JAVA Cas : « Hôtel ROYAL »

Encadré par :

Mr AISSANI Sofiane

Réalisé par :

AKOU Hamza HARKOUK Saïd

Promotion 2014/2015

Remerciements

En préambule à ce mémoire nous remercions Allah qui nous a dotés d’une grande volonté et qui nous a aidés et nous a donné le courage, la force et la patience d’accomplir ce travail. Ce mémoire n'aurait jamais pu voir le jour sans le soutien actif d'un certain nombre de personnes que nous tenons à remercier, toutes celles et ceux qui ont contribué de près ou de loin à l’accomplissement de ce travail trouvent ici l’expression de nos remerciements les plus chaleureux :

À nos chers parents pour tous les sacrifices consentis à notre égard et leur énorme soutien. À toutes nos familles et nos proches amis (es) qui par leurs prières et leurs encouragements On a pu surmonter tous les obstacles. À notre promoteur, en l’occurrence Mr AISSANI Sofiane pour l’attention quil nous a accordé et pour nous avoir orientés dans le bon sens quant à l’élaboration de ce projet. Aux membres du jury pour l’intérêt qu’ils ont porté à notre recherche en acceptant d’examiner notre travail et de l’enrichir par leurs propositions. Au personnel de l’hôtel « ROYAL » pour leur accueil chaleureux, et de nous avoir accepté durant la période de notre stage.

Merci à toutes et à tous

Dedicaces

On a le plaisir de dédier ce modeste travail :

A nos chers parents qui nous ont soutenus durant la réalisation de ce projet et pour tout le mal qu’ils se sont donnés afin de nous faciliter la tâche, en témoignage de la profonde affection qu’on leurs porte.

A nos frères et sœurs à qui nous souhaitons un avenir prospère.

A toutes nos familles.

A nos chers amis(es) pour leurs présences et encouragements, qu’ils trouvent là toute notre reconnaissance.

Liste des tableaux

Tableau I.1 : La disposition des composantes de l’hôtel ROYAL…………………………………………3

Tableau I.2 : Les taches à exécuté par le poste 1

………

7

Tableau I.3 : Les taches à exécuté par le poste 2

…………

7

Tableau I.4 : Les taches à exécuté par le poste 3

…………

7

Tableau I.5 : Les taches à exécuté par le poste 4

…………

8

 

…………

12

Tableau II.1 : Les déférents messages entrants et sortants Tableau II.2 : Les cas d’utilisation du système à réaliser

………… Tableau II.3 : Description du cas d’utilisation « Authentification ………….…………

14

17

Tableau II.4 : Description du cas d’utilisation «Consultation du planning des réservations »

18

Tableau II.5 : Description du cas d’utilisation «Gestion des tarifs Tableau II.6 : Description du cas d’utilisation «Gestion des réservations des

18

chambres…………………………………………………………………………………………………….………………… 19

Tableau II.7 : Description du cas d’utilisation «Gestion des chambres»

………

20

Tableau II.8 : Description du cas d’utilisation «Gestion des clients »

21

Tableau II.9 : Description du cas d’utilisation «Gestion des factures »

22

Tableau II.10 : Description du cas d’utilisation «Gestion des tables »

23

Tableau II.11 : Description du cas d’utilisation «Gestion des Salles »

24

Tableau II.12 : Liste des attributs du diagramme de classe

42

*

Liste des Figures

Figure I.1 : Hôtel ROYAL

 

2

Figure I.2 : Organigramme de l’hôtel royal la partie 1

5

Figure I.3 : Organigramme de l’hôtel royal la partie 2

6

Figure II.1 : Diagramme de contexte du système

13

Figure II.2 : Diagramme des cas d’utilisation

15

Figure II.3 : Diagramme des cas utilisation«générale»

16

Figure II.4 : Diagramme de séquence « authentification »

26

Figure II.5 : Diagramme de séquence « consultation des réservations et factures………

27

Figure II.6 : Diagramme de séquence « tarifs »

28

Figure II.7 : Diagramme de séquence « réservation des chambres »

29

Figure II.8 : Diagramme de séquence « gestion des chambres »

30

Figure II.9 : Diagramme de séquence « gestion des clients

31

Figure II.10 : Diagramme de séquence « gestion des factures »

32

Figure II.11 : Diagramme de séquence « gestion des réservations des salles »

33

Figure II.12 : Diagramme de séquence « gestion des réservations des tables »

34

Figure II.13 : Diagramme d’activité « gestion des tarifs»

35

Figure II.14 : Diagramme d’activité « consultation »

35

Figure II.15: Diagramme d’activité « gestion des chambres »

36

Figure II.16: Diagramme d’activité « gestion des

factures »

36

Figure II.17: Diagramme d’activité « gestion des clients »

37

Figure II.18 : Diagramme d’activité « gestion des réservations des chambres »…………

47

Figure II.19: Diagramme d’activité « gestion des réservations des salles »

38

Figure II.20 : Diagramme d’activité « gestion des réservations des tables »

38

Figure II.21 : les utilisateurs existant

41

FigureII.22 : Diagramme de classe

42

Figure III.1 : Arborescence de l’application

47

FigureIII.2 : interface page d’accueil

48

Figure III.3 : Boîte d’authentification

49

Figure III.4: Interface d’espace directeur

49

Figure III.5 : Interface d’espace réceptionniste

50

Figure III.6. Interface d’espace chef de réception

50

Figure III.7 : Interface d’espace maître d’hôtel

51

Figure III.8 : Formulaire de la liste chambre à réservé

51

Figure III.19 : Formulaire d’ajout d’une réservation de chambre

52

Figure III.10 : Formulaire de modification d’une réservation de chambe…………

52

Figure III.11 : Interface de suppression d’une réservation de chambre

53

Figure III.12 : Formulaire d’ajout d’un client

54

Figure III.13 : Formulaire d’ajout d’une facture

55

Figure III.14 : Formulaire de réservation d’une salle

55

Figure III.15 : Formulaire de réservation d’une Table

56

Liste des abréviations

o

IHM «interactions homme-machine»: Un Humain Contrôler et Communiquer avec une Machine.

o

JDBC : Java Database Connectivity est une « passerelle».

o

JDK : kit de développement Java.

o

JRE : JAVA Running Environnent.

o

L'opérateur Alt : Alternative.

o

L'opérateur "Loop": boucle.

o

L'opérateur Opt : Option.

o

L'opérateur Seq : «Weak Sequencing» séquençage Faible.

o

MLDR: Modèle logique de donnée relationnel.

o

MySQL : My Structured Query Language.

o

OMG : Objet Management Group.

o

OMT : Objet Mödling Technique.

o

OOSE : Objet Oriented Software Engineering.

o

ODBC : JAVA Data Base Connectivity.

o

PHP :

o

SQL «Structured Query Language»: Langage d'interrogation Structuré.

o

UML: « Unified Modeling Language» : Langage de modélisation unifié.

o

Wamp: Windows Apache MySQL, PHP5.

INTRODUCTION

GENERAL

L'informatique étant une science de traitement automatique de données s'avère bénéfique dans tous les domaines qu'ils soient scientifiques ou professionnels, privés et/ou publics. En observant les grandes entreprises dans le monde, on se rend vite compte qu'elles réalisent des travaux complexes en fractions de temps très réduit à l'aide des machines, ce qui leur couterait des journées manuellement. En se référant à la gestion des hôtels. Ce genres des travaux ne s'effectuent plus à la main, mais par les machines et des logiciels.

A l’issu de notre étude, nous avons constaté que les hôtels (l’hôtel Royal) connait actuellement assez de difficultés liées à son mode de gestion manuelle entrainant le gaspillage du temps lors du traitement des opérations des clients à l'hôtel, tel que la réservation des clients, le remplissage du bulletin d'inscription de l'hôtel, fiche d'identification des clients, l'élaboration des factures, la difficulté de retrouver les documents à la suite du classement manuel, les erreurs dans le calcul source des différends entre l'hôtel et ses clients, la lenteur dans l'élaboration des rapports journalier, mensuel comme annuel à plusieurs copies.

Vu la complexité des activités d'un hôtel, l'outil informatique est un élément qui lui facilite une bonne gestion pour une meilleure prise des décisions dans le but d'orienter la politique générale de celle-ci. Dans ce contexte, ce mémoire s’est focalisé sur une des problématique de la gestion de l’hôtel (hôtel ROYAL) qui est la réservation car dans le domaine de l’hôtellerie, la vitesse de traitement des réservations et la gestion des besoins des clients sont fondamentales dans la stratégie commerciale, c’est pour cela que l’automatisation et l’informatisation de la gestion d’un hôtel est devenue indispensable. Ce rapport de stage est devisé en trois chapitres :

Le premier chapitre consiste à introduire générale la gestion et les taches d’un hôtel.

le travail et de présenter d’une manière

Le deuxième chapitre est la partie d’une application « analyse des besoins et conception », en présentant le langage UML sur lequel est fondée notre méthode de conception, suivant le processus unifé. Ensuite, nous avons recensé les paramètres qui interagissent avec l’application, puis nous décrivons l’utilité de chaque paramètre sous forme de cas d’utilisation. Et aussi, pour chaque cas d’utilisation, nous avons établi le diagramme de séquence dont l’objectif est de représenter les interactions entre les objets

du système en indiquant la chronologie des échanges .Enfin la réalisation d’un modèle statique représenté par le diagramme de classe de plus que le modèle relationnel associé à ce dernier en appliquant les règles de passage ce qui nous permettra d’avoir un aperçu sur la base de donnée.

Le troisième chapitre concerne la «Réalisation» où nous exposerons les techniques d’implémentation que nous avons mise en œuvre et nous donnerons un aperçu final à travers quelques interfaces de l’application réalisé.

CHAPITRE I

PRESENTATION

Introduction

Le premier chapitre consiste en une présentation générale et globale du l’organisme d’accueil, concernant hôtel « ROYAL ». De ce fait, une présentation complète des différents organismes et son organigramme sera traité, complété par un aperçu général sur la situation informatique de l'hôtel. La problématique ainsi que l’objectif de cette étude sera également présenter afin de clôturer ce présent chapitre.

I.1 Présentation et l’organigramme de l’hôtel Royal I.1.1 Présentation de l’hôtel Royal

L'hôtel Royal se situe non loin du centre-ville de Bejaïa, à environ 20mn de l'aéroport et du port. Le prestigieux hôtel Royal à Bejaïa, Algérie dispose d'une grande piscine extérieure, un jardin botanique aux essences méditerranéennes, un terrain de sport, une salle des jeux, une salle de réunion set une discothèque. En outre, l'établissement met à disposition de sa clientèle un bar, un grill room, une pizzeria et une cafétéria pour se restaurer. L'Hôtel Royal dispose de chambres, suites et appartements tous équipés avec climatiseur, connexion Wifi e mini bar pour permettre à ses clients un séjour plaisant.

avec climatiseur, connexion Wifi e mini bar pour permettre à ses clients un séjour plaisant. Figure

Figure I.1 : Hôtel ROYAL

I.1.2 La disposition des composantes de l’hôtel ROYAL

Niveau

Composante

(niveau 0) / RED

Parking ayant une capacité de : 120 Véhicules

Deux meubles de 10 étages chacun.

Magasins.

Installations techniques (Chaudière, Bâche à eau, groupe électrogène, etc.)

Salle des fêtes.

Piscine

Un grand jardin.

2 grandes Piscine.

Pizzeria.

Niveau (0) / RDC

Réception et hall de réception

Services Administratifs :

 

Service Finance & Comptabilité

Service du personnel

Service Approvisionnement

Hébergement du personnel

Buanderie

niveau 1 :1 er Etage

Restaurant

Cafétéria

 

pizzeria

Cuisine

Salle multifonctionnelle (salle de conférence)

Salle de réunion

Salon d’exposition.

Niveau 3 :

Hébergement : Constitué de 73 chambres réparties comme suit :

2 ème au 10 ème

Six (40) Chambres Single

étage

dix (10) Chambres doubles

Onze (10) Chambres Triples

sept (07) suites Senior

trois (03) Suites Junior

Trois(03) appartements

Tableau I.1 : La disposition des composantes de l’hôtel ROYAL.

I.1.3 Présentation de quelque composante de l’hôtel

L’hébergement

Les chambres sont entièrement datées de tous les équipements et accessoires permettant un séjour agréable, doté d’une vue panoramique appréciable sur la ville de Bejaia ou sur la piscine et le jardin de l’hôtel.

Restaurant

Le restaurant est niché au premier étage de l’hôtel principalement, doté d’une vue panoramique appréciable sur la ville de Bejaia d’une capacité de 250 couverts jour.

Salle des fêtes

Hôtel ROYAL dispose une salle des fêtes pour vox cérémonies de mariages ou autres événements dotée de toutes les commodités, elle est conçue pour une capacité d’accueil de 300 places assises et une salle de restauration de 180 couverts.

I.2 Définition d’organigramme

L'organigramme est une représentation schématique des liens fonctionnels, organisationnels et hiérarchiques d'une entreprise, Et ce dernier représente la structure interne de l’entreprise en termes de départements, services et emplois. Dans l’hôtellerie, l’organisation du travail est découpée en département et services [1].

L'organigramme fait apparaître pour chaque poste d’emploi

La dénomination du poste.

 

La position hiérarchique.

Il permet de visualiser les :

Relations hiérarchiques

Relations fonctionnelles

Relations hiérarchiques est une relations d'autoritaire qui permettent la transmission des ordres, en traits pleins. « Par exemple entre un éducateur-chef et un éducateur ».

Relations

fonctionnelles

est

liées

aux

activités

exercées

qui

permettent

la

transmission des informations, le travail en groupe, en pointillés. « par exemple : entre

une secrétaire médicale et une secrétaire du service des Admissions ».

I.2.1 intérêt de l'organigramme

Définir les postes et fixer les responsabilités,

D'être un moyen d'information interne,

De mettre en évidence des fonctions et des services,

De déterminer les liaisons entre les responsables,

De pouvoir inclure à tout moment un nouveau poste, service.

I.2.2 Organigramme de l’hôtel ROYAL

nouveau poste, service. I.2.2 Organigramme de l’hôtel ROYAL Figure I.2: Organigramme de l’hôtel royal la partie

Figure I.2: Organigramme de l’hôtel royal la partie 1.

Figure I.2: Organigramme de l’hôtel royal la partie 2. I.4 Etude de l’existant L’étude des

Figure I.2: Organigramme de l’hôtel royal la partie 2.

I.4 Etude de l’existant

L’étude des postes de travail est le but de savoir leur nombre existants et leur déceler surchargés ainsi que les principaux avantages et inconvénients de l’organisation de direction existante.

I.4.1 Etude des postes de travail et les taches à exécuter

Nous nous sommes intéressés principalement aux postes de travails qui gèrent les réservations de cet hôtel afin de déceler les principales lacunes et problèmes que rencontre le personnel gérant cette tâche.

A. Poste N°1

Ce poste qui se situe dans le meuble n o 1 au 1 er étage est utilisé par le directeur dans le service d’attachement et la réception, son rôle est l’organisation de la gestion d’hôtel.

A.1 LES TACHES EXECUTE PAR LE POSTE N O 1

N

o

Désignation

Fréquence

01

Géré l’hôtel

Chaque jour

Tableau I.2 : Les taches exécutées par le poste 1

B. Poste N°2

Ce poste qui se situe à la réception est utilisé par le chef de réception afin d’introduire les factures, les imprimées et recevoir les réservations via E-mail.

B.1 LES TACHES EXECUTEES PAR LE POSTE 2

N

o

Désignation

Fréquence

01

Etablissement

de la fiche de

Arrivé du client

police

02

Etablissement des factures

Arrivé du client

03

Envoyer le registre police

Chaque mois

Tableau I.3 : Les taches exécutées par le poste 2

Remarque : le réceptionniste s’occupe de travail de chef de réception lorsque ce dernier est absent.

C. Poste N°3

Ce poste qui se situe à la réception est utilisé par le réceptionniste essentiellement pour gérer les clés magnétiques des chambres grâce à un logiciel spécifique fourni avec les cartes (les clés).

C.1 LES TACHES A EXECUTE PAR LE POSTE 3

N

o

Désignation

Fréquence

01

réception du client

Arrivé du client

02

Enregistrement des informations du client

Arrivé du client

03

Vérification la disponibilité des chambres.

A Chaque demande de réservation

Tableau I.4 : Les taches exécutées par le poste 3

d. poste N°4

Ce poste qui se situe à la restauration est utilisé par le maitre d’hôtel essentiellement pour gérer le service de restauration (la gestion de restaurant), principalement les factures.

D.1 LES TACHES A EXECUTE PAR LE POSTE 4

N

o

Désignation

Fréquence

01

Récapitulation restaurant

Chaque

commande

02

Vérification la disponibilité des tables et des salles.

Chaque

demande

de réservation

Tableau I.5 : Les taches exécutées par le poste 4

I.5. Etude des documents

Est l’étude systématique des documents d’une organisation dans le but d’obtenir de l’information pour une évaluation.

Etude du document N° 01 Code : FC Désignation : Fiche Client Nature de document : interne Le document est-t-il rempli par : réceptionniste Destiné pour : réceptionniste Nombre d’exemplaires : 01.

Etude du document N° 02 Code : FP Désignation : Fiche Police Nature de document : interne Le document est-t-il rempli par: réceptionniste Destiné pour: Police Nombre d’exemplaires : 01

Etude du document N° 03 Code : F Désignation : Facture Nature de document : interne Le document est-t-il rempli par : chef de réception Destiné pour: client Nombre d’exemplaires : 02

I.6 Présentation de l’étude I.6.1 Présentation du sujet

Les informations circulant dans l’hôtel sont de nature diverses, elles concernent le client depuis son arrivé jusqu’à son départ de l’hôtel, et pour le bon fonctionnement du travail nous avons mis en place un système informatique qui facilitera les tâches des utilisateurs. L’application à mettre en œuvre permettra aux utilisateurs d’assurer ainsi une bonne gestion pour l’hôtel.

I.6.2 Problématique

Les réservations à l’Hôtel Royal deviennent de plus en plus dure, vu les voyageurs et les touristes en masse séjournant à Bejaïa, chacun serait sans doute d’accord que la complexité du métier « hôtelier » ne fait que s’accroitre. Les erreurs sont fréquemment commises, avec le nombre d’informations à sauvegarder qui augmente de jour en jour, de plus avec la procédure manuelle et faute de bon archivage des documents ces derniers sont facilement perdus, et la recherche des informations n’est pas chose évidente ni facile, ce qui provoque le mécontentement des clients.

I.6.3 Objectif de l’étude

L’objectif essentiel de ce travail se résume à « la conception et la réalisation d’une application web pour la gestion d’un Hôtel », une application fiable et maniable afin de facilite la tâche de réservation (chambres, salle et table). De pouvoir suivre la clientèle (de leurs arrivées jusqu’à leur départ).Ainsi que d’améliorer la qualité du service en un temps très réduit et surtout limiter les erreurs de stockage des informations et leurs bonne gestion.

Conclusion

Dans ce premier chapitre, on a effectué une présentation de l’hôtel « ROYAL » et ses différentes structures, ou le plus grand intérêt est porté au poste de travail « service de réception. Puis, on a mis l’accent sur la problématique ainsi les objectifs à atteindre. Dans le chapitre suivant, nous allons entamer la partie qui consiste à analyser nos besoins et de les appliquer sur notre conception.

CHAPITRE II

ANALYSE ET CONCEPTION

Introduction

Dans ce chapitre on s’intéresse à l’étude et analyse de conception de l’application proposée pour le traitement des différentes difficultés rencontrées lors des réservations au niveau de l’hôtel « ROYAL ». Le langage de modélisation engagé pour ce fait est l’UML qui est consacré à faire une étude préliminaire de l’application à concevoir. Ce présent chapitre offre également une démonstration des diagrammes des différentes utilisations en décrivant les scénarios de chaque acteur, par conséquent, les diagrammes de séquence qui évoquent les interactions entre ces acteurs et les différents objets.

II.1. Définition du l’UML

Langage de modélisation unifié « Unified Modeling Language» est un langage de modélisation graphique à base de pictogrammes. Il est apparu dans le monde du génie logiciel, dans le cadre de la «conception orientée objet». Couramment utilisé dans les projets logiciels, il peut être appliqué à toutes sortes de systèmes ne se limitant pas au domaine informatique [4].

UML est l’accomplissement de la fusion de précédents langages de modélisation objet : Booch, OMT, OOSE.UML est à présent un standard défini par l’Object Management Group (OMG).

II.1.1 Utilité d'UML

UML est utilisé pour spécifier, visualiser, modifier et construire les documents nécessaires au bon développement d'un logiciel orienté objet. UML offre un standard de modélisation, pour représenter l'architecture de logicielle. Les différents éléments représentables sont « Activité d'un objet/logiciel, Acteurs, Processus, Schéma de base de données, Composants logiciels et Réutilisation de composants ». Grâce aux outils de modélisation UML, il est également possible de générer automatiquement une partie de code, par exemple en langage Java, à partir des divers documents réalisés [11].

II.2 Présentation sommaire de l’application

L’application représente un environnement qui va permettre aux utilisateurs de consulter et gérer les réservations de l’hôtel. Chaque utilité suivant permet à un type d’usager :

Directeur gérer la gestion de l’hôtel.

Chef de réception gérer les chambres et les tarifs.

Réceptionniste effectuer sa réservation et gérer les clients.

Maître d’hôtel de gérer la restauration ainsi que les différentes salles.

II.2.1 Spécification

L'analyse de ce sujet nous a permis d'identifier les divers besoins auxquels doit répondre notre application. Ces besoins dégagés sont classés en deux catégories à savoir les besoins fonctionnels et les besoins non fonctionnels.

II.2.2. Besoins fonctionnels et non fonctionnels

A. Besoins fonctionnels

Les besoins fonctionnels produisent le modèle des besoins en se basant sur les fonctions des utilisateurs ci-dessus, Elle qualifie de produire un système adapté aux utilisateurs.

Permettre la consultation des réservations.

Permettre les tâches de gestion de chambre : ajout, modification, suppression.

Permettre les tâches de gestion de client : ajout, modification, suppression

Permettre les tâches de gestion des réservations : ajout, modification, annulation et suppression (communication avec l’hôtel et la centrale de réservation).

Permettre les tâches de gestion des factures.

B. Besoins non fonctionnels

Une fois les besoins fonctionnels sont bien définis, les besoins non fonctionnels doivent être pris en compte tout au long du processus de développement de l’application à savoir :

L’application doit offrir un fonctionnement sous-réseau.

Ergonomie et convivialité : l’application doit fournir aux différents utilisateurs une interface (espace des utilisateurs).

La latence (délai de réponse) doit être raisonnable

Portabilité : l’application doit être portable, c’est-à-dire fonctionnelle sur n’importe quel machine (ordinateurs).

Sécurité : l’application doit assurer un niveau minimum de sécurité pour les informations traitées.

II.2.3. Les acteurs du système

Un acteur représente un rôle joué par une entité externe (utilisateur humain, dispositif matériel ou autre système) qui interagit directement avec le système étudié. Il peut consulter et/ou modifier directement l’état du système. Les acteurs qui interagissent avec l’application à concevoir sont :

Le directeur : consultation de l’ensemble de gestion d’hôtel surtout les réservations.

Le chef de réception : gestion des chambres et la mise à jour des tarifs et les factures.

Le réceptionniste : gestion des réservations des chambres et des clients.

Le maître d’hôtel : gestion des réservations des salles et des réservations des tables.

II.3.1 Diagramme de contexte du système

La description des différents acteurs permet de décrire le système à développer par un premier diagramme appelé « diagramme de contexte ». Ce dernier permet de présenter les messages échangés des différents acteurs avec le système.

Un message est un moyen de communication entre les acteurs et le système. Il définit un Événement, c’est-à-dire une information envoyée à un acteur et provoquant en réponse le commencement d’actions associées à ce dernier [4]. Les déférents messages échangés ont présenté dans la figure suivant :

messages échangés ont présenté dans la figure suivant : Figure II.1 : Diagramme de contexte du

Figure II.1 : Diagramme de contexte du système

Les messages entrants et sortants sont présentés dans le tableau suivant :

Utilisateur

Messages entrants

1.

3.

Demande d’authentification.

remplissage du formulaire.

Messages sortants

2. Formulaire d’authentification. 4. Interface correspondante.

Directeur

5.

Demande de consultation du

 

6. Affichage du planning de réservation.

 

planning de réservation.

 
 

7.

Demande d’ajout d’une chambre.

 

8.

Formulaire

d’ajout

d’une

9.

Formulaire d’ajout rempli.

 

chambre.

 

11.

demande de Modification, ou

 

10.

Confirmation d’ajout.

 

Chef de

suppression de la chambre

 

12.

Liste des

chambres

réception

13.

modification, suppression des

 

existantes.

 

chambres existantes

 

14.

confirmation

de

15.

Demande de mise à jour des

 

modification, suppression.

 

tarifs.

16.

Formulaire de mise à jour des

17. demande la facture formulaire des factures.

et

le

tarifs.

 
 

18.

le formulaire des factures.

 

19.

Demande d’ajout d’une

20.

Formulaire d’ajout, d’une

réservation ou d’un client.

 

réservation ou d’un client 22.confirmation d’ajout.

 

21.

Formulaire d’ajout rempli.

Réception

23.

demande de Modification ou de

 

24.

La liste des réservations,

niste

suppression d’une réservation ou d’un client.

des clients existants.

 

24.

La liste des clients.

26.

confirmation de

25.

modification, suppression de

modification, de suppression.

réservation ou d’un client.

 
 

27.

Demande d’ajout, d’une

28.

Formulaire d’ajout d’une

réservation de salle ou de table.

 

réservation de salle ou de table.

Maître

29.

Modification ou suppression

30.

Confirmation de l’ajout.

 

d’hôtel

d’une réservation de salles, tables.

32.

La liste des salles et tables

31.

Modification ou suppression

existantes.

 

d’une réservation de tables.

 

34.

Confirmation de

33.

Formula ire d’ajout rempli

modification, suppression

 

Tableau II.1 : Les déférents messages entrants et sortant.

II.4. Les Cas d’utilisation II.4.1 Identification des cas d’utilisation

Un cas d'utilisation définit une manière d'utiliser le système et permet d'en décrire les exigences fonctionnelles. Chaque cas d'utilisation contient un ou plusieurs scénarios qui définissent comment le système devrait interagir avec les utilisateurs (appelés acteurs) pour atteindre un but ou une fonction spécifique d'un travail. Un acteur d'un cas d'utilisation peut être un humain ou un autre système externe à celui que l'on tente de définir [2].

Lors de notre analyse des besoins nous avons pu identifier les actions importantes que nous présenterons ci-dessous et nous les modélisons par la suite avec les diagrammes cas utilisation d'UML.

Cas d’utilisation

Acteurs

Opérations

Authentification

Utilisateurs

Connexion

Déconnexion

Consultation du planning des réservations et factures

directeur

 

Gestion des tarifs

Chef de réception

Mise à jour

Gestion des chambres

Chef de réception

Ajout

Modification

Suppression

Gestion des factures

Chef de réception

Ajout

Modification

Suppression

Gestion des réservations des chambres

Réceptionniste

Ajout

Modification

Suppression

Gestion des clients

Réceptionniste

Ajout

Modification

Suppression

Gestion des réservations de salles

Maitre d’hôtel

Ajout

Modification

Suppression

Gestion des réservations de tables

Maitre d’hôtel

Ajout

Modification

Suppression

Tableau II.2 : Les cas d’utilisation du système à réaliser

II.4.2.Diagramme de cas d'utilisation

Le diagramme de cas d'utilisation est diagramme UML utilisés pour donner une vision globale du comportement fonctionnel d'un système logiciel. Ils sont utiles pour des présentations auprès de la direction ou des acteurs d'un projet, mais pour le développement, les cas d'utilisation sont plus appropriés [7].

Figure II.2 : Diagramme des cas d’utilisation. II.4.3. La relations entre cas d’utilisation Les relations

Figure II.2 : Diagramme des cas d’utilisation.

II.4.3. La relations entre cas d’utilisation

Les relations entre cas d’utilisation ont pour but de décomposer le système en fonctionnalités à granularité plus fine, suivant ainsi l’adage « diviser pour régner ». Il existe trois types de décompositions ou relations entre cas d’utilisation, les deux principales étant l’inclusion et l’héritage, la troisième (l’extension) étant d’utilisation mal aisée et déconseillée [7].

a. La relation d’inclusion

La relation la plus simple à comprendre entre deux cas d’utilisation est l’inclusion notée par une dépendance est symbolisée par le stéréotypée « «include» ». L’inclusion exprime le fait qu’un cas d’utilisation comprend une séquence d’actions consécutives qu’il est possible de factoriser avec d’autres cas d’utilisation. Un cas A inclut un cas B si le comportement décrit par le cas A inclut le comportement du cas B : le cas A dépend de B. Lorsque A est sollicité, B l’est obligatoirement, comme une partie de A.

II.4.4 Diagramme des cas utilisations de l’application

II.4.4 Diagramme des cas utilisations de l’application Figure II.3 : Diagramme des cas utilisation II.4.5 Description

Figure II.3 : Diagramme des cas utilisation

II.4.5 Description des cas d’utilisation

Nous allons désormais parler de l’interaction entre les acteurs et le système : il s’agit de décrire la chronologie des actions qui devront être réalisées par les acteurs et par le système lui-même. On parle d’ailleurs de scénarios. La description d’un cas d’utilisation permet de :

clarifier le déroulement de la fonctionnalité ;

décrire la chronologie des actions qui devront être réalisées ;

Identifier les parties redondantes pour en déduire des cas d’utilisation plus précises qui seront utilisées par inclusion, extension ou généralisation/spécialisation. Et oui, dans ce cas nous réaliserons des itérations sur les diagrammes de cas d’utilisation ;

d’indiquer d’éventuelles contraintes déjà connues et dont les développeurs vont devoir tenir compte lors de la réalisation du logiciel. Ces contraintes peuvent être de nature divers [2].

1. Description du cas d’utilisation « Authentification »

Numéro du cas

Nom du cas d’utilisation

d’utilisation

Titre

Authentification

But

Ce cas d’utilisation permet à l’utilisateur de se connecter au système.

Acteurs

Les utilisateurs.

Pré conditions

L’utilisateur saisit les informations de connexion (login et mot de passe).

Enchainements

L’utilisateur demande une connexion au système.

Le système demande le login et le mot de passe.

L’utilisateur remplie le formulaire et valide.

Le système vérifie la validité des données.

Le système affiche l’interface d’accueil correspondante au chef de réception.

Alternative

Dans le cas où l’utilisateur fournit un login et/ou un mot de passe erroné, le système lui affiche un message d’erreur.

Besoin d’IHM

Formulaire d’authentification.

Tableau II.3 : Description du cas d’utilisation « Authentification »

2. Description du cas d’utilisation «Consultation du planning des réservations».

Numéro du cas

Nom du cas d’utilisation

d’utilisation

 

Titre

Consultation du planning des réservations.

But

Permet aider le directeur a consulté les réservations.

Acteurs

Directeur.

Pré conditions

Authentification de l’utilisateur.

Alternative

Dans le cas où il y a un problème dans la réservation, le système lui affiche un message d’erreur dans la consultation.

Besoin d’IHM

Liste des réservations

Tableau II.4 : Description du cas d’utilisation «Consultation du planning des réservations »

3. Description du cas d’utilisation «Gestion des tarifs»

Numéro du cas

Nom du cas d’utilisation

d’utilisation

Titre

Gestion des tarifs

But

Permet à l’utilisateur de modifier les tarifs.

Acteurs

Chef de réception.

Pré conditions

Authentification de l’utilisateur.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande la mise à jour des tarifs.

Le système affiche la liste des tarifs.

L’utilisateur choisit le tarif.

Le système affiche le formulaire sur le tarif.

L’utilisateur modifie et valide.

Le système enregistre et confirme la mise à jour.

Alternative

Le système affiche un message d’erreur lors que l’utilisateur fournit des données incomplètes ou erronées durant la modification,

Besoin d’IHM

Formulaire des tarifs

Tableau II.5 : Description du cas d’utilisation «Gestion des tarifs

Tableau II.6 : Description du cas d’utilisation «Gestion des réservations des chambres »

Numéro du cas

 

Nom du cas d’utilisation

d’utilisation

 

Titre

 

Gestion des réservations des chambres

But

 

Permet à l’utilisateur de gérer la gestion des réservations des chambres

Acteurs

 

Réceptionniste.

Pré conditions

 

L’utilisateur doit s’authentifier.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande l’ajout, modifier ou supprimer une réservation.

3. Le système affiche formulaire ou la liste des réservations.

-

L’utilisateur remplie le formulaire et valide.

L’utilisateur choisit la chambre, modifier ou supprimer et valider

-

Le système enregistre et confirme.

Alternative

 

le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification),.

Besoin d’IHM

 

Les Formulaires des réservations.

5. Description du cas d’utilisation «Gestion des chambres».

Numéro du cas

 

Nom du cas d’utilisation

d’utilisation

 

Titre

 

Gestion des chambres

But

 

Permet à l’utilisateur de gérer la gestion des chambres.

Acteurs

 

Chef de réception.

Pré conditions

L’utilisateur doit s’authentifier.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande l’ajout, modifier ou supprimer une chambre.

3. Le système affiche formulaire ou la liste des chambres.

-

L’utilisateur remplie le formulaire et valide.

L’utilisateur choisit la chambre, modifier ou supprimer et valider

-

Le système enregistre et confirme.

Alternative

 

Le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification).

Besoin d’IHM

 

Les Formulaires des chambres.

Tableau II.7 : Description du cas d’utilisation «Gestion des chambres».

6. Description du cas d’utilisation «Gestion des clients ».

Numéro du cas

 

Nom du cas d’utilisation

d’utilisation

 

Titre

Gestion des clients

But

Permet à l’utilisateur de gérer la gestion des clients

Acteurs

Réceptionniste.

Pré conditions

L’utilisateur doit s’authentifier.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande l’ajout, modifier ou supprimer un client.

3. Le système affiche formulaire ou la liste des clients.

-

L’utilisateur remplie le formulaire et valide.

L’utilisateur choisit la chambre, modifier ou supprimer et valider

-

Le système enregistre et confirme.

Alternative

 

Le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification).

Besoin d’IHM

 

Les Formulaires des clients.

Tableau II.8 : Description du cas d’utilisation «Gestion des clients ».

7. Description du cas d’utilisation «Gestion des factures»

Numéro du cas

d’utilisation

Nom du cas d’utilisation

Titre

Gestion des factures.

But

Permet à l’utilisateur de gérer la gestion des factures.

Acteurs

Chef de réception.

Pré conditions

L’utilisateur doit s’authentifier.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande le formulaire de gestion des factures (l’ajout, modifier ou supprimer une facture).

3. Le système affiche formulaire ou la liste des factures.

- L’utilisateur remplie le formulaire et valide.

- L’utilisateur choisit la chambre, modifier ou supprimer et valider

Le système enregistre et confirme.

Alternative

Le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification).

Besoin d’IHM

Les Formulaires des factures.

Tableau II.9 : Description du cas d’utilisation «Gestion des factures ».

8. Description du cas d’utilisation «Gestion des tables».

Numéro du cas

d’utilisation

Titre

But

Acteurs

Pré conditions

Enchainements

Nom du cas d’utilisation

Gestion des tables

Permet à l’utilisateur de gérer la gestion des tables

Maitres d’hôtel.

L’utilisateur doit s’authentifier.

L’utilisateur s’authentifie.

L’utilisateur demande l’ajout, modifier ou supprimer une tables.

3. Le système affiche formulaire ou la liste des tables.

- L’utilisateur remplie le formulaire et valide.

- L’utilisateur choisit la chambre, modifier ou supprimer et valider

Le système enregistre et confirme.

Alternative

Le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification).

Besoin d’IHM

Les Formulaires des tables.

Tableau II.10 : Description du cas d’utilisation «Gestion des tables ».

9. Description du cas d’utilisation «Gestion des salles».

Numéro du cas

 

Nom du cas d’utilisation

d’utilisation

 

Titre

 

Gestion des salles.

But

 

Permet à l’utilisateur de gérer la gestion des salles.

Acteurs

 

Réceptionniste.

Pré conditions

L’utilisateur doit s’authentifier.

Enchainements

L’utilisateur s’authentifie.

L’utilisateur demande l’ajout, modifier ou supprimer un client.

3. Le système affiche formulaire ou la liste des salles

-

L’utilisateur remplie le formulaire et valide.

L’utilisateur choisit la chambre, modifier ou supprimer et valider

-

Le système enregistre et confirme.

Alternative

 

Le système affiche un message d’erreur lorsque l’utilisateur fournit des données incomplètes ou erronées (ajout et modification).

Besoin d’IHM

 

Les Formulaires des salles.

Tableau II.11 : Description du cas d’utilisation «Gestion des Salles ».

II.5 Diagramme de séquence [6]

Les diagrammes de séquences permettent de décrire comment les éléments du système interagissent entre eux et avec les acteurs. Les objets au cœur d’un système interagissent en s’échangent des messages. Les acteurs interagissent avec le système au moyen d’IHM (Interfaces Homme-Machine).

II.5.2 Messages synchrones et asynchrones

1. Message synchrone

Un message synchrone bloque l’expéditeur jusqu’à la réponse du destinataire.

Le flot de contrôle passe de l’émetteur au récepteur.

2. Message asynchrone

Un message asynchrone n’est pas bloquant pour l’expéditeur. Le message envoyé peut être pris en compte par le récepteur à tout moment où ignoré.

II.5.3 Fragment d’interaction

Un fragment combiné se compose d'un ou de plusieurs opérandes d'interaction et chacun d'entre eux contient un ou plusieurs messages, utilisations d'interactions ou encore fragments combinés. Les fragments combinés vous permettent d'afficher des boucles et des branches [14].

Nous décrivons dans ce qui suit les opérateurs que nous allons utiliser pour l’analyse de notre projet : Alt, Opt, Loop, Ses et Ref.

Opt : Contient une séquence qui peut ou non se produire. Dans la protection, vous pouvez spécifier la condition sous laquelle elle se produit.

Alt : Contient une liste des fragments dans lesquels se trouvent d’autres séquences de messages. Une seule séquence peut se produire à la fois. Loop : Le fragment est répété un certain nombre de fois. Dans la protection, on indique la condition sous laquelle il doit être répété.

Seq : Il existe au moins deux fragments d’opérande. Les messages impliquant la même ligne de vie doivent se produire dans l’ordre des fragments. Lorsqu’ils n’impliquent pas les mêmes lignes de vie, les messages des différents fragments peuvent être entrelacés en parallèle.

Loop : L’opérateur « Loop » correspond à une instruction de boucle qui permet d’exécuter une séquence d’interaction tant qu’une condition est satisfaite.

II.5.4 Les Diagrammes de séquence de l’application

1. Diagramme de séquence « authentification »

Figure II.4 : Diagramme de séquence « authentification » 2. Diagramme de séquence « consultation

Figure II.4 : Diagramme de séquence « authentification »

2. Diagramme de séquence « consultation des réservations et factures »

Figure II.5 : Diagramme de séquence « consultation des réservations et factures »

Figure II.5 : Diagramme de séquence « consultation des réservations et factures »

3. Diagramme de séquence « gestion des tarifs »

3. Diagramme de séquence « gestion des tarifs » Figure II.6 : Diagramme de séquence «

Figure II.6 : Diagramme de séquence « tarifs »

4. Diagramme de séquence « réservation des chambres

4. Diagramme de séquence « réservation des chambres Figure II.7 : Diagramme de séquence « réservation

Figure II.7 : Diagramme de séquence « réservation des chambres »

4. Diagramme de séquence « gestion des chambres »

4. Diagramme de séquence « gestion des chambres » Figure II.8 : Diagramme de séquence «

Figure II.8 : Diagramme de séquence « gestion des chambres ».

5. Diagramme de séquence « gestion des clients »

5. Diagramme de séquence « gestion des clients » Figure II.9 : Diagramme de séquence «

Figure II.9 : Diagramme de séquence « gestion des clients ».

6. Diagramme de séquence « gestion des factures »

6. Diagramme de séquence « gestion des factures » Figure II.10 : Diagramme de séquence «

Figure II.10 : Diagramme de séquence « gestion des factures ».

7. Diagramme de séquence « gestion des réservations des salles »

de séquence « gestion des réservations des salles » Figure II.11 : Diagramme de séquence «

Figure II.11 : Diagramme de séquence « gestion des réservations des salles.

8. Diagramme de séquence « gestion des réservations des tables »

de séquence « gestion des réservations des tables » Figure II.12 : Diagramme de séquence «

Figure II.12 : Diagramme de séquence « gestion des réservations des tables »

II.6. Diagramme d’activité

Le diagramme d’activé représente la dynamique du système.il montre l’enchainement des activités d’un système ou d’une opération.il représente le flot de contrôle qui retrace le fil d’exécution et qui transite d’une activité à une autre dans le système [5].

II.6.1 Diagrammes d’activité de l’application

1. Diagramme d’activité « gestion des tarifs »

1. Diagramme d’activité « gestion des tarifs » Figure II.14 : Diagramme d ’activité « gestion

Figure II.14 : Diagramme d’activité « gestion des tarifs»

2. Diagramme d’activité « consultation »

Figure II.15 : Diagramme d’activité « consultation »

» Figure II.15 : Diagramme d’activité « consultation » 3. Diagramme d’activité « gestion des chambres

3. Diagramme d’activité « gestion des chambres »

Figure II.16: Diagramme d’activité « gestion des chambres » 4. Diagramme d’activité « gestion des

Figure II.16: Diagramme d’activité « gestion des chambres »

4. Diagramme d’activité « gestion des factures »

» 4. Diagramme d’activité « gestion des factures » Figure II.17: Diagramme d’activité « gestion des

Figure II.17: Diagramme d’activité « gestion des factures »

Figure II.18: Diagramme d’activité « gestion des clients ». 6. Diagramme d’activité « gestion des

Figure II.18: Diagramme d’activité « gestion des clients ».

6. Diagramme d’activité « gestion des réservations des chambres »

d’activité « gestion des réservations des chambres » Figure II.19 : Diagramme d’activité « gestion des

Figure II.19 : Diagramme d’activité « gestion des réservations des chambres ».

7. Diagramme d’activité « gestion des réservations des salles »

d’activité « gestion des réservations des salles » Figure II.20: Diagramme d’activité « gestion des

Figure II.20: Diagramme d’activité « gestion des réservations des salles »

8. Diagramme d’activité « gestion des réservations des tables »

d’activité « gestion des réservations des tables » Figure II.21: Diagramme d’activité « gestion des

Figure II.21: Diagramme d’activité « gestion des réservations des tables ».

II.7. Diagramme de classe

Un diagramme de classes UML décrit les structures d'objets et d'informations utilisées par votre application, à la fois en interne et dans la communication avec ses utilisateurs. Il décrit les informations sans faire référence à une implémentation particulière. Ses classes et relations peuvent être implémentées de nombreuses manières, comme les tables de bases de données, les nœuds XML ou encore les compositions d'objets logiciels [9].

II.7.1 Les éléments de base d’un diagramme de classes

Les éléments de base d’un diagramme de classes sont les suivants:

Objet : est une entité aux frontières bien définies. Il possède une identité et encapsule un état et un comportement. Un objet est une instance (ou occurrence) d’une classe.

Classe : décrit un groupe d’objets ayant les mêmes propriétés (attributs), un même comportement (opérations) et une sémantique commune (domaine de définition).

Opération : est une fonction applicable aux objets d’une classe et permet de décrire le comportement de ces objets.

Méthode : elle est l’implémentation d’une opération.

Attribut : est une propriété élémentaire d’une classe. Pour chaque objet d’une classe, l’attribut prend une valeur.

Classe-association : permet de décrire soit des attributs, soit des opérations propres à

l’association [10].

II.7.2 Modèle relationnel

Le modèle relationnel est basé sur une organisation des données sous forme de tables. La manipulation des données se fait selon le concept mathématique de relation de la théorie des ensembles « l'algèbre relationnelle ». Elle est constituée d'un ensemble d'opérations formelles sur les relations. Les opérations relationnelles permettent de créer une nouvelle relation (table) à partir d'opérations élémentaires sur d'autres tables [13].

II.7.3 Terminologie de l’approche relationnelle

1. Attributs : On appelle attributs le nom des colonnes qui représentent les constituants de

l'entité. Un attribut (une colonne) est repéré par un nom et un domaine de définition, c'est - à-dire l'ensemble des valeurs qu'il peut prendre.

2. Tuples : On appelle le tuple une ligne du tableau.

3. Cardinalité : La cardinalité d'une relation est le nombre de tuples qui la compose.

4. Clé principale : La clé principale d'une relation est l'attribut, ou l'ensemble d'attributs,

permettant de désigner de façon unique un tuple.

5. Clé étrangère : Une clé étrangère, par contre, est une clé (donc un attribut permettant

d'identifier de façon unique un tuple) faisant référence à une clé appartenant à une autre

table.

II.7.4 Diagramme de classe de l’application

Figure II.22 : les utilisateurs existant.

Figure II.22 : les utilisateurs existant.

Figure II.23 : Diagramme de classe.

Figure II.23 : Diagramme de classe.

Tableau II.12 : Liste des attributs du diagramme de classe

classe

Attribut

Description de l’attribut

type

Utilisateurs

IdUtilisateurs

Identifiant d’Utilisateur

Int [5]

Login

Login d’Utilisateur.

Varchar [15]

Password

Password d’Utilisateur.

Varchar [20]

Rôle

Rôle d’Utilisateur.

Varchar [20]

Tarifs

IdTarif

Identifiant du Tarif.

Int [10]

Prix

Prix du Tarif.

Float [20]

TypeService

Nouveau Prix du Tarif.

Float [20]

Service du Tarif.

Varchar [15]

Clients

IdClient

Identifiant du Client.

Int [10]

Nom

Nom du Client.

Varchar [20]

Prénom

Prénom du Client.

Varchar [20]

Nationalité

Nationalité du Client.

Varchar [15]

Type Pièce

Type Pièce du Client.

Varchar [15]

NumPièce

Numéro de Pièce du Client.

Int [15]

Adresse

Adresse de résidence du Client.

Varchar [40]

Téléphone

Numéro téléphone du Client.

Int [10]

Datearrivé

Date d’entrée du Client. Date d’sortir du Client.

Date

Datedépart

Date

Factures

Idfacture

Identifiant de facture.

Int [10]

Datefacture

Date de sortir de la facture.

Date

Montant

Prix de facture à payer.

Int

Réservations

IdRéservation

Identifiant de la Réservation

Int [10]

DateRéservation

Date de la Réservation

Date

DateArrivé

Date d’Arrivé du client.

Date

DateDépart

Date départ du client. Nombre de personnes.

Date

NbrPersonnes

Int [2]

Chambres

Id_Chambre

Identifiant de Chambre.

Int [5]

Num_Chambre

Numéro de la Chambre.

Int [3]

Nbr_Places

Nombre de Places.

Int [2]

Etat

Etat Type de chambres

Varchar [10]

Type

Varchar [10]

Tables

Id_Table

Identifiant de Table.

Int [10]

Num_Table

Numéro de Table.

Int [2]

Etat

Etat de table. Nombre de Places.

Varchar [10]

Nbr_Places

Int [2]

Salles

Id_Salle

Identifiant de Salle.

Int [2] Int [2] Varchar [10]

Etat

Etat de la salle. Type de la salle.

Type

Varchar [10]

II.7.5 Règle de passage au modèle logique de donnée relationnel (MLDR)

Règle 1 : Transformation des classes Chaque classe devient une relation. L’identifiant (respectivement les attributs) de la classe devient la clé primaire (respectivement des attributs) de la relation.

Règle 2 : Association un-à-plusieurs Il faut ajouter un attribut de type clé étrangère dans la relation fils de l’association. L’attribut porte le nom de la clé primaire de la relation père de l’association.

Règle 3 : Associations plusieurs-à-plusieurs ou classes-associations L’association (classe-association) devient une relation dont la clé primaire est composée par la concaténation des identifiants des classes connectés à l’association (classe- association). Les attributs de l’association (classe-association) doivent être ajoutés à la nouvelle relation. Ces attributs ne sont ni clé primaire, ni clé étrangère.

Règle 4 : Association un-à-un Il faut ajouter un attribut clé étrangère, dans la relation dérivée de la classe ayant la multiplicité minimale égale à un. L’attribut porte le nom de la clé primaire de la relation dérivée de la classe connectée à l’association [12].

II.7.6 Le modèle relationnel des données de l’application

Le modèle relationnel des données de l’application est représenté comme suit

Utilisateur (idUtilisateur, Login, Password, Rôle)

Client (idClient, Nom, Prénom, Nationalité, typePièce, numPièce, Adresse, Téléphone, Email, numPasseport, dateDelivraison, dateExpiration, dateEntrAlg)

Réservation (idRéservation, dateRéservation, dateArrivé, dateDépart, nbrPersonnes, #IdClient, #idChambre, #idSalle, #idTable)

Chambre (idChambre, numChambre, nbrPlaces, Etat, Type)

Salle (idSalle, Etat, Type)

Table (idTable, numTable, Etat, nbrPlaces)

Tarif (idTarif, Prix, typeService)

Conclusion

Dans Ce chapitre nous avons présenté d’une façon globale, les deux étapes essentielles du système élaboré pour l’analyse et la conception de notre application en suivant le processus de normalisation UML et les différents diagrammes, afin de faciliter la phase de réalisation.

Le chapitre suivant, quant à lui, sera consacré à la phase de développement de notre application.

CHAPITRE III REALISATION

Introduction

Après avoir réalisé une conception qui répondait bien aux besoins de l’application, nous entamons la partie réalisation de l’application que nous avons développée pour l’hôtel ROYAL, en exposons les différents outils et langages de développement utilisés lors de la réalisation et l’implémentation de la base de données ainsi qu’un aperçu sur les interfaces de notre application.

III.1. Outils de développement

Le développement d'un tel système nécessite l'utilisation de quelques outils. Dans ce qui suit, nous citons les outils qui ont été utilisés.

III.1.1 WampServer

WampServer (anciennement WAMP5), tient son nom des trois logiciels « Windows Apache MySQL, PHP5 », est un environnement serveur tout en un, il nous permettra de développer vos applications php en toute tranquillité. Wampserver n’est pas en soi un logiciel, mais un environnement comprenant deux serveurs (Apache et MySQL), un interpréteur de script (PHP), ainsi qu’une administration pour deux bases SQL PHPMyAdmine et SQLite Manager [18].

III.1.2.Définition de MySQL

MySQL (My Structured Query Language) est une base de données relationnelle libre qui a vu le jour en 1995 et très employée sur le Web, souvent en association avec PHP (langage) et Apache (serveur web), basé sur un modèle client - serveur. Son rôle consiste à stocker et à gérer une grande quantité de données en les organisant sous forme de tables. MySQL fonctionne indifféremment sur tous les systèmes d'exploitation (Windows, Linux, Mac OS notamment) [8].

III.1.3. JDBC

Java Database Connectivity (JDBC), est très importante, appelée aussi « passerelle», est une interface de programme d'application ( API ) spécification pour le raccordement des programmes écrits en Java pour les données populaire base de données. L'interface de programme d'application vous permet d'encoder demande d'accès énoncés dans Structured Query Language (SQL) qui sont ensuite transmis au programme qui gère la base de données. Il renvoie les résultats à travers une interface similaire. JDBC est très similaire à Open Database Connectivity de SQL Access Group (ODBC ) et, avec un petit programme "pont", vous pouvez utiliser l'interface JDBC pour les bases de données d'accès via l'interface ODBC [17].

III.1.4. Kit de développement Java (JDK)

Le kit de développement Java est un environnement de développement de logiciel utilisé pour développer des applications et des applets Java. Il inclut le Java Runtime Environnent (JRE), un interprète / chargeur (java), un compilateur (javac), un programme d'archivage (pot), un générateur de documentation (javadoc) et d'autres outils nécessaires au développement Java. En effet, l’exécution des programmes se fait à partir de la ligne de commandes MS-DOS même si votre environnement de travail se situe sous Windows [19].

III.1.5.Définition de l’Eclipse

Eclipse IDE est un environnement de développement intégré, libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant potentiellement de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la bibliothèque graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est également utilisé pour écrire des extensions. La spécificité d'Eclipse IDE vient du fait de son architecture totalement développée autour de la notion de plug-in (en conformité avec la norme OSGi) : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que plug-in. Plusieurs logiciels commerciaux sont basés sur ce logiciel libre, comme par exemple IBM Lotus Notes 8, IBM Symphony ou Websphere Studio Application Développer [16].

III.2. Langages de programmation utilisés III.2.1.Langage SQL

SQL (Structured Query Language) en français « Langage d'interrogation Structuré », est un langage d'interrogation de base de données très populaire. Il constitue aujourd'hui une norme implémentée par de nombreux SGBDs (Systèmes de Gestion de Bases de Données), comprenez : des serveurs de bases de données. L’accès aux BDD (bases de données) se fait de façon standard à l'aide de requêtes du langage SQL. Il existe un outil d'administration, PhpMyAdmin, qui nous offre une interface pour manipuler les tables. La connaissance de quelques requêtes permet de répondre à la majorité des besoins de programmation [18].

III.2 .2 Définition java

Java est à la fois un langage de programmation informatique orienté objet et un environnement d'exécution informatique portable créé par James Gosling et Patrick Naughton. Le langage reprend en grande partie la syntaxe du langage C++, très utilisé par les informaticiens. Néanmoins, Java a été épurée des concepts les plus subtils du C++. Java est à la fois un langage de programmation et un environnement d'exécution. Java permet de développer des applications autonomes mais aussi, et surtout, des applications client-serveur. Côté client, les applets sont à l'origine de la notoriété du langage. Les applications Java peuvent être exécutées sur tous les systèmes d'exploitation pour lesquels a été développée une plate-forme Java, dont le nom technique est JRE (Java Runtime Environment - Environnement d'exécution Java) [16].

III.3. Arborescence de l’application

III.3. Arborescence de l’application Figure III.1 : Arborescence de l’application III.4. Présentation des

Figure III.1 : Arborescence de l’application

III.4. Présentation des interfaces de l’application

III.4.1. Page d’accueil

Cette page représente la page d’accueil présentée par la figure si dessous apparait lorsque l’utilisateur accède à l’application. Cette dernière a deux boutons « Utilisateur » pour accéder à la page authentification, et un autre « Exit » pour quitter l’application.

et un autre « Exit » pour quitter l’a pplication. Figure III.2. Interface page d’accueil. III.4

Figure III.2. Interface page d’accueil.

III.4.2. Boite d’authentification

Une boîte d’authentification illustrée par la figure si dessous apparaît au moment de la demande de connexion, l'utilisateur doit s’authentifier par un login (nom d’utilisateur) et un mot de passe. Si ces informations existent dans la base de données et qu’elles se

correspondent, le système donne le droit d’accès à chaque utilisateur à son espace de travail, sinon un message d’erreur s’affiche.

espace de travail, sinon un message d’erreur s’affiche. Figure III.3 : Boîte d’authentification III.4.3.

Figure III.3 : Boîte d’authentification

III.4.3. Interface d’espace directeur

Cette page représente l’espace réservé au directeur, elle s’affiche en premier lieu une fois que le ce dernier accède à l’application après authentification, son travail est la consultation.

après authentification, son travail est la consultation . Figure III.4. Interface d’espace directeur. III.4.4.

Figure III.4. Interface d’espace directeur.

III.4.4. Interface d’espace réceptionniste

réceptionniste, s’affiche en premier

lieu une fois que le réceptionniste accède à l’application après authentification. Elle

Cette page représente l’espace réservé au

permet à ce dernier de faire son travail, qui consiste à gérer les clients et des réservations des chambres.

à gérer les clients et des réservations des chambres. Figure III.5 : Interface d’espace réceptionniste .

Figure III.5 : Interface d’espace réceptionniste.

III.4.5. Interface d’espace chef de réception

Cette page représente l’espace réservé au réceptionniste, s’affiche en premier lieu une fois que le réceptionniste accède à l’application après authentification. Elle permet à ce dernier de faire son travail, qui consiste à gérer les tarifs et la gestion des factures.

consiste à gérer les tarifs et la gestion des factures . Figure III.6. Interface d’espace chef

Figure III.6. Interface d’espace chef de réception.

III.4.6. Interface d’espace maître d’hôtel

Cette page représente l’espace réservé au maitre d’hôtel, s’affiche en premier lieu une fois que le réceptionniste accède à l’application après authentification. Elle permet à ce dernier de faire son travail, qui consiste à gérer les tables et les salles.

Figure III.7. Interface d’espace maître d’hôtel III.4.7. Listes des chambres disponible Après l’enregistrement

Figure III.7. Interface d’espace maître d’hôtel

III.4.7. Listes des chambres disponible

Après l’enregistrement des informations concernent le client, le réceptionniste lui réserve une chambre pour la période de son séjour. Lors de la réservation d’une chambre, le réceptionniste il va choisir d’abord une chambre demandé par le client dans la liste des chambres représenté dans la figure au-dessous.

liste des chambres représenté dans la figure au-dessous. Figure III.8. Liste des chambres disponible. III.4.8 .

Figure III.8. Liste des chambres disponible.

III.4.8. Formulaire d’ajout d’une réservation de chambre

Le réceptionniste remplit le formulaire de réservation reçoit à prés validé avec les informations concernant la réservation d’une chambre. La figure au-dessous représente le formulaire de réservation d’une chambre.

Figure III.9. Formulaire d’ajout d’une réservation de chambre III.4.19 . Formulaire modification d’une

Figure III.9. Formulaire d’ajout d’une réservation de chambre

III.4.19. Formulaire modification d’une réservation de chambre

Le réceptionniste réalise des modifications dans le formulaire de modifications d’une réservation de chambre représenté dans la figure au-dessous.

de chambre représenté dans la figure au-dessous. Figure III.10. Formulaire de modification d’une

Figure III.10. Formulaire de modification d’une réservation de chambre.

III.4.10. Interface de suppression d’une réservation de chambre

Pour supprimer une réservation de chambre, le réceptionniste sélection d’abord la réservation dans la liste des réservations représenté dans la figure au-dessous.

Figure III.11. Interface de suppression d’une réservation de chambre. III.4.11 . Formulaire d’ajout d’un client

Figure III.11. Interface de suppression d’une réservation de chambre.

III.4.11. Formulaire d’ajout d’un client

Lors de l’arrivé d’un nouveau client, le réceptionniste enregistre les informations concernant ce client dans la base de données, en remplissant le formulaire d’ajout d’un client.

Figure III.12. Formulaire d’ajout d’un client . III.4.12. Formulaire d’ajout d’une facture Cette interface permet

Figure III.12. Formulaire d’ajout d’un client.

III.4.12. Formulaire d’ajout d’une facture

Cette interface permet au chef de réception d’ajouter une facture concernent un client. Elle lui permet aussi de la modifier dans le cas de rallongement de son séjour.

Figure III.13 : Formulaire d’ajout d’une facture. III.4.13. Formulaire de réservation d’une salle Cette interface

Figure III.13 : Formulaire d’ajout d’une facture.

III.4.13. Formulaire de réservation d’une salle

Cette interface est réservée au maitre d’hôtel. Elle lui permet d’ajouter une réservation d’une salle (salle de fête, salle de conférence), ce dernier doit remplir le formulaire des informations concernons le client.

le formulaire des informations concernons le client . Figure III.14 : Formulaire de réservation d’une salle

Figure III.14 : Formulaire de réservation d’une salle

III.3.14. Formulaire de réservation d’une table

Cette interface est réservée au maitre d’hôtel. Elle lui permet d’ajouter une réservation d’une table, ce dernier doit remplir le formulaire des informations concernons le client.

le formulaire des informations concernons le client. Figure III.15 : Formulaire de réservation d’une Table.

Figure III.15 : Formulaire de réservation d’une Table.

Conclusion

La phase de réalisation est une étape très importante dans le cycle de vie d’une application. Dans ce dernier chapitre nous avons illustré le déroulement de la réalisation de notre application, présenté les outils et le langage de programmation suivi l’arborescence. En fin, on conclut avec une présentation des différentes interfaces de notre application.

CONCLUSION

GENERAL

Le travail effectué dans ce mémoire a pour objectif la réalisation d’une application pour la gestion des réservations de l’hôtel ROYAL dans le but de faciliter la tâche aux personnels en leurs donnant la possibilité de gérer les chambres et les réservations.

Nous avons analysé la problématique et nous sommes arrivés à concevoir une application que nous espérons être une solution efficace et bénéfique pour l’hôtel. Pour cela on a mené en premier lieu une présentation de l’organisme d’accueil et la structure de l’hôtel ROYAL.

Ensuite, nous avons entamé le second chapitre dont lequel nous avons décrit le langage de modélisation pour la conception de notre application qui est le langage UML. On a également recensé les acteurs qui interagissent avec l’application, puis, on a décrit les besoins de chaque acteur sous forme de cas d’utilisation. Et aussi, pour chaque cas d’utilisation, on a établi le diagramme de séquence dont l’objectif est de représenter les interactions entre les objets du système en indiquant la chronologie des échanges. Après, la réalisation d’un modèle statique représenté par le diagramme de classe suivi du modèle relationnel associé à ce dernier en appliquant les règles de passage ce qui nous permettra d’avoir un aperçu sur la base de données.

Enfin, on a pris le temps de réaliser à bien notre application tout en spécifiant les outils de développements ainsi que les langages de programmation utilisés, suivi d’un aperçu des interfaces que comprend celle-ci.

Ce travail nous a permis d’acquérir une expérience personnelle et professionnelle. Il nous a été très bénéfique car on a eu la chance d’améliorer nos connaissances dans le domaine de la conception et cela sur le plan théorique ; mais aussi de découvrir et d’acquérir de nouvelles connaissances en matière de programmation et de développement de bases de données en ce qui concerne l’aspect pratique. Nous souhaitons que ce travail puisse servir comme un outil d’aide et de documentations pour les étudiants à l’avenir, et une base de travail pour les utilisateurs concernés.

LISTE

BIBLIOGRAPHIEQUE

o

o

o

o

o

o

o

[13]:http://www.commentcamarche.net/contents/1013-le-modele-relationnel

o

o

[19]:http://www.techopedia.com/definition/5594/java-development-kit-jdk

o

[7]:GILLES Roy, Conception de bases de données avec UML, Presses de l’Université de Québec, 2009,1ere édition.

o

[8]: MAGALI Contensin, Bases de données et Internet avec PHP et MySQL, DUNOD, 2004,1 ère édition.

o

[11]: GILLES et ROY. Conception de base de données avec UML. 1 er édition 2009.

o

[12]: CHRISTIAN Soutou, UML2 pour les bases de données, Eyrolles, 2006, 1 ère

édition.

o

[10]: PASCAL Roques, UML 2 par la pratique, Eyrolles, 2006, 5ème édition.

o

[15]:M. Grimaldi Modélisation UML Diagrammes Structurels, février 2007.

o

[16]: DOUDOUX Jean Michel, Développons en Java avec Eclipse.

o

[17] : Le langage SQL, version 2.3, Université de Nice Sophia- Antipolis 20]: HANIN Jamal, Réalisation et mise en place d’une application de GESTION DE. FLOTTE Rapport de Travail de Fin d’Etudes " Télé Ressource Contrôle (TRC) ". Page 35.

o

[18]:Richard Grin, Le langage SQL, version 2.3, Université de Nice Sophia- Antipolis 2000.

Résumé

Aujourd'hui, l'informatique a atteint une prodigieuse évolution technologique dans différents

Cette évolution est nécessaire pour

remédier aux problèmes rencontrés dans la vie quotidienne. Automatiser des informations est l’un des rôles essentiels de l'informatique. C'est ceci qui nous a poussés à créer une application pour la gestion d’un hôtel accessible par des utilisateurs.

Notre application « Gest-Hôtel » permet à l’administrateur de l’hôtel de gérer les clients, les chambres, les services, les factures ainsi que les comptes. L’étude de l’existant a été faite au sein de l’hôtel « ROYAL ». Pour garantir l’achèvement de l’application nous avons choisi de modéliser avec le langage UML2, choix dicté par la simplicité et la performance de celui-ci en matière de conception. MySQL est le serveur de base de données de l’application et cette dernière a été développée en utilisant différents outils informatiques tel que, WampServer, PHPMyAdmin, le JDK, éclipse etc. Le langage de programmation utilisé est le Java. Mots clés: Gestion d’un hôtel, Application réseau, Base de données, UML2, MySQL, WampServer, Java.

Abstract

Today, computer science has reached a tremendous technological development in different

fields (computer networks, databases

days life.Automate information processing is one of the essential roles of the computer. It is this that led us To create a network application for the management of a hotel. Our application « Gest-Hôtel » allows the administrator to manage the hotel customers, rooms, services, invoices and accounts. The study of existing was made in the hotel "ROYAL" To ensure the completion of the application we have chosen to model with UML2 language, that hase been choice dictated by the simplicity and performance of it in the design process. MySQL server database application and it has been developed using different tools such as computer, WampServer, PHPMyAdmin, JDK, Eclipse etc.The programming language used is java. Keywords: management of a hotel, Network Application, Database, UML2, MySQL, WampServer, Java.

domaines (réseaux informatiques, bases de données

).

).

This is necessary to address the problems in now a