La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 Master M1 MIAGE/SIC Domaine Maths, Info & Applications, Mention Informatique des Organisations, Spécialité MIAGE.

Présentations similaires


Présentation au sujet: "1 Master M1 MIAGE/SIC Domaine Maths, Info & Applications, Mention Informatique des Organisations, Spécialité MIAGE."— Transcription de la présentation:

1 1 Master M1 MIAGE/SIC Domaine Maths, Info & Applications, Mention Informatique des Organisations, Spécialité MIAGE UE ISI1 : Ingénierie des Systèmes dinformation

2 2 De la modélisation des objets à celle de leur comportement I. Rappel sur la modélisation des objets II. De la modélisation des objets à celle de leur comportement III. Lontologie causale IV. Le modèle causal V. Le sous-schéma dynamique et sa documentation VI. Expression dans les notations UML VII. Entraînement

3 3 I- Modélisation des objets Objectif : Représenter certains aspects de la réalité dintérêt pour lorganisation {Colette skie vite, Elle porte des pantalons rouges Et un pull bleu} Un objet réel Représentation de lobjet réel Monde Réel Monde de linformation

4 4 « La réalité est faite dobjets différentiables par leurs propriétés et ayant entre eux (elles) des relations qui évoluent dans le temps » Paradigme : I- Modélisation des objets

5 5 Approche Représenter les objets réels, leurs propriétés et leurs relations par leurs équivalents O&R dans le monde de linformation Observer le monde réel, Identifier les objets & relations pertinentes, Selectionner les propriétés dintérêt Monde Réel Monde de linformation Représenter les O&R réels par des objets informationnels en relation les uns avec les autres Leur associer les propriétés de leurs homologues réels Stocker les valeurs des propriétés dans un base de données I- Modélisation des objets

6 6 Univers du Discours Schéma Modélise Modèle Langage Utilise concevoir Analyse Base de données Réaliser Concevoir = Modéliser = Abstraire : gommer volontairement certains détails pour se concentrer sur les aspects considérés essentiels Moyen I- Modélisation des objets

7 7 Moyen Un modèle : un ensemble cohérent de concepts (Entity Type, Relationship Type and Attribute) et de contraintes (Key, Cardinality) assorti de notations graphiques (langage) Un processus de conceptualisation : élaboration dun schéma par instanciation de concepts Voiture NomP ….. NumMatricule ….. Possède RT Propriétaire ET NumP Attribut Clé 1.1 Cardinalités I- Modélisation des objets Schéma:

8 8 Moyen De nombreux modèles : Relationnel UML (diagramme de classes) MCD (Merise) NIAM Etc. I- Modélisation des objets Schéma Relationnel: Voiture (NumMatricule,.,. NumP) Propriétaire (NumP, NomP,.,) Propriétaire Possède Voiture NumMatricule …. NumP NomP …. Schéma UML

9 9 Résultat Un schéma conceptuel qui projète la réalité dans le monde de linformation et sert à développer une base de données Schema Conceptuel Schema Interne Correction Acquisition de la connaissance de domaine & spécification du SI Validation Univers du Discours Conceptualisation Transformation Mapping I- Modélisation des objets

10 10 La représentation conceptuelle de la réalité permet le développement de SI qui apportent la connaissance de létat des objets à un instant donné » I- Modélisation des objets Objet : barbamam Propriétés: coquette, aime les bijoux, porte un chignon, solitaire Humain style: /coquet,68ard,../ coiffure: /chignon, rasé./ bijoux: booléen lié à Etat today : barbamam.style = coquette ^ barbamam.bijoux= beaucoup ^ barbamam.coiffure = chignon ^ barbamam.statut = solitaire Ex1

11 11 Exercice 1 Décrire létat de lavion 232 par un ensemble de valeurs conformes au schéma précédent. Donner le schéma de relation correspondant et répondre à la même question. Donner le schéma de classes UML et répondre à la même question. Commentez les trois exemples. En déduire votre définition de létat dun objet dans le cas où il est (a) instance dune ET, (b) instance dune relation et (c) une instance de classe. Représenter les faits suivants par un schéma E/R un schéma relationnel & UML diagramme de classes Le schéma E/R ci-dessous définit un avion par ses attributs propres, sa relation avec les hangars de stationnement et ses passages successifs dans les ateliers de réparation.

12 12 « La réalité change sous limpulsion dévénements qui aboutissent à des changements détat dobjets » Barbapapa et barbamaman tombent amoureux !!!! Objet : barbamam Propriétés: coquette, aime les bijoux, porte un chignon, amoureuse de barbapapa Etat today : barbaman.style = coquette ^ barbamam.bijoux= beaucoup ^ barbamam.coiffure = chignon ^ barbamam.statut = amoureuse ^ barbamam.lié-à = barbapapa II- De la modélisation des objets à celle de leur comportement

13 13 Objets Ont une dimension statique Se Traduit Structure État Objets Et une dimension dynamique Se Traduit Comportement Changement d état Les deux facettes statique et dynamique des objets sont indissociables II- De la modélisation des objets à celle de leur comportement

14 14 Le comportement est modélisé par l'interaction causale des objets, événements et opérations OBJET EVENEMENT OPERATION Les opérations changent l état des objets MODIFIE Les événements déclenchent les opérations DECLENCHE CONSTATE Les changements d états peuvent être événementiels Fait, stimulus Objet Action III- Ontologie Causale

