Analyse,, Conception des Systèmes Informatiques



Documents pareils
Analyse,, Conception des Systèmes Informatiques

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

Java 7 Les fondamentaux du langage Java

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)

Guichet automatique de banque

CAPTURE DES PROFESSIONNELS

Activité 11 : Nuage de points ou diagramme de dispersion

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.

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

Rational Unified Process

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Fédération de compte entre Votre compte Association (VCA) et l application de dépôt des comptes annuels des associations

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

La nouvelle plateforme communautaire dédiée à l enseignement en ligne

Manuel utilisateur. Version 1.6b

Le gestionnaire de SMS

Module pour la solution e-commerce Magento

Guide d utilisation. Gamme Telium. Application AMEX EMV x

Manuel d utilisateur BilanKine Version 1.5

Genie Logiciel Avancé Projet :Gestion d une chaîne hotelier low cost

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

Le meilleur de l'open source dans votre cyber cafe

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio

SQL Server Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos)

Université de Bangui. Modélisons en UML

EMPRUNTER OU RÉSERVER UN LIVRE NUMÉRIQUE AVEC LA PLATEFORME PRETNUMERIQUE.CA

Manuel d'utilisation La comptabilité dans LOCKimmo

Découpage fonctionnel : Ligne100 V15, Ligne 30 et Start. Découpage fonctionnel Start Pack 100 Pack +

Guide du terminal. Ingenico ICT220, ICT250, IWL220 & IWL250 Commerces de détail et restaurants

Comment Joindre Le Service Client D ItWorks Et Comment Envoyer Un Ticket. pour les clients fidélisés : EUinfo@itworksglobal.

Cours Bases de données

Documentation utilisateur. [EIP] TransLSF

ENVOI EN NOMBRE DE MESSAGES AUDIO

M1if22 - Logiciels éducatifs Conception & rôle de l enseignant

Utiliser une base de données

Projet de Veille Technologique

ENVOI EN NOMBRE DE SMS

Numération et sens du nombre Maternelle à la 3 e année

MANUEL TBI - INTERWRITE

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Chess Arbiter Pro (version Dames) Notice d utilisation

Infolettre #18 : Les graphiques avec Excel 2010

Un Vrai Changement dans la Gestion des Espèces

WHS ProRealTime. édition

Introduction : présentation de la Business Intelligence

PMI PLACE DE MARCHE INTERMINISTERIELLE GUIDE D'UTILISATION UTILISATEUR OPERATEUR ECONOMIQUE

Ce TP consiste à installer, configurer et tester un serveur DNS sous Linux. Serveur open source : bind9 Distribution : Mandriva

Tina: votre terminal de paiement toujours disponible

Créer une trace, obtenir son fichier gpx et sa carte Ou Afficher un fichier trace GPX

Utilisation avancée de SugarCRM Version Professional 6.5

Cliquez sur le lien «Vous n'avez pas d'identifiant Adobe?» afin de vous créer un identifiant Adobe.

GUIDE POUR LES NOUVEAUX UTILISATEURS SYSTÈME DE SUIVI DES PRODUITS DE BASE

Landesk Service Desk

Le progiciel des sociétés de services aux professionnels

Manuel d'utilisation. Ticket Center Manuel d'utilisation. Ticket Center 2: mai AdNovum Informatik AG. Mis en circulation

Fiches d aide à l utilisation

Table des matières Sources

Préparation à l installation d Active Directory

RAPPORT DE CONCEPTION UML :

La version 3.0 de Corman S

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Un ordonnanceur stupide

UML : Unified Modeling Language

Procédure d utilisation de la fonction TELETRANSMISSION

Publier dans la Base Documentaire

Planifier et contrôler un projet avec Microsoft Project

Module 3. Création d objets utilisateur et ordinateur AD DS

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Fonctions linéaires et affines. 1 Fonctions linéaires. 1.1 Vocabulaire. 1.2 Représentation graphique. 3eme

Manuel d utilisation pour la plateforme BeExcellent MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT

0DWKpPDWLTXHVGHO DUJHQW. édité par Mr. G.Moumoulidis (OTE)

Les diagrammes de modélisation

ANALYSE D UN SYSTEME D INFORMATION ET EXTENSION DE

Premiers pas avec NetSupport SCHOOL

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Services bancaires par Internet aux entreprises. Guide pratique pour : Transfert de fichiers Version

MANUEL TBI - STARBOARD

Parcours FOAD Formation EXCEL 2010

Interface PC Vivago Ultra. Pro. Guide d'utilisation

Assistance à distance sous Windows

Solutions en ligne Guide de l utilisateur

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

Module Communication - Messagerie V6. Infostance. Messagerie

Manuel d utilisation du site web de l ONRN

Manuel d utilisation de la messagerie.

Objectif Image Paris Ile de France. Utiliser les locaux. Page 1 sur 8. Modalités d'utilisation des locaux-2014.doc Édition du 03/09/14

TP2 : Client d une BDD SqlServer

Utilisation de l éditeur.

