Histoire des méthodes et de la notation orientées objet
L'UML évolue depuis la seconde moitié des années 1990 et trouve ses racines dans les méthodes orientées objet développées à la fin des années 1980 et au début des années 1990. La chronologie (voir image) montre les points forts de l'histoire des méthodes de modélisation et de la notation orientées objet.
Il est basé à l'origine sur les notations de la méthode Booch, de la technique de modélisation par l'objet (OMT) et du génie logiciel orienté objet (OOSE), qu'il a intégrées dans un seul langage. [5]
Avant UML 1.x [modifier la source | modifier]
Rational Software Corporation a engagé James Rumbaugh de General Electric en 1994 et, par la suite, la société est devenue la source de deux des approches de modélisation orientée objet les plus populaires de l'époque :[6] la technique de modélisation objet de Rumbaugh (OMT) et la méthode de Grady Booch. Ils ont rapidement été aidés dans leurs efforts par Ivar Jacobson, le créateur de la méthode de génie logiciel orienté objet (OOSE), qui les a rejoints chez Rational en 1995[1].
Sous la direction technique de ces trois personnes (Rumbaugh, Jacobson et Booch), un consortium appelé "UML Partnerswas" s'est organisé en 1996 pour achever la spécification du langage de modélisation unifié (UML) et la proposer au groupe de gestion des objets (OMG) en vue de sa normalisation. Le partenariat comprenait également d'autres parties intéressées (par exemple HP, DEC, IBM et Microsoft). Le projet UML 1.0 des partenaires UML a été proposé à l'OMG en janvier 1997 par le consortium. Au cours du même mois, les partenaires UML ont formé un groupe, destiné à définir la signification exacte des constructions du langage, présidé par Cris Kobryn et administré par Ed Eykholt, pour finaliser la spécification et l'intégrer à d'autres efforts de normalisation. Le résultat de ce travail, UML 1.1, a été soumis à l'OMG en août 1997 et adopté par l'OMG en novembre 1997[1][7].
UML 1.x [edit source | edit]
Après la première version, un groupe de travail a été formé [1] pour améliorer la langue, qui a publié plusieurs révisions mineures, 1.3, 1.4, et 1.5 [8].
Les normes qu'elle a produites (ainsi que la norme originale) ont été notées comme étant ambiguës et incohérentes. [9][10]
UML 2.x [edit source | edit]
La révision majeure de l'UML 2.0 a remplacé la version 1.5 en 2005, qui a été développée avec un consortium élargi pour améliorer encore le langage afin de refléter les nouvelles expériences d'utilisation de ses fonctionnalités. [11]
Bien que l'UML 2.1 n'ait jamais été publié en tant que spécification officielle, les versions 2.1.1 et 2.1.2 sont apparues en 2007, suivies par l'UML 2.2 en février 2009. UML 2.3 a été officiellement publié en mai 2010[12], UML 2.4.1 en août 2011[12], UML 2.5 en octobre 2012 en tant que version "In process" et officiellement publié en juin 2015[12].
La spécification UML 2.x comporte quatre parties :
- La superstructure qui définit la notation et la sémantique des diagrammes et de leurs éléments de modèle
- L'infrastructure qui définit le métamodèle de base sur lequel la superstructure est basée
- Le langage de contraintes objet (OCL) pour définir les règles des éléments de modèle
- L'échange de diagrammes UML qui définit la manière dont les schémas UML 2 sont échangés
Les versions actuelles de ces normes suivent : UML Superstructure version 2.4.1, UML Infrastructure version 2.4.1, OCL version 2.3.1 et UML Diagram Interchange version 1.0[13]. Il continue d'être mis à jour et amélioré par le groupe de travail de révision, qui résout tous les problèmes liés au langage. [14]