15 15 Lontologie insiste sur la dépendance entre les trois éléments Exemple : C est parce que je repeins la voiture de toto qu elle change de couleur. Constater que la voiture vient d être emboutie (constater un changement d état) permet d identifier l événement survenu. Faire réparer sa voiture est une opération conséquente (déclenchée par) de l événement d accident Ex2 III- Ontologie Causale

16 16 Exercice 2 Ontologie : objet, événement, opération Donner un exemple pris dans la réalité quotidienne de chacun des 3 concepts et de chacune des 3 relations entre concepts.

17 17 LawfulUnlawful LawThing Property Event Stable Unstable Environment State Attribute Transition perceived as has * 1 11 ** 1 1 * * Bunge, M (1977) Treatise on Basic Philosophy: Ontology I. The Furniture of the World, Reidel. Bunge, M (1979) Treatise on Basic Philosophy: Ontology II. A World of Systems, Reidel. composed of III- Ontologie fondatrice de Bunge et son méta-modèle UML

18 18 Ontologie du Réel Monde Réel Monde des artéfacts Ontologie du SI III- Ontologie Causale Transposer lontologie du réel au monde des artéfacts informationnels

19 19 Modéliser les causes et les conséquences des changements détat dobjets informationnels OBJET EVENEMENT OPERATION Les opérations changent l état des objets MODIFIE Les événements déclenchent les opérations DECLENCHE CONSTATE Les changements d états peuvent être événementiels Stimulus initiateur de la transition détat des objets dinformation Objet informationnel représentant un objet réel Opération sur des objets informationnels III- Ontologie Causale Ex3

20 20 Exercice 3 Ontologie : objet, événement, opération Appliquer lontologie et sa causalité, cette fois dans le monde informationnel.

