Formation UML 2 les diagrammes de séquences, d états-transitions et d activités

Documents pareils

deux niveaux 750 m² ordinateurs tablettes liseuses lecteurs MP3. programmation culturelle accueille

Chapitre 2. Classes et objets

MISE EN SERVICE D UN RESEAU DE CAMERA DE VIDEOSURVEILLANCE

Evaluation du module "GESTION COMMERCIALE PARKINGS"

Règlement du Concours "Filme nous la Comté"

Jeux vidéo - Médiathèque Départementale Septembre 2014 pierresvives.herault.fr

Schéma National de Formation des Sapeurs-Pompiers

Comment participer?

OTRT : Office Tchadien de Régulation des Télécommunications. Contrat de Bureau d enregistrement

Guide à l usage des bibliothécaires du réseau départemental

Portail : mode d emploi

Guide du/de la candidat/e pour l élaboration du dossier ciblé

Vous propose une large gamme de

CODE CIVIL FRANÇAIS (ANTERIEUR A 1960)

Mise à jour: 29 janvier Instructions Paiement en ligne

Livret de visite. Collège À LA DÉCOUVERTE DES ARCHIVES DÉPARTEMENTALES DE LA DORDOGNE

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

Synchroniser le son et la vidéo dans Lightworks

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

UNIVERSITE DE TOULON UFR FACULTE DE DROIT REGLEMENT D EXAMEN ANNEE 2012/2017 LICENCE DROIT MENTION DROIT GENERAL

CATALOGUE DE FORMATION POLE RESSOURCES NUMERIQUES

Salle de technologie

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

LE CHRONOGRAPHE EZ3KIEL : NAPHTALINE

Fonctions homographiques

