«Les Diagrammes de Séquence en phase de conception»

Documents pareils
UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

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

Cours de Génie Logiciel

Guichet automatique de banque

GUIDE PRATIQUE déplacements professionnels temporaires en France et à l étranger

Les diagrammes de modélisation

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Table des matières Sources

Le Guide Pratique des Processus Métiers

Le modèle conceptuel des traitements

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Guide utilisateur pour le déblocage de cartes et/ou la modification d un code PIN

Cours STIM P8 TD 1 Génie Logiciel

Projet Active Object

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Epreuve E4 Conception et maintenance de solutions informatiques DESCRIPTION D UNE SITUATION PROFESSIONNELLE

Ingénérie logicielle dirigée par les modèles

TPE Artema IP. Manuel de l'utilisateur

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

Direction des projets

Ordonnancement temps réel

Bien programmer. en Java ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Guide d installation CLX.PayMaker Office (3PC)

Les outils de SEO (Référencement naturel) et les Sites SharePoint Public sur Office 365

4D Server et les licences : fonctionnement et environnement

Nom de l application

DOMAINES RESULTATS. Nb : il ne doit pas y avoir d interdit et que les droits d inscription aient été réglés.

EXERCICE N 9. Base Centrale de pilotage. Notions abordées : Création d objets personnels. Utilisation de fonctions numériques

Séquence de découverte de SparkAngels Logiciel d entraide numérique

SmartCaisse, depuis Prise de Commande IPhone, IPad (2, 3 et mini), IPod et tablette Android SmartCaisse

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

3-4 Etape 4 : Se connecter au SIV ou au SIT grâce au certificat numérique 3-5 Etape 5 : Changer de certificat quand l ancien arrive à expiration

Recharger la carte de votre compteur à budget

Chapitre I : le langage UML et le processus unifié

Suivant les windows, le signal pour indiquer l imprimante par défaut est un petit rond noir ou vers avec un V à l intérieur.

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

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

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

MEGA ITSM Accelerator. Guide de démarrage

Premiers Pas avec OneNote 2013

guide pratique d utilisation d un terminal de paiement électronique EMV, à destination des commerçants CB

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

FORMATION MULTIMÉDIA LVE

Procédure d installation :

Tutoriel pour la configuration des ipad et son «rattachement» au CG

Guide d utilisation rapide. Machine à affranchir CourrierPRO

Bases de données et interfaces Génie logiciel

Manuel utilisateur Netviewer one2one

Les 1 er pas sur. Guide d utilisation

Connexion à SQL server

MEGA ITSM Accelerator. Guide de Démarrage

LES FICHES Domaines. Domaine D1. Travailler dans un environnement numérique

Tina: votre terminal de paiement toujours disponible

TP Protocoles SMTP et POP3 avec Pratiquer l algorithmique

Atelier Travailler vos photos Mars 2015

Guide d installation du serveur vidéo

Comité sectoriel de la sécurité sociale et de la santé Section «Sécurité sociale»

Pour plus d informations consultez nos FAQS sur

RTDS G3. Emmanuel Gaudin

Photoshop Séquence 4 - Créer une image de taille personnalisée taille

Gregory DENIS. Nicolas MENECEUR. pour le California Institute of Technology Ciren 2010

Systèmes d information et bases de données (niveau 1)

GUIDE Excel (version débutante) Version 2013

INTRODUCTION GENERALE...1 LA CONNEXION ODBC :...1. CONNEXION AU TRAVERS D EXCEL(tm)...6. LOGICIEL QUANTUM GIS (Qgis)... 10

INSTALLATION MONOSITE

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

Styler un document sous OpenOffice 4.0

Synthèse d une conception UML temps-réel à partir de diagrammes de séquences

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

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

SOMMAIRE QU EST-CE QU UNE SITUATION DE VENTE POUR LE REFERENTIEL BTS?

Logiciel de gestion de pharmacie

