Conception d'un Système de Gestion de Bibliothèque
Introduction
Ce projet consiste à analyser et concevoir un système informatique pour moderniser la gestion
d'une bibliothèque. L'objectif était de remplacer le système manuel actuel par une solution
automatisée, plus efficace et plus conviviale.
Points Clés du Travail
1. Analyse Métier
Identification des acteurs : Bibliothécaires, adhérents et fournisseurs.
Processus actuels : Gestion manuelle des prêts/retours, inventaire physique annuel,
problèmes de suivi.
Questionnaire : Permet de recueillir les besoins et frustrations des utilisateurs (ex : difficulté
à trouver des livres, gestion fastidieuse des retards).
Cahier des charges : Détaille les fonctionnalités attendues (gestion des prêts, réservations en
ligne, rapports) et les contraintes (budget, délai).
2. Analyse du Nouveau Système
Besoins fonctionnels :
o Authentification des utilisateurs.
o Recherche et réservation de livres.
o Gestion automatisée des retours et amendes.
Besoins non-fonctionnels :
o Interface intuitive (temps de réponse < 2s).
o Sécurité des données (sauvegardes automatiques).
Diagrammes UML :
o Cas d'utilisation (adhérents, bibliothécaires).
o Séquence système (ex : processus d'emprunt).
3. Conception Technique
Architecture : Modèle 3-tiers (Présentation, Logique métier, Base de données).
Diagrammes de conception :
o Classes (Adhérent, Livre, Prêt).
o Séquence technique (interactions entre composants).
Base de données : Schéma relationnel avec tables Adhérent, Livre, Prêt et relations claires.
4. Planification
Phases :
o Analyse (1 mois).
o Développement (3 mois).
o Tests et déploiement (2 mois).
1. Analyse Métier
2. 1.1 Diagrammes de modélisation Diagramme des acteurs métier
1.2 Questionnaire d'enquête
Questions pour les bibliothécaires :
1. Quel pourcentage de temps consacrez-vous à la gestion des prêts ?
2. Quels sont les problèmes récurrents avec le système manuel ?
3. Comment gérez-vous les livres perdus ou mal rangés ?
Questions pour les adhérents :
1. Trouvez-vous facilement les livres disponibles ?
2. Souhaiteriez-vous pouvoir réserver en ligne ?
3. Êtes-vous satisfait du délai de traitement ?
1.3 Cahier des charges
Spécifications techniques :
Langage : Java/Spring Boot
Base de données : MySQL
Interface : Web responsive
Fonctionnalités principales :
Module gestion adhérents
Module gestion catalogue
Système de prêt/retour
Gestion des amendes
Tableau de bord statistique
Livrables :
Application web
Documentation technique
Manuel utilisateur
Formation du personnel
2. Analyse du Nouveau Système
2.1 Besoins
Fonctionnels :
Authentification des utilisateurs
Recherche multicritères
Gestion des réservations
Génération d'états
Non fonctionnels :
Disponibilité 24/7
Sécurité des données
Interface accessible
2.2 Diagrammes UML
Cas d'utilisation
Explications :
Bibliothécaire : Responsable des opérations quotidiennes (emprunts, retours, gestion des
livres).
Adhérent : Peut emprunter, réserver et consulter son historique.
Admin : Gère les comptes, les rapports et la maintenance système.
Séquence système (Emprunt)
3. Conception du Système
3.1 Architecture
Modèle 3-tiers :
1. Présentation (HTML/JS)
2. Logique métier (Java)
3. Données (MySQL)
3.2 Diagrammes de conception
Classes participantes
Séquence technique
CREATE TABLE Adherent (
id INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE,
date_adhesion DATE
);
CREATE TABLE Livre (
isbn VARCHAR(13) PRIMARY KEY,
titre VARCHAR(100) NOT NULL,
auteur VARCHAR(50),
statut ENUM('disponible','emprunté','réservé')
);
CREATE TABLE Pret (
id INT PRIMARY KEY AUTO_INCREMENT,
adherent_id INT,
livre_isbn VARCHAR(13),
date_pret DATE,
date_retour_prevue DATE,
FOREIGN KEY (adherent_id) REFERENCES Adherent(id),
FOREIGN KEY (livre_isbn) REFERENCES Livre(isbn)
);
4. Planning de réalisation
Phase Durée Livrables
Analyse 1 mois Spécifications détaillées
Développement 3 mois Modules fonctionnels
Tests 1 mois Rapports de validation
Déploiement 1 mois Système en production
Conclusion
Ce travail m'a permis de :
1. Comprendre les enjeux d'un système existant à travers l'analyse métier.
2. Structurer une solution technique avec des outils UML (diagrammes, modélisation).
3. Anticiper les contraintes réelles (budget, délais, besoins utilisateurs).