0% ont trouvé ce document utile (0 vote)
117 vues36 pages

Rapport Final

Le document présente un projet de conception et de réalisation d'une application de gestion de restaurant, nommée SENRESTAURANT, visant à améliorer l'efficacité des opérations telles que la gestion des commandes, des stocks et des réservations. Il détaille les étapes de conception, d'analyse des besoins fonctionnels et non fonctionnels, ainsi que les outils et technologies utilisés pour le développement de l'application. L'application est destinée à faciliter le travail des gérants, caissiers, livreurs et clients au sein du restaurant.

Transféré par

Diop Adama
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
117 vues36 pages

Rapport Final

Le document présente un projet de conception et de réalisation d'une application de gestion de restaurant, nommée SENRESTAURANT, visant à améliorer l'efficacité des opérations telles que la gestion des commandes, des stocks et des réservations. Il détaille les étapes de conception, d'analyse des besoins fonctionnels et non fonctionnels, ainsi que les outils et technologies utilisés pour le développement de l'application. L'application est destinée à faciliter le travail des gérants, caissiers, livreurs et clients au sein du restaurant.

Transféré par

Diop Adama
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

République du Sénégal

Un Peuple – Un but – Une foi

Ministère de l’Enseignement Supérieur et de la Recherche


Université Alioune Diop de Bambey

UFR Sciences Appliquées et Technologies de l’Information et de la


Communication (SATIC)
Département Technologies de l’Information et de la Communication (TIC)
Licence Professionnelle
Développement et Administration d’Applications (D2A)

CONCEPTION ET REALISATION D’UNE APPLICATION DE


GESTION DE RESTAURANT

Encadreurs(s):
Dr. Ahmad Khoureich KA Présenté par :
BABACAR DIOUF
MOUSSA SENE

Année académique
2021/2022
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

2
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Dédicace
A nos très chers parents, nous tenons à exprimer toute notre gratitude pour leur amour,
leur tendresse, leurs sacrifices, leur soutien, leurs prières, leurs investissements et leur
patience tout au long de nos études. Nous tenons également à rendre hommage à nos
mères Khady SALL et Mbene Dione, que le paradis soient leurs éternel demeure.

Nous tenons à remercier chaleureusement nos chers oncles, tantes, frères, sœurs, cousins,
cousines et nos camarades étudiants. Aucune dédicace ne saurait exprimer l’immense
gratitude que nous éprouvons en vers envers vous. Grand MERCI.

A toutes les familles DIOUF, DIONE, SALL et SENE, nous tenons à les remercier pour leur
soutien tout au long de notre parcours universitaire. Nous adressons également nos
sincères remerciements à nos chers amis (es) qui nous ont toujours encourages et à qui
nous souhaitons beaucoup de succès.

MERCI

3
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Remerciements
Nous rendons grâce à Dieu le Tout-puissant et Miséricordieux de nous avoir donné la
volonté d’entreprendre et de terminer ce mémoire.

Ce travail n’aurait pas vue le jour sans l’aide et l’encadrement de Dr. Ahmad Khoureich
KA, à qui nous exprimons notre gratitude pour la qualité exceptionnelle de son
encadrement, sa patience, sa rigueur, son suivi, ses suggestions et sa disponibilité tout au
long de la préparation de ce mémoire.

Nos remerciements s’adressent également à nos familles pour leur soutien moral et
encouragement.

Nous tenons à remerciements à Mohamed GUEYE étudiant en M2 SI à l’université Alioune


DIOP de Bambey et Mor Codou SECK ancien étudiant à l’université Alioune Diop de
Bambey

Enfin, nous remercions tous ceux qui ont contribués de près ou de loin à la réalisation de
notre travail.

4
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Table des matières


Introduction Général ....................................................................................................................................................8
Chapitre 1 : Conception de l’application ......................................................................................................................9
1 Informatique au service du restaurant .................................................................................................................9
2 Analyse des besoins ............................................................................................................................................10
2.1.1 Besoins fonctionnels ...........................................................................................................................10
2.1.2 Besoins non fonctionnels....................................................................................................................11
3 Conception..........................................................................................................................................................12
3.1.1 Modélisation des besoins fonctionnels ..............................................................................................12
3.1.2 Diagramme de classe ..........................................................................................................................20
Chapitre 2 : Réalisation de l’application .....................................................................................................................21
1 Outils et Technologies ........................................................................................................................................21
1.1.1 Outils ...................................................................................................................................................21
1.1.2 Technologies .......................................................................................................................................24
2 Présentation de l’application..............................................................................................................................28
2.1.1 Interfaces d’authentifications.............................................................................................................28
2.1.2 Interface Administrateur ....................................................................................................................29
2.1.3 Interface pour ajouter des utilisateurs ...............................................................................................29
2.1.4 Interface pour modifier un utilisateur ................................................................................................30
2.1.5 Interface suppression d’utilisateur .....................................................................................................31
2.1.6 Interface liste des utilisateurs.............................................................................................................31
2.1.7 Interface pour ajouter un produit ......................................................................................................31
2.1.8 Interface suppression produit ............................................................................................................32
2.1.9 Interface liste des articles ...................................................................................................................33
2.1.10 Interface liste des réservations...........................................................................................................33
2.1.11 Interface liste des tables .....................................................................................................................34
3 Conclusion ..........................................................................................................................................................34
Références ..................................................................................................................................................................35
Bibliographie ...........................................................................................................................................................35
Webographie : ........................................................................................................................................................35

