DOSSIER DE CONCEPTION Projet Gestion BIBLIOTHEQUE

Transcription

DOSSIER DE CONCEPTION Projet Gestion BIBLIOTHEQUE
Développement d’une application JAVA EE
office de la formation
professionnel
et de la promotion
du travail
DOSSIER DE CONCEPTION
Projet Gestion BIBLIOTHEQUE
UML
OUDAD Widad
[email protected]
1
Développement d’une application JAVA EE
Sommaire
Introduction ...........................................................................................................4
I.
II.
Premier approche du sujet .................................................................4
1.
Référentiel des exigences .....................................................................................................4
A)
Les exigences fonctionnelles ..........................................................................................4
b)
Les exigences non fonctionnelles .......................................................................................5
c)
Les contraintes de conception : .........................................................................................5
III.
ANALYSE ET CONCEPTION ..........................................................................6
1)
Diagramme de cas d’utilisation .....................................................................................6
2)
Diagramme de classe.......................................................................................................9
3)
Diagramme de séquences ............................................................................................. 10
4)
Diagramme d’état de transition ................................................................................... 11
5)
Diagramme d’activité .................................................................................................... 13
6)
Diagramme déploiements ............................................................................................ 14
IV.
Choix technologiques ............................................................................ 15
V.
Outils :........................................................................................................................ 15
VI.
Conclusion ............................................................................................................ 16
2
Développement d’une application JAVA EE
Sommaire figures

Figure 1 : premier diagramme d’utilisation ..................................................................................6

Figure 2 : diagramme de cas d’utilisations (Adhérent) .................................................................7

Figure 3 : diagramme de cas d’utilisation (Administrateur) ..........................................................8

Figure 4 : diagramme de classe....................................................................................................9

Figure 5 : diagramme de séquence (emprunter livre) ................................................................ 10

Figure 6 : diagramme de séquences (Ajouter livre) .................................................................... 11

Figure 7 : diagramme d’états de transition (ajouter livre ) ......................................................... 12

Figure 8 : diagramme d’états de transition (réserver livre) ........................................................ 12

Figure 9 : diagramme d’activité ................................................................................................. 13

Figure 10 : diagramme de déploiement ..................................................................................... 14
3
Développement d’une application JAVA EE
I.
Introduction
Ce projet Gestion Bibliothèque, a pour objectif la conception d’un
système d’information permettant d’aider à la gestion de la Bibliothèque et plus
précisément, aider à la gestion des emprunts, réservations et retours des livres.
Le logiciel, qui fera suite à cette analyse, devra permettre donc de :
 gérer les personnes inscrites –ou souhaitant s’inscrire- à la
bibliothèque,
 gérer l’emprunt, le retour et le rappel de livre.
 ainsi que les réservations par des personnes inscrites.
Au cour de ce projet, nous allons présenter différents diagrammes
modélisés selon la méthode UML, Chaque modélisation sera annotée, la
démarche que nous aurons suivit, les différentes hypothèses soulevées et les
différents choix.
II.
Premier approche du sujet
Tout d’abord, une fois que nous avions ciblé le système sur la gestion
des livres de la bibliothèque, nous avons cherché à savoir à qui devait profiter
l’application. Qui sera en relation avec l’interface ? Que pourra-t-elle faire avec
l’application, quels seront les stimuli des différentes actions possibles ?
Il y aura l’inscription et la résiliation d’un membre de la bibliothèque,
l’emprunt d’un livre pour une période donnée, la prolongation de cet emprunt
pour une même durée si aucune réservation n’est faite sur le livre et donc, la
réservation d’un livre ; vient également le cas du retour d’un livre.
1. Référentiel des exigences
A) Les exigences fonctionnelles
 La recherche
La première fonction que doit offrir est la recherche des livres . Le site
doit offrir plusieurs méthodes de recherche : Auteur, titre… Les résultats de la
recherche doivent apparaître sur une page particulière.
4
Développement d’une application JAVA EE
 La consultation
Chaque livre doit pouvoir être présentée en détail sur une page. Cette
page doit contenir :
-Une image.
-Une description détaillée.
 La sélection
Le client doit avoir la possibilité de sélectionner et d'enlever des
réservations déjà effectuées et aussi modifier certaines informations de leur
profil .
b) Les exigences non fonctionnelles