Sage 300 Online Guide de l'utilisateur de Traitement de paiements. Octobre 2013

NOTICE À L USAGE DES DÉBITANTS DE TABAC CHARGÉS DE LA VENTE DES TIMBRES FISCAUX

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon

ApiCrypt - Réception des résultats de biologie

VTigerCRM. CRM : Logiciel de gestion des activités commerciales d'une (petite) entreprise

Formation Comptabilité SAGE L 100 FORMATION SAARI SAGE LIGNE 100 COMPTABILITE

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

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007

Transcription:

Analyse,, Conception des Systèmes Informatiques Diagrammes de cas d utilisation Use Case Sommaire Introduction Acteurs Diagramme de cas d utilisation O. Boissier, SMA/G2I/ENS Mines Saint-Etienne, Olivier.Boissier@emse.fr, Septembre 2004 2 Objectifs Introduction Introduction Comportement du système Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement Développés par Ivar Jacobson. Description du système du point de vue de l utilisateur Pour mettre en évidence les services rendus par le système Pour fixer le périmètre entre le système et son environnement Quelles fonctionnalités doivent être fournies par le système? Les cas d utilisation: Les utilisations 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 autant pour les usagers que pour les concepteurs, pour spécifier les besoins. 4

Acteurs Acteurs Identification (1) Acteurs Les acteurs n appartiennent pas au système, MAIS ils interagissent avec celui-ci. Ils fournissent de l information en entrée. et/ou reçoivent de l information en sortie. Bien identifier les acteurs admissibles, et évaluer comment ils vont interagir avec le système. Les acteurs ne sont pas forcément des personnes. Possibilité de spécialiser des acteurs à partir d autres acteurs. Qui est intéressé par un certain besoin? Par qui le système est utilisé dans l organisation? Qui bénéficiera de l utilisation du système? Qui fournira au système l information, qui l utilisera et qui la maintiendra? Qui va supporter et maintenir le système? Quelque chose est il produit automatiquement par le système? 5 6 Identification (2) Acteurs Représentation Acteurs Acteurs principaux personnes qui utilisent les fonctions principales du système Acteurs secondaires personnes qui effectuent des tâches administratives ou de maintenance Matériel externe dispositifs matériels faisant partie du domaine de l application Autres systèmes 7 Dans UML, l acteur est représenté comme suit : Acteur Étudiant Le nom de l acteur correspond au rôle joué par la personne Un acteur a un nom et si possible une description 8

Classe de scénarios : Modélisant un dialogue entre un acteur et le système Représentant une fonctionnalité offerte par le système. Scénario : instance d un cas d utilisation séquence de transactions entre le système et l acteur qui mène à un résultat tangible pour un acteur. Un use case comprend au moins deux scénarios: un où tout se passe bien, et un autre où il y a problème. L ensemble des cas d utilisation forme toutes les façons dont le système pourra être utilisé. Un Use Case sert a beaucoup de choses : à délimiter le système, à analyser les besoins, à concevoir des interfaces, à distribuer le travail, à préparer les tests. 9 Identification Quelles sont les tâches de chaque acteur? Est-ce qu un acteur crée, enregistre, modifie, enlève ou consulte une information dans le système? Quel cas d utilisation sera responsable de ces tâches? Quels cas d utilisation supportent ou maintiennent le système? 10 Représentation vs.. Scénario Dans UML, le cas d utilisation est représenté par un ovale: Un cas d utilisation est une famille de scénarios (diag. séquence) cas d'utilisation Inscription à des cours Un cas d utilisation peut être décrit par : Un nom unique, des acteurs, des conditions d entrée, des flots d évènements (scénarios), des conditions de sortie, des besoins spécifiques, 11 12

Exemple Nom : Achat ticket Acteur : Passager Condition entrée : Passager devant le distributeur de ticket. Passager a suffisamment d argent pour acheter le ticket. Condition de sortie : Passager a le ticket. Scenario : 1. Passager choisit le nombre de zones traversées. 2. Le distributeur affiche la somme due. 3. Passager insère l argent correspondant à au moins la somme due. 4. Distributeur rend la monnaie. 5. Distributeur donne le ticket. 13 UML définit une relation de communication entre acteur et cas d utilisation. UML définit des types de liens entre les cas d utilisation pour les structurer : La relation. La relation La relation de généralisation 14 Relation de communication Gestionnaire Surveillance stock La participation d un acteur est représentée par une ligne solide entre l acteur et le cas d utilisation. Le sens de la flèche indique l initiateur de l interaction. C est la seule relation possible entre un acteur et les cas d utilisation. 15 Relation TimeOut PlusDeTicke t Annulatio n Passager Achaticke t NoChange Représentation de cas exceptionnels ou rarement appelés, extensions de comportement. Les flots d événements exceptionnels sont factorisés hors de la séquence principale d événements pour gagner en clarté Les Use cases représentant des flots exceptionnels peuvent étendre plus d un use case. Une condition est associée au cas d utilisation étendue. La relation est orientée vers le use case étendu. 16