21 21 LawfulUnlawful LawThing Property Event InternalExternal Stable Unstable InputOutput Environment System State Attribute Class Transition perceived as has * * 1 ** 1 1 * * characterized 1..* 1 [Wand Y, Weber R (1989) An ontological evaluation of systems analysis and design methods, in E.D. Falkenberg, P. Lindgreen (Eds), Information System Concepts: An In-depth Analysis, North-Holland, Amsterdam, pp [Rosemann M., Green P. (2002) Developing a meta model for the Bunge-Wand-Weber ontological constructs, Information Systems Journal, Vol 27, pp III- Ontologie Causale de Bunge adaptée au SI

22 22 mon compte Comptes créditeurs Comptes débiteurs mon compte Jai acheté un tableau opération :débiter A125 Le changement d état résulte de l exécution d une opération Le changement détat du compte résulte de l opération A125 de débit 1. Changement d état = résultat d opération III- Ontologie Causale Illustration

23 23 Un changement d état particulier peut être un événement Mon compte est débiteur est un événement qui résulte du constat que le compte a franchi la barre zéro du solde 2. Événement = constatation d un changement d état III- Ontologie Causale Illustration

24 24 Tout événement provoque l exécution d opérations. Un événement est un stimulus. L événement le compte devient débiteur déclenche l opération R Événement = déclencheur dopération III- Ontologie Causale Illustration

25 25 La trilogie Objet, Opération, Événement permet d exprimer la causalité entre la source du changement (événement) et la conséquence (changement d état de l objet par exécution d opération ) Etapes : a. L opération de débit b. provoque le changement d état de mon compte qui devient débiteur et, c. ce changement d état est un événement du type « le compte devient débiteur » Ex4 III- Ontologie Causale: Illustration

26 26 Exercice 4 (1) Représenter de manière graphique en vous inspirant de l exemple du cours, les situations suivantes : la mise à jour du stock dun produit suite à une livraison peut faire passer le stock en rupture, cest à dire en dessous du seuil de réapprovisionnement. Le passage de la quantité en stock en dessous du seuil est un événement dit rupture de stock. La rupture de stock déclenche lémission dun ordre électronique de réapprovisionnement auprès du fournisseur du produit qui est archivé dans le SI.

27 27 Exercice 4 (2) Représenter de manière graphique en vous inspirant de l exemple du cours, les situations suivantes : 72 heures avant le départ dun vol international de retour, la réservation de siège est annulée si le client na pas confirmé sa réservation, à son arrivée à destination et au moins 72 heures avant le départ. Lagence qui a délivré le billet reçoit par une justification de lannulation de la réservation qui est stockée dans le SI.

28 28 A. Événement interne : Changement détat des objets gérés dans le SI Rupture de stock Disponibilité dun exemplaire de livre B. Événement temporel: Changement détat lié à la flèche du temps Demain à 18h Tous les lundis C. Événement externe: Arrivée dun stimulus externe décrit dans un message Arrivée dune commande Arrivée dune demande de réservation Typologie des événements N.B. conforme à Bunge/WW qui considèrent que lhorloge est un objet du SI III- Ontologie Causale:

29 29 Environnement du SI Stimuli Réponses Système dInformation vu comme une machine à états (messages de description dévénements) (messages de changements détats perçus comme événements) Interaction Système/Environnement Les événements externes fonctionnent comme des stimuli qui activent les objets du SI. En retour, les réponses fournies par le SI génèrent des événements dans lenvironnement. Ex5 III- Ontologie Causale:

30 30 Exercice 5 Illustrer un cycle dinteraction dans le cas dune livraison de produits en faisant le parallèle entre ce qui se passe dans le réel et ce qui se passera dans le SI : - identifier les opérations, événements et objets réels - montrer la relation entre les entités réelles et leur représentation dans le SI - identifier les acteurs de lenvironnement qui sont impliqués dans les opérations et événements réels et ceux qui servent dinterfaces avec le SI. Si possible continuer le cycle précédent par un cycle qui le suit.

31 31 Il sappuie sur 3 concepts pour représenter les classes dobjets (c-objet), dopérations (C-opération) et dévénements (c-événement) Il permet de modéliser le comportement dun ensemble dobjets par la causalité Il aboutit à un sous-schéma dynamique, complément du sous schéma statique de description des objets C-OBJET C-OPERATION C-EVENEMENT IV- Le modèle causal

32 32 No m IV- Le modèle causal: C-objet Représente une classe dobjets ayant un comportement Les c-objets sont décrits selon le formalisme retenu dans le projet (relationnel, diagramme de classes, ET&RT, etc…) Sous-Schéma dynamique Voiture (NumMatricule,.,. NumP) Propriétaire (NumP, NomP,.,) Sous-Schéma statique: exemple Propriétair e Voiture et représentation dans le sous-schéma dynamique

33 33 C- o b IV- Le modèle causal: C-opération Représente une classe dopérations agissant sur les objets dun même c-objet et provoquant leurs changements détat Une opération est atomique et nagit que sur un seul objet Sous-Schéma dynamique Nom C-opération Voiture Op1: Insérer Exemple Op2: Changer proprio.

34 34 IV- Le modèle causal: C-événement Représente une classe dévénements. Un événement constate le changement détat dun objet et déclenche une ou plusieurs opérations C1 F1 Facteur de déclenchementCondition de déclenchement C-Objet C-Evénement C-Objet Sous-Schéma dynamique Le C-Evénement est visualisé par un triangle Il est accolé à une forme ronde (c-objet) ce qui représente lassociation constate et, à des flèches représentant les c-opérations déclenchées, ce qui traduit lassociation déclenche le déclenchement peut être conditionnel et/ou itératif La condition et le facteur de déclenchement sont visualisés.

35 35 Exemple: Une disponibilité dexemplaire venant dêtre identifiée permet de faire sortir une demande demprunt de livre de la liste dattente Exemplaire Nouvelle Disponibilité OP3 : réserver Abonne Demande OP1 : satisfaire OP2 : prêter C1 C1 : un abonné en attente du livre dont lexemplaire est devenu disponible et qui peut emprunter cet exemplaire IV- Le modèle causal: C-événement EV1

36 36 IV- Le modèle causal: C-événement UN EVENEMENT EST DECRIT PAR - UN NOM - UN PREDICAT DEFINISSANT SA CONDITION DOCCURRENCE - UN DECLENCHEMENT INCLUANT LES C-OPERATIONS DECLENCHEES, LEURS CONDITIONS DE DECLENCHEMENT ET LEURS FACTEURS DITERATION Nom ( survenance) Prédicat (changt détat): un exemplaire non disponible lest devenu Déclenchement( des c-op ) : OP1 & OP2 et OP3 sous C1 Exemplaire Nouvelle Disponibilité OP3 : réserver AbonneDemande OP1 : satisfaire OP2 : prêter C1 EV1

37 37 Exemple lévénement nouvelle disponibilité constaté sur des objets EXEMPLAIRE se définit par: Pré-condition : OLD.Etat=disponible Post-condition : NEW.Etat = disponible OLD et NEW sont deux mot-clés caractérisant respectivement: létat de lobjet avant et létat après lopération induisant le changement CONDITION D OCCURRENCE ou PREDICAT: Elle permet de savoir si un changement d état d objet est événementiel ou non IV- Le modèle causal: C-événement

38 38 DECLENCHEMENT DECLENCHEMENT: le déclenchement dun opération par un événement peut être CONDITIONNEL : il se produit si et seulement si la condition de déclenchement est vraie Une condition fait référence à l état du système; elle peut être simple (atomique) ou composée (de sous conditions) IV- Le modèle causal: C-événement et transition dynamique Exemplaire Nouvelle Disponibilité OP3 : réserver Abonne Demande OP1 : satisfaire OP2 : prêter C1 C1 : une demande en attente du livre dont lexemplaire est devenu disponible et dont labonné remplit les conditions demprunt (moins de trois emprunts et actif)

39 39 Lensemble des c-opérations déclenchées par un c- évènement constitue une transition dynamique. Elle est un module cohésif et autonome dont lexécution fait passer le système dun état cohérent à un autre état cohérent. La transition est atomique : elle nest pas décomposable et comporte la collection minimale des transformations nécessaires et suffisantes pour réagir logiquement à un événement de ce type. Les opérations nont pas dordre : elles sont exécutables en parallèle IV- Le modèle causal: C-événement et transition dynamique

40 40 QUID de cette modélisation : est elle correcte OUI/NON? et Pourquoi ? Exemplaire Nouvelle Disponibilité Abonne Demande OP1 : satisfaire OP2 : prêter C1 C1 : un abonné en attente du livre dont lexemplaire est devenu disponible et qui peut emprunter cet exemplaire IV- Le modèle causal: C-événement Ex6

41 41 Exercice 6 On vous donne les relations suivantes décrivant linformation que souhaite gérer une compagnie aérienne sur certains de ses composants: Avion ( Nav, Typav, NhVolcourant) EtatAvion (Datet, Nav, etatav) Planning revisions (Numplan, Nav, DateRev) TypeAvion (Typav, Nbstdrev, Libtype) Un avion a un numéro unique (Nav), un type (Typav), un nombre d heures depuis la dernière révision (NhVolcourant) et un état (etatav): en service, hors service, en révision.. Lorsquun avion a un nombre dheures de vol courant supérieur au nombre standard dheures de son type (Nbstdrev) il est programmé pour une révision à latelier. On vous demande de modéliser la situation événementielle qui détecte que lavion doit être envoyé en révision car son nombre dheures vient de dépasser le standard. Son entrée dans le planning de révision est calculée et son état passe alors à en révision. Dessiner le graphe tri-alterné, définir le prédicat et les c-opérations.

42 42 Interne Interne Changement détat défini sur un C-Objet du SI Ex: nouvelle disponibilité Temporel Temporel Changement lié à la flèche du temps; il se produit sur le calendrier (C-Objet prédéfini) Ex: 72h avant le début dun vol Externe Externe A l arrivée dun message venant de lenvironnement du SI : il est induit par le comportement des acteurs extérieurs au SI Ex: à larrivée dune demande de réservation de siège dans un vol IV- Le modèle causal: Typologie des événements

43 43 C-Ob2: Ordre de réapprovisionnement Un article en stock a passé le seuil de rupture EV2 C-Ob1: Article en stock Mail fournisseur OP1 : Réapprovisionner OP2 : Informer fournisseur IV- Le modèle causal: C-Evénement interne Ex7 Un C-évènement interne est défini sur un c-objet du SI Le prédicat dun C-Ev interne se formule par une pré et une post conditions caractérisant létat avant (OLD) et létat après (NEW) le changement de lobjet provoqué par une opération Le C-Ob est C-Ob1: Article en Stock (Nart, Qtstk, Seuil, NomArt) Le prédicat de EV2 : OLD.Qtstk >= Seuil NEW.Qtstk < Seuil

44 44 Exercice 7 On vous demande de contribuer à la modélisation dun système de gestion des caravanes transportant du matériel à travers le désert. Les caravanes utilisent des chameaux qui leur sont affectés en fonction des besoins; le reste du temps les chameaux sont en stock! Chameau (Num, Nom, Etat, propriétaire) On vous demande de modéliser les deux situations événementielles suivantes: Il y a rupture du stock de chameaux lorsque le nombre de chameaux disponibles vient de passer à six. Il y a surplus de stock de chameaux lorsque le nombre de chameaux disponibles est de trente. Un événement du premier type provoque lenvoi dun bon dachat au fournisseur de chameaux préféré de lorganisme. Un événement du deuxième type émet un ordre de mise en vente de chameaux aux enchères sur le Web. La définition que vous devez faire pour chaque événement doit comporter : - Le graphe tri-alterné - La définition du prédicat, - La description des C-Ops et celle des C-Objets correspondants (manquants)

45 45 Un évènement temporel est défini par référence a un c-objet temporel prédéfini : le calendrier Le prédicat dun événement temporel est une assertion temporelle telle que : chaque jour, chaque 25 du mois, etc.. IV- Le modèle causal: C-événement temporel F2 EV2 OP1 : Annuler : Mettre EtatDem à annulée) Demande Échéance demandes en attente Prédicat : chaque jour Calendrier C-ob prédéfini : calendrier C-Ev temporel

46 46 DECLENCHEMENT DECLENCHEMENT: le déclenchement dun opération par un événement peut être ITERATIF: il se produit sur une collection dobjets défini par le facteur de déclenchement. IV- Le modèle causal: C-événement et déclenchement F2 EV2 OP1 : Annuler : Mettre EtatDem à annulée) Demande Échéance demandes en attente Prédicat : chaque jour Le facteur est une collection structurée de tuples de données F2 {NumDem} Il se calcule dynamiquement au moment où lévénement se produit par une formule : Select NumDem from Demande Where EtatDem = en attente AND DateDem = date du jour – 21jours Ex8