Exigences de qualité
Pour attirer de nouveaux clients et pour fidéliser des clients existants il
est important de respecter les exigences de qualité suivantes :
-Ergonomie sobre permettant des présentations claires.
-Une présentation exhaustive de chaque activité publiée.
-Formulaire d’inscription simple et facile à remplir.
-Une planification aisée et non chevauchée.
c) Les contraintes de conception :
Après une réflexion plus approfondie sur les différents jets de
diagramme de cas
d’utilisations nous avons considéré que le cas
renouvellement de prêt est une exception du cas traitement d’un retour, car
l’emprunteur demande un renouvellement de prêt au moment du retour de ce
même livre. Nous avons donc enlevé de notre diagramme de cas d’utilisation le
cas renouvellement de prêt.
Pour la même raison nous pouvons considérer que le cas réservation
d’un livre est une exception du cas traitement d’un emprunt, lorsque le livre
souhaité à emprunter n’est pas disponible.
La réservation d’un livre inclut elle même les étapes suivantes :
enregistrement d’une réservation, annulation d’une réservation et gestion des
livres réservés.
5
Développement d’une application JAVA EE
III.ANALYSE ET CONCEPTION
1)
Diagramme de cas d’utilisation
 Définition
Les diagrammes de cas d'utilisation sont des diagrammes 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. Un cas d'utilisation représente une unité discrète d'interaction
entre un utilisateur (humain ou machine) et un système. Il est une unité
significative de travail. Dans un diagramme de cas d'utilisation, les utilisateurs
sont appelés acteurs (actors), ils interagissent avec les cas d'utilisation (use
cases).
Un premier diagramme d’utilisation, très simple, pourrait représenter ainsi
les deux cas d’utilisations de premier degré.
 Figure 1 : premier diagramme d’utilisation
Maintenant, est-ce réellement de cas d’utilisation dont nous avons
besoin, même au premier niveau ? Il apparaît comme évident que ce cas
d’utilisation est trop peu détaillé, que les cas d’utilisations seraient trop lourd à
gérer tels quels, il faut donc éclater ces cas d’utilisations.
Ainsi, en faisant plus attention au texte, on observe que la gestion des
réservations
ainsi que le renouvellement des prêts pourrait également prendre place
pour alléger les autres cas d’utilisations.
6
Développement d’une application JAVA EE
UC : ADHERENT
Sommaire d’identification :
But :Effectuer un emprunt ou bien une réservation .
Résumé : Cette fonctionnalité permet au client de s’inscrire et de choisir, emprunter, réserver
un livre
Acteur : Adhérent.
Pré conditions : L’utilisateur doit :
- Etre authentifié.
-Créer un séjour et choisir les activités.
Description du traitement nominal :L’utilisateur peut :
Créer un compte.
Consulter la bibliothéque.
Réserver un livre .
Emprunter un livre .
Gérer leur profil .
Diagramme :
 Figure 2 : diagramme de cas d’utilisations (Adhérent)
7
Développement d’une application JAVA EE
AD: ADMINISTRATEUR
Sommaire d’identification :
But :Gestion du bibliothéque.
Résumé : Cette fonctionnalité permet à l’administrateur de gérer les emprunts, les
Réservations et de gérer les acteurs du bibliothèque et leurs rôles.
Acteur : Administrateur.
Description détaillée :
Pré conditions : L’administrateur doit :
 Etre authentifié.
Description du traitement nominal :L’administrateur peut

Gérer les livres (Ajout, modification, suppression)

Gérer les réservations et les empruntes .

Gérer les utilisateurs.
Diagramme :
 Figure 3 : diagramme de cas d’utilisation (Administrateur)
8
Développement d’une application JAVA EE
2)
Diagramme de classe
 Définition
Un diagramme de classes fournit une vue globale d'un système en
présentant ses classes, interfaces et collaborations, et les relations entre elles.
Les diagrammes de classes sont statiques : ils affichent ce qui interagit mais pas
ce qui se passe pendant l'interaction.
Diagramme
 Figure 4 : diagramme de classe
9
Développement d’une application JAVA EE
3)
Diagramme de séquences
 Définition
Le diagramme de séquence est une représentation intuitive qu’on a
utilisée pour concrétiser des interactions entre nos entités.
Le diagramme de séquence décrit un scénario qui modélise une
exécution particulière d’un cas d’utilisation du début jusqu’à la fin. Il
correspond à une sélection d’enchaînements du cas d’utilisation.
Emprunter un livre
 Figure 5 : diagramme de séquence (emprunter livre)
10
Développement d’une application JAVA EE
Ajouter livre
 Figure 6 : diagramme de séquences (Ajouter livre)
4)
Diagramme d’état de transition
 Définition
Diagramme de comportement qui montre une machine à état, des
automates d'états finis, sous forme de graphes d'états, reliés par desarcs orientés
qui décrivent les transitions.
11
Développement d’une application JAVA EE
Ajouter un livre
 Figure 7 : diagramme d’états de transition (ajouter livre )