5
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Liste des figures

FIGURE 1:DIAGRAMME DES CAS D’UTILISATIONS DE L’ADMINISTRATEUR....................................................................................................... 13


FIGURE 2: : DIAGRAMME DES CAS D’UTILISATIONS DU GERANT .................................................................................................................. 14
FIGURE 3: DIAGRAMME DES CAS D’UTILISATION DU CAISSIER .................................................................................................................... 15
FIGURE 4: DIAGRAMME DES CAS D’UTILISATIONS DU CLIENT ...................................................................................................................... 16
FIGURE 5:DIAGRAMME DES CAS D’UTILISATIONS DU LIVREUR ..................................................................................................................... 16
FIGURE 6: DIAGRAMME DE SEQUENCE DE L’AUTHENTIFICATION.................................................................................................................. 18
FIGURE 7: DIAGRAMME DE SEQUENCE DE LA GESTION DES TABLES .............................................................................................................. 19
FIGURE 8: DIAGRAMME DE CLASSE DE L’APPLICATION ............................................................................................................................... 20
FIGURE 9: POWERAMC ..................................................................................................................................................................... 21
FIGURE 10: UML.............................................................................................................................................................................. 22
FIGURE 11: PHOTOSHOP .................................................................................................................................................................... 22
FIGURE 12: XAMPP SERVER ................................................................................................................................................................ 22
FIGURE 13: MYSQL .......................................................................................................................................................................... 23
FIGURE 14: VISUEL STUDIO CODE ........................................................................................................................................................ 23
FIGURE 15: GITLAB ........................................................................................................................................................................... 23
FIGURE 16: ARCHITECTURE DU BACK-END ET DU FRONT-END ..................................................................................................................... 24
FIGURE 17: LOGO ANGULAR............................................................................................................................................................... 26
FIGURE 18: LOGO TYPESCRIPT ............................................................................................................................................................. 26
FIGURE 19: BOOTSTRAP ..................................................................................................................................................................... 26
FIGURE 20: SCHEMA DE L’ARCHITECTURE MVC ...................................................................................................................................... 27
FIGURE 21: FONCTIONNEMENT DE L’API ............................................................................................................................................... 28
FIGURE 22: INTERFACES D’AUTHENTIFICATIONS....................................................................................................................................... 29
FIGURE 23: INTERFACE ADMINISTRATEUR .............................................................................................................................................. 29
FIGURE 24: INTERFACE POUR AJOUTER DES UTILISATEURS ......................................................................................................................... 30
FIGURE 25: INTERFACE POUR MODIFIER UN UTILISATEUR........................................................................................................................... 30
FIGURE 26: INTERFACE SUPPRESSION D’UTILISATEUR ................................................................................................................................ 31
FIGURE 27: INTERFACE LISTE DES UTILISATEURS ....................................................................................................................................... 31
FIGURE 28: INTERFACE POUR AJOUTER UN PRODUIT ................................................................................................................................. 32
FIGURE 29: INTERFACE SUPPRESSION PRODUIT........................................................................................................................................ 32
FIGURE 30: INTERFACE LISTE DES ARTICLES ............................................................................................................................................. 33
FIGURE 31: INTERFACE LISTE DES RESERVATIONS ..................................................................................................................................... 33
FIGURE 32: INTERFACE LISTE DES TABLES................................................................................................................................................ 34

Liste des tableaux


TABLEAU 1:LISTE DES SIGLES.................................................................................................................................................................. 7
TABLEAU 2: COMPARAISON ENTRE ANGULAR ET REACTJS .......................................................................................................................... 25

6
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Liste des abréviations

Sigle Français Anglais


UML Langage de Modelisation Unified Modeling Language
CLI Interface en Ligne de Command Line Interface
Commande
NPM Gestionnaire Package de Node Package Manager
Node Js
API Interface de Programmation Application Programming
d'Application Interface
SGBD Système de Gestion de Base
de Données
MVC Modèle Vue Contrôleur Model View Controller
SQL Langage de Requête Structured Query Language
Structurée
HTML Langage de Balisage HyperText Markup
d'Hypertexte Language

Tableau 1:Liste des sigles

7
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Introduction Général

