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



Documents pareils
Université de Bangui. Modélisons en UML

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

Google Drive, le cloud de Google

MEDIAplus elearning. version 6.6

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

Edutab. gestion centralisée de tablettes Android

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

MEGA ITSM Accelerator. Guide de démarrage

Organiser vos documents Windows XP

Formation. Module WEB 4.1. Support de cours

Guide utilisateur Archivage intermédiaire Messagerie. Enterprise Connect pour Outlook 2010 EC V 1.0

MEGA ITSM Accelerator. Guide de Démarrage

LO19. Tutorial Rotional Rose. Alexandre Penfornis Thomas Derive

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

Guide d utilisation. Table des matières. Mutualisé : guide utilisation FileZilla

Organiser le menu "Démarrer"

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

SAUVEGARDER SES DONNEES PERSONNELLES

Le Guide Pratique des Processus Métiers

Les différents types de relation entre les tables

F O R M A T I O N S LOTUS NOTES. 8.5 Utilisateurs rue de la Bôle. E U R L. a u c a p i t a l d e

Installation et utilisation du client FirstClass 11

Manuel d utilisation NETexcom

Introduction à Eclipse

OpenOffice.org IMPRESS. Notes de cours Novembre 2005 Version 1.0

HP Data Protector Express Software - Tutoriel 3. Réalisation de votre première sauvegarde et restauration de disque

Table des matières. F. Saint-Germain / S. Carasco Document réalisé avec OpenOffice.org Page 1/13

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Table des matières. 1 À propos de ce manuel Icônes utilisées dans ce manuel Public visé Commentaires...

Cyberclasse L'interface web pas à pas

Module 1 : Tableau de bord Excel * 2010 incl.*

Assistance à distance sous Windows

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur "TIJARA" 1

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

Présentation du tableau blanc interactif Interwrite

Access 2007 FF Access FR FR Base

CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF

Bureau Virtuel Lyon 2

TUTORIEL Qualit Eval. Introduction :

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

COURS WINDEV NUMERO 3

PRISE EN MAIN D UN TABLEUR. Version OPEN OFFICE

TUTORIEL IMPRESS. Ouvrir Impress cocher «présentation vierge», «suivant» cocher «écran», «suivant» cocher «standard», «créer»

Symantec Enterprise Vault

Créer un diaporama avec Open Office. Sommaire

Business Intelligence simple et efficace

MEGA Database Builder. Guide d utilisation

pcon.planner 6 Préparer et présenter une implantation en toute simplicité

GUIDE D UTILISATION DES SERVICES PACKAGES

Dossier I Découverte de Base d Open Office

INFORM :: DEMARRAGE RAPIDE A service by KIS

Architecture d'entreprise : Guide Pratique de l'architecture Logique

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

BIRT (Business Intelligence and Reporting Tools)

Cours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No2 :

I Pourquoi une messagerie?

Les diagrammes de modélisation

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde

Documentation module hosting

Interface PC Vivago Ultra. Pro. Guide d'utilisation

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var - E mail : bij@agasc.fr / Tel : CONSIGNE N 1 :

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

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

Groupe Eyrolles, 2003, ISBN : X

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

MERLIN. Guide de démarrage rapide Gestion de projet professionnelle ProjectWizards GmbH, Melle, Allemagne. Tous droits réservés.

1. Introduction Sauvegardes Hyper-V avec BackupAssist Avantages Fonctionnalités Technologie granulaire...

Création WEB avec DreamweaverMX

Service de Virtualisation de la DSI UJF

Prendre en main le logiciel ActivInspire 1.4

Répondre à un courrier - Transférer un courrier 20

Centre de formation: Collège IBN BASSAM - TEMARA. Ce cours est proposé par le professeur d informatique:

LibreOffice Calc : introduction aux tableaux croisés dynamiques

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Créer une base de données

Diagramme de classes

Calc 2 Avancé. OpenOffice.org. Guide de formation avec exercices et cas pratiques. Philippe Moreau