47 47 Exercice 8 Modéliser la situation suivante : Une fois par an, au début de lannée (par exemple, le 5 Janvier à 18heures), après la mise à jour des salaires des employés de la société EMSI, le SI doit marquer les employés qui gagnent plus que leur chef de service. Employé( NumEmp, NomEmp, AdrEmp, Sal, Numchef, Marque) NumChef est un numéro demployé (NumEmp); Marque est un booléen (gagne + ou – que le chef) La modélisation doit comporter : -Le graphe tri-alterné -La définition prédicat du c-événement, -Celle des C-Op déclenchées et, -Celle du facteur de déclenchement : (structure de données et procédure de calcul des tuples du facteur par un SELECT)

48 48 C-Évènement temporel en temps absolu Demain à 17 heures Pendant { } Après 18 heures aujourdhui Chaque 25ème jour dun mois Par intervalle ; par semi-intervalle ; périodique C-Evenement temporel en temps relatif Pred ev1 : 7 jours après EV2.Date-occurrence Pred ev2 : 8 jours avant EV3.Date-occurrence. M3. Debdemrésa EV3 : une demande arrive! C-Événement complexe Pred ev4 : 1 mois après EV1.Date-occurrence (laccord du prêt)chaque 23ème jour du mois, pendant 2 ans Le modèle dynamique causalLe modèle dynamique causal I. Concepts du modèle C. C-Événement Typologies d ÉvénementsI. Concepts du modèleC. C-Événement IV- Le modèle causal: Typologie des Cevts temporels