Le monde connaît aujourd’hui une avancée technologique considérable dans tous les secteurs
d’activité, et cela, grâce à l’informatique. Avec la technologie, le temps de recherche des données a chuté
de manière considérable, sa croissance rapide fait que nous observons la naissance de nouvelles
technologies qui vont nous faciliter la tâche dans notre vie quotidienne. Ainsi, l’informatique a été d’une
aide précise pour bon nombre de domaines. En effet, cette science a impacté considérablement la gestion
des restaurants. Avant l’introduction de l’informatique, ont assisté à l’augmentation de l’automatisation de
certaines tâches de l’entreprise afin de réduire les charges des employés, la transparence, les risques
d’incohérence, en un mot de faciliter le travail des employés. Ainsi le restaurant aura du mal à gérer
rapidement les commandes en ligne, la gestion efficace des stocks est crucial pour éviter les gaspillages et
les coûts supplémentaires. C’est pour remédier à tous ces problèmes que nous proposons une application
(SENRESTAURANT) permettant de gérer de manière efficace les commandes, le stock, les réservations
et les employées des restaurants.

L’objectif de notre application est que nous soyons à mesure : d’accroître l'efficacité et améliorer
les services fournis par le restaurant en rationalisant le processus de commande et de livraison en ligne, de
facilitée la surveillance en temps réel des niveaux de produits et la création d'alerte en cas de manque de
stock.

Notre travail est constitué de deux parties que nous détaillerons comme suit : Tout d’abord, il s’agira pour
nous d’aborder la conception de l’application, et avant de faire l’analyse des besoins, élaborer les
différents diagrammes afin de faire une description textuelle des cas d’utilisation, nous parlerons de
l’informatique dans le secteur de la restauration, son apport et les atouts qu’il présente pour le secteur.

Enfin nous traiterons la réalisation de l’application, en mentionnant les outils et technologies utilisés et
présenter les interfaces de l’application.

8
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Chapitre 1 : Conception de l’application

Introduction
L’analyse et la conception sont faites autour d’un concept, d’un processus qui porte une philosophie
de mise en place d’un système logiciel. La première étape de la conception consiste à analyser la situation
pour tenir compte des contraintes, des risques et de tout autre élément pertinent afin de développer un
système répondant aux besoins du client suivant un processus. Un processus définit une séquence d'étapes,
partiellement ordonnée, qui concourent à l'obtention d'un système logiciel ou à l'évolution d'un système
existant. L'objectif d'un processus de développement est de produire des logiciels de qualité qui répondent
aux besoins de leurs utilisateurs dans des temps et des coûts prévisibles.
Le processus que nous avons suivi pour la réalisation de notre projet est le processus unifié. En effet, le
processus unifié semble être la solution idéale pour nous, il regroupe toutes les activités à mener pour
transformer les besoins d'un utilisateur en un système logiciel quelle que soit la classe, la taille et le domaine
d'application de ce système. Ainsi, nous utilisons le langage de modélisation unifié (UML) qui est une partie
intégrante du processus unifié pour décrire les différents aspects du système. UML met à disposition
plusieurs diagrammes qui permettent de décrire tout un système.
Dans la suite de ce chapitre, nous allons dans un premier temps effectuer l’informatique au service du
restaurant, ensuite élaborer l’analyse des besoins et enfin concevoir les différents diagrammes.

1 Informatique au service du restaurant

Les difficultés que connait la plupart des restaurants comme la gestion des commandes de ces clients et
aussi la carte de menu ne laisse pas la tâche facile aux clients de retrouver un article. Vue que ce menu n’a
pas d’image du plat proposer et qu’il change souvent, cette forme de travail pose souvent des préjudices,
pour cela, le choix d’une application informatique multiplateforme avec ses influences devant permettre de
fluidité le processus de traitement des commandes et d’éviter ainsi la falsification constatée en forte période
reste indispensable. C’est dans ce cadre que s’inscrit notre projet de fin d’étude. En effet, nous cherchons
à mettre sur pied un environnement qui renvoie à une conception et réalisation d’un logiciel multiplateforme
de gestion d’un restaurant. De tout ce qui précède, nous nous trouvons face à trois problèmes qui vont nous
préoccuper dans notre recherche :

9
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

 Comment stocker et traiter les différentes informations d’un restaurant moderne en rapport avec les
achats des clients ?
 Comment faciliter la commande d’un client jusqu’à la livraison de la commande ?
 Comment faciliter la réservation en ligne de table ?
Pour pallier à ces problèmes, il nous fallait mettre en place une application autrement dit une plateforme
web exclusivement à la disposition du restaurant pour faciliter le quotidien du gérant qui est en même
temps l’administrateur et qui a pour rôle de gérer les employés (caissier, livreur), les clients , le menu, les
articles les catégories, les commandes et les réservations de tables. Le gérant a aussi la possibilité de voir
les commandes et réservation des clients.
Nous avons aussi le Caissier qui peut délivrer une facture après une commande mais aussi il peut faire le
rapport journalier.
Nous avons les Clients qui peuvent voir le menu, faire des commandes, faire une réservation de table et la
possibilité de créer un compte pour des points de confidentialités.
En fin le Livreur doit livrer toutes les commandes effectuées en ligne, il a aussi la tache de valider la
livraison une fois livrer.

2 Analyse des besoins

L’analyse des besoins nous permet d’identifier l’ensemble des fonctions implémentées dans notre
application. Elle vise à déterminer les fonctions d’une application en amont de sa réalisation afin d’analyser
les attentes pour mieux recadrer le projet. Nous présenterons les différentes fonctionnalités que peut offrir
notre application.

