La modélisation des interactions avec UML

Slides:



Advertisements
Présentations similaires
1 Modéliser Ou comment RE-présenter sa connaissance.
Advertisements

Langage de modélisation objet unifié
Génie Logiciel 2 Julie Dugdale
Julie Dugdale Génie Logiciel 2 Julie Dugdale
Unified Modeling Language
Patterns & Anti Patterns
XML - Henry Boccon-Gibod 1 XML, Langage de description La question du choix de formalismes Les entités et leur représentations modalités de modèles et.
Les cas d’utilisation (use cases)
UML - Présentation.
Introduction à UML NFE108 CNAM – LILLE Madame DELECLUSE
UML (Unified Modeling Langage)
Rational Unified Process (RUP)
Langage SysML.
UML : DIAGRAMME DE CAS d’UTILISATION
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
Présentation SysML (Systems Modeling Language ) est basé sur UML et remplace la modélisation de classes et d'objets par la modélisation de blocs pour un.
Modélisation UML Diagrammes de Cas d’utilisation
Diagrammes d’activités
le profil UML en temps réel MARTE
Les Cas d’utilisation.
Analyse et Conception des Systèmes d’Informations
Notes de cours GETI 2351 Séminaire d’informatique
Modélisation des bases de données avec UML
SEG 3601 Élaboration de cas d'utilisation avec UCEd
UML F. Laperruque INRA – SAGA CATI SICPA.
1 Introduction : Management des systèmes dinformation version 1.1 du 13 Novembre 2001 Introduction : Management des systèmes dinformation ENSGI Cours MSI.
Static modeling, Thu G. Falquet, L. Nerima.
Modèle, Méthode et Conception
Modélisation orientée objet UML
Analyse et conception orientée objet
Unified Modeling Langage
TESTING BUSINESS PROCESSES
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Le diagramme d’activités
Portée, arrimages et intervenants Évolution des méthodes
Sensibilisation a la modelisation
Architecture et développement Web
Langage de modélisation graphique de systèmes
Modélisation Objet UML avec Rational Rose 2000
Design Patterns en programmation par objets. Plan  Design patterns –De quoi s’agit-il? –Pourquoi faut-il les utiliser?  Design patterns essentiels 
© Copyright Showeet.com S OCIAL M EDIA T HINKING.
Créer des packages.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
UML : un peu d’histoire H. Lounis.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Introduction au Génie Logiciel
Unified Modeling Langage
Nouvelles Technologies Internet & Mobile
Initiation à la conception des systèmes d'informations
Unified Modeling Language
Evolutions des METHODES INFORMATIQUES
Modélisation orientée objet UML
Chapitre 5 Les diagrammes d’interaction (collaboration et séquence)
2 Tracks Unified Process
Analyse Orientée Objet Cahier de Laboratoire. Sujet : Il s'agit de concevoir un outil de gestion pour une PME qui commercialise des stations météorologiques.
Chapitre 2 Rappels objet et Présentation des diagrammes UML
TDs et corrigés UML- Use Case
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Nouvelles Technologies Internet & Mobile
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
TP D’UML Groupe N° 3.
Conférence 2TUP Stéphane Barthon 03/12/
Diagrammes de comportement Présentation. Diagramme de séquence  Permet de modéliser les envois de messages entre objets chronologiquement.  Modélisation.
USE CASE Présentation. Technique importante ● Pilotage par cas d'utilisation (use case) ● Spécifications des besoins fonctionnels des acteurs ● Unité.
UML Unified Modeling Language. UML : 8 diagrammes 1.Classes 2.Activités 3.Séquences 4.Collaboration 5.Etats transition 6.Cas d’utilisation 7.Composants.
UML : Unified Modeling Language. Plan ● Introduction ● Diagramme d'activité ● Diagramme de classe.
UML : méthode Processus. Introduction(1) ● Cycles ● Spécification par cas d'utilisation ● Identifier les besoins ● Analyse par cas d'utilisation ● Affiner.
Transcription de la présentation:

La modélisation des interactions avec UML

Qu’est-ce qu’UML ? « UML est un langage pour visualiser, spécifier, concevoir et documenter les artefacts d’un système à base logicielle » Langage : lexique (graphique), syntaxe (diagrammes), sémantique Visualiser : représentation graphique Spécification : précis, complet, non-ambigu Construction : translation vers des langages de programmation Documentation : des besoins aux tests

UML (Unified Modeling Language) Largement adopté Historique de UML UML (Unified Modeling Language) Largement adopté Succède à de nombreuses méthodes et notations orientées objets. Booch, Rumbaugh, Jacobson. Standard de l’OMG (Object Management Group) .