Réserver un livre
 Figure 8 : diagramme d’états de transition (réserver livre)
12
Développement d’une application JAVA EE
5)
Diagramme d’activité
 Définition
Le diagramme d'activité est un diagramme comportemental d'UML,
permettant de représenter le déclenchement d'événements en fonction
des états du système et de modéliser des comportements parallélisables (multithreads ou multi-processus). Le diagramme d'activité est également utilisé pour
décrire un flux de travail (workflow).
Effectuer réservation
 Figure 9 : diagramme d’activité
13
Développement d’une application JAVA EE
6)
Diagramme déploiements
 Définition
En UML, un diagramme de déploiement est une vue statique qui sert à
représenter l'utilisation de l'infrastructure physique par le système et la manière
dont les composants du système sont répartis ainsi que leurs relations entre eux.
Windows xp/7/8
Mac os x
Linux
Système d’exploitation (Poste Client)
Google Chrome
Mozilla firefox
IE >=version 9
Navigateur Web
Utilisation
Modem adsl
Tcp/i
Apache Tomcat
7.0.22
Linux (Serveur)
Hébergement
Java/J2EE/ JSP
Tomcat
Version 5.1
Hibernate/jpa
Mysql(Basedonné)
frameworks Java
phpMyAdmin
Espace disque=1go
Jdk = v 6 min

Figure 10 : diagramme de déploiement
14
Développement d’une application JAVA EE
IV.
Choix technologiques
Java Server Page
Extension de la technologie Java Servlet de Sun qui permet de
programmer simplement l'affichage de contenus dynamiques sur le Web. JSP
consiste en une page HTML incluant du code Java qui s'exécutera soit sur le
serveur Web, soit sur le serveur d'application.
Hibernate
Hibernate est un framework open source gérant la persistance des objets
en base de données relationnelle.
V.
Outils :
TOMCAT
L'utilisation d'un serveur Java EE est obligatoire pour le
développement de pages Web dynamiques en Java EE. Un serveur HTTP
classique reçoit des requêtes HTTP et renvoie des réponses mais il ne
connait pas les Servlets, les JSP... Il est donc essentiel d'utiliser un
programme appelé moteur de Servlets qui est contenu dans le serveur Java
EE et qui permet de pallier ce manque.
ECLIPSE
Eclipse est l'environnement de développement (spécialisé pour le
langage Java) qui sera utilisé dans ce projet. Le choix d'Eclipse repose
essentiellement sur sa gratuité, sa facilité d'utilisation, sa puissance de
développement et surtout ses nombreux plugins (bibliothèques additives).
APACHE
Apache est le serveur Web le plus utilisé sur Internet. Dans une
architecture en production, il est recommandé d'utiliser un serveur Web en
frontal d'un serveur d'applications. Ces recommandations sont également
appliquées dans le cas de l'utilisation d'un conteneur Web comme Tomcat.
L'utilisation d'un serveur Web en frontal est nécessaire dans ce
15
Développement d’une application JAVA EE
projet pour des raisons de performance, de sécurité et de flexibilité.
Coupler Tomcat et le serveur web Apache
L'intégration d'un serveur Tomcat avec un serveur Web se fait au
travers d'un connecteur configuré au sein de Tomcat et d'une extension
ajoutée au serveur Web. Un connecteur Tomcat est une classe Java qui
supporte un protocole réseau spécifique et propriétaire. La librairie
d'extension du serveur Web permet un dialogue entre les deux serveurs.
MySQL
Le SGBD MySQL est supporté par un large éventail d'outils.
MySQL est surtout installé pour les applications Web, ce SGBD est solide
et utilisé par de grands groupes spécialisés dans l'Internet. Plusieurs
pilotes natifs de type 4 sont disponibles pour MySQL et sont conseillés
pour une utilisation en Java.
VI.
Conclusion
L’objectif de ce projet était de modéliser le système d’information
nécessaire pour gérer la bibliothèque donnée, selon les préceptes de la «
méthode » d’analyse UML.
Les différentes tâches fixées ont été réalisées à partir de plusieurs
hypothèses. Nous avons modélisé les opérations importantes en respectant les
contraintes fixées et avons du faire un bon nombre de back-tracking au niveau
des diagrammes afin de les conformer les uns au autres et d’avoir une vision au
plus juste possible.
Les diagrammes de séquences, cas d’utilisations, diagramme de classes,
diagrammes états-transition font partie de notre analyse.
Nous regrettons simplement de n’avoir pu faire de diagramme d’activité
par manque de temps.
16