2.1.1 Besoins fonctionnels

Les besoins fonctionnels représentent les principales fonctionnalités du système. Ces besoins
proviennent généralement des utilisateurs du système. L'application devra permettre :
 Gestion des Employées :
Le gérant doit :
 Enregistrer et attribuer un rôle a un employé
 Activer ou désactiver un employé
 Modifier un employé
 Lister les employés
 Gestion des Tables :
10
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Le gérant doit :
 Ajouter une table
 Modifier le statut du table (selon qu’il est occupé ou non)
 Supprimer une table
 Modifier une table

 Gestion des Commandes et des Réservations


Le gérant doit :
 Lister les commandes ou les réservations
 Consulter les commandes et les réservations
 Valider une commande ou une réservation
 Décliner une commande ou une réservation

 Gestion des factures


Le Caissier doit :
 Consulter les commandes
 Délivrer une facture

 Gestion des Clients :


Le Client a la possibilité:
 De faire une commande et une réservation de table
 Annuler une commande et une réservation
 De créer un compte
 Faire le payement par espèce

2.1.2 Besoins non fonctionnels

Mis à part les besoins fondamentaux de notre futur système, le système doit être en mesure aussi de
répondre aux critères suivants :
 La rapidité du traitement : En effet, vu le nombre important des transactions quotidiennes, il est
impérativement nécessaire que la durée d'exécution des traitements s'approche le plus possible du
temps réel.

 La performance : Un logiciel doit être avant tout performant c'est-à-dire à travers ses
fonctionnalités, il doit répondre à toutes les exigences des usagers d'une manière optimale.

11
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

 Ergonomie et convivialité : Le futur logiciel doit être facile à utiliser. En effet, les interfaces
utilisateur doivent être conviviales c'est-à-dire simples, ergonomiques et adaptées à l'utilisateur.
Le design des interfaces doit permettre une identification immédiate de ces différents éléments pour
permettre à l'utilisateur d'accéder de manière intuitive à ce qu'il cherche, dès la première utilisation.
 La confidentialité : Vu que les données manipulées par notre application sont critiques, nous
devons garantir une sécurité optimale. Ainsi, les droits d'accès au système doivent être bien
attribués, afin d'assurer la sécurité des données.

3 Conception

Dans la conception d’une application, la modélisation des données est l’analyse et la conception de
l’information contenue dans le système afin de représenter la structure de ces informations et de structurer
les données informatiques [Wikipédia, 21 décembre 2020]. Alors il faut noter que la modélisation
conceptuelle est totalement indépendante de tout choix d’implémentation. [Philippe Rigaud, 30 juin 2001]
Pour mieux illustrer la conception de notre application, nous avons jugé nécessaire de présenter les
diagrammes de cas d’utilisation, quelques diagrammes de séquences, le diagramme de classes et le schéma
de base de données.

3.1.1 Modélisation des besoins fonctionnels

L'étape de l'analyse des besoins et de la modélisation est la deuxième phase de cycle de vie du
processus unifié et l'une des étapes les plus importantes à considérer ; en effet si les besoins sont mal
spécifiés et exprimés, ou mal analysés, toute la suite devra être refaite, d'où l'importance accordée à cette
activité. Notre objectif dans cette étape est donc d'exprimer les besoins attendus du futur système à
développer.

[Link] Diagramme de cas d’utilisation

En UML, un diagramme de cas d’utilisation est utilisé pour une représentation du comportement du
système. Il décrit les fonctions générales et la portée du système. Par contre un cas d’utilisation décrit
l’interaction entre l’acteur et le système. Le diagramme de cas d’utilisation a pour rôle de servir à résumer

12
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

les informations des utilisateurs du système (acteurs) et leurs interactions avec ce dernier. Il peut aider dans
la collaboration et la représentation :
 Des scénarios dans lesquels le système interagit avec les acteurs, ou des systèmes externes.
 Des objectifs que le système permet aux acteurs d’atteindre ;
 De la porter de votre système.

Diagramme des cas d’utilisation de l’administrateur


L’administrateur gère le personnel du restaurant.

<<include>>

Gerant

<<extend>> Ajouter Caissier

Livreur

GerantM

Afficher la liste des


utiliseurs <<extend>> CaissierM Authentification
Modifier
Administrateur

LivreurM

GerantS

Supprimer CaissierS
<<extend>>

LivreurS

Figure 1:Diagramme des cas d’utilisations de l’administrateur

13
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Diagramme des cas d’utilisation du gérant


Le gérant est responsable des tables, des clients, des réservations, les commandes, le stock et le menu.

Occuper

Gerer table <<include>>

Liberer

<<extend>> Ajouter table

<<extend>>
Modier table

lister table <<include>>

<<extend>> Supprimer table

Ajouter article
<<extend>>

Mdifier article
<<extend>>
lister menu

<<extend>> Supprimer article


Gerant
Autthentifier
<<include>>

Valider

lister reservation <<include>>

