Залежність (UML)

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

В уніфікованій мові моделювання (UML) залежність — це зв'язок, який показує, що елемент або набір елементів потребує інших елементів моделі для їх специфікації або реалізації.[1] Елемент залежить від незалежного елемента, який називається постачальником. Два або більше елементів у цьому відношенні називаються кортежами (англ. tuples).

В UML це позначається пунктирною лінією, що вказує від залежного (або клієнта) до незалежного (або постачальника) елемента. Стрілка, що представляє залежність, вказує напрямок відношення, а не напрямок процесу.

Стандартні попередньо визначені залежності[ред. | ред. код]

UML-визначені залежності включають:

  • «call2» UML2: клієнт (операція) може викликати постачальника (операція)
  • «create» UML2: клієнт (класифікатор) може створювати екземпляри постачальника (класифікатор)
  • «вивести» UML2: клієнт (наприклад, значення атрибута, посилання) може бути обчислено від постачальника(ів)
  • «instantiate» UML2: операції клієнта (класифікатора) можуть створювати екземпляри постачальника (класифікатора)
  • «дозвіл» UML2: застаріле
  • «реалізувати» UML2: застаріле
  • «уточнити» UML2: клієнтський елемент(и) знаходиться на «пізнішому» семантичному рівні, ніж постачальник(и)
  • «відправити» UML2: клієнт (операція) надсилає постачальнику (сигнал)
  • «замінити» UML2: клієнтський елемент може замінити (за деяких обставин) постачальника
  • «trace» UML2: клієнтські елементи «trace» до постачальників. Зазвичай використовується для рівнів вимог
  • «використовувати» UML2: клієнтський елемент якимось чином «використовує» постачальника

Відмінності від посилання на UML[ред. | ред. код]

Зв'язок в UML — це зв'язок під час виконання між екземплярами класифікаторів, тоді як залежність — це зв'язок під час моделювання між визначеннями.

Типовий односпрямований зв'язок вимагає, щоб один екземпляр знав про інший, а отже, залежав від нього, але це не є обов'язковим. Односпрямований зв'язок вимагає лише можливості навігації, а не залежності.

Аналогічно, двонаправлений зв'язок вимагає, щоб обидва екземпляри могли переходити один до одного, але це також не вимагає залежності.

Однак після проходження асоціації, якщо відбувається доступ до якоїсь властивості визначення цільового екземпляра, наприклад, до операції або атрибуту, створюється залежність.

Див. також[ред. | ред. код]

Джерела[ред. | ред. код]

  • Weilkiens, Tim; Oestereich, Bernd (2007). UML 2 Certification Guide. Morgan Kaufmann. ISBN 0-12-373585-8.
  • OMG Unified Modeling Language Superstructure, Object Management Group, August 2011

Посилання[ред. | ред. код]

Примітки[ред. | ред. код]

  1. OMG Unified Modeling Language, Superstructure, Version 2.4.1

{UML}}