Historique d’UML Fin des années 80 : compétition des méthodes d’analyse et de conception OO Booch : particulièrement adaptée au design et à l’implémentation OOSE (Jacobson) : expression des besoins OMT-2 (Rumbaugh) : analyse et applications orientées-données 1994 : Rumbaugh rejoint Booch chez Rational 1995 : Jacobson rejoint Rational 14 novembre 1997 : UML adopté par l’OMG

Les 9 diagrammes de l’UML diagramme de cas d’utilisation diagramme d’activités diagramme de classes diagramme de séquence diagramme de collaboration diagramme d’objets diagramme d’états-transitions diagramme de composants diagramme de déploiement

Axes de modélisation d ’un système Fonctionnel (ce que le système FAIT) diagramme de cas d’utilisation diagramme d’activités Dynamique (comment le système EVOLUE) Statique (ce que le système EST) diagramme de séquence diagramme de collaboration diagramme d’états-transitions diagramme de classes diagramme d’objets diagramme de composants diagramme de déploiement

Diagramme de cas d’utilisation Inventé par Ivar Jacobson. Décrit le comportement du système du point de vue de l’utilisateur. Permet la définition des limites du système. Décrit les relations entre le système et son environnement. Sert essentiellement à spécifier les besoins.

Cas d’utilisation- diagramme Quelles fonctionnalités doivent être fournies par le système ? Les cas d’utilisation: Les fonctions du système (cas d’utilisation) Les limites (les acteurs) Les relations entre les cas et les acteurs (diagramme de cas d’utilisation). Les cas d’utilisation servent à communiquer le système à développer à tous les échelons. Acteur Acteur

Les acteurs Les acteurs ont des rôles Les acteurs ne font pas partie du système Ils interagissent avec celui-ci. En entrée. En sortie. Un acteur peut être un autre système

Identifier les rôles Qui est intéressé ? Qui en bénéficiera ? Qui fournira l’information? Qui l’utilisera? Qui fera les mises à jour ? Qui va supporter et maintenir le système ?

Exemple d’acteurs Adhérent responsable collection Acteur bibliothécaire responsable adhérent

Exemple de diagramme Titulaire stagiaire Operateur Commande Express Valider Utilisateur Vérification mot de passe Nouvelle Commande identification rétinienne Gérer les commandes 1 <<extends>> <<includes>>

Lien d’association Un lien d’association exprime la participation d’un acteur dans un cas d’utilisation. Acheter produit par Internet Client

Lien de généralisation Un lien de généralisation entre deux acteurs: le parent fait un sous-ensemble de l’enfant. Utilisateur Utilisation de la messagerie Gestion de la messagerie Administrateur

Lien de généralisation Lien de généralisation entre deux cas d’utilisation : Le cas parent est un sous-ensemble générique. Identifier utilisateur Vérifier nom/mot Vérifier par de passe corroboration

Lien d’inclusion Le lien d’inclusion identifie un fragment de processus Celui-ci est partagé entre plusieurs cas d’utilisation. Cela permet de réutiliser la description et le comportement. Utilisateur <<include>> Utilisation de la Identifier utilisateur messagerie

Lien d’extension Le lien d’extension signifie qu’un cas d’utilisation de base englobe le comportement d’un autre cas d’utilisation. On utilise le lien d’extension pour modéliser la partie d’un cas d’utilisation facultatif ou alternatif par rapport au cas de base. <<extend>> Passer commande Passer commande urgente

Diagramme de plusieurs cas d’utilisation Système de gestion des commandes Client Suivre commande <<include>> Passer commande Identifier utilisateur <<include>> Acheteur <<extend>> Passer commande Vérifier nom/mot Vérifier par urgente de passe corroboration

Les cas d’utilisation Le cas d’utilisation modélise un ou des scénarios : scénario typique scénario d’exception Chacun représente une fonctionnalité offerte par le système

Un gabarit de scénario Nom : But : Acteurs : Précondition : Postcondition : Cas reliés : Description du scénario:

Description « continue » A cash withdrawal transaction is started from within a session when the customer chooses cash withdrawal from the menu of possible transaction types. The customer chooses a type of account to withdraw from (e.g., checking) from a menu of possible accounts, and then chooses a dollar amount from a menu of possible amounts. The system verifies that it has sufficient money on hand to satisfy the request. If not, it reports a failure to the session, which initiates the Failed Transaction Extension to report the problem. If there is sufficient cash, it sends the customer's card number, PIN, chosen account and amount to the bank, which either approves or disapproves the transaction. If the transaction is approved, the machine dispenses the correct amount of cash and issues a receipt. If the transaction is disapproved due to an incorrect PIN, the Incorrect PIN extension is executed. All other disapprovals are reported to the session, which initiates the Failed Transaction Extension. The bank is notified whether or not an approved transaction was completed in its entirety by the machine; if it is completed then the bank completes debiting the customer's account for the amount. [Bjork, 1998] Problèmes !!!

