Pour l’obtention du
DIPLÔME DE LICENCE
FILIERE : Développement Informatique (DI)
Thème
ELABORÉ PAR:
ENCADRÉ PAR:
EL Varha N’dah
Lalla Baba
Remerciements
Au nom d’Allah le tout puissant.
Merci….
Le présent rapport constitue une étude et propose une solution logicielle. Pour parvenir aux
résultats, nous commencerons d'abord par analyser des systèmes des gestions des
bibliothèques existants, puis modéliser sur la base du langage UML. Ensuite pour
l'implémentation, nous utiliserons le langage de programmation PHP, le Framework PHP
utilisé sera laravel, comme SGBD, MySQL, avec pour outil de connexion à la base de
données wampserver.
:الملخص
ورك@@ز مش@@روعنا على تط@@وير تط@@بيق ويب لوض@@ع،تت@@وج درج@@ة الليص@@انص بإع@@داد مش@@روع تخ@@رج
ISCAE العالمات لمكتبة
سينظم التطبيق المنتج المكتبة ويصنفها على مجموعاتها بطريقة تناسب العاملين بالمكتب@@ة لمس@اعدتهم
.على تنظيم المكتبة من ناحية وتوفير الوقت والجهد من ناحية أخرى
س@@نبدأ أوالً بتحلي@@ل أنظم@@ة، ولتحقي@@ق النت@@ائج المطلوب@@ة.يشكل هذا التقرير دراسة ويقترح حالً برمج ًي@@ا
سوف نستخدم لغة البرمجة، ثم من أجل التنفيذ.UML ثم نمذجة على أساس،إدارة المكتبات الحالية
م@@ع أداة اتص@@ال،MySQL واس@@تخدمنا،Laravel المستخدم هوPHP سيكون إطار عمل،PHP
.wampserver قاعدة بيانات
Abstract:
The bachelor's degree is crowned by the completion of a graduation project, our project
focused on the development of a web labeling application for the ISCAE library.
The resulting application will organize the library and its collections in a way that suits the
community of library workers to help them organize the library and save them time and effort.
This report constitutes a study and proposes a software solution. To achieve the results, we
will first start by analyzing existing library management systems, then model on the basis of
UML. Then for the implementation, we will use the programming language PHP, the PHP
framework used will be laravel, like DBMS, MySQL, with the wampserver database
connection tool.
Introduction
De nos jours, les entreprises par tout dans le monde essaient de bénéficier
des avantages qu’offre l’évènement de l’informatique en commençant par
informatiser les différents services qui les constituent.
I. Chapitre 1 : Généralité
A. Présentation de l’Institut :
3. Bibliothèque de L’ISCAE
Comme tous les établissements universitaires l’ISCAE dispose d’une
Bibliothèque qui contient les ouvrages les rapports de fin d’études des
étudiants et les revues scientifiques écrites par les professeurs.
a) Mission de la bibliothèque :
La bibliothèque de l’ISCAE a plusieurs mission comme ils adhérent les
livres au étudiants aux professeurs et aux personnel de l’ISCAE il
représente un archive pour tous les diplômées.
La bibliothèque de l’ISCAE c’est le lieu de dépôt de tous les rapports de
la fin d’étude.
On peut dit qu’il est riches par ces rapports et pauvre en ouvrages et
revue.
Figure3 :bibliotheque d l’iscae
b) Définition :
La bibliothèque universitaire peut ainsi servir à la double mission des
universités, l'enseignement et la recherche. Toutefois, une université
peut avoir, en plus d'une bibliothèque universitaire, d'autres
bibliothèques rattachées à une faculté, un laboratoire, un centre de
recherche ou un institut. D'autre part, une bibliothèque peut avoir un
double fonction, nationale et universitaire, ou publique et universitaire.
A. Définition du projet
C. Etude de l’existence :
L’étude de l’existence est unee phase importante pour comprendre le
système actuel et degager les nouveaux besoins qui n’etaient pas
envisages afin de mettreven place une nouvelle seloution convenable
Apres les recherches realisees ,nous avons remarque que notre idee
n’estpas encore realisee par les anciens etudians de l’instuti. D’une autre
part, la plupart des applications reealisee sont destinées a la gestion du
Fonctionnement des bibliothèques, notamment la gestion de prêt, des
adhérents et des restitutions.
D. Description du projet :
A. Analyse :
1. Méthodologie de travail :
Après avoir évoqué le travail à réaliser, la prochaine étape consiste à
préciser la méthode de travail adoptée. Pour notre cas, l'équipe au sein
de laquelle nous sommes intégrées applique, les principes des
méthodes agiles.
Qui sont des groupes de pratiques de pilotage et de réalisation de
projets
Les méthodes agiles se veulent plus pragmatiques que les méthodes
traditionnelles, impliquent au maximum le demandeur (client) et
permettent une grande réactivité à ses demandes.
De ce fait, ces méthodes sont de plus en plus utilisées et elles sont aussi
nombreuses.
Ainsi, il faut choisir la méthode la plus flexible et la plus adaptable au
besoin de notre travail. Pour le développement du projet, on a opté pour
la méthode SCRUM
sprint 1
Analyse des sprint 2 sprint 3
besoins deploiement
(2 semaine) (4 semaine) (3 semaine)
Developement
de l'Application
Maintenance
Conception et
Integration
Le Backlog :
Conception :
Conception générale :
Méthodologie de conception :
SOMMAIRE D’IDENTIFICATION
Titre : Ajouter un domaine
But : Ajouter les domaines des sciences
Résumé : Le bibliothécaire remplit le formulaire d’ajout et valide
l’action. Le système enregistre le nouveau domaine
dans la base de données.
Acteur : Bibliothécaire
DESCRIPTION DES
ENCHAINEMNT
Pré condition Post condition
- bibliothécaire doit être - Le domaine est ajouté
authentifié
Enchaînement nominal
- Le bibliothécaire remplit le formulaire
- Le système enregistre le domaine dans la base de données
Tablau1 : tableau descriptif de cas d’utilisation « ajouter domaine »
D.
E.
SOMMAIRE D'IDENTIFICATION
Titre : Ajouter ouvrage
But : Ajouter un ouvrage ou un exemplaire
Résumé : Bibliothécaire remplit le formulaire d’ajout. Le système
enregistre le nouvel ouvrage dans la base de
données.
Acteur: Bibliothécaire
DESCRIPTION DES ENCHAINEMNT
Pré condition Post condition
- bibliothécaire doit être - L’ouvrage est ajouté
authentifié
Enchaînement nominal
- remplit le formulaire
- Le Système génère l’emplacement de l’ouvrage
- Le Système enregistre l’ouvrage dans la base des données
Tablau2 : tableau descriptif de cas d’utilisation « ajouter ouvrage »
Dans cette partie, nous allons donner un aperçu détaille sur le cas
d’utilisation « gestion ouvrage », décrit dans la figue en listant les
différents cas d’utilisation qu’il inclut.
Enchaînement nominal
- remplit le formulaire
- Le Système enregistre l’étagère, ses rayons et ses blocs dans la base
des données
Tablau3 : tableau descriptif de cas d’utilisation « ajouter étagère »
Dans cette partie, nous allons donner un aperçu détaille sur le cas
d’utilisation « gestion ouvrage », décrit dans la figue en listant les
différents cas d’utilisation qu’il inclut.
F.
Figure10: diagramme de cas d’utilisation « gestion emplacement »
SOMMAIRE D'IDENTIFICATION
Titre : Activer un emplacement
But : Activer un emplacement pour lui affecter les nouveaux
ouvrages
Résumé : Bibliothécaire clique le bouton ‘activer’. Le système
active l’emplacement correspondant.
Acteur: Bibliothécaire
DESCRIPTION DES ENCHAINEMNT
Pré condition Post condition
- bibliothécaire doit être - l’emplacement est activé
authentifié
Enchaînement nominal
- Cliquer ‘activer’
- Le Système active l’emplacement correspondant et désactive celui qui
était actif et enregistre les modifications dans la base des données
Tablau4 : tableau descriptif de cas d’utilisation « activer emplacement»
G. Diagramme de classe
Définition :
Dictionnaire de donnée
String
Nom_dom Nom du domaine auquel
appartient un ouvrage
Type_ouvrage Type de l’ouvrage String
Année_
L’année universitaire String
Universitaire
Id Identificateur de Int
L’affectation
Nom_dom
Affecte
Num_étagère Numéro de l’étagère Int
Le statu de
l’emplacement String
Statu (actif/inactif)
bibliothèque
Id_ouvrage Numéro de l’ouvrage Int
original
Tablau9 : dictionnaire de données de la table exemplaire
Ci-dessous le diagramme de classe de notre système :
Vérification du formulaire
[
Champs valides ]
Imprimer
Architecture MVC :
L’architecture Modèle-Vue-Contrôleur : Le pattern MVC permet de bien
organiser son code source. Il va vous aider à savoir quels fichiers créer,
mais surtout à définir leur rôle. Le but de MVC est justement de séparer
la logique du code en trois parties que l'on retrouve dans des fichiers
distincts, comme l'explique la description qui suit.
Modèle :
Cette partie gère les données de votre site. Son rôle est d'aller
récupérer les informations « brutes » dans la base de données, de les
organiser et de les assembler pour qu'elles puissent ensuite être traitées
par le contrôleur. On y trouve donc les requêtes SQL.
Vue :
Cette partie se concentre sur l'affichage. Elle ne fait presque aucun
calcul et se contente de récupérer des variables pour savoir ce qu'elle
doit afficher. On y trouve essentiellement du code HTML mais aussi
quelques boucles et conditions PHP très simples, pour afficher par
exemple la liste des messages des forums.
Contrôleur :
Cette partie gère la logique du code qui prend des décisions. C'est en
quelque sorte l'intermédiaire entre le modèle et la vue : le contrôleur va
demander au modèle les données, les analyser, prendre des décisions
et renvoyer le texte à afficher à la vue. Le contrôleur contient
exclusivement du PHP. C'est notamment lui qui détermine si le visiteur a
le droit de voir la page ou non (gestion des droits d'accès)
Figure12 : architecture MVC
A. Environnement du travail :
1. Environnement matériel :
2. Environnement logiciel :
a) Langage de programmation
On a eu recours, pour le développement de notre application au
langage de programmation PHP
3. Environnement de développement :
a) Laravel
Figure14: logo laravel
b) PHP
c) MYSQL
Figure16: logo MYSQL
d) APACHE
e) HTML
Figure18: logo HTML5
f) CSS
CSS est un langage informatique utilisé sur l'internet pour mettre en forme les
fichiers HTML ou XML. Ainsi, les feuilles de style, aussi appelé les fichiers CSS,
comprennent du code qui permet de gérer le design d'une page en HTML.
g) BOOTSTRAP
Figure20: logo Bootstrap
h) JAVASCRIPT
i) JQuery
Figure22: logo Jquery
JQuery est une bibliothèque JavaScript libre et multiplateforme créée pour faciliter
l’écriture de scripts côté client dans le code HTML des pages web
j) AJAX
Fi
g u
r e
2 4:
Visual Studio Code is a great editor for PHP development. You get features like
syntax highlighting and bracket matching, IntelliSense (code completion), and
snippets out of the box and you can add more functionality through community-
created VS Code extensions
l) DATATABLE
Figure25: logo DataTable
m) WAPSERVER
Figure26:
logo Wampserver
WampServer est une plate-forme de développement Web sous Windows pour des
applications Web dynamiques à l’aide du serveur Apache2, du langage de scripts
PHP et d’une base de données MySQL. Il possède également PHP
1. Page d’authentification :
Figure27 : Page d’authentification
5. Ajouter ouvrage :
Figure31 : ajouter un ouvrage
En cliquant sur le bouton ajouter, un formulaire va apparaitre,
l’utilisateur doit remplir toutes les informations générales d’un
ouvrage : de son domaine a son année universitaire, La
colonne ‘emplacement’ sera remplir automatiquement en fonction du
nom du domaine de l’ouvrage et de l’emplacement actif de son
domaine.
6. Menu Étagères
Le menu étagères est utilisé pour le rayonnage, il contient une liste des
étagères avec leurs rayons et leurs blocs, une zone de recherche (il peut
chercher par tous les champs), un bouton ajouter et un bouton pour
l’export en PDF.
Cette liste permet à l’utilisateur de supprimer ou modifier des étagères
(code, rayon et bloc).
7. Menu Emplacements:
Figure33 : menu des emplacements
8. Menu d’impression:
Nétographie :
https://openclassrooms.com/courses/dynamisez-vos-sites-web-avecjavascript
(Cours du java Script)
http://www.w3schools.com/bootstrap (Cours, articles, tutoriels du Bootstrap)
http://stackoverflow.com/ (Forum-solutions informatiques)
https://fr.wikipedia.org/wiki/JQuery (Wiki jQuery)