49 49 OP10 :Annuler / Mettre État de Demande à "Annulée"/ F2 : { demandes en attente qui sont "aujourd'hui" à 3 semaines de debdemrésa} F2 EV2 OP10 : Annuler Etat-Demande Chaque jour Exemple des réservations IV- Le modèle causal: C-événement temporel (absolu) EV2 est en temps absolu

50 50 OP10 :Annuler / Met État de Demande à "Annulée"/ C4 : La demande est toujours en attente EV2 3 semaines avant debdemrésa C4 OP10 : Annuler Etat-Demande EV2 est relatif à EV3 Exemple des réservations Ex9 IV- Le modèle causal: C-événement temporel (relatif)

51 51 Exercice 9 Modéliser (a) par un C-Ev temporel relatif et (b) par un C-Ev temporel absolu la règle suivante : - la cotisation dabonnement à une vidéothèque est valable un an. - Au bout dun an et un jour, un abonné actif est suspendu sil na pas payé sa nouvelle cotisation. - Un abonné actif peut faire des emprunts à la borne de distribution de DVD tandis que les abonnés suspendus nen auront pas le droit. On admettra que labonnement (comme le ré abonnement) est représenté par un C-Ev EV1 :Un abonné sabonne.

52 52 IV- Le modèle causal: C-Evénement externe Un évènement externe traduit l interaction du système avec son environnement. Il permet de prendre en compte les changements du monde extérieur que le SI doit connaître car ils affectent les états de ses objets Un événement externe constate larrivée dun message dinformation émis par un acteur extérieur M1 Acteur (un rôle inter-agissant avec les sI) Evénement externe (constate larrivée dun message) Message (Forme ronde avec double cercle)

53 53 IV- Le modèle causal: C-Evénement externe Le message M1 vient de lenvironnement du SI et donne linformation nécessaire à la reconnaissance dun événement que le SI doit gérer Il est émis par un acteur de lenvironnement qui a observé le fait événementiel Le prédicat du c-événement est la constatation de larrivée dun nouveau message Le déclenchement est conforme à tout événement Demande d'emprunt Demande Prêt Exemplaire OP1 : créer- demande OP2 : accorder-prêt C1 M1 Arrivée demande d'emprunt OP3 : prêter Abonné C1 : l'abonné est à jour de cotisation,il a moins de 3 emprunts en cours et il y a un exemplaire de livre disponible Exemple de larrivée dune demande demprunt de livre émise par un abonné de la bibliothèque

54 54 Les interactions entre le SI et son Environnement opérationnel sont basés sur des envois/réceptions de messages Environnement du SI dans lequel il opère Stimuli Réponses SI vu comme une machine à états (messages de description dévénements) (messages de changements détats perçus comme événements) IV- Le modèle causal: Interactions SI et Monde Réel La communication SI - Environnement par message est un choix Elle fonctionne dans les deux sens : Environnement vers SI et Si vers environnement Le message Environnement/SI donne linformation nécessaire au fait qui sest produit en réel et auquel le SI doit réagir Le message SI/Environnement informe lacteur concerné par la décision/action du SI

55 55 Titre Auteurs Auteur Nom IPrénom NumAbonné M1 Ensemble ou liste Agrégat Un message est décrit par agrégation et/ou liste den semble de champs Le prédicat de lévénement externe donne les conditions de validité des champs du message M1: { Titre : char; Auteurs : list-of ({nom: char; iprénom : char}); NumAbonné : entier } Prédicat : Abonne.NumAB =M1.NumAbonné IV- Le modèle causal: message C-Evt externe Ex10

56 56 Exercice 10 Modéliser la situation suivante relative à lanalyse dune demande demprunt de livre faite par un abonné dune bibliothèque : -la demande demprunt dun livre par un abonné de la bibliothèque nest acceptable que si labonné est dans létat actif et si son nombre demprunts est inférieur à trois. -la demande est refusée si labonné nest pas en situation demprunter, cest-à-dire sil est suspendu ou exclu. - une demande acceptable est mise en attente sil ny a pas dexemplaire du livre disponible à cet instant. La modélisation doit comporter : -la définition (partielle) des C-Ob concernés, -celle du C-Ev EV1 déclencheur, -celle des C-Op relatives à lacceptation, la mise en attente et le refus de la demande qui sont partie de la transition dynamique déclenchée par EV1 -Celle des conditions de déclenchement qui sont complexes et doivent être décomposées composition de conditions atomiques

57 57 Distinguer clairement : Etat Changement détat Evènement Processus causal versus Processus téléologique ÉvénementsObjets Déclenche Modifie Ont des changements détat qui sont des Opérations IV- Le modèle causal: Retour sur la causalité

58 58 V. Schéma dynamique Graphe tri-alterné Le graphe tri-alterné regroupe toutes les transitions dynamiques dans un même graphe. Il permet de visualiser les événements externes, leurs impacts sur les objets du SI et les événements internes résultants. Il montre les événements temporels auxquels le système réagit. Il est un instrument puissant de représentation synthétique du comportement attendu du système Le modèle dynamique causalLe modèle dynamique causal IV. Schéma dynamiqueIV. Schéma dynamique