Decliner Motif
<<extend>>

<<extend>> Ajouter commande

<<include>>
lister commande

<<extend>> Modifier commande

<<extend>> Supprimer commande

Figure 2: Diagramme des cas d’utilisations du Gérant

14
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Diagramme des cas d’utilisation du caissier


Le caissier est chargé de délivrer une facture, lister les commandes et d’attribuer une livraison aux livreurs.
Aussi enregistrer les commandes faites sur places.

Lister facture <<include>>

Valider payement <<extend>> Gener facture


<<extend>>

Lister commande Authentifier


Caissier
<<include>>

Enregistrer commande
<<include>>

Attribuer livraison <<include>>

Figure 3: Diagramme des cas d’utilisation du Caissier

Diagramme des cas d’utilisation du client


Le client à la possibilité de consulter le menu, d’ajouter des produits au panier, de faire une commande, de
faire une réservation et la possibilité de créer une compte.

15
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Vali de
<<extend>>

Lister commandes

<<extend>>
Supprimer Commande

Authentification3
<<extend>> Ajouter Reservation
Client

Modifier Reservation
<<extend>>

Gerer reservation

Supprimer Reservation
<<extend>>

Passer commande
<<extend>>

Lister pagnier
<<extend>>

Ajouter panier <<include>>

Figure 4: Diagramme des cas d’utilisations du Client

Diagramme des cas d’utilisation du livreur


Le livreur est chargé de lister les livraisons et de valider la livraison une fois qu’elle est effectuée.

<<extend>> Encaisser payement

Lister livraision
<<include>>
Authentifier2
Livreur

Figure 5:Diagramme des cas d’utilisations du livreur

16
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

[Link] Diagramme de séquence

Le diagramme de séquence permet de montrer les interactions d'objets dans le cadre d'un scénario d'un
Diagramme des cas d'utilisation. La dimension verticale du diagramme représente le temps, permettant de
visualiser l'enchaînement des actions dans le temps, et de spécifier la naissance et la mort d'objets. Les
périodes d'activité des objets sont symbolisées par des rectangles, et ces objets dialoguent à l'aide de
messages.

Diagramme de séquence de l’authentification


Le tableau de bord (Dashboard) est destiné seulement au personnelle de l’application. Ainsi chaque
utilisateur doit se connecter pour accéder à l’espace qui lui est attribué. Le scénario de l’authentification se
déroule comme suit :
 Acteur : Utilisateur (gérant, administrateur, caissier, livreur)
 Précondition
 Avoir une bonne connexion
 Accéder au site par url
 Scénario normal
1. L’utilisateur demande de se connecter ;
2. Le système demande les paramètres ;
3. L’utilisateur fournit les paramètres ;
4. Le système vérifie la validité des paramètres ;
5. Le système autorise l’accès
 Post condition
 Accès à l’espace de travail
 Gestion d’exception
 Motif de l’exception : invalidité des paramètres ;
 4.1 Traitement : Le système demande la fourniture de nouveau paramètre valides
(avec trois essaies autorisés) ;
 4.1.1 Le système arrête le processus ;

17
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

DiagrammeSequence_1

Le Systeme Base de Donnees

Utilisateur

Demande de se connecter

Demande ls parametres de connexion

Entrer les parametres de connexion

Verification des parametre

alt (info incorrect)


Entrer parametre a nouveau info incorrect

(info correct)
Acces est autorisé info correct

Figure 6: Diagramme de séquence de l’authentification


Diagramme de séquence de la gestion des tables
La gestion des tables fait partie des tâches du gérant qui doit s’authentifier avant d’exécuter une action.
 Près condition
 Authentification réussi pour le gérant ;
 Post condition
 Demande la gestion des tables ;
 Scenario normal
1. Le système affiche l’interface de la gestion des tables ;
2. Le gérant clic sur ajouter table ;
2.1 Le système affiche le formulaire ;
2.2 Le gérant saisit les données puis valide pour ajouter une table ;
2.3 Le système renvoi un message de validation de l’information
3. Le gérant clic sur modifier table
3.1 Le système affiche l’information de la table sélectionné dans un formulaire ;
18
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

3.2 Saisi les données à modifier puis valide la modification ;


3.3 Le système affiche la table modifier la liste des tables
4. Le gérant clic sur supprimer table ;
4.1 Le système affiche un message de confirmation au gérant s’il veut vraiment
supprimer la table ;
4.2 Le gérant valide pour confirmer la suppression de la table ;
4.3 Le système affiche un message de confirmation

DiagrammeSequence_1

Systeme Table

Gérant

ref
DiagrammeSequence_1(Authentification)

demande la gestion des tables

afficher l'interface correspondant

opt [Ajouter]
Demande de creer une table

Afficher le Formulaire

Ajouter les données du tables

valide
Envoyer les données du tables

Envoyer la tables Ajouter table


Afficher la table et confirmation de l'
ajout

opt [Modifier]
Selectionné une table

Affichage du Formulaire

Saisir le données a modifier

Valider Envoyer les données du tables