Processus 2D-Doc. Version : 1.1 Date : 16/11/2012 Pôle Convergence AGENCE NATIONALE DES TITRES SECURISÉS. Processus 2D-Doc.

Mode d emploi de la mise à jour du microprogramme

Plug-in Verizon Collaboration pour Microsoft Outlook Guide de l utilisateur

ALLIANZ MODE OPERATOIRE DE MIGRATION D UNE AGENCE WINDOWS Août Version du document : 010

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée.

HYBIRD 120 GE POUR LES NULS

Besoin d aide? Stk Ref. Macareux - 07/2015

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version

Salle Jupiter. Fonctionnement.

Guide de l utilisateur Communauté virtuelle de pratique en gestion intégrée des risques

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Développement spécifique d'un système d information

M55 HD. Manuel Utilisateur

GUIDE D'UTILISATION DU SYSTEME TELEPHONIQUE POLYCOM

Pré-conditions : Evénement déclencheur : le client souhaite un virement. Description du déroulement du cas : Description des Use cases

PROCEDURE SAGE (immo 1000) logiciel de gestion des immobilisations

SCOLARITE Services. Guide pour les Parents et les Elèves. Version Dernière Mise à jour 26 Juin Scolarité services guide de l utilisateur

Une liste des distributeurs Paxton se trouve sur le site Internet -

Mise à jour d avast! et de vos logiciels Ciel

45. CONTRIBUTION MUTUALISEE DES CLUBS AU DEVELOPPEMENT REGIONAL (C.M.C.D.)

TD3 - Facturation avec archivage automatisé

Support de TD ArcGIS Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT e année ingénieur

Guide Utilisateur. Sommaire

GUIDE PRATIQUE CARTE V PAY. particuliers.societegenerale.fr

Mon Mac & Moi : Addendum de 3M/023 Tout sur ipod. Réf : 3M/023A

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Ce manuel a été établi spécialement pour vous. Vous retrouverez ici tout pour pouvoir travailler avec votre terminal de paiement sans problèmes.

Transcription:

Année 2014-2015 Polytech Paris-Sud 4ème année Département Informatique «Les Diagrammes de Séquence en phase de conception» Frédéric VOISIN Département Informatique

Diagrammes de séquence en analyse Ils correspondent à des «diagrammes système» ou des «scenario» le système est vu comme une «boite noire» Échanges de messages entre les acteurs et le système jamais entre acteurs (pas du ressort du système!) ni entre éléments internes au système (conception) Représentation de la chronologie des échanges Pas de boucle, conditionnelle,...! Un chemin principal, des alternatives, des cas d exception, des commentaires, complétés par des descriptions textuelles Usages : Illustrer chaque cas isolément (diagramme très simple) : fournit les paramètres, des détails d'interaction, les exceptions et erreurs... Illustrer les interactions entre cas d utilisation (scenario) : décrit des exemples possibles de la dynamique du système. 2014-2015 2

Un exemple de «Diagramme des Cas d Utilisation» 2014-2015 3

Diagramme «système» (détails d interaction) Secr. Adm. entrerid(nom, NumeroEtu) Choix diplôme? Gestion-LMD Ordonnancement temporel des évènements Système Bancaire entrerdiplome(codediplome) Choix Paiement? cartecb(nocarte, code) Nom, numero etudiant et Code diplome validés debit(nocarte,tarif) retourcb(boolean) Code validé Carte Etudiant «réinscrire administrativement» : cas principal 2014-2015 4

Un exemple de «scenario» 2014-2015 5

Diagrammes de séquence en conception Description diagrammatique des appels de méthodes et de la coopération entre instances et méthodes Permet de donner une vue «en largeur» du déroulement d une opération : Quels sont les objets impliqués? Quelles méthodes de quelles classes sont concernées? D'où viennent les paramètres? etc. utile pour comprendre la mécanique d ensemble et la répartition des responsabilités, avant de rentrer dans le détail Choix à faire sur les appels qu on fait apparaître (omettre certains détails pour améliorer la compréhension) Pas du pseudo-code qui donne une vue «en profondeur» d une opération: donnerait plus de détail sur la façon dont cette méthode procède mais vision limitée à l opération courante, sans compréhension globale des interactions entre objets Utile aussi bien comme outil de «conception» que comme «documentation» 2014-2015 6