59 59 OB4 C1 OB5 M1M2 F1 OB2 OB1 OB3 EV2 EV1 M3 F2 EV3 V. Schéma dynamique Graphe tri-alterné C-Ev temporel EV4 C-Ev externe C-Ev interne Interaction SI-environnement Interaction Environnement-SI C1

60 60 Exercice 11 (1) Lapplication centralisée de réservations de chambres d'hôtel concerne la région alpine qui englobe plusieurs stations ayant chacune plusieurs hôtels. Les hôtels ont déjà fait lobjet dune codification qui devra être maintenue dans lapplication automatisée. Un code dhôtel est unique pour toute la région. Les chambres devront être référencées par leurs numéros. Toute personne désireuse de faire une réservation peut téléphoner afin de réserver des chambres; l'opérateur chargé de la réservation lui demande plusieurs renseignements : nom, prénom, adresse, numéro de téléphone, numéro de carte de crédit, type carte, date dexpiration (sil nest pas déjà client) et diverses indications sur la demande : la période de réservation, le nombre de chambres, la catégorie d'hôtel et la station désirée. Il affecte à chaque demande un numéro d'ordre. L'opérateur demande à lapplication de vérifier si la demande peut-être satisfaite ; s'il n'y a pas de possibilité de la satisfaire, il sollicite le demandeur pour formuler éventuellement une nouvelle demande ou lui suggère de mettre sa demande en attente. S'il est possible de satisfaire la demande, il y a introduction éventuelle d'un nouveau client dans le SI et génération d'une réservation qui comporte tous les renseignements permettant denvoyer une lettre de confirmation au client. Les annulations de réservation sont acceptées sans contrepartie financière si elles parviennent au système de réservation au moins une semaine avant le début de la réservation. Sinon, 75% de la réservation est exigé du client et sont automatiquement débités par paiement au moyen de la carte bancaire. Chaque hôtel devra être décrit par au moins son nom, son numéro, son adresse, la station à laquelle il appartient, sa catégorie, le nombre de chambres disponibles, le prix unitaire de chaque chambre (prix haute saison, prix basse saison).

61 61 Exercice 11 (2) On vous demande de construire et de commenter le schéma conceptuel de cette application, comprenant le sous-schéma statique et le sous-schéma dynamique. Le sous schéma statique peut être modélisé avec E/R ou UML (diagramme de classes) Le sous-schéma dynamique est un diagramme causal commenté. Vous pouvez reprendre la solution élaborée lan passé pour le schéma statique et donc poursuivre par lélaboration du sous-schéma dynamique c-événement par c-événement.

62 62 EV3 OP7 : Emprunter OP5 : initialiser OP6 : emprunts Comptabiliser M3 PRET ABONNE DISQUE Un abonné emprunte un disque Message de demande demprunt dun disque C2 C3 Nom de lEvénement : Un abonné emprunte un disque Représentation graphique de la transition dynamique : Commentaire : Un événement du type EV3 "Un abonné emprunte un disque" se produit lorsque labonné choisit un DVD et déclare son intention demprunt. Si labonné est actif et sil a moins de 5 emprunts en cours, le prêt est enregistré, lemprunt est comptabilisé pour labonné et létat du disque est mis à "prêté ". Plus précisément : Si L abonné est actif (condition C2) et il a moins de 5 prêts en cours (condition C3) alors : - créer un prêt comme occurrence du C-Objet PRET et renseigner la date et heure de début du prêt (InstantPret) et la référence du disque prêté (IdDisque), (C-Opération OP5) (a) comptabiliser un prêt supplémentaire dans lattribut NbPretEnCours du C-Objet ABONNE (C-Opération OP6) (b) enregistrer lemprunt du DVD par modification de lattribut EtatDisque du C-Objet DISQUE qui prend la valeur "prêté " (C- Opération OP7). V. Schéma dynamique Documentation

63 63 Message M3 : { Numéro Abonné: Entier IdDisque: { NuméroFilm: Entier;NuméroDisque: Entier;}; } Prédicat : Il existe dans le C-Objet ABONNE un abonné ayant lattribut NumeroAbonne = MESSAGE.NumeroAbonne Il existe dans le C-Objet DISQUE un disque ayant comme identifiant le champ MESSAGE.IdDisque l attribut EtatDisque = « Disponible » C-Opérations : OP5 : Créer un prêt dans PRET avec - NumeroAbonne = Message.NumeroAbonne - InstantPret = InstantCourant - NumeroFilm = Message.NumeroFilm - NumeroDisque=Message.NumeroDisque OP6 : Incrémenter le nombre de prêts en cours de labonné dans ABONNE avec - NumeroAbonne = Message.NumeroAbonne - NbPretEnCours = NbPretEnCours+1 OP7 : Mettre à jour l état du Disque dans DISQUE avec - NumeroFilm = Message.IdDisque.NumeroFilm - NumeroDisque= Message.IdDisque.NumeroDisque - EtatDisque = «prété» Conditions de déclenchement : - Condition C2 : Lattribut EtatAbonne relatif à labonné du message est égal à « suspendu » - Condition C3 : Lattribut NbPretEnCours relatif à labonné mentionné dans le message < 5 V. Schéma dynamique Documentation

