Plan. UML introduction. UML, un aperçu. Plan

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

OCL - Object Constraint Language

IFT2255 : Génie logiciel

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

Générer du code à partir d une description de haut niveau

UML (Paquetage) Unified Modeling Language

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

RTDS G3. Emmanuel Gaudin

Chapitre I : le langage UML et le processus unifié

UML (Diagramme de classes) Unified Modeling Language

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

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

Diagramme de classes

3. UML - Unified Modeling Language Diagrammes statiques

Université de Bangui. Modélisons en UML

Ingénierie des Modèles. Méta-modélisation

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

Description de la formation

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

Développement d un interpréteur OCL pour une machine virtuelle UML.

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

Méthodologies de développement de logiciels de gestion

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)

UML est-il soluble dans les méthodes agiles?

UML. Diagrammes de classes (suite) Delphine Longuet.

Diagrammes de Package, de déploiement et de composants UML

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Génie Logiciel Avancé Cours 3 Le modèle à objets

Cours de Génie Logiciel

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)*

Cours STIM P8 TD 1 Génie Logiciel

Analyse,, Conception des Systèmes Informatiques

Méthodes d évolution de modèle produit dans les systèmes du type PLM

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Comparaison de trois techniques de modélisation de processus: ADONIS, OSSAD et UML

Formation : Modélisation avec UML 2.0 et Mise en pratique

GOL502 Industries de services

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

CC30 Certificat de compétence Conception, développement et animation de sites Web

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

GL Le Génie Logiciel

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

Modélisation UML. Christine Solnon INSA de Lyon - 3IF 1/140.

Cours en ligne Développement Java pour le web

Sommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement

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

Visual Paradigm Contraintes inter-associations

Extensions à la formation. Laurent Pérochon, avril 2008, RMT Modelia, modélisation conceptuelle, formation UML, INRA Castanet Tolosan

Présentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.)

Modélisation de Lignes de Produits en UML *

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Table des matières Sources

Rational Unified Process

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

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Brique BDL Gestion de Projet Logiciel

Besoins utilisateurs. Quelle démarche pour passer des besoins au code? Code. chapitre1 UNIFIED MODELING LANGUAGE. package LogiqueMetier.

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008

Devenez un véritable développeur web en 3 mois!

Développement ebusiness

langage spécifiant un processus sous format XML Business Process Management : gestion de processus.

Traduction des Langages : Le Compilateur Micro Java

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

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

Modèle Entité/Association

UML et les Bases de Données

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Classeur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels

Le Processus Unifié de Rational

Chapitre VI- La validation de la composition.

Catalogue de Pattern pour le CSCW

Université Paris XI Faculté des sciences d Orsay THÈSE. présentée pour l obtention du grade de Docteur en Sciences de l Université Paris-Sud XI Orsay

Vérifier la qualité de vos applications logicielle de manière continue

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

Patrons de Conception (Design Patterns)

Génie Logiciel Orienté Objet UML

Refonte front-office / back-office - Architecture & Conception -

WEB15 IBM Software for Business Process Management. un offre complète et modulaire. Alain DARMON consultant avant-vente BPM

Les diagrammes de modélisation

Génie Logiciel. Rappels. C. Crochepeyre Génie Logiciel Rappels 1

Chapitre 5 Vision Informatique Logique Architectures Applicative et Logicielle

Identification du module

ALGORITHMIQUE ET PROGRAMMATION En C

Génie logiciel (Un aperçu)

Yannick Prié Département Informatique - UFR Sciences et Techniques Université Claude Bernard Lyon

Réussir la modélisation UML des phases amont Techniques de «pré-modélisation» : un pont vers le modèle

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Le Guide Pratique des Processus Métiers

Évaluation et implémentation des langages

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

Structuration des décisions de jurisprudence basée sur une ontologie juridique en langue arabe

ACTIVITÉ DE PROGRAMMATION

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

BI2 : Un profil UML pour les Indicateurs Décisionnels

- Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK

Information utiles. webpage : Google+ : digiusto/

Auto-évaluation Aperçu de l architecture Java EE

Transcription:

