Діагра́ма кла́сів (англ. Class diagram) — статичне представлення структури моделі в UML. Відображає статичні (декларативні) елементи, такі як: класи, типи даних, їх зміст та відношення. Діаграма класів може містити позначення для пакетів та може містити позначення для вкладених пакетів. Також, діаграма класів може містити позначення деяких елементів поведінки, однак їх динаміка розкривається в інших типах діаграм.
Діаграма класів служить для представлення статичної структури моделі системи в термінології класів об'єктно-орієнтованого програмування. На цій діаграмі показують класи, інтерфейси, об'єкти й кооперації, а також їхні відносини (зв'язки).
На діаграмі класи представлені у вигляді прямокутників, які містять три відділення:
- Верхня частина містить назву класу. Вона надрукована напівжирним шрифтом і вирівняна по центру, починається з великої літери.
- Середнє відділення містить атрибути класу. Вони вирівняні по лівому краю і перша літера мала.
- Нижній відсік містить операції, які може виконувати клас. Вони також вирівняні по лівому краю і перша літера мала.
Можливо додання четветого відділення, яке містить коментарі.
Під час проектування системи визначають ряд класів і групують їх на діаграмі класів, яка допомагає визначити статичні зв'язки між ними. При детальному моделюванні класи концептуального проекту часто розбиваються на підкласи.
Для подальшого опису поведінки систем діаграми класів можуть бути доповнені діаграмою станів автомата або машиною станів UML.
Зв'язки (відношення)
Зв'язок (відношення) (англ. relationships) — це загальний термін, що охоплює конкретні типи логічних зв'язків, які зустрічаються на діаграмі класів та на діаграмі об'єктів. UML визначає наступні типи відношень (зв'язків):
Відношення на рівні екземплярів
Залежність
Залежність (англ. dependency) — це тип асоціації, де існує семантичний зв'язок між залежним і незалежним елементами моделі. Вона існує між двома елементами, якщо зміни у визначенні одного елемента (сервера або цілі) можуть спричинити зміни в іншому (клієнті або джерелі). Цей зв'язок є односпрямованим. Залежність відображається у вигляді пунктирної лінії з відкритою стрілкою, яка вказує від клієнта до постачальника.
Асоціація
Асоціація (англ. association) показує, що об'єкти однієї сутності (класу) пов'язані з об'єктами іншої сутності.
Якщо між двома класами визначена асоціація, то можна переміщатися від об'єктів одного класу до об'єктів іншого. Цілком припустимі випадки, коли обидва кінці асоціації відносяться до одного і того ж класу. Це означає, що з об'єктом деякого класу дозволено зв'язати інші об'єкти з того ж класу. Асоціація, що зв'язує два класи, називається бінарною. Можна, хоча це рідко буває необхідним, створювати асоціації, що зв'язують відразу кілька класів; вони називаються n-арними. Графічно асоціація зображується у вигляді лінії, що з'єднує клас сам з собою або з іншими класами.
Асоціації може бути присвоєно ім'я, яке описує природу відносин. Зазвичай ім'я асоціації не вказується, якщо тільки ви не хочете явно задати для неї рольові імена або у вашій моделі настільки багато асоціацій, що виникає необхідність посилатися на них і відрізняти один від одного. Ім'я буде особливо корисним, якщо між одними і тими ж класами існує кілька різних асоціацій.
Клас, що бере участь в асоціації, грає в ній деяку роль. По суті, це «обличчя», яким клас, що знаходиться на одній стороні асоціації, звернений до класу з іншого її боку. Ви можете явно позначити роль, яку клас грає в асоціації.
Часто при моделюванні буває важливо вказати, скільки об'єктів може бути пов'язано допомогою одного примірника асоціації. Це число називається кратністю (Multiplicity) ролі асоціації та записується або як вираз, значенням якого є діапазон значень, або в явному вигляді. Вказуючи кратність на одному кінці асоціації, ви тим самим говорите, що на цьому кінці саме стільки об'єктів повинно відповідати кожному об'єкту на протилежному кінці. Кратність можна задати рівною одиниці (1), можна вказати діапазон: «нуль або одиниця» (0..1), «багато» (0 .. *), «одиниця або більше» (1 .. *). Дозволяється також вказувати певне число (наприклад, 3). За допомогою списку можна задати і більш складні кратності, наприклад 0. . 1, 3..4, 6 .. *, що означає «будь-яке число об'єктів, крім 2 і 5».
Спрямована асоціація (англ. Navigable Association) - відносини направлені тільки в одному напрямку.
Агрегація
Агрегація (англ. aggregation)— проста асоціація між двома класами, де один з класів має вищий ранг (ціле) і складається з декількох менших за рангом (частин).
Ставлення такого типу також називають слабкою агрегацією (англ. weak aggregation); воно зараховане до відносин типу «має» (з урахуванням того, що об'єкт-ціле має кілька об'єктів-частин). Агрегація є окремим випадком асоціації і її зображують як просту асоціацію з незафарбованим ромбом з боку «цілого».
За потреби можна вказувати кратність агрегації.
Агрегація не накладає жорстких умов на термін існування об'єктів. Наприклад, «частини» можуть існувати тоді, коли «ціле» зникає.
Графічно агрегація представлена порожнім ромбом на блоці «цілого», і лінією, яка проведена від цього ромба до класу, що міститься в ньому («частин»).
Композиція
Композиція (англ. composition) — більш строгий варіант агрегації (англ. strong aggregation). Відома також як агрегація за значенням.
Композиція має жорстку залежність часу існування екземплярів класу контейнера та екземплярів класів що містяться в ньому. Якщо контейнер буде знищений, то весь його вміст буде також знищено.
Графічно представляється як і агрегація, але з зафарбованим ромбиком.
Відмінності між композицією і агрегацією
Відносини між класом Виш і класами Студент і Факультет злегка відрізняються один від одного, хоча обидва є відносинами агрегування. У виші може бути будь-яка кількість студентів (включаючи нуль), і кожен студент може навчатися в одному або декількох вишах; виш може складатися з одного або декількох факультетів, але кожен факультет належить одному і лише одному вишу. Відношення між класами Виш і Факультет називають композицією, оскільки при знищенні моделі Виш моделі факультетів, що належать цьому ВНЗ, також будуть знищені. Студент і Виш пов'язані агрегацією тому, що Студента не можна видалити при знищенні Вишу.
Відносини композиції
1. При спробі представити реальні відношення «ціле-частина», наприклад, двигун є частиною автомобіля.
2. Коли руйнується контейнер, руйнується і його вміст, наприклад, університет та його факультети.
Агрегаційне відношення
1. При представленні відношення програмного забезпечення або бази даних, наприклад, двигун моделі автомобіля ENG01 є частиною моделі автомобіля CM01, оскільки двигун, ENG01, може також бути частиною іншої моделі автомобіля[9].
2. Коли контейнер знищується, його вміст зазвичай не знищується, наприклад, у професора є студенти; коли професор залишає університет, студенти не йдуть разом з ним.
Таким чином, зв'язок агрегації часто називають «каталожним» утриманням, щоб відрізнити його від «фізичного» утримання композиції.
Відношення на рівні класів
Узагальнення/Наслідування
Це означає, що один з двох споріднених класів (підклас, підтип, нащадок) вважається спеціалізованою формою іншого (суперклас, супертип, батько), а суперклас вважається узагальненням підкласу. На практиці це означає, що будь-який екземпляр підкласу є також екземпляром суперкласу. Зразкове дерево узагальнень такої форми можна знайти в біологічній класифікації: людина є підкласом приматів, який є підкласом ссавців, і так далі. Відношення найлегше зрозуміти за допомогою фрази «А є В» (людина є ссавцем, ссавець є твариною).
Графічне представлення узагальнення в UML — це порожнистий трикутник на кінці лінії (або дерева ліній) суперкласу, який з'єднує його з одним або декількома підкласами.
Відношення узагальнення також відоме як успадкування (наслідування) або відношення «є».
Суперклас (базовий клас) у відношенні узагальнення також відомий як «батько», суперклас, базовий клас або базовий тип.
Підтип у відношенні спеціалізації також відомий як «дочірній», підклас, похідний клас, похідний тип, успадкований клас або успадкований тип.
Зауважте, що цей зв'язок не має нічого спільного з біологічним зв'язком «батько-дитина»: використання цих термінів є надзвичайно поширеним, але може вводити в оману.
А є різновидом Б
Наприклад, «дуб — це вид дерева», «автомобіль — це вид транспортного засобу».
Узагальнення можна показати лише на діаграмах класів і на діаграмах варіантів використання (англ. use case diagrams).
Реалізація/Впровадження
У моделюванні UML зв'язок реалізації — це зв'язок між двома елементами моделі, в якому один елемент моделі (клієнт) реалізує (впроваджує або виконує) поведінку, яку визначає інший елемент моделі (постачальник).
Графічне представлення Реалізації в UML — це порожнистий трикутник на інтерфейсному кінці пунктирної лінії (або дерева ліній), яка з'єднує її з одним або декількома реалізаторами. На інтерфейсному кінці пунктирної лінії, що з'єднує її з користувачами, використовується звичайна стрілка. На діаграмах компонентів використовується графічна конвенція «куля-розетка» (реалізатори показують кулю або льодяник, тоді як користувачі показують розетку). Реалізації можуть бути показані тільки на діаграмах класів або компонентів. Реалізація — це зв'язок між класами, інтерфейсами, компонентами та пакетами, який з'єднує елемент-клієнт з елементом-постачальником. Зв'язок реалізації між класами/компонентами та інтерфейсами показує, що клас/компонент реалізує операції.
Загальні відношення
Залежність
Залежність може бути слабшою формою зв'язку, яка вказує на те, що один клас залежить від іншого, оскільки він використовує його в певний момент часу. Один клас залежить від іншого, якщо незалежний клас є змінною-параметром або локальною змінною методу залежного класу. Іноді зв'язок між двома класами дуже слабкий. Вони взагалі не реалізуються за допомогою змінних-членів. Замість цього вони можуть бути реалізовані як аргументи функцій-членів.
Множинність
Цей асоціативний зв'язок вказує на те, що (принаймні) один з двох пов'язаних класів посилається на інший. Цей зв'язок зазвичай описується як «A має B» (мати-кішка має кошенят, кошенята мають матір-кішку).
Представлення асоціації в UML — це лінія, що з'єднує два пов'язані класи. На кожному кінці лінії є необов'язкові позначення. Наприклад, ми можемо вказати за допомогою стрілки, що гострий кінець видно з хвоста стрілки. Ми можемо вказати право власності, розмістивши кульку, роль, яку відіграють елементи цього кінця, надавши ім'я ролі, і множинність екземплярів цієї сутності (діапазон кількості об'єктів, які беруть участь в асоціації з точки зору іншого кінця).
0 | Немає екземплярів (рідко трапляється) |
0..1 | Немає екземплярів або один |
1 | Рівно один екземпляр |
1..1 | Рівно один екземпляр |
0..* | Нуль або більше екземплярів |
* | Нуль або більше екземплярів |
1..* | Один або більше екземплярів |
Аналітичні стереотипи
Сутності
Класи сутностей моделюють довготривалу інформацію, яку обробляє система, а іноді й поведінку, пов'язану з цією інформацією. Їх не слід ототожнювати з таблицями бази даних або іншими сховищами даних.
Вони зображуються у вигляді кружечків з короткою лінією, прикріпленою до нижньої частини кружечка. Крім того, їх можна зобразити як звичайні класи зі стереотипним позначенням «сутність» над назвою класу.
Призначення і рівні діаграми класів
Залежно від цілей використання діаграма класів може бути використана для побудови таких моделей:
- концептуальна модель, модель аналізу (англ. conceptual model) — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів, використовується для управління процесом мислення, розуміння; потребує концептуальної цілісності (англ. consistency);
- модель проектування (англ. design model) — діаграма класів застосовується при проектуванні інформаційних систем, призначена для подальшої розробки моделей реалізації; головна вимога — зрозумілість (англ. usability).
- модель реалізації (англ. implementation model) — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування); головна вимога — повнота (англ. completeness).
Примітки
- James Rumbaugh, Ivar Jacobson, Grady Booch (1999). The unified modeling language reference manual (англ.) . Addison Wesley Longman Inc. ISBN .
- Fowler (2003) UML Distilled: A Brief Guide to the Standard Object Modeling Language
Див. також
Вікісховище має мультимедійні дані за темою: Class diagram |
- UML
- Об'єктно-орієнтоване моделювання
- Діаграма об'єктів
- Модель «сутність — зв'язок»
- Модель предметної області
Ця стаття потребує додаткових для поліпшення її . (квітень 2016) |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Diagra ma kla siv angl Class diagram statichne predstavlennya strukturi modeli v UML Vidobrazhaye statichni deklarativni elementi taki yak klasi tipi danih yih zmist ta vidnoshennya Diagrama klasiv mozhe mistiti poznachennya dlya paketiv ta mozhe mistiti poznachennya dlya vkladenih paketiv Takozh diagrama klasiv mozhe mistiti poznachennya deyakih elementiv povedinki odnak yih dinamika rozkrivayetsya v inshih tipah diagram Iyerarhiya diagram UML 2 0 zobrazhena u viglyadi diagrami klasiv Okremi klasi predstavleni prosto pryamokutnikom z nazvoyu klasu ale zobrazhennya klasu mozhe mistiti do chotiroh viddilen Diagrama klasiv sluzhit dlya predstavlennya statichnoyi strukturi modeli sistemi v terminologiyi klasiv ob yektno oriyentovanogo programuvannya Na cij diagrami pokazuyut klasi interfejsi ob yekti j kooperaciyi a takozh yihni vidnosini zv yazki Na diagrami klasi predstavleni u viglyadi pryamokutnikiv yaki mistyat tri viddilennya Vidobrazhennya klasu z troma viddilennyami Verhnya chastina mistit nazvu klasu Vona nadrukovana napivzhirnim shriftom i virivnyana po centru pochinayetsya z velikoyi literi Serednye viddilennya mistit atributi klasu Voni virivnyani po livomu krayu i persha litera mala Nizhnij vidsik mistit operaciyi yaki mozhe vikonuvati klas Voni takozh virivnyani po livomu krayu i persha litera mala Mozhlivo dodannya chetvetogo viddilennya yake mistit komentari Pid chas proektuvannya sistemi viznachayut ryad klasiv i grupuyut yih na diagrami klasiv yaka dopomagaye viznachiti statichni zv yazki mizh nimi Pri detalnomu modelyuvanni klasi konceptualnogo proektu chasto rozbivayutsya na pidklasi Dlya podalshogo opisu povedinki sistem diagrami klasiv mozhut buti dopovneni diagramoyu staniv avtomata abo mashinoyu staniv UML Zv yazki vidnoshennya Poznachennya tipiv zv yazkiv Zv yazok vidnoshennya angl relationships ce zagalnij termin sho ohoplyuye konkretni tipi logichnih zv yazkiv yaki zustrichayutsya na diagrami klasiv ta na diagrami ob yektiv UML viznachaye nastupni tipi vidnoshen zv yazkiv Vidnoshennya na rivni ekzemplyariv Zalezhnist Zalezhnist angl dependency ce tip asociaciyi de isnuye semantichnij zv yazok mizh zalezhnim i nezalezhnim elementami modeli Vona isnuye mizh dvoma elementami yaksho zmini u viznachenni odnogo elementa servera abo cili mozhut sprichiniti zmini v inshomu kliyenti abo dzhereli Cej zv yazok ye odnospryamovanim Zalezhnist vidobrazhayetsya u viglyadi punktirnoyi liniyi z vidkritoyu strilkoyu yaka vkazuye vid kliyenta do postachalnika Asociaciya Asociaciya angl association pokazuye sho ob yekti odniyeyi sutnosti klasu pov yazani z ob yektami inshoyi sutnosti Yaksho mizh dvoma klasami viznachena asociaciya to mozhna peremishatisya vid ob yektiv odnogo klasu do ob yektiv inshogo Cilkom pripustimi vipadki koli obidva kinci asociaciyi vidnosyatsya do odnogo i togo zh klasu Ce oznachaye sho z ob yektom deyakogo klasu dozvoleno zv yazati inshi ob yekti z togo zh klasu Asociaciya sho zv yazuye dva klasi nazivayetsya binarnoyu Mozhna hocha ce ridko buvaye neobhidnim stvoryuvati asociaciyi sho zv yazuyut vidrazu kilka klasiv voni nazivayutsya n arnimi Grafichno asociaciya zobrazhuyetsya u viglyadi liniyi sho z yednuye klas sam z soboyu abo z inshimi klasami Priklad diagrami klasiv dlya zv yazku mizh dvoma klasami Asociaciyi mozhe buti prisvoyeno im ya yake opisuye prirodu vidnosin Zazvichaj im ya asociaciyi ne vkazuyetsya yaksho tilki vi ne hochete yavno zadati dlya neyi rolovi imena abo u vashij modeli nastilki bagato asociacij sho vinikaye neobhidnist posilatisya na nih i vidriznyati odin vid odnogo Im ya bude osoblivo korisnim yaksho mizh odnimi i timi zh klasami isnuye kilka riznih asociacij Klas sho bere uchast v asociaciyi graye v nij deyaku rol Po suti ce oblichchya yakim klas sho znahoditsya na odnij storoni asociaciyi zvernenij do klasu z inshogo yiyi boku Vi mozhete yavno poznachiti rol yaku klas graye v asociaciyi Chasto pri modelyuvanni buvaye vazhlivo vkazati skilki ob yektiv mozhe buti pov yazano dopomogoyu odnogo primirnika asociaciyi Ce chislo nazivayetsya kratnistyu Multiplicity roli asociaciyi ta zapisuyetsya abo yak viraz znachennyam yakogo ye diapazon znachen abo v yavnomu viglyadi Vkazuyuchi kratnist na odnomu kinci asociaciyi vi tim samim govorite sho na comu kinci same stilki ob yektiv povinno vidpovidati kozhnomu ob yektu na protilezhnomu kinci Kratnist mozhna zadati rivnoyu odinici 1 mozhna vkazati diapazon nul abo odinicya 0 1 bagato 0 odinicya abo bilshe 1 Dozvolyayetsya takozh vkazuvati pevne chislo napriklad 3 Za dopomogoyu spisku mozhna zadati i bilsh skladni kratnosti napriklad 0 1 3 4 6 sho oznachaye bud yake chislo ob yektiv krim 2 i 5 Spryamovana asociaciya angl Navigable Association vidnosini napravleni tilki v odnomu napryamku Agregaciya Priklad agregaciyi profesor mozhe buti pov yazanij z odnim abo bilshe klasiv v toj chas kozhen klas pov yazanij lishe z odnim profesorom Agregaciya angl aggregation prosta asociaciya mizh dvoma klasami de odin z klasiv maye vishij rang cile i skladayetsya z dekilkoh menshih za rangom chastin Stavlennya takogo tipu takozh nazivayut slabkoyu agregaciyeyu angl weak aggregation vono zarahovane do vidnosin tipu maye z urahuvannyam togo sho ob yekt cile maye kilka ob yektiv chastin Agregaciya ye okremim vipadkom asociaciyi i yiyi zobrazhuyut yak prostu asociaciyu z nezafarbovanim rombom z boku cilogo Za potrebi mozhna vkazuvati kratnist agregaciyi Agregaciya ne nakladaye zhorstkih umov na termin isnuvannya ob yektiv Napriklad chastini mozhut isnuvati todi koli cile znikaye Grafichno agregaciya predstavlena porozhnim rombom na bloci cilogo i liniyeyu yaka provedena vid cogo romba do klasu sho mistitsya v nomu chastin Kompoziciya Priklad vidnoshennya kompoziciyi mizh Universitetom ta Pidrozdilom yaka chitko vkazuye sho ob yekti Pidrozdilu ne isnuyut yaksho ne isnuye Universitet yakomu voni nalezhat Kompoziciya angl composition bilsh strogij variant agregaciyi angl strong aggregation Vidoma takozh yak agregaciya za znachennyam Kompoziciya maye zhorstku zalezhnist chasu isnuvannya ekzemplyariv klasu kontejnera ta ekzemplyariv klasiv sho mistyatsya v nomu Yaksho kontejner bude znishenij to ves jogo vmist bude takozh znisheno Grafichno predstavlyayetsya yak i agregaciya ale z zafarbovanim rombikom Vidminnosti mizh kompoziciyeyu i agregaciyeyu Dvi diagrami klasiv Diagrama zverhu pokazuye kompoziciyu mizh dvoma klasami Avtomobil maye rivno odin karbyurator i karbyurator ye chastinoyu odnogo avtomobilya Karbyuratori ne mozhut isnuvati yak okremi chastini vidokremleni vid konkretnogo avtomobilya Na diagrami vnizu pokazano agregaciyu mizh dvoma klasami Stavok maye nul abo bilshe Kachok a Kachka maye shonajbilshe odin Stavok odnochasno Kachka mozhe isnuvati okremo vid stavka napriklad vona mozhe zhiti bilya ozera Yaksho mi znishuyemo stavok mi zazvichaj ne vbivayemo vsih kachok Vidnosini mizh klasom Vish i klasami Student i Fakultet zlegka vidriznyayutsya odin vid odnogo hocha obidva ye vidnosinami agreguvannya U vishi mozhe buti bud yaka kilkist studentiv vklyuchayuchi nul i kozhen student mozhe navchatisya v odnomu abo dekilkoh vishah vish mozhe skladatisya z odnogo abo dekilkoh fakultetiv ale kozhen fakultet nalezhit odnomu i lishe odnomu vishu Vidnoshennya mizh klasami Vish i Fakultet nazivayut kompoziciyeyu oskilki pri znishenni modeli Vish modeli fakultetiv sho nalezhat comu VNZ takozh budut znisheni Student i Vish pov yazani agregaciyeyu tomu sho Studenta ne mozhna vidaliti pri znishenni Vishu Vidnosini kompoziciyi 1 Pri sprobi predstaviti realni vidnoshennya cile chastina napriklad dvigun ye chastinoyu avtomobilya 2 Koli rujnuyetsya kontejner rujnuyetsya i jogo vmist napriklad universitet ta jogo fakulteti Agregacijne vidnoshennya 1 Pri predstavlenni vidnoshennya programnogo zabezpechennya abo bazi danih napriklad dvigun modeli avtomobilya ENG01 ye chastinoyu modeli avtomobilya CM01 oskilki dvigun ENG01 mozhe takozh buti chastinoyu inshoyi modeli avtomobilya 9 2 Koli kontejner znishuyetsya jogo vmist zazvichaj ne znishuyetsya napriklad u profesora ye studenti koli profesor zalishaye universitet studenti ne jdut razom z nim Takim chinom zv yazok agregaciyi chasto nazivayut katalozhnim utrimannyam shob vidrizniti jogo vid fizichnogo utrimannya kompoziciyi Vidnoshennya na rivni klasiv Diagrama klasiv sho pokazuye uzagalnennya mizh superklasom Osoba ta dvoma pidklasami Student i Profesor Uzagalnennya Nasliduvannya Ce oznachaye sho odin z dvoh sporidnenih klasiv pidklas pidtip nashadok vvazhayetsya specializovanoyu formoyu inshogo superklas supertip batko a superklas vvazhayetsya uzagalnennyam pidklasu Na praktici ce oznachaye sho bud yakij ekzemplyar pidklasu ye takozh ekzemplyarom superklasu Zrazkove derevo uzagalnen takoyi formi mozhna znajti v biologichnij klasifikaciyi lyudina ye pidklasom primativ yakij ye pidklasom ssavciv i tak dali Vidnoshennya najlegshe zrozumiti za dopomogoyu frazi A ye V lyudina ye ssavcem ssavec ye tvarinoyu Grafichne predstavlennya uzagalnennya v UML ce porozhnistij trikutnik na kinci liniyi abo dereva linij superklasu yakij z yednuye jogo z odnim abo dekilkoma pidklasami Vidnoshennya uzagalnennya takozh vidome yak uspadkuvannya nasliduvannya abo vidnoshennya ye Superklas bazovij klas u vidnoshenni uzagalnennya takozh vidomij yak batko superklas bazovij klas abo bazovij tip Pidtip u vidnoshenni specializaciyi takozh vidomij yak dochirnij pidklas pohidnij klas pohidnij tip uspadkovanij klas abo uspadkovanij tip Zauvazhte sho cej zv yazok ne maye nichogo spilnogo z biologichnim zv yazkom batko ditina vikoristannya cih terminiv ye nadzvichajno poshirenim ale mozhe vvoditi v omanu A ye riznovidom B Napriklad dub ce vid dereva avtomobil ce vid transportnogo zasobu Uzagalnennya mozhna pokazati lishe na diagramah klasiv i na diagramah variantiv vikoristannya angl use case diagrams Realizaciya Vprovadzhennya U modelyuvanni UML zv yazok realizaciyi ce zv yazok mizh dvoma elementami modeli v yakomu odin element modeli kliyent realizuye vprovadzhuye abo vikonuye povedinku yaku viznachaye inshij element modeli postachalnik Grafichne predstavlennya Realizaciyi v UML ce porozhnistij trikutnik na interfejsnomu kinci punktirnoyi liniyi abo dereva linij yaka z yednuye yiyi z odnim abo dekilkoma realizatorami Na interfejsnomu kinci punktirnoyi liniyi sho z yednuye yiyi z koristuvachami vikoristovuyetsya zvichajna strilka Na diagramah komponentiv vikoristovuyetsya grafichna konvenciya kulya rozetka realizatori pokazuyut kulyu abo lodyanik todi yak koristuvachi pokazuyut rozetku Realizaciyi mozhut buti pokazani tilki na diagramah klasiv abo komponentiv Realizaciya ce zv yazok mizh klasami interfejsami komponentami ta paketami yakij z yednuye element kliyent z elementom postachalnikom Zv yazok realizaciyi mizh klasami komponentami ta interfejsami pokazuye sho klas komponent realizuye operaciyi Zagalni vidnoshennya Diagrama klasiv sho pokazuye zalezhnist mizh klasami Avtomobil ta Koleso she bilsh zrozumilim prikladom mozhe buti Avtomobil zalezhit vid Kolesa oskilki Avtomobil vzhe agreguye a ne prosto vikoristovuye Koleso Zalezhnist Zalezhnist mozhe buti slabshoyu formoyu zv yazku yaka vkazuye na te sho odin klas zalezhit vid inshogo oskilki vin vikoristovuye jogo v pevnij moment chasu Odin klas zalezhit vid inshogo yaksho nezalezhnij klas ye zminnoyu parametrom abo lokalnoyu zminnoyu metodu zalezhnogo klasu Inodi zv yazok mizh dvoma klasami duzhe slabkij Voni vzagali ne realizuyutsya za dopomogoyu zminnih chleniv Zamist cogo voni mozhut buti realizovani yak argumenti funkcij chleniv Mnozhinnist Cej asociativnij zv yazok vkazuye na te sho prinajmni odin z dvoh pov yazanih klasiv posilayetsya na inshij Cej zv yazok zazvichaj opisuyetsya yak A maye B mati kishka maye koshenyat koshenyata mayut matir kishku Predstavlennya asociaciyi v UML ce liniya sho z yednuye dva pov yazani klasi Na kozhnomu kinci liniyi ye neobov yazkovi poznachennya Napriklad mi mozhemo vkazati za dopomogoyu strilki sho gostrij kinec vidno z hvosta strilki Mi mozhemo vkazati pravo vlasnosti rozmistivshi kulku rol yaku vidigrayut elementi cogo kincya nadavshi im ya roli i mnozhinnist ekzemplyariv ciyeyi sutnosti diapazon kilkosti ob yektiv yaki berut uchast v asociaciyi z tochki zoru inshogo kincya 0 Nemaye ekzemplyariv ridko traplyayetsya 0 1 Nemaye ekzemplyariv abo odin 1 Rivno odin ekzemplyar 1 1 Rivno odin ekzemplyar 0 Nul abo bilshe ekzemplyariv Nul abo bilshe ekzemplyariv 1 Odin abo bilshe ekzemplyarivAnalitichni stereotipiSutnosti Klasi sutnostej modelyuyut dovgotrivalu informaciyu yaku obroblyaye sistema a inodi j povedinku pov yazanu z ciyeyu informaciyeyu Yih ne slid ototozhnyuvati z tablicyami bazi danih abo inshimi shovishami danih Voni zobrazhuyutsya u viglyadi kruzhechkiv z korotkoyu liniyeyu prikriplenoyu do nizhnoyi chastini kruzhechka Krim togo yih mozhna zobraziti yak zvichajni klasi zi stereotipnim poznachennyam sutnist nad nazvoyu klasu Priznachennya i rivni diagrami klasivZalezhno vid cilej vikoristannya diagrama klasiv mozhe buti vikoristana dlya pobudovi takih modelej konceptualna model model analizu angl conceptual model diagrama klasiv opisuye model predmetnoyi oblasti u nij prisutni tilki klasi prikladnih ob yektiv vikoristovuyetsya dlya upravlinnya procesom mislennya rozuminnya potrebuye konceptualnoyi cilisnosti angl consistency model proektuvannya angl design model diagrama klasiv zastosovuyetsya pri proektuvanni informacijnih sistem priznachena dlya podalshoyi rozrobki modelej realizaciyi golovna vimoga zrozumilist angl usability model realizaciyi angl implementation model diagrama klasiv mistit klasi yaki vikoristovuyutsya bezposeredno u programnomu kodi pri vikoristanni ob yektno oriyentovanih mov programuvannya golovna vimoga povnota angl completeness PrimitkiJames Rumbaugh Ivar Jacobson Grady Booch 1999 The unified modeling language reference manual angl Addison Wesley Longman Inc ISBN 0 201 30998 X Fowler 2003 UML Distilled A Brief Guide to the Standard Object Modeling LanguageDiv takozhVikishovishe maye multimedijni dani za temoyu Class diagram UML Ob yektno oriyentovane modelyuvannya Diagrama ob yektiv Model sutnist zv yazok Model predmetnoyi oblasti Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno kviten 2016