Jump to content

Унифицированный язык моделирования

(Перенаправлено из ISO/IEC 19501 )

UML логотип

Унифицированный язык моделирования ( UML общего назначения )-это язык визуального моделирования , который предназначен для обеспечения стандартного способа визуализации проектирования системы. [ 1 ]

UML предоставляет стандартную нотацию для многих типов диаграмм, которые можно примерно разделить на три основные группы: диаграммы поведения, диаграммы взаимодействия и структурные диаграммы.

Создание UML было первоначально мотивировано желанием стандартизировать разрозненные нотационные системы и подходы к проектированию программного обеспечения. Он был разработан в Rational Software в 1994–1995 годах, и в течение 1996 года была проведена дальнейшая разработка. [ 2 ]

В 1997 году UML был принят в качестве стандарта группой управления объектами (OMG) и с тех пор управляется этой организацией. В 2005 году UML также была опубликована Международной организацией по стандартизации (ISO) и Международной электротехнической комиссией (IEC) в качестве стандарта ISO/IEC 19501 . [ 3 ] С тех пор стандарт был периодически пересмотрен, чтобы охватить последнюю пересмотр UML. [ 4 ]

В разработке программного обеспечения большинство практикующих не используют UML, а вместо этого производят неформальные нарисованные ручные диаграммы; Эти диаграммы, однако, часто включают элементы из UML. [ 5 ] : 536 

История объектно-ориентированных методов и обозначения

Перед UML 1.0

[ редактировать ]

UML развивался с второй половины 1990-х годов и имеет свои корни в объектно-ориентированных методах программирования, разработанных в конце 1980-х и начале 1990-х годов. Временная шкала (см. Изображение) показывает основные моменты истории объектно-ориентированных методов моделирования и обозначения.

Первоначально он основан на обозначениях метода Booch , методике объектной модели (OMT) и объектно-ориентированной программной инженерии (OOSE), который он интегрирован в один язык. [ 6 ]

Rational Software Corporation наняла Джеймса Румбо из General Electric в 1994 году, и после этого компания стала источником для двух самых популярных объектно-ориентированных подходов к моделированию дня: [ 7 ] Румбо Техника объектной моделирования (OMT) и Грэди Буча метод . Вскоре им помогли Ивар Джейкобсон , создатель объектно-ориентированного метода программного обеспечения (OOSE), который присоединился к ним в Rational в 1995 году. [ 2 ]

Под техническим руководством этих трех (Rumbaugh, Jacobson и Booch), консорциум, называемый Partners UML, был организован в 1996 году для завершения спецификации Unified Modeling Languaging (UML) и предложить его в группу управления объектами (OMG) для стандартизации. Партнерство также содержало дополнительные заинтересованные стороны (например , HP , DEC , IBM и Microsoft ). Проект UML Partners 'UML 1.0 был предложен в OMG в январе 1997 года Консорциумом. В течение того же месяца партнеры UML сформировали группу, предназначенную для определения точного значения языковых конструкций, под руководством Криса Кобрина и управляемой Эдом Эйхольтом, чтобы завершить спецификацию и интегрировать ее с другими усилиями по стандартизации. Результат этой работы, UML 1.1, был представлен OMG в августе 1997 года и принят OMG в ноябре 1997 года. [ 2 ] [ 8 ]

После первого выпуска была сформирована целевая группа [ 2 ] Чтобы улучшить язык, который выпустил несколько незначительных изменений, 1,3, 1,4 и 1,5. [ 9 ]

Стандарты, которые он произвел (а также первоначальный стандарт), были отмечены как неоднозначные и непоследовательные. [ 10 ]

Нотация кардинальности

[ редактировать ]

Как и в случае с базой данных Chen, Bachman и Iso ER диаграммы , модели классов используются для использования кардинальности «Look-across» , хотя несколько авторов ( Merise , [ 11 ] Elmasri & Navathe, [ 12 ] среди других [ 13 ] ) Предпочитаем то же самое или «смотрит» для ролей и как минимум, так и максимальной кардинальной. Недавние исследователи (Feinerer [ 14 ] и Dullea et al. [ 15 ] ) показали, что методика «взгляда -акросса», используемой диаграммами UML и ER, менее эффективна и менее согласован при применении к n -массовым отношениям порядка, строго выше 2.

Feinerer говорит: «Проблемы возникают, если мы работаем под семантикой взгляда-акросса, используемой для ассоциаций UML. Hartmann [ 16 ] исследует эту ситуацию и показывает, как и почему различные преобразования терпят неудачу ». И:« Как мы увидим на следующих нескольких страницах, интерпретация внешнего вида вводит несколько трудностей, которые предотвращают расширение простых механизмов от бинарных до N -Ary. "