Diagrammes de séquence (en conception) objet intervenant dans le diagramme Classe (ou structure) du système message asynchrone : émetteur non bloqué, continue ses traitements Message entre l extérieur et le système activation nom1:acteur nom( ) nom2:classe1 nom ( ) nom3:classe2 Message, opération autoappel() ligne de vie (temps) message synchrone : émetteur bloqué, attend retour 2014-2015 7

Diagrammes de séquence «conception» Diagramme de séquence «orienté conception» pour le traitement d'une commande «UML 2.0, Guide de référence» Rumbaugh & alli, CampusPress 2014-2015 8

Diagrammes de séquence «conception» (2) Opérateurs de contrôle: loop, par, alt, opt, ref (ou sd) Utile si on veut engendrer du code automatiquement Utile pour décrire à assez haut niveau des aspects algorithmiques mais ont tendance à obscurcir les diagrammes et ne traitent pas tous les aspects (ex: gestion des exceptions?) Se demander si cela apporte plus d information que de bruit Se demander si le diagramme reste suffisamment lisible On peut recourir à des commentaires UML pour préciser certains aspects, si besoin (ex: «Pour tous éléments dans monobjet.sacollection» 2014-2015 9

Diagramme de séquence pour «Retrait» Client :LecteurCarte :Ecran :Clavier :IntC GestTrans insere cartelue(no) starttrans(no) OK demandepin() Saisir PIN PINLu(pin) Valider(no, pin) c:= getcompte(no) :Retrait c:compte demandemontant() OK Créer(date) Interaction en dehors du système Interaction entre objets du système Ici: appel synchrone Objet Temporaire 2014-2015 10

Diagramme de séquence pour «Retrait»(2) Client :LecteurCarte :Ecran :Clavier :IntC GestTrans :Retrait c:compte montantlu(val) possible(val) retrait?(val) OK OK setmontant(val) Ici, il manque le détail de l obtention des billets en fonction du stock, l émission d un ticket, la confirmation par l automate que le retrait s est bien déroulé, etc fin() fintrans(no) OK Confirme() majsolde(-val) Destruction d une instance 2014-2015 11

Analyse du diagramme de séquence de «Retrait» Identification des classes nécessaires et de leur visibilité: À partir de InterfaceClient, on a besoin de pouvoir retrouver l instance de GestionnaireTransaction GestionnaireTransaction doit pouvoir retrouver un compte à partir d un numéro de CB. Donc besoin d une méthode statique de recherche dans Compte? On a besoin de créer des instances temporaires de Retrait, mais pas d un lien permanent etc Identification d un certain nombre de méthodes avec leurs paramètres, valeur de retour Choix d une manière d enchaîner les opérations Choix d une répartition des responsabilités entre classes 2014-2015 12

Diagramme de séquence pour «Consulter une note» :InterfaceNote :Set(Epreuve) ep:epreuve Secrétaire consulter :Set(Etudiant) et:etudiant menuep() choixep(n) getepreuve(n) menuet() ep choixet(n2) getetudiant(n2) A qui confie-t-on la responsabilité de consulternote()? Comment est représentée l association Etudiant/Epreuve/Note? et consulternote(ep) consulternote(ep) 2014-2015 13

Exercices pour «Consulter une note» Hypothèses: Il n y a pas de Set(Etudiant), ni de Set(Epreuve) mais une base de données qui stocke les résultats Les cas d utilisation comportent une opération pour calculer la moyenne d une épreuve Les cas d utilisation comportent une opération pour calculer la moyenne d un étudiant Les cas d utilisation comportent les deux opérations précédentes Cela change-t-il quelque chose? Certains choix deviennent-ils meilleurs que d autres? 2014-2015 14