Réaliser la fiche de lecture du document distribué en suivant les différentes étapes de la méthodologie (consulter le support du TD!

Conception des bases de données : Modèle Entité-Association

La lettre d information de la médiathèque départementale

SECONDE BAC PROFESSIONNEL Systèmes Electroniques et Numériques

Tutoriel Sage One Edition Expert-Comptable. - Le cabinet d Expertise-Comptable doit appeler le Service Client Sage One au

LE MODELE CONCEPTUEL DE DONNEES

TSTI 2D CH X : Exemples de lois à densité 1

TP2 ACTIVITE ITEC. Centre d intérêt : AUBE D UN MIRAGE 2000 COMPORTEMENT D UNE PIECE. Documents : Sujet Projet Dossier technique - Document réponse.

Thunderbird est facilement téléchargeable depuis le site officiel

BREVET D ETUDES PROFESSIONNELLES REPRESENTATION INFORMATISEE DE PRODUITS INDUSTRIELS. Epreuve EP1 Unité : UP1

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

CE : comment obtenir vos budgets

Fiche professeur : Séquence non expérimentée

Probabilités. Une urne contient 3 billes vertes et 5 billes rouges toutes indiscernables au toucher.

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

Modèle de budget mensuel

Le scénario pédagogique des formations AgriTic

I/ CONSEILS PRATIQUES

Document d aide au suivi scolaire

La Bibliothèque municipale a pour mission de contribuer aux loisirs, à l information, à l éducation et à la culture de tous.

M1 : Ingénierie du Logiciel

MISE EN SERVICE DE L ALARME BOSCH EASY SERIES

Découvrez La Formule Magique Pour Gagner De L argent Sur Internet

Règlement intérieur des bibliothèques

Et si j étais Marty Mac Fly Ou comment remonter le temps avec une tablette tactile (Ipad)

Compte lecteur : Mode d emploi. Sommaire

COURS WINDEV NUMERO 3

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

RAPPORT DE CONCEPTION UML :

Processus de certification

Les archives. On conserve ces documents pour faire des recherches historiques, administratives ou généalogiques.

Gestion des réunions dans Outlook 2007

.../5. Gestion de Bases de Données (J. Wijsen) 27 janvier 2011 NOM + PRENOM : Orientation + Année : Cet examen contient 8 questions. Durée : 2 heures.

Les puissances La notion de puissance La puissance c est l énergie pendant une seconde CHAPITRE

Français, 9 e année (FRA1D) Introduction aux affaires, 9 e et 10 e année (BBI10/BBI20) 2 périodes de 70 minutes

Règlement de la Bibliothèque municipale

Logiciel libre, OpenMeetings permet de créer ou simplement de participer à des conférences en ligne.

Retour d'expériences :

ÉCOLE DES BEAUX ARTS DEMANDE D ADMISSIBILITÉ POUR L ANNÉE 2015/2016

Mention : En débat

Lire, dire et écrire en utilisant les cartes heuristiques. OBJECTIFS

GUIDE DU MICROPORTEUR SUIVI BUDGETAIRE ET D ACTIVITE Mesure «appui aux microprojets» FSE 4-2.3

«LIRE», février 2015, classe de CP-CE1 de Mme Mardon, école Moselly à TOUL (54)

Exigences pour la certification HERMES. Règlement des examens de certification personnelle, version public

Apprenez à Créer une campagne.

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Le langage SQL Rappels

CONCOURS «Du bonheur dans votre frigo!» RÈGLEMENTS

Modèle conceptuel : diagramme entité-association

Conception des systèmes répartis

OBJET : REGLEMENT du JEU par SMS «RADIO DJIIDO»

Reaper : utilisations avancées

Les outils numériques permettant l enregistrement de documents audiovisuels diffusés sur Internet sont nombreux. Certains sont gratuits.

II. Modèle conceptuel le modèle entité-association

Conditions Générales d Utilisation

On trouvera sur le site du CCDMD un exemple d album construit avec Cantare. (

Cette notice dresse un panorama des différents types de campagnes marketing automatisées et de leur mise en œuvre.

EXERCICES UML. Modéliser cette situation par un diagramme de cas d utilisation. Consulter planning

Alarme domestique- Présentation

Et comment ça fonctionne?

Compte-rendu de la rencontre «Etre parent avec une tablette numérique» - le 9 avril 2013

CONVENTION DE CABINET GROUPÉ

GENERALITES II. ORGANISATION ET ORGANES DE L EXAMEN III. INSCRIPTION A L EXAMEN, FRAIS ET CONDITIONS D ADMISSION IV. CONTENU ET MATIERE DE L EXAMEN

REFERENTIEL PROFESSIONNEL DES ASSISTANTS DE SERVICE SOCIAL

BeLearner.com, en 5 leçons!

Gérer ses fichiers et ses dossiers avec l'explorateur Windows. Février 2013

DOSSIER D INSCRIPTION AU PSC1

Caisse Nationale de l'assurance Maladie

CONTRAT DE BAIL POUR UN APPARTEMENT Entre : 1. Monsieur... et Madame... domicilies a... ci-apres denomme bailleur - et 2. Monsieur... et madame...

MON LIVRET DE COMPETENCES EN LANGUE (Socle commun) Niveau A1/A2 / B1

CONDITIONS GENERALES D UTILISATION

Tableau des contenus

Transcription:

Formation UML 2 les diagrammes de séquences, d états-transitions et d activités Travaux dirigés 1er exercice 11 au 13 février 2014 Hervé DOMALAIN CPII/DOSO/ED

FORMATION UML 2 LES DIAGRAMMES DE SEQUENCES, D ETATS-TRANSITIONS ET D ACTIVITES Travaux dirigés 1er exercice 1. Enoncé de l exercice Objet : Analyse et conception d un système de gestion de documents d une médiathèque et du prêt de ces documents. Expression des besoins : Une médiathèque contient un certain nombre de documents disponibles à la consultation ou à l emprunt ; les personnes désirant emprunter des ouvrages pour une durée et à un tarif donnés doivent s inscrire en tant que clients. L inscription des clients consiste à remplir une fiche sur laquelle sont notées les informations suivantes : nom et prénom du client ainsi que son adresse. Ils peuvent choisir de payer à chaque emprunt effectué (type «à tarif normal» ou «à tarif réduit») ou de régler une cotisation annuelle (type «abonné»). En plus du tarif, ce type conditionne les critères d emprunt suivants : le nombre de documents empruntables et la durée de prêt (voir cidessous). Dans le cas «à tarif réduit», un justificatif est demandé à l inscription, puis à chaque date anniversaire. Les cas à prévoir sont : étudiant/scolaire, carte vermeil et carte «à caractère social». Les documents disponibles sont des CD audio, des K7 vidéo ou des livres. Chaque document est repéré par un code unique et une localisation (salle/rayon) dans la médiathèque. Certains documents ne peuvent pas être empruntés, mais uniquement consultés sur place. Les informations communes aux documents sont les suivantes : le titre, l auteur (écrivain, groupe ou metteur en scène) et l année de sortie. Enfin, afin de disposer de statistiques d utilisation, on souhaite connaître le nombre d emprunts effectués pour les différents types et genres de documents... Le genre des CD audio, des K7 vidéo et des livres est donné aux clients à titre indicatif pour l aide au choix lors d un emprunt. Chaque sortie de documents entraîne la constitution d une fiche d emprunt. Sur cette fiche sont notés, le client emprunteur, la date de début du prêt et pour le document emprunté, la date limite de restitution. Les durées de prêt dépendent du type de document et de la catégorie du client (voir les règles de prêt ci-dessous). Le système de gestion doit prévoir toute opération d ajout et de suppression de clients et de documents. D autre part, les formats de la plupart des informations sont libres (chaînes de caractères) ; le système devra toutefois veiller à la cohérence des informations stockées (impossibilité d avoir deux clients ou deux documents avec le même nom, emprunter deux fois le même document, etc.). Le système d information n est accessible qu au bibliothécaire. 1

Règles de prêt : L emprunt d un document par un client obéit à certaines règles exposées ci-après. Un client ne peut pas emprunter plus d un certain nombre de documents fixé par son type (par exemple, 2 pour le type «à tarif réduit», 5 pour le type «à tarif normal» et 10 pour le type «abonné»). Dès que ce nombre maximal est atteint pour un client donné, tout nouveau prêt devra être impossible. Tout client qui n a pas restitué un document avant sa date limite de restitution ne pourra plus faire de nouvel emprunt tant qu il n aura pas régularisé sa situation, ceci même si le nombre maximal d emprunts n est pas atteint. Pour ce faire, à chaque demande d emprunt, on vérifie s il est à jour dans ses restitutions ; si ce n est pas le cas, l emprunt n est pas autorisé et le client est marqué de telle manière qu il ne puisse plus emprunter de nouveaux documents. De plus, l ensemble des fiches emprunt est parcouru chaque jour afin de repérer s il existe des documents pour lesquels la date limite de restitution est dépassée ; pour chacune de ces fiches trouvées, le client concerné est marqué comme précédemment et la médiathèque envoie une lettre de rappel. Une relance est envoyée chaque semaine tant que le document n est pas restitué. Le tarif des emprunts dépend du document et du client. Le tarif du document est fixé par son type (par exemple, 1 pour un livre, 2 pour un CD audio et 3 pour une K7 vidéo). La règle pour les clients «à tarif normal» est de payer le montant fixé pour chaque document emprunté (indiqué auparavant). Le tarif appliqué aux clients «à tarif réduit» est la moitié du «tarif normal». Les «abonnés» réglant une cotisation annuelle empruntent les documents gratuitement. La durée des emprunts dépend du document et du client. Chaque type de document est empruntable pour une durée dite nominale (par exemple, 2 semaines pour une K7 vidéo, 4 semaines pour un CD audio et 6 semaines pour un livre). Ensuite, la durée de prêt est modifiée selon le type de client (par exemple, la durée nominale pour un client à tarif normal, la moitié de cette durée pour un client à tarif réduit et le double de cette durée pour un abonné). Une modélisation des cas d utilisation (à titre indicatif) : 2

Une modélisation des classes candidates (à titre indicatif) : 2. Construisez le diagramme de séquences (scénario nominal) du cas d utilisation «emprunter document» Le modèle dynamique (constitué notamment des diagrammes de séquences et d états-transitions) va nous permettre de vérifier que les concepts identifiés (dans le diagramme de classes) permettent bien de faire fonctionner notre système. Dès que le système devient un peu complexe, il est clair que le modèle statique (diagramme de classes) ne sait pas exprimer la réponse à la question «comment cela fonctionne-t-il?». Seul le modèle dynamique saura donner la réponse. Or il est fréquent de ne trouver pour tout modèle d analyse, que la partie structurelle qui, montre certes l ensemble des concepts et des associations qui les connectent, mais est incapable de montrer la dynamique. Exprimer la dynamique du système n est pas une activité simple qui peut rapidement devenir fastidieuse. De plus, sur le modèle de structure, on peut imaginer le fonctionnement en regardant comment les concepts sont associés, en particulier les valeurs des multiplicités. D où la tentation de totalement oblitérer cette étape de construction des diagrammes dynamiques. En fait, les modèles statiques et dynamiques doivent être construits en même temps et sont fortement corrélés. Nous ne pouvons pas construire le modèle de structure sans prendre de décisions quant à la dynamique. Le modèle dynamique sert donc à montrer comment fonctionne les concepts à l intérieur du système. Le point de vue dynamique sur le modèle à construire, puisque chaque diagramme est en quelque sorte un point de vue, doit exprimer la réponse apportée par les composants du système aux besoins des utilisateurs. Autrement dit, nous partons d une expression des besoins, sous la forme des messages qui sont échangés entre l extérieur et le système 3

et nous propageons dans le système l impact des messages qu il reçoit. L objectif de ce TD est de montrer comment les concepts s organisent pour répondre à ces messages. Dans ce diagramme, les options suivantes ont été retenues : Le diagramme ne traite de l emprunt que d un seul document ; dans le cas d un emprunt de plusieurs documents à la fois, soit la procédure complète doit être répétée, soit le message initial contient la liste des documents à emprunter et les messages sont itératifs. Les diagrammes ne contiennent pas la phase de recherche du document et du client dans la médiathèque ; le message «emprunter()» adressé à la médiathèque contient les paramètres «c» et «d» identifiant directement le client et le document concernés, ce qui suppose qu ils sont présents. En outre, «c» indique le type de client (à tarif normal, à tarif réduit ou abonné) et «d» le type de document (CD audio, K7 vidéo ou livre), informations qui seront utilisées par l objet «ficheemprunt» pour calculer la date de retour et la somme due. Les messages ont été simplifiés et ainsi, les alternatives «en échec» ne sont pas indiquées (le client ne peut pas emprunter et le document n est pas empruntable). Comme le client se présente avec l ouvrage qu il veut emprunter, certaines opérations de contrôle ne sont pas effectuées : le document existe forcément, le client aussi... Les «get» et «set» (les accesseurs) permettent d'accéder et modifier les attributs protégés ou privés de la classe. «get» s'emploie pour lire un attribut de la classe et «set» pour «écrire» une valeur à n attributs de la classe. Les getters et setters permettent de réaliser ce qu'on appelle, en programmation orientée objet, l'encapsulation des données. Cela permet de respecter la règle suivante : «un objet se modifie toujours lui-même, un objet ne modifie jamais un autre objet directement». C'est à dire qu'il appartient à l'objet de décider comment modifier ses propres attributs, un autre objet pourra demander à l'objet de se modifier, mais ce n'est pas lui qui le modifiera. 4

L'encapsulation permet de sécuriser l'accès aux données d'une classe. Ainsi, les données déclarées privées à l'intérieur d'une classe ne peuvent être accédées et modifiées que par des opérations définies dans la même classe. Si une autre classe veut accéder aux données de la classe, cela n'est possible que par l'intermédiaire d'une opération de la classe prévue à cet effet. Ces appels d'opérations sont appelés «échanges de message». 3. Construisez les diagrammes d états-transitions de la fiche d emprunt et du document Au cours de son existence, une instance de «FicheEmprunt» peut notamment passer dans deux états remarquables : «en cours» : le client dispose du document après l avoir emprunté. Cet emprunt est vérifié régulièrement. «en retard» : Lorsque la date limite de l emprunt est dépassée, une lettre de rappel est envoyée au client afin qu il restitue le document ; il est ensuite relancé périodiquement tant qu il ne l a pas restitué. Description des principales activités associées aux états : «verifieremprunt()» : chaque jour, les fiches sont vérifiées afin de marquer celles dont la date limite est dépassée. Dans le cas où la date de retour limite n est pas dépassée (défini par la condition de garde [datelimite >= datejour]), c est une transition réflexive car l objet «ficheemprunt» reste dans l état «en cours». «rappelerclient()» : dans le cas où une restitution n a pas été faite à temps, une lettre de rappel est envoyée au client qui n est plus autorisé à emprunter de nouveaux documents. «relancerclient()» : si le client n a toujours pas restitué le document huit jours après l envoi de la première lettre de rappel, une lettre de relance lui est envoyée. 5

«setestempruntable()» : l emprunt ou la restitution d un document change l état de ce document et notamment la valeur de l attribut «estempruntable». Le diagramme d états-transitions de la classe «Document» est donné ci-dessus. Au cours de son existence, une instance de «Document» peut notamment passer par trois états : «consultable» : le document est rangé au rayon «consultations» ; il est uniquement consultable sur place. «empruntable» : le bibliothécaire a autorisé le prêt de l ouvrage qui est rangé au rayon «prêts». «emprunté» : le document n est plus en rayon car il a été emprunté par un client. Dans ce diagramme, deux activités («creerdocument()» et «supprimerdocument()») sont représentées comme des transitions internes car leurs déclenchements ne changent pas l état du document. 6

4. Mettez à jour le diagramme de classes candidates de l énoncé, pour générer une première version du diagramme de classes métier La modélisation dynamique a permis d enrichir le diagramme des classes candidates. Voici les attributs et les opérations des classes «Document», «FicheEmprunt», «Client» et «Mediatheque» qui ont été mis en évidence dans les diagrammes de séquences et d états-transitions : 7