Plan UML introduction Aurélien Tabard Département Informatique Université Claude Bernard Lyon 1 2013 Basé sur le cours de Yannick Prié 1. Introduction au langage de modélisation UML points de vue et diagrammes cas d utilisation, analyse, conception, implémentation 2. Le diagramme des cas d utilisations Présentation standard des CU Rédaction de cas d utilisation 3. Notion de classes et objets et leur diagramme introduction aux classes, aux objets notion de relation, de composition et d héritage recherche d un diagramme de classes à partir du cahier des charges 4. Modèle dynamique diagramme de séquences, de collaboration, d état et d activité réalisation des cas d utilisation par les diagrammes de séquences réalisation des cas d utilisation par les diagrammes de collaboration 1 2 Plan UML, un aperçu 1. Introduction au langage de modélisation UML Unified Modeling language Diagrammes en UML 2. Le diagramme des cas d utilisations 3. Notion de classes et objets et leur diagramme 4. Modèle dynamique Joueur -nom :string joue JeuDeDés inclut lance 2 2 Dé -valeur:int :JeuDeDés lancer() : val1=getvaleur() : diagramme de classe, vue statique lancer() : Action_2 d1:dé d2:dé Modèle' val2=getvaleur() : diagramme de séquences, vue dynamique 3 4

Une histoire concise Unified Modeling Language Combinaison de principes à succès modélisation de données, de l activité, objet, en composants Objectif visualiser / spécifier / construire / documenter les artefacts de la conception d une application La norme elle-même méta-modèle et familles de diagrammes Utilisation pas de méthode préconisée pas de spécification technologique 5 6 Pourquoi modéliser Principes de modélisation Un modèle est une simplification de la réalité qui permet de mieux comprendre le système à développer. Il permet : De visualiser le système comme il est ou devrait être ; De valider le modèle vis à vis des clients ; De spécifier les structures de données et le comportement du système ; De fournir un guide pour la construction du système ; De documenter le système et les décisions prises. 1. Le modèle doit être connecté au réel ; 2. Un modèle peut être exprimé avec différents niveaux de précision ; 3. Un simple modèle n est pas suffisant, il y a plusieurs façons de voir un système, par ex. : plan de masse ; vue de face, de coté,... plan des niveaux ; plan électrique ; plan de plomberie ; plan des calculs de construction ; 7 8

Un language Un langage pour : UML n est pas une méthode ; UML est un langage de modélisation objet ; UML a été adopté par toutes les méthodes objet ; UML est dans le domaine public, c est une norme. visualiser chaque symbole graphique a une sémantique. spécifier de manière précise et complète, avec un minimum d ambiguïté. construire les classes, les bases de données peuvent être générées automatiquement. documenter les différents diagrammes, notes, contraintes, exigences seront présentés dans un document. 9 10 Exemple Eléments de modélisation, de visualisation et sémantique Etudiant& suit:&cours& Eléments de visualisation utilisés dans les diagrammes visuels Eléments de modélisation forment le modèle lui-même Syntaxe de UML : comment composer les éléments de modélisation dans les diagrammes Sémantique de UML ce qu ils signifient en termes objets une classe peut avoir des instances une instance a des attributs une instance peut être valeur d attribut etc. 11 12

Eléments de modélisation, de visualisation et sémantique Objectifs d UML Eléments de visualisation un conteneur composé de trois parties le texte «Etudiant» dans la partie du haut, le texte «suit : Cours» dans la partie médiane Eléments de modélisation classes «Etudiant», «Cours» attribut «suit» associé à la classe «Cours» la classe «Etudiant» peut avoir d autres attributs etc. Etudiant& suit:&cours& Montrer les limites d un système et ses fonctions principales (pour les utilisateurs) à l aide des cas d utilisation et des acteurs Illustrer les réalisations de CU à l aide de diagrammes d interaction Modéliser la structure statique d un système à l aide de diagrammes de classes, associations, contraintes Modéliser la dynamique, le comportement des objets à l aide de diagrammes de machines d états Révéler l implantation physique de l architecture avec des diagrammes de composants et de déploiement Possibilité d étendre les fonctionnalités du langage avec des stéréotypes Un langage utilisable par l homme et la machine : permettre la génération automatique de code, et la rétro-ingénierie 13 14 Panorama d UML Modèles, vue et diagrammes UML Structure Statique Implantation classes)/)d objets) packages) Diagrammes)de) composants)) Diagrammes)de) déploiement)) cas)d utilisation) Fonctionnel Système Diagrammes) d activités)) séquences)) Comportement machines)d états)) Dynamique Interactions Diagrammes)de) vue)d ensemble)) des)interactions) timing)) communication)) Structure Modèle abstraction d un système, composée d un ensemble d éléments de modèle ce qui est construit par et ce qui est perçu au travers des diagrammes (par le concepteur, le lecteur) Vue projection d un modèle suivant une perspective qui omet les éléments non pertinents pour cette perspective. Elle se manifeste dans des diagrammes ex. : vue statique, vue fonctionnelle Diagramme présentation graphique d éléments de visualisation représentant des éléments de modèle (graphe) ex. : diagramme de classes, de séquences 15 16

