UML връзки с ПРИМЕР: Зависимост, Обобщение, Реализация

Съдържание:

Anonim

Какво представлява връзката UML?

Взаимоотношенията в UML се използват за представяне на връзка между структурни, поведенчески или групиращи неща. Нарича се още връзка, която описва как две или повече неща могат да се свържат помежду си по време на изпълнението на системата. Тип на връзката UML са асоциация, зависимост, обобщаване и реализация.

Нека ги изучим в детайли

  • Асоциация

Това е набор от връзки, който свързва елементи от UML модела. Той също така определя колко обекта участват в тази връзка.

  • Зависимост

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

  • Обобщение

Нарича се още връзка родител-дете. В обобщение, един елемент е специализация на друг общ компонент. Може да го замести. Използва се най-вече за представяне на наследство.

  • Реализация

Във взаимоотношението за реализация на UML единият обект обозначава някаква отговорност, която не се изпълнява от само себе си, а другият обект, който ги прилага. Тази връзка се среща най-вече в случай на интерфейси.

В този урок за UML ще научите:

  • Асоциация
  • Зависимост
  • Обобщение
  • Реализация
  • Състав
  • Агрегиране

Асоциация

Това е структурна връзка, която представлява обекти, които могат да бъдат свързани или свързани с друг обект в системата. Следните ограничения могат да бъдат приложени към връзката асоцииране.

  • {имплицитно} - неявните ограничения посочват, че връзката не е манифест; тя се основава на концепция.
  • {подредено} - Подредените ограничения посочват, че наборът от обекти в единия край на асоциацията са по определен начин.
  • {променливо} - Променливото ограничение указва, че връзката между различни обекти в системата може да бъде добавена, премахната и модифицирана според изискването.
  • {addOnly} - Указва , че новите връзки могат да се добавят от обект, който се намира в другия край на асоциация.
  • {замразено} - Указва, че когато се добави връзка между два обекта, тогава тя не може да бъде модифицирана, докато замразеното ограничение е активно за дадената връзка или връзка.

Можем също да създадем клас, който има свойства на асоцииране; той се нарича клас на асоцииране.

Рефлексивна асоциация

Рефлексивната асоциация е подтип на асоциационната връзка в UML. В една рефлексивна асоциация екземплярите от един и същи клас могат да бъдат свързани помежду си. Екземпляр на клас също се казва, че е обект.

Рефлексивната асоциация заявява, че връзка или връзка могат да присъстват в обектите от същия клас.

Нека разгледаме пример за клас плодове. Класът плодове има два случая, като манго и ябълка. Рефлексивната асоциация заявява, че може да има връзка между манго и ябълка, тъй като те са екземпляри от един и същи клас, като плодове.

Дирижирана асоциация

Както подсказва името, насочената асоциация е свързана с посоката на потока в класовете на асоциации.

В насочена асоциация потокът е насочен. Асоциацията от един клас към друг клас протича само в една посока.

Обозначава се с помощта на плътна линия със стрелка.

Пример:

Можете да кажете, че съществува насочена връзка между сървър и клиент. Сървърът може да обработва заявките на клиент. Този поток е еднопосочен, който преминава само от сървър към клиент. Следователно насочена връзка за асоцииране може да присъства в сървърите и клиентите на системата.

Зависимост

Използвайки връзка на зависимост в UML, може да се установи как различните неща в дадена система са зависими едно от друго. Зависимостта се използва за описване на връзката между различни елементи в UML, които са зависими един от друг.

Стереотипи

  • «Обвързване» - обвързването е ограничение, което указва, че източникът може да инициализира шаблона на целево място, използвайки предоставени параметри или стойности.
  • «Извличане» - Представлява, че местоположението на обект източник може да бъде изчислено от целевия обект.
  • «Приятел» - Указва, че източникът има уникална видимост в целевия обект.
  • «InstanceOf» - Указва, че екземплярът на целевия класификатор е обектът източник.
  • «Instantiate» - Указва, че изходният обект е способен да създава екземпляри на целеви обект.
  • «Refine» - Указва, че изходният обект има изключителна абстракция от тази на целевия обект.
  • «Употреба» - Използва се, когато пакетите се създават в UML. Използваният стереотип описва, че елементите на пакета източник могат да присъстват и в целевия пакет. Той описва, че пакетът източник използва някои елементи на целевия пакет.
  • «Заместител» - указва, че клиентът може да замести доставчика по време на изпълнение.
  • «Достъп» - Указва, че източникът има достъп до елементите на целевия пакет, който също се нарича частно сливане.
  • «Импортиране» - Указва, че целта може да импортира елемента на пакета източник, както те са дефинирани вътре в целта, което също се нарича публично обединяване.
  • «Разрешение» - указва, че елементът източник има достъп до елемента доставчик независимо от декларираната видимост на доставчика.
  • «Удължи» - Помага ви да посочите, че целта може да разшири поведението на изходния елемент.
  • «Включва» - Позволява ви да посочите елемента източник, който може да бъде включен в поведението на друг елемент на определено място. (същото като извикване на функция в c / c ++)
  • «Ставам» - Указва, че целта е подобна на източника с различни стойности и роли.
  • «Call» - Указва, че източникът може да извика метод на целеви обект.
  • «Copy» - Указва, че целевият обект е независим, копие на обект източник.
  • «Параметър» - доставчикът е параметър на клиентските операции .
  • «Изпращане» - клиентът е операция, която изпраща на доставчика някаква неуточнена цел.