Relation Relation <<generalize>> Passager AchatTicket NoChange RecueilArgen t AchatCarte Annulation représente un comportement factorisé pour réutilisation (pas parce que c est une exception) Orientation vers le use case utilisé 17 Authenticate with Pwd Authenticate with Card Le use case Authenticate est un use case de haut niveau qui décrit en termes généraux le processus d authentification Authenticate Un cas d utilisation peut préciser un cas d utilisation plus général. La relation est orientée du cas d utilisation spécialisé vers le cas d utilisation général 18 Exemple Place Order «extends» Request Catalog Diagramme Diagramme de cas d utilisation Supply Customer Data Order Product Arrange Payment Selon la demande du client (condition d extension) ActeurA Système cas d utilisation X Pay Cash Pay with card cas d utilisation Y ActeurB Fonctionnalités incluses Use case de haut niveau décrivant les capacités de paiement 19 20

Diagramme Diagramme de cas d utilisation Intérêts Diagramme Usager exprime comprend Analyste Analyse Conception et Implantation Test implante conçoit vérifie Les cas d utilisation servent de continuité Programmeur Architecte Testeur Capture, clarifie et valide les cas d utilisation. Implante les cas d utilisation. Vérifie que les cas d utilisation sont satisfaits. 21 22 Construction Diagramme ATTENTION! Diagramme Dans un premier temps identifier les cas d utilisation et les acteurs. Décrire ensuite un cas d utilisation en écrivant des scénarios sous la forme de texte ainsi que de diagrammes d interactions. Faire un sommaire des scénarios principaux et des cas d utilisation. S assurer finalement de la cohérence. Les cas d utilisation ne sont qu une vue externe et non un contrôleur procédural Le logiciel est souvent structuré d une manière totalement différente des cas d utilisation Les cas d utilisation ne sont qu une certaine vision du logiciel! Ils servent à spécifier les besoins. 23 24

Exo 1 : Exo 2 : L application doit permettre à deux joueurs de faire une partie de Puissance 4. On joue avec un tableau (cf. Fig). Règles du jeu : deux joueurs (jaune et rouge) jouent chacun à leur tour. A chaque coup, ils peuvent mettre une de leurs pièces dans une des colonnes du tableau qui n est pas encore pleine. La pièce tombe dans la case la plus basse qui n est pas encore occupée dans la colonne. Dès qu un joueur a aligné soit horizontalement, verticalement ou en diagonale, 4 de ses pièces, il a gagné. Si aucun joueur n y parvient et que le tableau est rempli, la partie est nulle. 44 Le système gère un ensemble (une petite base de données) de mots de passe et de noms d utilisateur associés à une application. Le système permet d effectuer quatre opérations à savoir la création, la suppression, la modification et la recherche de mots de passe dans la base. La base se présente comme un fichier crypté. Ainsi, celui-ci doit être décrypté et ré-encrypté à chaque traitement. L utilisateur doit fournir la clef correspondante. Celle-ci est donnée une seule fois au lancement de l utilitaire qui la mémorise jusqu à la fin du traitement. 45 Exo 3 : Exo 4 : Gestion des malades dans un cabinet médical Système de gestion de bibliothèque qui doit permettre à des personnes d adhérer, d emprunter des livres. L inscription est annuelle. Une personne non abonnée ne peut pas emprunter de livres. Un abonné peut à tout moment décider de résilier son abonnement. 46 Un médecin doit pouvoir Créer des dossiers médicaux de patients, les modifier, les consulter et les supprimer, Créer des ordonnances, les modifier, les imprimer et les supprimer, Créer et modifier des instructions à l attention du secrétariat, Créer et modifier les informations sur le patient (informations non médicales) Un secrétaire doit pouvoir Créer et modifier les informations sur le patient (informations non médicales), Éditer une feuille de soin, Imprimer un récépissé lors de l encaissement d un paiement, etc. 48

Exo 5 : Lorsque le navigateur crée une applet, la méthode init() est automatiquement appelée. Le développeur place dans cette méthode les instructions d'initialisation et, en particulier, la prise en compte d éventuels paramêtres. Juste après l'appel de init(), la méthode start() est automatiquement appelée. La méthode stop() est également automatiquement appelée quand la page HTML contenant l'applet disparaît (changement de page par exemple) ou quand le navigateur est iconifié. Le fait de stopper une applet suspend son exécution, l'applet est dite alors en sommeil et pourra être réactivée par un appel à sa méthode start(). Les méthodes start() et stop() peuvent être appelées plusieurs fois. La méthode paint(), est sollicitée chaque fois que l'applet est découverte. Elle reçoit en argument un contexte graphique g, instance de classe Graphics, spécialisé dans des opérations de dessin. Lorsque le navigateur arrive en fin de vie (fin de la tâche d'exécution liée à la fermeture par l'utilisateur du navigateur par exemple), la méthode destroy() est automatiquement appelée. C'est ici que le développeur place le code nécessaire à la libération de ressources partageables comme, par exemple, la fermeture de fichiers ou la déconnexion à une base de données. Le garbage collector peut alors faire son office. 49