3 modes d utilisation d UML Conception et UML Esquisse conception / communication incomplétude Plan exhaustivité outils bidirectionnels Programmation Model Driven Architecture / UML exécutable implantation automatique réaliste? Focus sur les diagrammes Focus sur le méta-modèle Différentes façons de voir UML : différentes façons de penser la conception l objectif et l efficacité d'un processus de génie logiciel donc essayer de comprendre le point de vue de l auteur pour chaque publication / site sur UML UML n est pas une méthode mais des principes de conception orientée objet sont sous-jacents aux diagrammes aux façons de les présenter donc difficile de présenter uniquement les diagrammes on parlera aussi de méthode, de bonnes pratiques 17 18 UML et la règle Deux types de règles pour l utilisation d UML normatives, comment il faut faire, comité d experts : normes descriptives, comment les gens font, usages, modes : conventions d utilisation peuvent être en contradiction avec la norme (surtout pour UML2) Règles utiliser le sous-ensemble d UML qui vous convient droit de supprimer n importe quel élément d un diagramme droit d utiliser n importe quel élément d un diagramme dans un autre ce qui compte pour les auteurs d UML, c est le méta-modèle, pas les diagrammes liberté de dessiner ce que l on veut surtout en mode esquisse, sur papier ou au tableau Généralité sur les diagrammes 19

Mots-clés (classifiers) Stéréotypes Mots-clés pour regrouper en familles des éléments similaires d un modèle pour ne pas multiplier les symboles différents dans les diagrammes Ornements textuels associés à des éléments du modèle certains mots-clé sont prédéfinis par UML Notation «mot-clé» ex. «abstract» «interface» «à vérifier» Permet d étendre le vocabulaire UML en dérivant des nouveaux éléments à partir d éléments existants par ajout de valeur étiquetées (nom=valeur) Notation : «stéréotype» Certains sont prédéfinis par UML ex. «constructor» «getter» «entity» «boundary» «control» Possibilité d associer une icône forme visuelle déterminée ex. : pour «control» 21 22 Contraintes Commentaires Relation sémantique quelconque concernant un ou plusieurs éléments du modèle définissant des propositions devant être maintenues à Vrai pour garantir la validité du système modélisé Notation : {contrainte} contenu formel ou informel à côté des éléments concernés ex. {frozen}, {jamais détruit!}, {x - y < 10} Certaines sont prédéfinies ex. xor, ordered D autres créées par l utilisateur langue, pseudo-code, OCL Commentaire annotation quelconque associée à un élément du modèle pas de sémantique pour le modèle Notation : note rectangle avec coin replié, lien pointillé avec l élément de visualisation concerné cercle en bout de ligne : plus précis Il existe des mots-clé prédéfinis utilisables dans les commentaires ex. «besoin», «responsabilité» Commentaire* Commentaire* 23 24

Dépendances Diagramme Relation sémantique faible relation d utilisation unidirectionnelle entre deux éléments Notation flèche pointillée de l élément source vers l élément cible, éventuellement stéréotype / mot-clé pour préciser le type de dépendance IHM$ Métier$ «$le$paquetage$ihm$est$dépendant$du$paquetage$métier$»$ Conséquences : Toute modification dans le paquetage Métier peut avoir des conséquences sur le paquetage IHM Une modification dans le paquetage IHM n a au vu de cette dépendance pas de conséquence sur le paquetage métier Diagramme = association d éléments de dessin formes nœuds relation de graphe formes conteneurs texte Sémantique graphique importante graphe contenant / contenu Proximité Liberté pour le reste (positions ) N'importe quelle information peut être supprimée dans un diagramme attention : pas de déduction due à l'absence d'un élément 25 26 Exemple général Auteur" Stéréotype" écrire" Contrainte" " «"gestion"»" auteur=yp" version=2.0" {ordered}" «"persistent"»" Oeuvre" " Ne"signifie"pas"qu il" n y"a"pas"d attributs" 27