Modifier table
Afficher la table et un message de Envoyer la tables
confirmation

opt [Supprimer]

Selectionné une table

Saisir le données de supprimer

Valider Envoyer les données du tables

Supprimer table
Envoye la liste des tables

Afficher la liste des tables

Figure 7: Diagramme de séquence de la gestion des tables

19
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

3.1.2 Diagramme de classe

Dans le langage UML, les diagrammes de classe appartiennent à l’un des six types de diagrammes
structurels. Les diagrammes de classes sont fondamentaux pour le processus de modélisation des objectifs
et modélisent la structure d’un système.
On peut utiliser les diagrammes de classe pour visualiser, définir et documenter des fonctions structurelles
des modèles.

[Link] Diagramme de classe de l’application

Le diagramme nous permet de savoir comment les données seront stockées dans la base de données en
définissant les classes, les attributs, les relations qui existent entre les éléments etc…

Utilisateur
- IdEmp : int
- nom : String
- prenom : String
- adresse : String
- telephone : int
- login : String
- password : String

Caissier
Gerant
Client
- IdClient : int Administrateur
- prenom : String
- nom : String
- adresse : String
0..*
0..1 Livreur
- Statut : boolean

1..1 1..1
1..1
0..*

Commande
- IdCom : int 0..*
0..*
- date : Date

1..1
0..*

quantité Stocké
0..*
Paniers
1..*
- IdPanier : int
Reservation
- Idreservation : int Article
0..*
- jour : Date - IdArt : int Categorie
0..*
- heur : int - libele : String
- IdCat : int
- nombrePersone : int + description : String 0..*
- status : boolean - Image : String 1..1 - libelle : int
- Prix : int

0..*
Table

1..* - IdTable : int


- nombreTab : int
- statut : boolean

Figure 8: Diagramme de classe de l’application

20
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Chapitre 2 : Réalisation de l’application

Introduction
Ce chapitre est consacré à la partie pratique de la réalisation de notre application
(SENRESTAURANT). Il comporte une description des outils de développement utilisés ainsi qu'une
présentation de notre application. Le choix de nos outils de développement s'est fondé principalement sur
leur gratuité et l'open source. Effectivement, en implémentant une solution qui se base sur des technologies
gratuites et open source, nous avons plus de chance d'éviter toutes sortes de problèmes liés aux licences,
contrats, etc…, réduisant ainsi les coûts.

1 Outils et Technologies
Cette partie est très importante pour l’aboutissement du projet. En effet les technologies et les langages sont
très nombreux et très sophistiqués mais le choix pertinents par rapport à la demande du client fait différence.
Nous ferons une étude comparative des Frameworks pour justifier notre choix.

1.1.1 Outils

PowerAMC
POWER AMC est l’un des premiers outils qui permet d’élaborer des
modèles de données que cela soit MERISE, UML ou autre, de manière
graphique et de les implémenter quel que soit le SGBD et de manière
automatique. De même, l’outil permet de modéliser les processus métiers.
Le lien entre la modélisation des données et la modélisation des processus
peut être effectué.

Figure 9: PowerAMC Aussi Power AMC est une force dans tout nouveau projet d'entreprise car il
permet d'identifier avec précision quels processus, quelles personnes et/ou quelles données seront impactés.

21
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

UML

UML : Le langage de modélisation unifié, de l'anglais Unified Modeling


Language (UML), est un langage de modélisation graphique à base de
pictogrammes conçu pour fournir une méthode normalisée pour visualiser
la conception d'un système. Il est couramment utilisé en développement
logiciel et en conception orientée objet.
Figure 10: UML

Photoshop

Photoshop est un logiciel de retouche, de traitement et de dessin assisté par


ordinateur, lancé en 1990 sur MacOs puis en 1992 sur Windows. Ce logiciel
a révolutionné la photographie et jusqu'à la conception que l'on pouvait s'en
faire. Ici on l’utilise pour la retouche des images d’article de la base de
données.
Figure 11: PhotoShop

Xampp Server

XAMPP est un ensemble de logiciels permettant de mettre en place un


serveur Web local, un serveur FTP et un serveur de messagerie. Ainsi, il est
à la portée d'un grand nombre de personnes puisqu'il ne requiert pas de
connaissances particulières et fonctionne, de plus, sur les systèmes
d'exploitation les plus répandus. Il possède également phpMyAdmin, une
interface graphique pour gérer plus facilement nos bases de données.
Figure 12: Xampp Server

22
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

MySQL

MySQL est un système de gestion de base de données relationnelle encore


appelé SGBDR basé sur SQL et qui est développé dans un souci de
performances élevées. Il tourne pratiquement sur toutes les plateformes, y
compris Linux, Unix et Windows. Il est multithread (capacité à effectuer
plusieurs tâches dans une seule application) et multiutilisateurs (capacité à
être utilisé par plusieurs personnes en même temps). C'est un logiciel libre
Figure 13: MySQL
développé sous double licence en fonction de l'utilisation qui en est faite :
dans un produit libre (open source) ou dans un produit propriétaire. Dans ce dernier cas, la licence est
payante, sinon elle est libre de droit.

