<

webmaster

Creation d un site web

Notion Sur Le Langage UML

UML (Unified Modeling Language) est un langage visuel normalisé qui aide à découvrir, spécifier et documenter les artefacts d’une application orientée objets tout au long de son développement. Ses 4+1 vues couvrent les aspects fonctionnels, structurels (statiques), comportementaux (dynamiques), d’implantation et de déploiement (cf. figure ci-dessus).
UML est un langage qui n’est pas lié à un processus de développement objet particulier.
En UML, les mêmes concepts et la même notation sont utilisables tout au long du processus de développement, mais avec des changements d’objectifs et des changements de niveaux de détail (d’abstraction). Concrètement, une classe de conception comporte plus de détails. qu’une classe conceptuelle (« métier ») et moins de détails qu’une classe qui documente un code. Par exemple, les classes conceptuelles ne portent pas d’opérations, les classes de conception précisent les noms des principales opérations, les classes qui documentent le code donnent les profils détaillés des opérations avec les types de leurs paramètres.
img1
                                                figure : les 4 + 1 vues de UML

  1. Mode d'utilisation de UML

La richesse et la flexibilité de la notation UML autorisent plusieurs modes d’utilisation.

  1. « UML as sketch »

Dans les approches agiles c’est l’aspect découverte qui est mis en avant, avec une utilisation d’UML en mode « esquisse » (sketch), c’est-à-dire sans trop de détails, centrée sur les seuls aspects difficiles et conduite en collaboration autour d’un tableau blanc, plutôt qu’avec un environnement de modélisation sophistiqué.

  1. « UML as blueprint »

Dans les approches classiques (prescriptives), c’est l’aspect modélisation systématique qui est mis en avant. L’analyse produit des modèles pour mieux comprendre le problème et la conception produit des modèles pour mieux implanter le système. Ces derniers modèles sont progressivement détaillés jusqu’à ce que les codeurs n’aient plus que des décisions de détail à prendre. Des squelettes de programmes peuvent être générés. Les modèles peuvent aussi pour partie être reconstruits à partir du code (reverse engineering).
Dans ce mode, les environnements de modélisation (CASE tools) sont préconisés.

  1. « UML as programming language »

Enfin, dans la mouvance des approches dirigées par les modèles (Model Driven Architecture ou MDA), l’objectif est de parvenir à une extension d’UML suffisamment précise en termes de sémantique pour permettre la génération complète ou presque de l’application à partir des modèles
 

  1. les principaux diagrammes UML

Cinq diagrammes UML jouent un rôle prépondérant dans le cadre des phases en amont de la conception. Ils sont brièvement présentés ci-après. UML à lui seul fait l'objet d'un cours à part entière nous vous invitons donc à vous documenter à ce sujet.

  1. Le diagramme de cas d’utilisation

Il est fondamental en ingénierie des besoins. Il synthétise les interactions entre les acteurs
et l’application.
img2
diagramme de cas d'utilisation

  1. Le diagramme de classes

Il est essentiel dans toute analyse et conception orientées objets

diagramme de classe
Au stade de l’analyse, il sert essentiellement à décrire la nature des concepts du domaine applicatif (modèle des classes du domaine). Au stade de la conception, il représente, à différents niveaux de détail, l’organisation du code orienté objet.

  1. Le diagramme de séquences

Il précise les échanges de messages entre objets, dans le cadre d’un fonctionnement particulier du système. Au stade de l’analyse, il sert à exprimer les scénarios d’utilisation du système. Au stade de la conception, il sert à montrer les enchaînements d’appels de méthodes entre les objets qui contribuent à implanter une certaine fonctionnalité complexe.
img4
 diagramme de séquence

  1. Le diagramme d’états

Il détaille le cycle de vie des objets d’une certaine classe. Il permet de préciser la description des classes complexes en montrant leurs différents états et les transitions possibles entre eux. Il peut également être utilisé pour décrire la navigation dans une application web ou dans l’IHM interactif d’une application classique

img5
figure : le diagramme d'état

  1. Le diagramme d’activités

Il représente les enchaînements d’actions et de décisions au sein d’une activité. Il peut également être utilisé comme alternative au diagramme d’états pour décrire la navigation dans une application web ou dans l’IHM interactif d’une application classique.

img6
figure : le diagramme d'activité
 

par David Matjaba