Стереотипи сред държавната машина

  • «Изпращане» - Указва, че операцията източник изпраща целевото събитие.

Обобщение

Това е връзка между общ обект и уникален обект, който присъства в системата.

Във връзка с обобщение може да се приложи обектно-ориентираната концепция, наречена наследяване . Съществува връзка между обобщенията между два обекта, наричани също като обекти или неща. В една генерализационна връзка една субект е родител, а друга се казва като дете. Тези обекти могат да бъдат представени чрез наследяване.

При наследяване, дете на всеки родител може да осъществи достъп, актуализиране или наследяване на функционалността, както е посочено вътре в родителския обект. Детски обект може да добави своята функционалност към себе си, както и да наследи структурата и поведението на родителски обект.

Този тип взаимоотношения са известни като обща връзка.

Стереотипите и техните ограничения

  • «Изпълнение» - Този стереотип се използва, за да представи, че дъщерният обект се изпълнява от родителския обект чрез наследяване на структурата и поведението на родителски обект, без да се нарушават правилата. Забележка Този стереотип, ако се използва широко в едно наследство .

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

Реализация

Във взаимоотношението за реализация на UML единият обект обозначава някаква отговорност, която не се изпълнява от само себе си, а другият обект, който ги прилага. Тази връзка се среща най-вече в случай на интерфейси.

Реализацията може да бъде представена по два начина:

  • Използване на канонична форма
  • Използване на изтрита форма

В горната диаграма правилата за бизнес акаунти реализират интерфейса IRuleAgent.

Видове реализация:

  1. Канонична форма

    В реализационната връзка на UML, каноничната форма се използва за реализиране на интерфейси в цялата система. Той използва интерфейсен стереотип за създаване на интерфейс и връзката за реализация се използва за реализиране на конкретния интерфейс.

    В канонична форма връзката за реализация се обозначава с помощта на пунктирана насочена линия със значителна отворена глава на стрелката.

    В горната диаграма интерфейсът Iruleagent е реализиран с помощта на обект, наречен като Business Business Rules.

  2. Изтрита форма

    Реализацията в диаграмата на класа на UML може също да бъде показана с помощта на изтрит формуляр. В изтрита форма интерфейсът се обозначава с помощта на кръг, който също се нарича нотация на близалка.

    Този интерфейс, когато се реализира, използвайки всичко, което присъства в системата, създава изтрита структура.

    В горната диаграма интерфейсът Iruleagent се обозначава с помощта на изтрита форма, която се реализира от acctrule.dll.

Състав

Това не е стандартна UML връзка, но все още се използва в различни приложения.

Композитната агрегация е подтип на агрегационната връзка с характеристики като:

  • това е двупосочна асоциация между обектите.
  • Това е цялостна / частична връзка.
  • Ако композитът бъде изтрит, всички други части, свързани с него, се изтриват.

Композитната агрегация се описва като бинарна асоциация, украсена със запълнен черен диамант в агрегатния (цял) край.

Папката е структура, която съдържа n броя файлове в нея. Папката се използва за съхраняване на файловете в нея. Всяка папка може да бъде свързана с произволен брой файлове. В компютърна система всеки отделен файл е част от поне една папка в системата за файлова организация. Същият файл също може да бъде част от друга папка, но не е задължителен. Всеки път, когато файлът бъде премахнат от папката, папката остава незасегната, докато данните, свързани с този конкретен файл, се унищожават. Ако операцията за изтриване се изпълни върху папката, тя също така засяга всички файлове, които се намират в папката. Всички файлове, свързани с папката, се унищожават автоматично, след като папката бъде премахната от системата.

Този тип взаимоотношения в UML се познават чрез съставна агрегационна връзка.

Агрегиране

Агрегирането е подтип на връзка на асоцииране в UML. Агрегирането и съставът са и двата типа връзки за асоцииране в UML. Агрегационната връзка може да бъде описана с прости думи като „обект от един клас може да притежава или да има достъп до обектите от друг клас“.

В агрегационната връзка зависимият обект остава в обхвата на една връзка, дори когато обектът източник е унищожен.

Нека разгледаме пример за кола и колело. Колата се нуждае от колело, за да функционира правилно, но колелото не винаги се нуждае от кола. Може да се използва и с велосипеда, велосипеда или други превозни средства, но не и с конкретна кола. Тук обектът на колелото има смисъл дори без обекта на автомобила. Такъв тип връзка се нарича агрегационна връзка.

Обобщение

  • Връзката в UML позволява едно нещо да се свърже с други неща в системата.
  • Връзките за асоцииране, зависимост, обобщаване и реализация се дефинират от UML.
  • Композиционната връзка може също да се използва, за да представи, че обектът може да бъде част само от един композит наведнъж.
  • Асоциацията се използва, за да се опише, че един обект може да бъде свързан с друг обект.
  • Зависимостта означава, че обектите могат да бъдат зависими един от друг.
  • Реализацията е смислена връзка между класификаторите.
  • Обобщаването се нарича още като връзка родител-дете.