Visual studio code

Visual Studio est un environnement de développement intégré (IDE)


Microsoft utilisé pour développer des applications pour les plateformes
Windows, Web et mobiles. Il offre un ensemble complet d’outils et de
services pour le développement de logiciels, y compris un éditeur de code,
des outils de débogage, l’intégration du contrôle de code source et un
concepteur visuel. Visual Studio prend en charge de nombreux langages
Figure 14: Visuel Studio Code
de programmation, notamment C#, Visual Basic, C++, Python, etc. En
outre, il comprend une variété d’extensions et de plugins pour améliorer encore ses fonctionnalités. Visual
Studio est utilisé par de nombreux développeurs professionnels et est largement considéré comme l’un des
meilleurs IDE pour le développement Windows.

GitLab

GitLab offre un emplacement pour le stockage de code en ligne et des capacités de


suivi des problèmes. Le référentiel permet d'héberger différentes chaînes et versions
de développement, et permet aux utilisateurs d'inspecter le code précédent et d'y
revenir en cas de problèmes imprévus.

Figure 15: GitLab

23
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

1.1.2 Technologies
Un Framework informatique est un ensemble d'outils et de composants logiciels organisés conformément
à un plan d'architecture et des patterns, l'ensemble formant ou promouvant un « squelette » de programme,
un canevas. Il est souvent fourni sous la forme d'une bibliothèque logicielle et accompagné du plan de
l'architecture cible du Framework.
Le choix des Framework s’avère un peu difficile mais paramètre permet de faire un choix pertinent. Pour
la réalisation de ce projet, on a utilisé Angular pour le Front-end et Django pour le Back-end.

Figure 16: Architecture du back-end et du front-end

[Link] Frontend
Angular
Angular est un Framework JS parmi les plus populaires et les plus utilisés. Tout ce qui fait la force d’un
Framework c’est-à-dire sa popularité est remarquée chez Angular :
 Ils ont une communauté énorme. Ce qui est essentiel pour apprendre un Framework (vous trouverez
d’innombrables ressources, des réponses à des dizaines de milliers de questions etc.) et pour le
maintenir (la communauté participe à rapporter une quantité astronomique de bugs et à les corriger).
 Ils ont des ressources gigantesques. Développer un Framework prend énormément de temps et
nécessite des développeurs exceptionnels qui sont payés des salaires très élevés. Il faut pouvoir
consacrer des dizaines de millions par an. Angular est créé par Google (plusieurs dizaines
d’ingénieurs à plein temps).
Ils sont là pour durer. Outre leur communauté et leurs ressources qui leur assurent une pérennité
certaine, ils sont à la pointe des technologies Web qui sont développées à une écrasante majorité

24
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

par les GAFAM (Google, Amazon, Facebook, Apple et Microsoft). A chaque nouvelle innovation,
celle-ci est intégrée à ces Framework.

Angular ReactJS

 Développer et soutenu par Google  Développer et soutenu par Facebook


 Cadre structurel pour le  Bibliothèque JavaScript
développement web dynamiques

 Basé sur du MVC  Basé sur du Virtual Dom



 Basé sur du typeScript  Basé sur du JavaScript
 Fournit des tests et un débogage pour  Nécessite un ensemble d’outils pour
le projet complet avec un seul outil effectuer différents types de tests
 Il gère tous les aspects de l’application  Ne gère pas tous les aspects de
l’application

 Une liaison de données bidirectionnelles est  Stabilité du code avec liaison de
mise en place afin de minimiser les risques données unidirectionnelle
d’erreurs

Tableau 2: Comparaison entre Angular et reactjs

Il n’existe pas un Framework meilleur qu’un autre. Chaque Framework a des avantages comme il a des
inconvénients. Le choix se base toujours sur les besoins que nous exprimons et sur la taille du projet.
Angular et ReactJS sont tous les deux en mesures de réaliser l’application. Pour des besoins spécifiques,
Nous avons choisi d’utiliser Angular pour le développement de l’application car angular propose sans cesse
de nouvelles fonctionnalités améliorées. Angular propose son propre système de routing et gère tous les
aspects de l’application ce qui n’est pas disponible au niveau de ReactJS. Il est développé et géré par Google
alors la probabilité qu’il disparaisse est proche de 0. Donc nous pouvons compter sur sa durabilité dans le
marché technologique. Il permet de créer rapidement des fonctionnalités avec des modèles simples. Il

25
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

présente néanmoins un niveau de difficultés légèrement supérieur car en dehors du Framework, nous
sommes obligés d’apprendre un nouveau langage qui est le typescript.

Figure 17: Logo Angular Figure 18: Logo typescript

Bootstrap
C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons,
outils de navigation et autres éléments interactifs, la boîte à outils open source
front-end la plus populaire au monde, avec des variables et des mixins Sass, un
système de grille réactif, des composants préconstruits étendus et de puissants
plugins JavaScript.
Figure 19: Bootstrap