Major Revision UML 2.0 заменил версию 1.5 в 2005 году, которая была разработана с увеличенным консорциумом для улучшения языка, чтобы дальше, чтобы отразить новый опыт использования его функций. [ 17 ]

Хотя UML 2.1 никогда не был выпущен в качестве официальной спецификации, версии 2.1.1 и 2.1.2 появились в 2007 году, а затем UML 2.2 в феврале 2009 года. UML 2.3 был официально выпущен в мае 2010 года. [ 18 ] UML 2.4.1 был официально выпущен в августе 2011 года. [ 18 ] UML 2.5 был выпущен в октябре 2012 года в качестве версии «в прогрессе» и был официально выпущен в июне 2015 года. [ 18 ] Формальная версия 2.5.1 была принята в декабре 2017 года. [ 1 ]

В спецификации UML 2.x есть четыре части:

  • Надстройка, которая определяет обозначения и семантику для диаграмм и их модельных элементов
  • Инфраструктура, которая определяет основную метамодель, на которой основана надстройка
  • Язык ограничения объекта (OCL) для определения правил для элементов модели
  • Обмен диаграмма UML, который определяет, как обменены макеты диаграмм UML 2

До UML 2.4.1, последние версии этих стандартов были: [ 19 ]

  • UML Superstructure Версия 2.4.1
  • UML инфраструктура версия 2.4.1
  • OCL версия 2.3.1
  • UML Diagram Interchange версия 1.0.

С момента версии 2.5 спецификация UML была упрощена (без надстройки и инфраструктуры), а последние версии этих стандартов сейчас: [ 20 ]

  • Спецификация UML 2.5.1
  • OCL версия 2.4

Он продолжает обновляться и улучшаться целевой группой по пересмотру, которая решает любые проблемы с языком. [ 21 ]

Пример компонентов в системе бронирования путешествий

UML предлагает способ визуализировать архитектурные чертежи системы на диаграмме, включая такие элементы, как: [ 6 ]

Хотя изначально предназначалась для объектно-ориентированной проектной документации, UML был распространен на более крупный набор проектной документации (как указано выше), [ 22 ] и был найден полезным во многих контекстах. [ 23 ]

Методы разработки программного обеспечения

[ редактировать ]

UML сам по себе не является методом разработки; [ 24 ] Тем не менее, он был разработан для совместимости с ведущими объектно-ориентированными методами разработки программного обеспечения своего времени, например, OMT , метода Booch , объекта и особенно RUP, который первоначально был предназначен для использования, когда работа началась в рациональном программном обеспечении.

Моделирование

[ редактировать ]

Важно различать модель UML и набор диаграмм системы. Диаграмма является частичным графическим представлением модели системы. Набор диаграмм не должен полностью покрывать модель, а удаление диаграммы не меняет модель. Модель также может содержать документацию, которая управляет модельными элементами и диаграммами (например, письменными вариантами использования).

Диаграммы UML представляют два разных представления системной модели: [ 25 ]

Модели UML могут быть обменены среди инструментов UML с использованием формата интерфейса Metadata (XMI) XML.

В UML одним из ключевых инструментов для моделирования поведения является модель использования, вызванная OOSE . Варианты использования - это способ указать необходимые использования системы. Как правило, они используются для захвата требований системы, то есть то, что должна делать система. [ 26 ]

Диаграммы

[ редактировать ]

UML 2 имеет много типов диаграмм, которые разделены на две категории. [ 6 ] Некоторые типы представляют структурную информацию, а остальные представляют общие типы поведения , в том числе некоторые, которые представляют различные аспекты взаимодействия . Эти диаграммы могут быть классифицированы иерархически, как показано на следующей классовой диаграмме: [ 6 ]

Иерархия диаграмм UML 2.2, показанная в виде классовой диаграммы
Hierarchy of UML 2.2 Diagrams, shown as a class diagram

Все эти диаграммы могут содержать комментарии или заметки, объясняющие использование, ограничение или намерение.

Структурные диаграммы

[ редактировать ]

Структурные диаграммы представляют статические аспекты системы. Это подчеркивает то, что должно присутствовать в моделируемой системе. Поскольку структурные диаграммы представляют собой структуру, они широко используются в документировании программной архитектуры программных систем. Например, компонентная диаграмма описывает, как программная система разделена на компоненты, и показывает зависимости между этими компонентами.

Диаграммы поведения

[ редактировать ]

Диаграммы поведения представляют динамический аспект системы. Это подчеркивает, что должно произойти в моделируемой системе. Поскольку диаграммы поведения иллюстрируют поведение системы, они широко используются для описания функциональности программных систем. Например, диаграмма активности описывает деловые и оперативные пошаговые действия компонентов в системе.