64 64 Exercice 12 On vous demande de documenter au moins une transition dynamique du sous-schéma dynamique.du cas des réservations; On recommande de prendre le cévénement EV1 arrivée dune demande de réservation et si possible le cévénement EV2 un client annule sa réservation.

65 65 Identifier C-ev externe ou temporel C1 Construire transition dynamique C2 Identifier C-ev interne C4 4 étapes C1, C2, C3 et C4 répétées autant de fois quon ne découvre un C-Ev externe ou temporel Jusquà ce que tous les C-Ev soient identifiés * V. Schéma dynamique Méthode événementielle de construction Une démarche dirigée par les événements qui conduit à construire en parallèle le sous-schéma statique et le sous-schéma dynamique mais en partant des événements et de leur modélisation Construire fragment statique C3

66 66 C2 : Construire transition dynamique 1- Identifier les cas de sortie de la transition les associer à des C- Objets et identifier les C-Opérations associées 2- Vérifier si les C-Objets existent dans le schéma statique sinon prendre mesure corrective 3- Identifier les conditions de déclenchement 4- Déterminer si les déclenchements sont itératifs et si oui identifier les facteurs 5- Ajouter les C-Opérations concomitantes des précédentes et procéder comme précédemment pour 2, 3, 4) 6- Vérifier la complétude de la transition (pas doubli des conséquences du C-Ev) et vérifier sa cohérence (appliquer les règles de vérification) Le modèle dynamique causalLe modèle dynamique causal IV. Vérification et validation B. Suggestions de contrôles pratiquesIV. Vérification et validation Ex13 V. Schéma dynamique heuristique méthodologique

67 67 Exercice 13 (1) Il sagit dun cas de gestion de prêts bancaires. Lensemble des règles de gestion en vigueur dans lorganisation pour le SI à développer est présenté dans le texte ci-dessous. Ces règles doivent être considérées comme les exigences à légard du système (cahier des charges). Une banque prête de largent à ses clients avec les modalités dattribution et de remboursement suivantes : Attribution des prêts : un client ne peut avoir plus dun prêt à la fois. Les prêts sont accordés aux clients ayant fait la demande seulement si le client a un revenu mensuel régulier géré par la banque et si le client na pas été suspendu au cours dun prêt précédent -voir ci après). Laccord définitif du prêt fixant le montant, la durée et le taux est décidé par un responsable de la banque après un délai denviron un mois. Remboursement : Le remboursement réel du prêt est à la discrétion du client. Celui-ci peut effectuer des versements dune somme inférieure ou supérieure à la mensualité théorique (menstheo) à nimporte quel moment et pas nécessairement à la date dexigibilité mensuelle fixée à lattribution du prêt. En revanche, chaque mois, le jour du mois qui correspond au jour dexigibilité du prêt, la banque effectue un contrôle et Détermine des actions correctrices si nécessaire. La banque compare la somme totale effectivement remboursée TotRemb à la somme théorique TotTheo (calculée sur la base dun remboursement régulier). Révision du prêt : lorsque TotRemb>= TotTheo + 3*menstheo, le prêt est révisé. On recalcule sa nouvelle durée et son nouveau montant mais au même taux. Il sagit dune version nouvelle du même prêt. Pénalité sur le prêt : lorsque TotRemb< TotTheo - 3*menstheo, le prêt est pénalisé (une taxe est appliquée). Le montant de la taxe est proportionnel à la somme due. Un client ayant une pénalité impayée à léchéance est suspendu. Lors dun versement du client, la taxe est acquittée en priorité. La taxe doit être acquittée en une seule fois. Un client ayant un prêt en cours en situation régulière est dit actif. Un client nayant pas encore de prêt ou plus de prêt en cours est dit non-actif. Lorsquun client a un prêt en cours et une taxe non acquittée, il est dit suspendu. Un prêt est soldé lorsque le client a remboursé la somme due+ les intérêts Échéance normale : lorsque le prêt à léchéance est dans la fourchette, le prêt suit son cours et aucune action nest entreprise par la banque.

68 68 Exercice 13 (2) On vous demande de construire et de commenter le schéma conceptuel de cette application, comprenant le sous-schéma statique et le sous-schéma dynamique. Le sous schéma statique peut être modélisé avec E/R ou UML (diagramme de classes) Le sous-schéma dynamique est un diagramme causal commenté. Pour expérimenter une autre façon de concevoir, on vous suggère une démarche dirigée par les événements qui se schématise ainsi: 1- construire simultanément dans la même itération, une transition dynamique (c-événement, c-opérations, conditions, c-objets ) et la partie du sous-schéma statique correspondant aux c-objets identifiés par la modélisation de la transition 2- recommencer létape 1 tant quil y a un c-événement à modéliser Présenter le résultat itération par itération Pour chaque itération : -Présenter le graphe tri-alterné -Présenter le diagramme de classes associé (ou lextension du diagramme déjà construit) -Décrire le prédicat du c-evt, les c-opérations, le message (sil y en a un), les conditions et les facteurs de déclenchement (si ] )

69 69 Vérifier la complétude de la description du cycle de vie de chaque objet de son évènement de naissance a son événement de mort Utiliser le graphe de transition détats des C- classes comme support de description du cycle de vie Vérifier que toutes les transitions du graphe sont bien représentées par des C-Opérations déclenchées par des C-Évènements du schéma dynamique V. Schéma dynamique contrôle de complétude Contrôle de cycle de vie