Séquence Numérotée Withdraw Money 1. The use case begins when the Client inserts an ATM card. The system reads and validates the information on the card. 2. System prompts for PIN. The Client enters PIN. The system validates the PIN. 3. System asks which operation the client wishes to perform. Client selects “Cash withdrawal.” 4. System requests amounts [sic]. Client enters amount. 5. System requests type. Client selects account type (checking, savings, credit). 6. The system communicates with the ATM network to validate account ID,PIN, and availability of the amount requested. 7. The system asks the client whether he or she wants a receipt. This step is performed only if there is paper left to print the receipt. 8. System asks the client to withdraw the card. Client withdraws card. (This is a security measure to ensure that Clients do not leave their cards in the machine.) 9. System dispenses the requested amount of cash. 10. System prints receipt.

Narration Partitionnée Action utilisateur Réponse du système insert card in ATM read card request PIN enter PIN verify PIN display option menu select option display account menu select account prompt for amount enter amount display amount confirm amount return card take card dispense cash if available

Diagramme d’activités Les diagrammes d’activité de UML 2.0 sont typiquement utilisés pour la modélisation des processus d’affaire Pour la modélisation des flux complexes entre acteurs et sous-systèmes Ils sont l’équivalents orientés objets des diagrammes de flux de données (DDF) Des flux de travail (workflow)

Activités et transitions c’est une action réalisée, elle est autonome, elle représente un processus manuel ou l’exécution d’une routine logicielle. Transition : indique le chemin à suivre vers la prochaine activité. Commander produit Recevoir commande Payer Facture

Branchement et fusion Branchement : une seule transition entrante. plusieurs transitions sortantes avec conditions de garde. Transitions mutuellement exclusives. Fusion : plusieurs transitions entrantes. une seule transition sortante. indique la fin d’un branchement conditionnel.

Fourche et joint Fourche : une seule transition entrante plusieurs transitions sortantes enclenche les transitions sortantes en parallèle. Joint : plusieurs transitions entrantes un seule transition sortante la transition sortante est déclenchée lorsque toutes les transitions entrantes ont complété.

Couloirs (Swim lane) permet de montrer les acteurs ou sous-systèmes qui réalisent les activités. permet d’associer des unités organisationnelles, des objets ou des rôles aux activités.

Flots de données entre activités On peut représenter les données : qui sont utilisées par des activités qui sont créées ou modifiées par des activités. Un objet est représenté par un rectangle avec des flèches en traits pointillés entrant et sortant d’une activité. Un objet peut apparaître plusieurs fois dans le même diagramme en ajoutant son état.

Flots de données entre activités

Client Client Ventes Ventes Entrepôt Entrepôt État initial Commander produit Traiter commande Commande [Placée] Sortir articles Commande [en cours] Expédier commande Commande Recevoir commande Facturer client [Traitée] Facture [due] Payer facture Facture [payée] Clôturer commande État final

Références Le guide de l’utilisateur UML Éditions Eyrolles, Traduction de Unified Modeling Language User Guide, Booch, Jacobson, Rumbaugh, 552 pages, 2000. ISBN: 2-212-09103-6 La modélisation objet avec UML 2e édition, Édition Eyrolles, Aussi traduit en anglais Instant UML, Pierre-Alain Muller, 540 pages, 2000. ISBN: 2-212-09122-2 UML par la pratique Études de cas exercices corrigés Édition Eyrolles, Pascal Rogues, 302 pages, 2001. ISBN: 2-212-09280-6

Références UML Distilled : Applying the Standard Object Modeling Language Martin Fowler & Kendall Scott Addison-Wesley, 2000, ISBN 0-201-65783-X. UML : Le tout en poche Martin Fowler & Kendall Scott Traduction de UML Distilled, Campus Press, 2001, ISBN 2-7440-1090-1. Concevoir des applications Web avec UML Jim Conallen Edition Eyrolles, Technologies objet - Solution UML, 2000, 288 pages. ISBN 2-212-09172-9

Références Rumbaugh, J., Jacobson, I., and Booch, E. (1999) The Unified Modeling Language Reference Manual. Reading, MA: Addison-Wesley. Jacobson, I., Christerson, M., Jonsson, P., and Övergaard, G. (1992) Object-Oriented Software Engineering: A Use Case Driven Approach. Reading, MA: Addison-Wesley. Fowler, M. (1997) UML Distilled: Applying the Standard Object Modeling Language. Reading, MA: Addison-Wesley. Constantine, L. L., & Lockwood, L. A. D. (1999) Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design. Boston: Addison-Wesley.

Références Internet www.agilemodeling.com/artifacts/activityDiagram.htm www.rational.com/uml Le site de Rational Un incontournable! uml.free.fr/ UML en français Un bon cours sur UML en français. Nombreux liens et bibliographie. Cours de l’Université Laval