Визуальное представление: Пользователь персонала → Система жалоб: Отправить жалобы. Пользователь → Система обратной связи: отправьте обратную связь. программное обеспечение. Диаграмма будет иметь актеров с левой стороны, с стрелками, указывающими последовательность действий и взаимодействия между системами и актерами, как описано функциональность использования.

Метамоделирование

[ редактировать ]
Иллюстрация мета-объекта

Группа управления объектами (OMG) разработала архитектуру метамоделирования для определения UML, называемого мета-объектом . [ 27 ] MOF разработан как четырехслойная архитектура, как показано на изображении справа. Он обеспечивает модель метамета наверху, называемую слоем M3. Эта M3-модель-это язык, используемый мета-объектом для строительства метамоделей, называемых M2-моделями.

Наиболее выдающимся примером модели мета-объекта уровня 2 является метамодель UML, которая описывает саму UML. Эти M2-модели описывают элементы M1-слою и, следовательно, M1-модели. Это будут, например, модели, написанные в UML. Последний слой-это M0-слой или уровень данных. Он используется для описания экземпляров времени выполнения системы. [ 28 ]

Метамодель может быть расширена с использованием механизма, называемого стереотипами . Это было подвергнуто критике как недостаточное/несостоятельное со стороны Брайана Хендерсона и Сезар Гонсалес-Перес в «Использование и злоупотребление механизмом стереотипа в UML 1.x и 2,0». [ 29 ]

Принятие

[ редактировать ]

В 2013 году UML был продан OMG для многих контекстов, но с ограниченным успехом была предназначена для разработки программного обеспечения. [ 23 ] [ 30 ]

Иногда он рассматривался как серебряная пуля дизайна , что приводит к проблемам. Неправомерное использование UML включает в себя чрезмерное использование (проектирование каждой части системы с ним, что не нужно) и предполагая, что новички могут проектировать с ней. [ 31 ]

Это считается большим языком, со многими конструкциями . Некоторые люди (включая Джейкобсона ) считают, что размер UML мешает обучению (и, следовательно, использую) его. [ 32 ]

MS Visual Studio опустила поддержку UML в 2016 году из -за отсутствия использования. [ 33 ]

Согласно Google Trends UML, стабильно снижается с 2004 года. [ 34 ]

Смотрите также