[Link] Backend
Django
Django est un Framework web open source populaire utilisé pour le développement rapide d’applications
web. Il est écrit en Python et suit le motif de conception Model-View-Controller (MVC).

Django fournit une infrastructure pour gérer les aspects courants des applications web, tels que
l’authentification des utilisateurs, les formulaires, les bases de données, la gestion des sessions, les fichiers
statiques, etc. Il est conçu pour être flexible et évolutif, ce qui permet de créer des applications web
complexes de manière efficace.
Django est utilisé par de nombreuses grandes entreprises et organisations pour leurs sites web et
applications, notamment Instagram, Pinterest, Mozilla, Spotify, Disqus, Bitbucket, etc. En raison de sa
popularité, Django dispose également d’une grande communauté de développeurs qui fournissent une
documentation exhaustive et un grand nombre de bibliothèques tierces pour étendre les fonctionnalités du
Framework.

26
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Architecture MVC

Figure 20: Schéma de l’architecture MVC

Ce modèle est un style d’architecture de logiciel très populaire vous permettant d’être efficace et structuré
lors d’un projet. Le M, modèle représente les données ; le V, vue affiche les données, que le modèle
contient, à l’utilisateur par exemple : formulaire, bouton, etc. ; et, le C, contrôleur traite les données de
l’utilisateur, il dépend et interagit avec le modèle ainsi que la vue.

API

Une API est un ensemble de définitions et de protocoles qui facilitent la création et l'intégration de logiciels
d'applications. L’API permet à un service de communiquer avec d'autres services sans connaître les détails
de leur mise en œuvre. Elle simplifie le développement d'applications et fait gagner du temps. Elle offre
plus de flexibilité, simplifie la conception, l'administration et l'utilisation, et donne les moyens d'innover.
Les API constituent un moyen simplifié de connecter les infrastructures au travers du développement
d'applications. Elles permettent également de partager des données avec les clients et d'autres utilisateurs
externes.
La figure ci-après illustre le fonctionnement d’une API

27
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Figure 21: Fonctionnement de l’API

Avec l’ensemble de ces ressources, qu’ont compte développer l’application avec les fonctionnalités
demandées.

2 Présentation de l’application
Dans cette partie nous allons présenter quelques pages de l’application

2.1.1 Interfaces d’authentifications

Après avoir cliquée sur le bouton « connexion », le formulaire d’authentifications s’affiche et l’utilisateur
doit saisir son login et son mot de passe. Une fois ses informations validées, il est redirigé vers son espace
de travail et il pourra faire toutes les tâches qui lui sont autorisées.

28
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Figure 22: Interfaces d’authentifications

2.1.2 Interface Administrateur

Dans cette page l’administrateur pourra modifier, ajouter, ou supprimer les produits.

Figure 23: Interface Administrateur

2.1.3 Interface pour ajouter des utilisateurs


Dans cette partie l’administrateur sera dans l’obligation d’ajouter un compte utilisateur de la modifier ou de la
supprimer

29
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Figure 24: Interface pour ajouter des utilisateurs

2.1.4 Interface pour modifier un utilisateur

Figure 25: Interface pour modifier un utilisateur

30
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

2.1.5 Interface suppression d’utilisateur

Figure 26: Interface suppression d’utilisateur

2.1.6 Interface liste des utilisateurs

Figure 27: Interface liste des utilisateurs

2.1.7 Interface pour ajouter un produit


31
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Figure 28: Interface pour ajouter un produit

2.1.8 Interface suppression produit

Figure 29: Interface suppression produit

32
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

2.1.9 Interface liste des articles

Figure 30: Interface liste des articles

2.1.10 Interface liste des réservations

Figure 31: Interface liste des réservations

33
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

2.1.11 Interface liste des tables

Figure 32: Interface liste des tables

3 Conclusion
Nous voici au terme de notre travail portant sur la conception d'une application pour la gestion interactif
d'un restaurant. Nous avons été motivés par les soucis : de mettre à la disponibilité de clients d'un restaurant
moderne une carte de menu automatisé, vue que cette carte devrait leur faciliter de communiquer avec le
restaurateur pour lutter contre le problème de retard dans le service. Aussi le restaurateur devra facilement
communiquer avec le client et gérer leur facturation à partir de commande sur le menu automatisé.
Pour y parvenir nous avons utilisé les techniques documentaire et expérimentale, analyser certain travaux
d'une part et d'une autre part tester notre application. Conscients de ce qu'une application informatique ne
peut être certifié qu'à l'issue d'un test méticuleux, nous soumettons notre modeste travail à ce test et
promettons, dans la mesure de nos propres limites, de prendre en compte toute remarque constructive.

34
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

Références
Bibliographie
[Philippe Rigaux, 30 juin 2001] : Philippe Rigaux «Cours de bases de données » 30 juin 2001, pages 21
[page consultée, le 20 février 2019]

Webographie :

 [Link]

pt0[Link]

 [Link]

 [Link]

 [Link]

 [Link]

 [Link]

35
CONCEPTION ET REALISATION D’UNE APPLICATION DE GESTION DE RESTAURANT

36

Vous aimerez peut-être aussi