Publication Assistée par Ordinateur

Chapitre I : le langage UML et le processus unifié

MEMENTO D'UTILISATION Du T.N.I. SmartBoard (Version )

Asset Management Software Client Module. Manuel d utilisation

Tutoriel Prise en Main de la Plateforme MetaTrader 4. Mise à jour : 7/09/

IFT2255 : Génie logiciel

Guide d'utilisation du Serveur USB

Répertorier vos mots de passe avec Passbox : 1) Télécharger le fichier d'installation :

PORTAIL INTERNET DE LA GESTION PUBLIQUE Guide d'utilisation du Portail Internet de la Gestion Publique

Débuter avec OOo Base

UML (Diagramme de classes) Unified Modeling Language

Utilisation du client de messagerie Thunderbird

Netissime. [Sous-titre du document] Charles

SOMMAIRE. Savoir utiliser les services de l'ent Outils collaboratifs

Foire aux Questions Note: Les réponses aux questions correspondent à la version Mise en route

Comment mettre en page votre livre

Freeway 7. Nouvelles fonctionnalités

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

Transcription:

NOTATION UML AVEC RATIONAL ROSE G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh Sommaire 1 GÉNÉRALITES...2 1.1 ENVIRONNEMENT LOGICIEL...2 1.2 LES VUES DU LOGICIEL ROSE...3 1.3 ORGANISATION RECOMMANDÉE...3 2 DIAGRAMME DE CAS D'UTILISATION - USE CASE VIEW -...3 2.1 ETAPES DE LA CRÉATION DU DIAGRAMME DES CAS D'UTILISATION...4 2.2 DIAGRAMME DE CAS D'UTILISATION RESULTANT...6 3 LES SCÉNARIOS USE CASE VIEW -...7 3.1 SCÉNARIO(S) ENREGISTREMENT D'UN PASSAGE...7 3.1.1 Objectif...7 3.1.2 Réalisation...7 3.2 SCÉNARIO ANALYSE DES DONNÉES...9 4 LES DIAGRAMMES DE CLASSES - LOGICAL VIEW -...10 4.1 CRÉATION D'UN DIAGRAMME DE CLASSE ASSOCIÉ À UN PAQUETAGE...10 Création d'un paquetage...10 4.1.2 Définition du diagramme des classes associé au paquetage Enregistrement d'un passage...11 4.1.3 Définition du diagramme des classes associé au paquetage Analyse des données...14 4.2 CONSTRUCTION DU DIAGRAMME DE CLASSES GLOBAL...15 5 LES DIAGRAMMES DE SÉQUENCES DE COLLABORATION -USE CASE VIEW-...16 5.1 LE DIAGRAMME DE SÉQUENCE ASSOCIÉ AU CAS ENREGISTREMENT D'UN PASSAGE...16 5.1.1 Création d'un diagramme de séquence...16 5.1.2 Objectif...16 5.1.3 Composants d'un diagramme de séquence...17 5.1.4 Génération automatique des opérations...17 5.2 LES DIAGRAMMES DE COLLABORATION...18 6 LES DIAGRAMME D ÉTATS -LOGICAL VIEW-...19 6.1 PRINCIPES...19 6.2 RÉSULTATS...21 6.2.1 Diagramme d'état transitions de la classe BOITIERS...21 6.2.2 Diagramme d'état transitions de la classe VISITEURS...21 7 DIAGRAMME DE CLASSES COMPLET...22 8 IMPLANTATION COMPONENT, DEPLOYEMENT VUES -...22 ANNEXE : EXERCICE LES CONTRÔLES D'ACCÈS...23

