|
UML (Unified Modeling Language,
que l'on peut traduire par "langage de modélisation
unifié) est une notation permettant de modéliser
un problème de façon standard. Ce langage est
né de la fusion de plusieurs méthodes existant
auparavant, et est devenu désormais la référence
en terme de modélisation objet, à un tel point
que sa connaissance est souvent nécessaire pour obtenir
un poste de développeur objet.
La programmation
orientée objet consiste à modéliser
informatiquement un ensemble d'éléments d'une
partie du monde réel (que l'on appelle domaine)
en un ensemble d'entités informatiques. Ces entités
informatiques sont appelées objets. Il s'agit
de données informatiques regroupant les principales
caractéristiques des éléments du monde
réel (taille, la couleur, ...).
La difficulté de cette modélisation consiste
à créer une représentation abstraite,
sous forme d'objets, d'entités ayant une existence
matérielle (chien, voiture, ampoule, ...) ou bien virtuelle
(sécurité sociale, temps, ...).
La modélisation
objet consiste à créer une représentation
informatique des éléments du monde réel
auxquels on s'intéresse, sans se préoccuper
de l'implémentation, ce qui signifie indépendamment
d'un langage de programmation. Il s'agit donc de déterminer
les objets présents et d'isoler leurs données
et les fonctions qui les utilisent. Pour cela des méthodes
ont été mises au point. Entre 1970 et 1990,
de nombreux analystes ont mis au point des approches orientées
objets, si bien qu'en 1994 il existait plus de 50 méthodes
objet. Toutefois seules 3 méthodes ont véritablement
émergé :
- La méthode OMT de Rumbaugh
- La méthode BOOCH'93 de Booch
- La méthode OOSE de Jacobson
(Object Oriented Software Engineering)
A partir de 1994, Rumbaugh et Booch (rejoints
en 1995 par Jacobson) ont unis leurs efforts pour mettre au
point la méthode unifiée (unified method 0.8),
incorporant les avantages de chacunes des méthodes précédentes.
La méthode unifiée
à partir de la version 1.0 devient UML (Unified
Modeling Language), une notation universelle pour la modélisation
objet.
 |
UML n'est pas une méthode dans
la mesure où elle ne présente aucune démarche.
A ce titre UML est un formalisme de modélisation
objet. Le mot méthode parfois utilisé
par abus de langage dans les pages suivantes ne doit donc
pas être entendu comme une "démarche".
|
UML 1.0 est soumise à
l'OMG (Object Management Group) en janvier 1997, mais
elle ne sera acceptée qu'en novembre 1997 dans sa version
1.1, date à partir de laquelle UML devient un standard
international.
Voici le récapitulatif
des évolutions de ce langage de modélisation
:
- En 1995: Méthode unifiée 0.8
(intègrant les méthodes Booch'93 et OMT)
- En 1995: UML 0.9 (intègrant la méthode
OOSE)
- En 1996: UML 1.0 (proposée à
l'OMG)
- En 1997: UML 1.1 (standardisée par
l'OMG)
- En 1998: UML 1.2
- En 1999: UML 1.3
- En 2000: UML 1.4
- En 2003: UML 1.5
- Les dernières versions des spécifications
peuvent être téléchargées sur
le
site de l'OMG.
Cette méthode représente un
moyen de spécifier, représenter et construire
les composantes d’un système informatique.
Avec la méthode UML,
un objet est par exemple représenté de la façon
suivante:
Les langages orientés
objet constituent chacun une manière spécifique
d'implémenter le paradigme objet. Ainsi, une méthode
objet permet de définir le problème à
haut niveau sans rentrer dans les spécificités
d'un langage. Il représente ainsi un outil permettant
de définir un problème de façon graphique,
afin par exemple de le présenter à tous les
acteurs d'un projet (n'étant pas forcément des
experts en un langage de programmation).
De plus, le fait de programmer
à l'aide d'un langage orienté objet ne fait
pas d'un programmeur un concepteur objet. En effet il est
tout à fait possible de produire un code syntaxiquement
juste sans pour autant adopter une approche objet. Ainsi la
programmation orientée objet implique
- en premier lieu une conception abstraite
d'un modèle objet (c'est le rôle de la méthode
objet)
- en second plan l'implémentation à
l'aide d'un langage orienté objet (tel que C++/Java/...)
Une méthode objet est
donc d'une part une méthode d'analyse du problème
(afin de couvrir toutes les facettes du problème),
d'autre part un langage permettant une représentation
standard stricte des concepts abstraits (la modélisation)
afin de constituer un langage commun.
Ainsi, il est nécessaire
qu'une méthode objet soit définie de manière
rigoureuse et unique afin de lever les ambiguités.
De nombreuses méthodes objet ont été
définies, mais aucune n'a sû s'imposer en raison
du manque de standardisation. C'est pourquoi l'ensemble des
acteurs du monde informatique a fondé en 1989 l'OMG
(Object Management Group), une organisation à
but non lucratif, dont le but est de mettre au point des standards
garantissant la compatibilité entre des applications
programmées à l'aide de langages objet et fonctionnant
sur des réseaux hétérogènes (de
différents types).
A partir de 1997, UML est devenue
une norme de l'OMG, ce qui lui a permis de s'imposer en tant
que méthode de développement objet et être
reconnue et utilisée par de nombreuses entreprises.
 
|