Langage de Modélisation UML Ecole Supérieure Privée d’ingénierie et de technologies Langage de Modélisation UML Réalisé par : Mohamed Wadii BACCOUCHE Mohamed Khalil BOUHLEL Moez GHARBI année universitaire :2013/2014
PLAN Présentation générale Les diagrammes UML Tableau comparatif Merise/UML
Définitions UML est un langage qui permet de représenter des modèles, mais il ne définit pas le processus d'élaboration des modèles ! UML est une notation, pas une méthode UML est un langage de modélisation objet UML convient pour toutes les méthodes objet Un langage pas une méthode : UML définit des modes de représentation (diagrammes et notations) mais n’impose pas de démarche standardisée. Convient pour toutes les démarches et langages de programmation objet («Unified Modeling Language»). Un langage de modélisation objet permettant de documenter dans des modèles toutes les phases du développement (analyse, conception et implantation). modéliser informatiquement des éléments d'une partie du monde réel en un ensemble d'entités informatiques (objets)
UML les points forts UML est un langage formel et normalisé gain de précision gage de stabilité encourage l'utilisation d'outils UML est un support de communication performant Il cadre l'analyse. Il facilite la compréhension de représentations abstraites complexes. Son caractère polyvalent et sa souplesse en font un langage universel.
Démarche Ensemble de point de vues complémentaires -Des règles de cohérence pour une modélisation non ambiguë -Des vues complémentaires pour un modèle complet Développement par raffinages successifs Des modèles de plus en plus détaillés
Les diagrammes UML Statique: Dynamique Fonctionnelle: UML 2.0 répartition selon trois points de vues Statique: Classes (class diagram) Objets (Object diagram) Composants (Component diagram) Dynamique Etats-Transitions (State Machine diagram) Activité (Activitydiagram) Séquence (Sequencediagram) Collaboration (Collaboration diagram) Fonctionnelle: cas d’utilisation (Use Case diagram)) Un diagramme est un schéma qui permet de donner une représentation graphique d'un système. Fonctionelle : Services rendus par le système Statique : Acteurs et concepts structurant le système Dynamique : Fonctionnement dynamique du système UML 2.0 Paquetage (Package diagram) Structures composites (Composite structure diagram) Global d’interaction (Interaction overview diagram) Temps (Timing diagram)
Cas d’utilisation (Axe fonctionnel) Structurer les besoins des utilisateurs et les objectifs correspondants du système. Préoccuper des cas "réels" des utilisateurs ; ils ne présentent pas de solutions d'implémentation et ne forment pas un inventaire fonctionnel du système. NOTATION Cas d’utilisation Objectif du système, motivé par un besoin d'un (ou plusieurs) acteur(s) Acteur Personne ou composant d’origine d’une interaction avec le système Relation d’utilisation Le cas source contient aussi le comportement décrit dans la cas destination L’axe fonctionnel s’appuie essentiellement sur le diagramme de cas d'utilisation. Ce diagramme permet de décrire les exigences fonctionnelles du système. Il détermine les frontières du système et ses relations avec son environnement. Il est utilisé dans l'étape de capture et de spécification des besoins. Il spécifie un service (une fonctionnalité) rendu par le système à un utilisateur.
Cas d’utilisation (Axe fonctionnel) Etapes à suivre : Comprendre le problème. Identifier les acteurs. Identifier les cas d’utilisations Dresser un premier diagramme de cas d’utilisation Le diagramme est accompagné d ’un texte organisé décrivant le cas d’utilisation et permettant de mettre en évidence les scénarios (flots d’événements). Un scénario est à un CAS D ’UTILISATION, ce qu ’un objet est à sa classe ; la premier instancie le second. La description des cas d’utilisation repose sur la notion de scénario. Un scénario représente un fonctionnement particulier du cas sous la forme d’une séquence de messages échangés entre les acteurs et le système. UML n’impose aucun diagramme pour la description d’un cas d’utilisation, le concepteur peut donc utiliser le type de diagramme qui lui paraît le plus adapté pour représenter des scénarios tout en restant dans la norme … Nous
Cas d’utilisation (Axe fonctionnel) Il faut : 1. établir la traçabilité entre le cahier des charges et le modèle des cas d’utilisations. 2. Expliciter le comportement du système pour chacun des cas d’utilisations par : Une description textuelle Le diagramme est accompagné d ’un texte organisé décrivant le cas d’utilisation et permettant de mettre en évidence les scénarios (flots d’événements). Un scénario est à un CAS D ’UTILISATION, ce qu ’un objet est à sa classe ; la premier instancie le second. La description des cas d’utilisation repose sur la notion de scénario. Un scénario représente un fonctionnement particulier du cas sous la forme d’une séquence de messages échangés entre les acteurs et le système. UML n’impose aucun diagramme pour la description d’un cas d’utilisation, le concepteur peut donc utiliser le type de diagramme qui lui paraît le plus adapté pour représenter des scénarios tout en restant dans la norme … Nous
Cas d’utilisation(Description textuelle) Sommaire d’identification Titre : Réserver une voiture But : ce cas d’utilisation permet à un client internaute de saisir une demande de réservation. Acteurs principale : Client Acteurs secondaire :Système Bancaire Pré-conditions : le parc de véhicules n’est pas vide. Post-conditions :Une demande de réservation a été enregistrée par le système avec toutes les informations nécessaires.
Cas d’utilisation(Description textuelle) description des enchaînements Pré-conditions : Ce qui doit être vérifié avant que le Cas d’utilisation ne commence. Des scénarii : Description pas a pas de la conversation entre le cas d’utilisation et l’utilisateur. On trouve Le scénario nominal, les scénarii alternatifs qui sont les variantes du scénario nominal et les scénarii d’exception qui décrivent les cas d’erreurs. Exceptions : les traitements alternatifs ou d’exception Post-conditions : ce qui est vrai après que le Cas d’utilisation se soit déroulé.
Cas d’utilisation(Description) Compléter la description d’un cas d’utilisation par un diagramme de séquence Système. Le Diagramme de Séquence Système est une version «simplifiée» du diagramme de séquence (de conception). Il est utilisé pour compléter la description textuelle d'un cas d'utilisation par une description graphique. Il permet de décrire, sous forme d’une séquence de messages, les interactions entre les acteurs et le système.
Cas d’utilisation(Description) Compléter la description d’un cas d’utilisation par un diagramme d’activités Le Diagramme d’activités (dans sa version simplifiée) permet également de compléter la description textuelle d'un cas d'utilisation par une description graphique. Contrairement au DSS qui ne décrit qu’un seul scénario, le diagramme d’activités représente tous les scénarios, sous la forme d'un ensemble d'activités (actions) réalisées par le système (pour accomplir l’objectif du cas), avec tous les branchements conditionnels et toutes les boucles possibles. Point de départ Activité Transition
Diagrammes des classes(Axe Statique) Alors que le diagramme de cas d’utilisation montre le système du point de vue des acteurs, le diagramme de classes en montre la structure interne. Il représente une description purement statique du système. Le diagramme de classes permet de décrire les classes d'objets (description structurelle et comportementale) et les relations qui interviennent, dans le cadre du problème posé. 3
Diagrammes des classes(Axe Statique) Alors que le diagramme de cas d’utilisation montre le système du point de vue des acteurs, le diagramme de classes en montre la structure interne. Il représente une description purement statique du système. Le diagramme de classes peut être vu suivant deux niveaux d'abstraction : - Diagramme de classes d'analyse : donne une représentation structurelle des entités manipulées par les utilisateurs. - Diagramme de classes de conception : représente la structure d'un programme, ou les modules d'un programme orienté objet.
Diagrammes des objets(Axe Statique) Le diagramme d'objets sert à illustrer des structures de classes compliquées. Il est utilisé en analyse pour vérifier l'adéquation d'un diagramme de classes à différents cas possibles.
Diagrammes des composants(Axe Statique) Un diagramme de composants montre le découpage du système en unités (logiciels) pouvant être distribuées.
Diagramme de déploiement (Axe Statique) Le diagramme de déploiement représente à la fois : (1) la structure du système informatique qui prend en charge le système logiciel, (2) et la façons dont les composants y sont installés.
Les Diagrammes UML (Axe Dynamique) Diagrammes dynamiques : passerelle entre vision externe et interne. 3
Les Diagrammes d’interaction (Axe Dynamique) Les diagrammes de séquence et de communication sont appelés diagrammes d'interaction. Ils représentent les échanges de messages entre objets du système, dans le cadre d'un fonctionnement particulier (scénario) du système. Ils peuvent être notamment utilisés en conception, pour définir et concevoir les méthodes des classes.
Le Diagramme de Séquence (Axe Dynamique) La construction d'un diagramme de séquence revient à remplacer dans le Diagramme de Séquence Système le système (la boîte noire) par une collaboration d'objets. Un digramme de séquence peut être utilisé en phase – Analyse : diagramme de séquence système – Conception: diagramme de séquence de conception Dans les 2 cas, un diagramme de séquence – Interaction en insistant sur le temps –Présentation de la séquence (ordre) des messages échangés entre les objets
Le Diagramme de Séquence (Axe Dynamique) Un digramme de séquence peut être utilisé en phase – Analyse : diagramme de séquence système – Conception: diagramme de séquence de conception Dans les 2 cas, un diagramme de séquence – Interaction en insistant sur le temps –Présentation de la séquence (ordre) des messages échangés entre les objets
Le Diagramme de Communication (Axe Dynamique) Le diagramme de communication permet donc de représenter les relations structurelles entre les objets qui communiquent.
Diagramme d’états (Axe Dynamique) Les diagrammes d'interaction (séquence et communication) modélisent les interactions entre les objets du système; le diagramme d'états modélise les effets de ces interactions sur la configuration interne des objets. Un diagramme d'états est propre à une classe, il décrit le cycle de vie des objets de cette classe à l’aide d’un automate à état finis. Il présente les séquences possibles d’états et d’actions qu’une instance de classe peut traiter au cours de son cycle de vie en réaction à des événements.
Diagramme d’états (Axe Dynamique) Un diagramme d'états est propre à une classe, il décrit le cycle de vie des objets de cette classe à l’aide d’un automate à état finis. Il présente les séquences possibles d’états et d’actions qu’une instance de classe peut traiter au cours de son cycle de vie en réaction à des événements. 3
Diagramme d’activités (Axe Dynamique) Point de départ Activité Décision Le diagramme d'activités permet de représenter la dynamique du système. C'est un graphe orienté qui décrit un enchaînement de traitements qui peut être soumis à des branchements ou à des synchronisations. Point d’arrivé
Vue d’ensemble des diagrammes UML
Utilisation de UML dans l’industrie Modèle Niveau d’utilisation Classe et package 5 Le plus utilisé, le plus essentiel. Use case 3 Dépend des cultures. Il y a des domaines où cela a peu d’intérêt. Séquence 3 Assez employé, bien compris. Collaboration 2 Les diagrammes d’objet sont utilisés, mais la modélisation des collaboration et des rôles est encore marginale. Etat/transition 2 Très utilisé dans le temps réel, peu utilisé dans le tertiaire. Activité 1 Arrivée tardive dans les ateliers, habitude culturelle locale à certaines parties du tertiaire. Composant/Déploiement 1 Peu de personnes l’utilisent, sur peu de parties de leurs applications.
Comparaison entre Merise & UML Méthode d’analyse et de conception de système d’information Langage de représentation d’un SI Méthodes de modélisation de données et traitements orienté bases de données relationnelles Système de notation orienté objet relationnel Objet Franco-Français Internationale Schéma directeur, étude préalable, étude détaillée et la réalisation Langage de modélisation des systèmes standards, qui utilise des diagrammes pour représenter chaque aspect d’un système : statique, dynamique… en s’appuyant sur la notion d’orienté objet
Merci pour votre attention