История объектно-ориентированных методов и нотации
UML развивается со второй половины 1990-х годов и уходит своими корнями в объектно-ориентированные методы, разработанные в конце 1980-х и начале 1990-х годов. На временной шкале (см. рисунок) показаны основные моменты истории методов объектно-ориентированного моделирования и нотации.
Изначально он основан на нотациях метода Буха, техники объектного моделирования (OMT) и объектно-ориентированной программной инженерии (OOSE), которые он объединил в единый язык. [5]
До UML 1.x[править источник | править]
Rational Software Corporation наняла Джеймса Румбо из General Electric в 1994 году, после чего компания стала источником двух самых популярных на сегодняшний день подходов объектно-ориентированного моделирования:[6] Техника объектного моделирования Румбо (OMT) и метод Грейди Буча. Вскоре им помог Ивар Якобсон, создатель метода объектно-ориентированной программной инженерии (OOSE), который присоединился к ним в Rational в 1995 году. [1]
Под техническим руководством этих троих (Румбо, Джейкобсон и Бух) в 1996 году был организован консорциум под названием UML Partnerswas для завершения разработки спецификации унифицированного языка моделирования (UML) и предложения ее группе Object Management Group (OMG) для стандартизации. В партнерство также вошли дополнительные заинтересованные стороны (например, HP, DEC, IBM и Microsoft). Проект UML 1.0, разработанный консорциумом UML Partners, был предложен OMG в январе 1997 года. В том же месяце UML Partners сформировали группу, призванную определить точное значение языковых конструкций, под председательством Криса Кобрина и под управлением Эда Эйкхольта, для доработки спецификации и интеграции ее с другими усилиями по стандартизации. Результат этой работы, UML 1.1, был представлен в OMG в августе 1997 года и принят OMG в ноябре 1997 года. [1][7]
UML 1.x[edit source | edit]
После первого выпуска была сформирована[1] рабочая группа по улучшению языка, которая выпустила несколько небольших редакций, 1.3, 1.4 и 1.5. [8]
Созданные им стандарты (как и первоначальный стандарт) были отмечены как неоднозначные и непоследовательные. [9][10]
UML 2.x[edit source | edit]
Основная редакция UML 2.0 заменила версию 1.5 в 2005 году, которая была разработана при участии расширенного консорциума для дальнейшего совершенствования языка с учетом нового опыта использования его[11] возможностей.
Хотя UML 2.1 так и не был выпущен в качестве официальной спецификации, версии 2.1.1 и 2.1.2 появились в 2007 году, а затем UML 2.2 в феврале 2009 года. UML 2.3 был официально выпущен в мае 2010 года.[12] UML 2.4.1 был официально выпущен в августе 2011 года.[12] UML 2.5 был выпущен в октябре 2012 года как версия "В процессе" и официально вышел в июне 2015 года. [12]
В спецификации UML 2.x есть четыре части:
- Надстройка, определяющая нотацию и семантику для диаграмм и их элементов модели
- Инфраструктура, определяющая основную метамодель, на которой базируется Надстройка
- Язык объектных ограничений (Object Constraint Language, OCL) для определения правил для элементов модели
- UML Diagram Interchange, который определяет, как происходит обмен макетами диаграмм UML 2
Текущие версии этих стандартов следующие: UML Superstructure версии 2.4.1, UML Infrastructure версии 2.4.1, OCL версии 2.3.1 и UML Diagram Interchange версии 1.0.[13] Язык продолжает обновляться и совершенствоваться рабочей группой по пересмотру, которая решает любые проблемы с языком. [14]