1 GÉNÉRALITES Définition : atelier de modélisation et de développement de logiciel orienté objet basé sur la notation UML. 1.1 ENVIRONNEMENT LOGICIEL Démarrage : Démarrer/Programmes/Génie Logiciel/Rose/Rose (Entreprise Edition) Vous obtenez l écran suivant : Cet écran se décompose en 3 parties : La partie gauche haute regroupe un référentiel avec notamment les 4 vues de ROSE La partie droite représente l espace de travail La partie gauche basse présente la documentation associée à l élément sélectionné dans le réferentiel. Dans le fonctionnement de ce logiciel, nous retrouvons des principes communs à l'explorateur Windows. En double-cliquant sur un élément du référentiel, nous obtenons des détails dans la partie droite. Nous rappelons que UML repose sur différents diagrammes : Cas d'utilisation Statique : Diagramme de classes Dynamique : scénarios, états, collaborations, séquences, activités Réalisation : Composants, déploiement UML privilégie l'approche par les données et n'impose pas une démarche précise. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 2 sur 23 Rational ROSE

1.2 LES VUES DU LOGICIEL ROSE Le logiciel ROSE propose de concevoir et de développer un logiciel (définition de ces différents diagrammes) selon 4 vues : Use Case View : Cette Vue des cas d'utilisation permet de définir les cas d'utilisation ainsi que les scénarios, les diagrammes de séquence et de collaboration associés. Logical View : Cette vue logique permet de spécifier les diagrammes de classes et les diagrammes d état associés. Component View : Cette vue permet de décrire les diagrammes des composants pour la génération de codes Deployment View : Cette vue permet de spécifier le diagramme de déploiement afin de spécifier l architecture matérielle du système. L'objectif de ce TP est de découvrir l'atelier ROSE tout en proposant une démarche de conception et de développement de logiciels objet (cf. sujet en annexe 1). Plus précisément, nous nous concentrerons sur les 2 premières vues (cas d'utilisation et logique) 1.3 ORGANISATION RECOMMANDÉE Pour faciliter le développement et la maintenance de vos différents diagrammes UML avec l'atelier ROSE, nous vous proposons de respecter l'organisation suivante : Vue Élément Contenu Use Case View Logical View Main Diagramme des cas d'utilisation Pour chaque cas d'utilisation Différents diagrammes associés : Main Pour chaque paquetage associé à un cas d'utilisation Pour chaque classe Scénario (s) Diagramme (s) de séquence Diagramme(s) de collaboration Diagramme de classes complet Diagramme de classes partiel Diagramme d'états 2 DIAGRAMME DE CAS D'UTILISATION - USE CASE VIEW - Dans ROSE (comme dans la notation UML), le diagramme des cas d utilisation est essentiel et nous allons commencer par ce diagramme. Dans un premier temps, nous modélisons le système au travers de l équivalent d un modèle de communication de Merise. Ce premier diagramme présente une vision fonctionnelle du système Dans ce premier modèle, nous trouvons les concepts classiques d UML : Système : futur système informatique (vu aussi comme un processus) Acteur : utilisateur externe (individu ou autre système) Cas : fonction assurée par le système ; activité non détaillée Relations : acteur-cas ou autre cas G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 3 sur 23 Rational ROSE

Notre objectif est la création du diagramme des cas d utilisation suivant : Système Contrôleur porte Enregistrement passage Poste de contrôle Boîtier d'accès Analyse des données Archivage des passages Gestion des données 2.1 ETAPES DE LA CRÉATION DU DIAGRAMME DES CAS D'UTILISATION Etape 1 : création d'un diagramme de cas d utilisation "vide" Dans la partie Référentiel, développer l'arborescence de Use Case View et Double cliquer sur Main (afin d'intégrer le diagramme dans ce fichier). Vous obtenez l écran suivant : Il ne vous reste plus qu à créer le diagramme des cas d'utilisation. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 4 sur 23 Rational ROSE

Etape 2 : Définition des acteurs Nous travaillons dans la fenêtre Main précédemment ouverte (fenêtre de droite). Pour créer un acteur, il faut sélectionner l icône correspondant dans la barre d outils et le placer dans l espace de travail. Pour donner un nom à chaque acteur, il faut double cliquer sur sa représentation et remplir la boite de dialogue suivante : Nom de l'acteur Etape 3 : Définition des cas d'utilisation Sélection de l icône correspondant dans la barre d outils et clic dans l espace de travail. Pour nommer les cas, il faut aussi double-cliquer sur le cas pour obtenir la boîte de dialogue suivante : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 5 sur 23 Rational ROSE

Etape 4 : Définition des relations La norme UML propose 3 types de relations : Relation de déclenchement ou communication entre un acteur et un cas Relation d utilisation ou d extension entre cas Pour traduire ces deux idées, on utilise les icônes suivants : Nommé Unidirectional association pour les relations de déclenchement Nommé Generalized association pour les liens d utilisation et d extension Pour les nommer ou supprimer l'orientation des relations, il suffit de sélectionner les options specification et navigable du menu contextuel de chaque lien (après un clic droit). Etape 5 : Définition du système Le concept de système défini dans la notation UML n'existe pas dans le logiciel ROSE. Pour représenter le concept de système, nous vous proposons d'utiliser le premier bouton de la barre d'outils précédente (Package). Pour lui donner un nom, il suffit d'utiliser l'option spécification du menu contextuel (clic droit) du package. 2.2 DIAGRAMME DE CAS D'UTILISATION RESULTANT Voilà ce que l on obtient ; il faut remarquer que tous les éléments créés précédemment sont visibles dans le référentiel au travers de la vue des cas d utilisation ; il sera possible de les déplacer dans une autre vue si nécessaire. Nous compléterons ultérieurement cette vue des cas d utilisation. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 6 sur 23 Rational ROSE

3 LES SCÉNARIOS USE CASE VIEW - Les scénarios étudient l'interaction entre les acteurs et le système (envoi de messages). On peut associer un scénario à chacun des cas d'utilisation ayant une interaction avec au moins un acteur. Par exemple, il est inutile d'écrire un scénario pour le cas d'utilisation "Archivage des passage" qui repose sur un déclenchement automatique. De même, le cas d'utilisation "Gestion des données" reposant sur une interaction simpliste ne donnera pas lieu à l'écriture d'un scénario. Pour la définition des scénarios, nous utiliserons le formalisme proposé pour les diagrammes de séquence. 3.1 SCÉNARIO(S) ENREGISTREMENT D'UN PASSAGE 3.1.1 Objectif Notre objectif est de réaliser le schéma suivant. Boîtier Système Poste de contrôle Contrôleur Porte Lecture d'une carte (Carte) Allumage voyant vert Ouverture de la porte Lecture d'une carte (Carte) Allumage voyant rouge Accès interdit (InfoContrôle) Il permet de modéliser les deux types de passages (réel ou impossible) 3.1.2 Réalisation Création d'un scénario: Sélection d'un cas d'utilisation (dans la partie Use Case View du référentiel) clic droit + New + Sequence diagram. Nommer le scénario Construction d'un scénario 1. Pour les acteurs, il suffit de faire des "cliquer-déplacer" du référentiel vers l espace de travail (ne pas les créer à nouveau). G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 7 sur 23 Rational ROSE

2. Pour modéliser l'objet système, il suffit de sélectionner l'icône "object" dans la boite d'outils et de le déplacer dans l'espace de travail. Pour lui donner un nom, il suffit de double-cliquer sur cet objet et saisir le nom dans la boite de dialogue ouverte. Icône "Object" 3. Pour créer un lien entre un acteur et un objet ou un lien inter-objets, il faut sélectionner dans la boite de dialogue l élément correspondant (object message) et relier les éléments concernés. Icônes "Message" 4. Pour nommer un message, il suffit de double cliquer dessus pour obtenir la boite de dialogue suivante : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 8 sur 23 Rational ROSE

Schéma final : 3.2 SCÉNARIO ANALYSE DES DONNÉES Sélectionner le cas d'utilisation Analyse des données dans la "use case view" et appliquer les principes définis précédemment afin de construire le scénario suivant : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 9 sur 23 Rational ROSE

4 LES DIAGRAMMES DE CLASSES - LOGICAL VIEW - Maintenant, nous passons à la définition de la vue logique du système. Dans cette vue, nous pouvons définir : un fichier Main, représentant le diagramme de classes global différents paquetages représentant une vision parcellaire de la vue logique du système. Par exemple, nous pouvons définir un paquetage pour chaque cas d utilisation. Ainsi, chaque paquetage contiendra : un diagramme de classes (DCL) les différents composants ce DCL : classes avec leurs propriétés On va commencer par créer et décrire le contenu des différents paquetages puis ensuite décrire le contenu du fichier Main. 4.1 CRÉATION D'UN DIAGRAMME DE CLASSE ASSOCIÉ À UN PAQUETAGE 4.1.1 Création d'un paquetage Principe : Clic droit sur Logical view (dans le référentiel) Option New / Package ; Nommer le paquetage Dans cet exercice, nous allons créer deux paquetages G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 10 sur 23 Rational ROSE

Plus précisément, nous allons construire le diagramme des classes suivant : PERSONNES Nom Prénom N Carte CALENDRIER DateHeure BOITIERS NoBoitier E/S NoPorte NiveauB 1..* PASSAGE Voyant 1..1 ENTITES ACCUEILLE DateFin EMPLOYES Matricule Tél CALENDRIER DateHeure VISITEURS NoVisiteur NoPièce 1..* Appartient BATIMENTS Responsable 0..1 0..* PIECES Paquetage Analyse des données 0..1 SOCIETES Intitulé Adresse Paquetage Enregistrement d'un passage 4.1.2 Définition du diagramme des classes associé au paquetage Enregistrement d'un passage Au sein du paquetage, pour créer un diagramme de classes : clic droit sur le nom du paquetage/new/class diagram puis lui donner un nom. Nous allons uniquement créer la partie statique des classes. Etape 1 : création des classes Sélection de l icône correspondant dans la barre d outils puis clic dans l espace de travail. Pour définir la partie statique des classes, il suffit de double-cliquer (ou clic droit + spécification) sur sa représentation. On peut également double-cliquer sur le nom de la classe présente dans le référentiel. Cette commande ouvre une boite de dialogue dans laquelle : l'onglet général permet de définir le nom de la classe l'onglet Attributes permet de créer les différents attributs ; Pour insérer un nouvel attribut, il faut faire un clic droit sur la partie vide de la nouvelle boite de dialogue + option insert. Pour G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 11 sur 23 Rational ROSE

définir des propriétés complémentaires aux attributs ; il suffit de double-cliquer dessus. Notamment, on peut définir son type, sa valeur initiale et son contrôle d exportation : publique, protégé, privé ou d implantation (cf. page d'écran suivante). Etape 2 : Définition des relations Pour définir une relation : Sélection de l icône correspondant dans la barre d outils et liaison des classes dans la zone de travail. Pour nommer une relation : clic droit sur la relation +spécification Pour mettre des cardinalités : sélection de l extrémité d une relation + clic droit + option multiplicity et sélection des cardinalités Il est possible d orienter une relation de composition ou d association (pour préparer l implantation du système : on impose un sens de lecture de la relation) : sélection de l extrémité du lien + clic droit + sélection ou non de l option Navigable (pour plus de sécurité ; il faut le faire sur les 2 extrémités du lien) Remarques : 1. Si le bouton représentant le lien de composition est absent de la barre d'outils, il suffit d'effectuer les opérations suivantes : Clic droit sur la barre d'outils Sélection de l'option Customize Ajout du bouton recherché 2. Pour l héritage multiple, il faut relier d abord une sous-classe à la super-classe puis les autres sous-classes au lien d héritage précédemment construit. 3. Les associations n-aires ne peuvent pas se représenter avec les composants de base de ROSE. Toutes les associations n-aire (avec n 3) se représenteront par un n association binaire. Afin de différencier la classe d'association des autres classes d'objet, nous créerons un stéréotype G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 12 sur 23 Rational ROSE

spécifique. Notamment, la classe d'association "PASSAGE" possédera les spécifications suivantes : Nom du stéréotype personnel pour les classes d'association n-aire 4. Il est possible de différencier les agrégations des compositions. Pour définir une composition (contrainte d'inclusion plus forte) il suffit de double cliquer sur un lien d'agrégation et définir les options suivantes (By Value) pour les 2 Rôles A et B: G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 13 sur 23 Rational ROSE

Nous obtenons le diagramme de classes suivant : Remarque : Si le nom du stéréotype n'apparaît pas, il est possible de l'afficher en utilisant le menu contextuel associé à la classe d'association (clic droit sur la classe d'association) et en choisissant l'option "Show stereotype" 4.1.3 Définition du diagramme des classes associé au paquetage Analyse des données Principe Création du paquetage (si ce n'est pas déjà) Création du diagramme de classes associé Remarque : Pour toute classe appartenant à différents paquetages, il suffit de les sélectionner dans le référentiel et de les déplacer dans l'espace de travail (Il ne faut surtout pas créer de nouvelles classes). Vous obtenez le schéma suivant : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 14 sur 23 Rational ROSE

4.2 CONSTRUCTION DU DIAGRAMME DE CLASSES GLOBAL La construction du Main de la vue logique va consister à définir la vue globale. Pour ce faire, il suffit de glisser-déposer les différentes classes dans la zone le représentant et les liens inter-classes apparaissent automatiquement. Nous obtenons le schéma suivant : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 15 sur 23 Rational ROSE

5 LES DIAGRAMMES DE SÉQUENCES ET LES DIAGRAMMES DE COLLABORATION -USE CASE VIEW- Rappels de cours Diagramme de séquences : Représentation temporelle des interactions entre objets Représentation de l activation de l objet destinatire Diagramme de collaboration Représentation spatiale des interactions entre objets Extension du diagramme de classe A chaque diagramme de séquences, est associé un diagramme de collaboration et inversement. Nous proposons de commencer par les diagrammes de séquences. Mais il aurait été également possible de commencer par la définition des diagrammes de collaboration. 5.1 LE DIAGRAMME DE SÉQUENCE ASSOCIÉ AU CAS ENREGISTREMENT D'UN PASSAGE 5.1.1 Création d'un diagramme de séquence Principe : Sélection le cas d'utilisation désiré dans la use case view du référentiel Clic droit + New + Sequence diagram Nommer ce diagramme de séquence 5.1.2 Objectif Le diagramme que nous voulons construire est le suivant : I_ENREGISTREMENT PASSAGE :BOITIERS : PERSONNES : ACCUEILLE :PASSAGE AccèsDemander(N Boitier) P_Rechercher(N Carte ) PA_Ajouter(id(BOITIERS),id(PERSONNES) ) G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 16 sur 23 Rational ROSE

5.1.3 Composants d'un diagramme de séquence La création d un diagramme de séquences s effectue comme suit : Pour les acteurs et les classes existantes, il suffit de faire des "cliquer-déplacer" du référentiel vers l espace de travail (ne pas les créer à nouveau). Pour Créer de nouveaux objet dans le diagramme, il suffit de sélectionner l'icône Object dans la barre d'outils et le placer dans l'espace de travail. Il faut double-cliquer pour le nommer. Pour créer un lien entre un acteur et un objet ou un lien inter-objets, il faut sélectionner dans la boite de dialogue l élément correspondant (object message) et relier les éléments concernés. 5.1.4 Génération automatique des opérations Une fois que le lien est créé, par un clic droit, vous obtenez deux options : Spécification pour définir le message associé au lien, New operation pour créer automatiquement une nouvelle opération dans la classe destination du lien Nous vous recommandons d'utiliser l'option New Opération. Principe pour définir des opérations : 1. Sélection du lien + Clic droit + New operation pour obtenir la boite de dialogue suivante ; Avec l'onglet General, vous déterminez le nom de la méthode Avec l'onglet Détail, vous définissez les arguments, leurs types et leurs valeurs par défaut. 2. Une fois que cette nouvelle opération est créée, il suffit de l associer au lien par un nouveau clic droit et en la sélectionnant dans le nouveau menu contextuel. Automatiquement, les classes du diagramme des classes sont mises à jour. Remarque : Si vous associez une opération et un message à un lien, seule l'opération est affichée. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 17 sur 23 Rational ROSE

Vous obtenez le diagramme de séquence suivant : 5.2 LES DIAGRAMMES DE COLLABORATION Pour créer le diagramme de collaboration correspondant à un diagramme de séquences déjà créé, il suffit d aller dans le menu Browse puis option Create collaboration diagram. On obtient le diagramme suivant : Remarque : Pour traduire les groupes d objets : Double clic sur l élément puis sélection de l option Multiple Instances dans la boite de dialogue suivante : G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 18 sur 23 Rational ROSE

6 LES DIAGRAMME D ÉTATS -LOGICAL VIEW- Ces diagrammes permettent de compléter la sémantique de l objet ; ce modèle nous permet de connaître l état de l objet permettant le déclenchement d une méthode. Limite du logiciel : pas de lien entre les méthodes du diagramme d'états et celle des diagrammes de classes et de séquences. Autrement dit, les méthodes présentes dans ces diagrammes ne sont pas automatiquement insérées dans le diagramme des classes. Le Diagramme d états respecte la norme définie par UML. 6.1 PRINCIPES Dans UML, un diagramme d'états est associés à une classe. Aussi, avec ROSE, pour créer un diagramme d'états, il suffit de sélectionner la classe désirée + Clic Droit + State Charts. Pour la création des diagrammes d'état la barre d'outil suivant est affichée. Notamment, les 5 derniers boutons permettent de créer successivement : les états intermédiaires, les états initiaux, les états finaux, les transitions simples, les transitions récursives. Pour définir les propriétés des transitions : sélection de la transition + clic droit +option spécification, pour ouvrir la boite de dialogue suivante, dans laquelle: L onglet Général permet de spécifier l événement L onglet Détail permet de spécifier les conditions et les actions. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 19 sur 23 Rational ROSE

Pour les états, on obtient une boite de dialogue similaire : L onglet Général permet de spécifier le nom de l état de l objet L onglet Detail permet de spécifier les opérations réalisées lorsque l objet est dans un état particulier. Pour insérer une opération : clic droit/option Insert. Par défaut, le mot Entry apparaît. Un double clic sur ce mot permet d ouvrir une nouvelle boîte de dialogue dans laquelle on doit définir le nom de l opération ou de l activité (zone Action) ainsi que son moment d exécution (option When) Nom de l action ou de l activité Entrée Sortie Faire Sur un événement (il faut préciser l événement dans la cellule Event) G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 20 sur 23 Rational ROSE

6.2 RÉSULTATS 6.2.1 Diagramme d'état transitions de la classe BOITIERS Mise en place / B_Ajouter() En attente Introduction carte[ Droits > NiveauB et dates de validité correctes ] / AccèsDemander() Temps[ Délai ] Vert Suppression / B_Supprimer() Temps[ Délai ] Introduction carte[ Droits < NiveauB ou Carte inconnue ] / Accès demander() Rouge Ce nouveau schéma met en évidence qu'il faut ajouter les opérations B_Ajouter(), B_Supprimer dans la classe BOITIERS. L'opération AccésDemander() est déjà présente dans le schéma avec le diagramme de séquences. Pour ce faire, il faut sélectionner la classe BOITIERS dans le référentiel + clic droit + New + Operations. 6.2.2 Diagramme d'état transitions de la classe VISITEURS 1er accueil / V_Ajouter() Répertorié Accueil / Accueillir() Temps[ > 1 an sans visite ] / V_Supprimer() Fin de visite[ Dates de validité dépassées ] En visite Il faudra également ajouter les opérations V_Ajouter, Accueillir(), V_Supprimer() dans la classe VISITEURS. G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 21 sur 23 Rational ROSE

7 DIAGRAMME DE CLASSES COMPLET Après l'application de ces différents diagrammes, nous obtenons le diagramme de classes complet suivant : 8 IMPLANTATION COMPONENT, DEPLOYEMENT VUES - L implantation s effectue autour de 2 vues La vue des composants (Component vue) permet de spécifier l'architecture logicielle via le diagramme de composants La vue de déploiement (Deployement vue) permet de spécifier l'architecture matérielle via le diagramme de déploiement G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 22 sur 23 Rational ROSE

ANNEXE : Exercice les contrôles d'accès Une entreprise vous confie la réalisation d un logiciel permettant un contrôle automatique des accès aux bâtiments ainsi que la détection d anomalies liées aux tentatives de violation d accès. Au delà du filtrage des accès aux bâtiments sensibles, ce logiciel doit éditer un plan d évacuation du personnel en cas d incident grave (ouverture des portes en sortie uniquement, liste des personnes présentes dans chaque pièce, ). Le logiciel doit être installé sur le système informatique situé au poste de contrôle chargé de l accueil et auquel est relié l ensemble des boîtiers. Chaque boîtier est constitué d un lecteur de carte et d un voyant. Principes de fonctionnement des accès Tout employé possède une carte personnelle. Lorsqu il se présente devant une porte sécurisée (en entrée ou en sortie d un bâtiment ou d une pièce), il introduit sa carte dans un lecteur situé à proximité de la porte. Grâce à un système de sas, une seule personne peut franchir une porte sécurisée. Chaque boîtier dispose d un voyant lumineux qui prend la couleur verte (accès autorisé) ou rouge (accès interdit). Le logiciel a la charge de commander ces voyants et d enregistrer tout accès ou tentative d accès. Un passage est autorisé par un boîtier lorsque le niveau d accès du boîtier est inférieur ou égal aux droits attachés à la personne demandant l accès. Dans le cas où une anomalie est détectée (niveau d accès insuffisant, carte inconnue) un message d alerte mentionnant le nom du responsable du bâtiment est transmis au poste de contrôle. Cas particulier des visiteurs Toute personne extérieure à l entreprise (visiteur) reçoit, au poste de contrôle de l entreprise, une carte temporaire ayant les mêmes fonctions que les cartes des employés. Mais cette carte doit toujours être introduite dans un lecteur juste après celle de l hôte ; elle est éditée par le logiciel et doit être restituée en fin de visite au poste de contrôle pour être détruite. Tout visiteur reste répertorié pendant 1 an après sa dernière visite. Les données manipulées Les entrées et les sorties des employés et des visiteurs doivent être enregistrées et accessibles pendant 15 jours ; elles sont ensuite archivées. Une étude d opportunité de cette application, réalisée par une SSII l an passé à la demande de la Direction, a permis d élaborer une ébauche du dictionnaire des données. NOM AdresseSoc Droits IntituléSoc Matricule N Boitier N Carte N Pièce N Porte N Visiteur NiveauB NomPers PrénomPers Responsable Tél Voyant INTITULE Adresse de la société d appartenance du visiteur Nombre correspondant au niveau d accès attaché à une personne Raison sociale de la société d appartenance du visiteur Matricule d un employé N de boîtier N d une carte d entrée N de pièce d identité d un visiteur N porte N de visiteur Nombre correspondant au niveau d accès d un boîtier Nom d un détenteur de carte Prénom d un détenteur de carte Identité du responsable d un bâtiment N de poste téléphonique d un employé Position du voyant G. Pujolle, F. Ravat, C. Soulé Dupuy, G. Zurfluh Page 23 sur 23 Rational ROSE