70 70 Exemple de la c-classe Demande du cas des réservations : 1-Construire le graphe du cycle de vie Attente OK Annulée État de non existence Mettre en Attente Accepter Annuler Archiver V. Schéma dynamique contrôle de complétude Contrôle de cycle de vie

71 71 2 : labeller les arcs par des couples 3- identifier les c-ev et c-op manquantes Attente OK Annulée État de non existence EV1, Mettre en Attente EV1, Accepter EV3, Accepter EV4', Annuler EV4, Annuler EV1 : Arrivée demande EV4 : 3 semaines avant debdemres EV3 : Les disponibilités EV4 : le demandeur annule augmentent ? ? V. Schéma dynamique contrôle de complétude Contrôle de cycle de vie

72 72 Exemple du cas bibliothèque Les demandes peuvent être mises en attente mais elles doivent pouvoir sortir de cet état. Ceci survient lorsquun exemplaire de livre devient disponible. Il peut alors être réservé a labonne qui lattend et peut venir le retirer a la bibliothèque dans la semaine qui suit Modifier-état Exemplaire Nouvelle disponibilité Demande Arrivée demande RelancerMettre en attente C1 C3 Contrôle par les états transitoires V. Schéma dynamique contrôle de complétude

73 73 Exercice 14 On vous demande dappliquer les contrôles de complétude au cas des prêts bancaires. Déterminer les C-événements manquants et compléter le schéma conceptuel

74 74 VI. Expression dans les notations UML A. Cas dutilisation B. Diagramme de collaborationDiagramme de collaboration C. Cas des C-évènements temporelsCas des C-évènements temporels D. Cas des C-évènements internesCas des C-évènements internes E. Cas des C-évènements externesCas des C-évènements externes

75 75 Hôtelier Personne Système de Réservations Faire Réservation Annuler Réservation Ajouter Ressources Schéma dynamique par des cas d'utilisation Nom Transition Dynamique Un hôtel vient douvrir Une demande de résa survient! Un client annule sa résa C-EvénementActeur VI. Expression dans les notations UML Un cas par transition dynamique et donc c-evt.

76 76 Une transition dynamique peut être visualisée par un diagramme de collaboration Satisfaire : Exemplaire : Abonné : Exemplaire : Demande Prêter Réserver Collaboration entre objets Message (opération) VI. Expression dans les notations UML

77 77 : Stock : Fournisseur P1:[Stock < seuil minimum] Rupture de stock : Commande 1 :[P1] Passer ordre réapprovisionnement 1 : [P1]Prévenir Fournisseur VI. Expression dans les notations UML Le prédicat est introduit comme une condition de collaboration

78 78 : Horloge : Employé [Predev] * // : Payer Facteur d'itération parallélisme Le modèle dynamique causalLe modèle dynamique causal V. Notations UMLV. Notations UML VI. Expression dans les notations UML Une transition temporelle peut être visualisée par un diagramme de collaboration entre lhorloge et les objets du SI

79 79 : Prêt : Exemplaire : Demande d'emprunt 1 : [PredEV1]Saisir 2 [C1] : Accorder 2 [C1] : Prêter : Demande 2: Créer-demande Numéro d'ordre Dans une transition de c-evt externe: Le message est représenté comme un objet crée L'opération de création du message devient explicite Le prédicat est visualisé comme une condition VI. Expression dans les notations UML

80 80 VII- Entraînement (1/4) Définir le concept d Évènement. Illustrer. Donner et illustrer la typologie des événements. Donner un exemple doccurrence dévénement ? Quest ce que le prédicat dun Évènement? Préciser les trois types de prédicats correspondant à chacun des types dévènement. Comment recommanderiez vous de désigner un Évènement ? Définir une Opération; Donner des exemples.

81 81 VII- Entraînement (2/4) Comment suggéreriez vous de désigner une Opération ? Expliquer comment la représentation graphique du schéma permet de représenter la causalité des concepts Objet, Évènement et Opération. Quest ce quune transition dynamique ? Illustrer. Quelles sont les propriétés attendues dune transition dynamique ? Expliquer pour quelle raison il ny a pas dordre sur les Opérations dune transition dynamique.

82 82 VII- Entraînement (3/4) Quest ce quune condition de déclenchement ? Illustrer. Pourquoi la condition de déclenchement nest elle pas contenue dans lOpération ? Quest ce quun facteur de déclenchement ? Définir et illustrer. Pourquoi le facteur de déclenchement est-il extériorisé ? En quoi la transition atomique est elle atomique ?

83 83 VII-Entraînement (4/4) Quest ce que le graphe de la dynamique tri-alterné ? Pourquoi est-il tri-alterné ? Pensez vous que lon puisse se passer du concept d Événement? Définissez le cycle de vie dun objet en termes dévénements. Appliquez à un objet réel, à un objet informationnel et au SI dans son ensemble. Un évenement peut il déclencher une Opération productrice dun message ? Dans quel cas est ce utile/nécessaire ? Faites la relation avec le fonctionnement de la machine à états dans son environnement.


Télécharger ppt "1 Master M1 MIAGE/SIC Domaine Maths, Info & Applications, Mention Informatique des Organisations, Spécialité MIAGE."

Présentations similaires


Annonces Google