[ редактировать ]
  1. ^ Jump up to: а беременный Унифицированный язык моделирования 2.5.1 . OMG Number Number Formal/2017-12-05. Организация по развитию стандартов по управлению объектами (OMG SDO). Декабрь 2017 года.
  2. ^ Jump up to: а беременный в дюймовый Руководство пользователя Unified Modeling Language, (2 Ed.). Аддисон-Уэсли. 2005. с. 496. ISBN  0321267974 Полем См. Пример контента: ищите историю
  3. ^ «ISO/IEC 19501: 2005 - Информационные технологии - открытая распределенная обработка - Унифицированный язык моделирования (UML) версия 1.4.3» . Iso.org. 1 апреля 2005 г. Получено 7 мая 2015 года .
  4. ^ «ISO/IEC 19505-1: 2012 - Информационные технологии - группа управления объектами Unified Modeling Language (OMG UML) - Часть 1: Инфраструктура» . Iso.org. 20 апреля 2012 года . Получено 10 апреля 2014 года .
  5. ^ Себастьян Балтес; Стефан Дил (11 ноября 2014 г.). «Эскизы и диаграммы на практике» . Материалы 22 -го Международного симпозиума ACM Sigsoft по фондам программного обеспечения . FSE 2014. Ассоциация вычислительной техники . С. 530–541. Arxiv : 1706.09172 . doi : 10.1145/2635868.2635891 . ISBN  978-1-4503-3056-5 Полем S2CID   2436333 .
  6. ^ Jump up to: а беременный в дюймовый «OMG Unified Language (OMG UML), SuperStructure. Версия 2.4.1» . Группа управления объектами . Получено 9 апреля 2014 года .
  7. ^ Andreas Zendler (1997) Усовершенствованные концепции, модели жизненного цикла и инструменты для разработки программного обеспечения, ориентированного на Обакт . п. 122
  8. ^ «Спецификация UML версии 1.1 (OMG Document AD/97-08-11)» . Omg.org . Получено 22 сентября 2011 года .
  9. ^ "Умл" . Omg.org . Получено 10 апреля 2014 года .
  10. выпуски 2004 "Открытые
  11. ^ Hubert Tardieu, Arnold Rochfeld и René Colletti La Methode Merise: Принципы и инструменты (в мягкой обложке - 1983)
  12. ^ Elmasri, Ramez, B. Shamkant, Navathe, Основы систем баз данных, третье изд., Аддисон-Уэсли, Менло Парк, Калифорния, США, 2000.
  13. ^ Паоло Атзени; Уэсли Чу; Хонджун Лу; Шуигенг Чжоу; Ток Ван Лин, ред. (27 октября 2004 г.). Концептуальное моделирование - ER 2004: 23 -я Международная конференция по концептуальному моделированию, Шанхай, Китай, 8–12 ноября 2004 года . Заметки лекции в информатике 3288 (2004 г.). Спрингер . ISBN  3540237232 .
  14. ^ Ingo Feinerer (март 2007 г.). Формальная обработка диаграмм классов UML в качестве эффективного метода для управления конфигурацией (PDF) (тезис о технических науках). Вена: Технический университет Вены.
  15. ^ Джеймс Даллеа; Il-Yeol Song; Иоанна Лампро (1 ноября 2003 г.). «Анализ структурной валидности в моделировании отношения сущности». Data & Knowledge Engineering . 47 (2): 167–205. doi : 10.1016/s0169-023x (03) 00049-1 .
  16. ^ Свен Хартманн (17 января 2003 г.). Рассуждения о ограничениях участия и ограничениях Чена . ADC '03: Материалы 14 -й Австралийской конференции базы данных. Австралийское компьютерное общество . С. 105–113. Значок открытого доступа
  17. ^ "UML 2.0" . Omg.org . Получено 22 сентября 2011 года .
  18. ^ Jump up to: а беременный в "Умл" . Omg.org . Получено 22 сентября 2011 года .
  19. ^ МОЙ БОГ. «OMG формальные спецификации (моделирование и параграф метаданных)» . Получено 12 февраля 2016 года .
  20. ^ МОЙ БОГ. «Об единой спецификации языка моделирования» . Получено 22 февраля 2020 года .
  21. ^ «Проблемы для списка рассылки UML 2.6 Revision Task Force» . Omg.org . Получено 10 апреля 2014 года .
  22. ^ Сатиш Мишра (1997). «Визуальное моделирование и унифицированный язык моделирования (UML): введение в UML» Аархивировано 20 июля 2011 года на машине Wayback . Rational Software Corporation. Доступ 9 ноября 2008 года.
  23. ^ Jump up to: а беременный «Умл, истории успеха» . Получено 9 апреля 2014 года .
  24. ^ Джон Хант (2000). Единый процесс для практиков: объектно-ориентированный дизайн, UML и Java . Springer, 2000. ISBN   1-85233-275-1 . п. 5
  25. ^ Джон Холт Институт инженеров -электриков (2004). UML для системной инженерии: просмотр колеса IET, 2004, ISBN   0-86341-354-4 . п. 58
  26. ^ Мануэль Альмендрос-Джимерес, Хесус и Ирибарн, Луис. (2007). Описание взаимосвязи использования с диаграммами последовательности. Вычислительный J .. 50. 116-128. 10.1093/comjnl/bxl053.
  27. ^ Iman Poernomo (2006) « Мета-объект напечатал архивируемый 30 июня 2016 года в The Wayback Machine » в: Проводящий SAC '06 Симпозиум ACM 2006 года по прикладным вычислениям . С. 1845–1849
  28. ^ «UML 2.4.1 Инфраструктура» . Omg.org. 5 августа 2011 года . Получено 10 апреля 2014 года .
  29. ^ Брайан Хендерсон-продавцы ; Сезар Гонсалес-Перес (1 октября 2006 г.). «Использование и злоупотребление механизмом стереотипа в UML 1.x и 2,0». Модели '06: Материалы 9 -й Международной конференции по инженерным языкам и системам, управляемым моделями . Заметки лекции в информатике 4199. 4199 . Берлин , Германия: Springer-Verlag : 16–26. doi : 10.1007/11880240_2 . ISBN  978-3-540-45772-5 .
  30. ^ "Умл 2.5: Тебе вообще все равно?" Полем "Умл действительно вездесущий"
  31. ^ «Смерть от лихорадки UML» .
  32. ^ «Ивар Джейкобсон на UML, MDA и будущее методологий» .
  33. ^ Крилл, Пол (18 октября 2016 года). «UML для выброса из Microsoft Visual Studio» . InfoWorld . Получено 23 июля 2023 года .
  34. ^ "Google Trends" . Google Trends . Архивировано из оригинала 23 июля 2023 года . Получено 23 июля 2023 года .

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d0a69727ab5bfc6457d2a5486f5847c5__1726017180
URL1:https://arc.ask3.ru/arc/aa/d0/c5/d0a69727ab5bfc6457d2a5486f5847c5.html
Заголовок, (Title) документа по адресу, URL1:
Unified Modeling Language - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)