<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="uk">
	<id>https://wiki.welard.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sergiy</id>
	<title>Wiki Welard - Внесок користувача [uk]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.welard.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sergiy"/>
	<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=%D0%A1%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0:%D0%92%D0%BD%D0%B5%D1%81%D0%BE%D0%BA/Sergiy"/>
	<updated>2026-10-22T14:45:24Z</updated>
	<subtitle>Внесок користувача</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Iot-problems&amp;diff=2717</id>
		<title>Iot-problems</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Iot-problems&amp;diff=2717"/>
		<updated>2022-09-09T20:28:04Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Проблеми технологій Інтернету речей (Internet of things, IoT).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Інтернет речей (англ. Internet of Things, IoT) – це мережа, що складається із взаємозв’язаних фізичних об’єктів або пристроїв, які мають вбудовані сенсори, а також програмне забезпечення, що дає змогу здійснювати передавання і обмін даними між фізичним світом і комп’ютерними системами за допомогою використання стандартних протоколів зв’язку. Крім сенсорів, мережа може мати виконавчі пристрої, вбудовані у фізичні об’єкти і пов’язані між собою через дротові й без дротові мережі. Ці взаємопов’язані об’єкти мають можливість зчитування та приведення в дію функції програмування та ідентифікації, а також дають змогу обійтись без участі людини за рахунок використання інтелектуальних інтерфейсів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Інтернет речей передбачає підключення до глобальної комп’ютерної мережі побутових предметів за допомогою вбудованих модулів зв’язку, завдяки чому вони отримують можливість взаємодіяти один з одним, із зовнішнім середовищем, обмінюватися даними і здійснювати операції без участі людини. Сенсори консолідують дані в режимі реального часу і мають можливість прямої інтеграції і з баз даних і сховищами даних та ERP-системами тощо. &lt;br /&gt;
&lt;br /&gt;
Всі ці впроваджені нововведення додають серйозних проблем, що пов'язані з '''інформаційною безпекою'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Безпека IoT стала одним з найважливіших аспектів нових технологій'''. Можливо здасться, що не існує ризику для даних, що передаються і зберігаються такими системами, вони не є вразливими, але реальність така, що IoT пристрої, які не мають належного захисту, піддаються атакам, які вже інфіковані шкідливим кодом для створення ботнету.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Основні уразливості''' ==&lt;br /&gt;
&lt;br /&gt;
Порушення конфіденційності традиційних мереж зв'язку (повтори, підслуховування, спотворення інформації і т. д.). &lt;br /&gt;
&lt;br /&gt;
Велику загрозу несе керування пристроїв за допомогою міжмашинної взаємодії. Жодну написану людиною програму не можна вважати стовідсотково точною; для неї пишуться різні патчі для виправлення помилок. Така ж доля чекає датчики в інтернет-пристроях. Із посиленням ролі даних пристроїв в житті людей буде збільшуватися загроза безпеці всіх даних, навіть найнезначніших на перший погляд. Необхідно оцінювати будь-який витік інформації, так як резюмування її складових може представляти небезпеку для життя як фізичних, так і юридичних осіб (найбільших компаній).&lt;br /&gt;
&lt;br /&gt;
У такому разі ще виявляється важливим захищати критично важливу інфраструктуру, таку як мережа електропередачі. Необхідно підготувати базу для несподіваного аварійного випадку, а також вибрати правильне співвідношення для відкритості та вбудованої надмірності.&lt;br /&gt;
&lt;br /&gt;
Одним з '''найбільш небезпечних напрямків атаки''', на які варто звернути увагу, є '''DDoS-атака'''. Їх мета представляє з себе захоплення системних ресурсів і утруднення доступу до них інших користувачів. Так 21 жовтня 2016 року в США була здійснена серія DDoS-атак, яка призвела до глобального порушення інтернет-трафіку. Оскільки вона була спрямована на систему доменних імен (DNS), яка отримує інформацію про домени,  повсякденні активності, такі як соціальні мережі або онлайн покупки, стали недоступні на деякий час. Основні інформаційні потоки зловмисників були спрямовані на сервери компанії Dyn, яка є головним постачальником DNS-послуг для таких найбільших компаній, як Twitter, Pinterest, Reddit, GitHub, Etsy, Tumblr, Spotify, PayPal і Verizon. Здійснення таких атак стало можливим завдяки підключенню до незахищених цифрових пристроїв: Маршрутизаторів і камер відеоспостереження. Хоч вони і не є потужними комп'ютерами, але здатні генерувати величезні обсяги паразитичної інформації для серверів, особливо при одночасному підключенні.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Сучасна концепція Інтернету речей передбачає комунікацію об’єктів, які використовують технології для&lt;br /&gt;
взаємодії між собою та з навколишнім середовищем. Частина мережних протоколів адаптовані для використання в&lt;br /&gt;
IoT і їх можна описати як складову TCP/IP моделі. Тому вразливості цих протоколів можна використовувати і для&lt;br /&gt;
зламу систем, які використовують Інтернет речей. Зловмисник може атакувати мережне обладнання, що&lt;br /&gt;
використовується в системі. Серед компонентів розумного дому та охоронних систем значна частина має проблеми&lt;br /&gt;
з безпекою, які характерні для цілого ряду пристроїв, а не просто для певної серії ненадійного виробника.&lt;br /&gt;
Розглянемо масові грубі порушення принципів розробки: використання незмінних (hardcoded) та прихованих&lt;br /&gt;
сервісних облікових записів; застосування однакових або легко передбачуваних паролів та ПІН-кодів; відсутність&lt;br /&gt;
перевірки прав доступу при звернені до відомої сторінки налаштувань або прямого виклику зображень та&lt;br /&gt;
відеопотоку IP-камер; некоректна обробка отримуваних даних, що викликає переповнення буферу. Як наслідок,&lt;br /&gt;
можна отримати виконання довільного коду при отримані попередньо складеного TCP-пакету; примусове&lt;br /&gt;
переключення серверу на використання старих версій протоколів за запитом клієнтського пристрою; та інші типові&lt;br /&gt;
помилки, які спрощують конфігурування пристроїв неспеціалістами, що в свою чергу послаблює параметри&lt;br /&gt;
безпеки в цілому (в тому числі – віддаленого та без належної авторизації). З прикладів використання вразливостей&lt;br /&gt;
систем IoT можна навести DNS rebinding, DoS/DDoS-атаки, ботнети, концепція Man-in-The-Middle та інші.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Уже сьогодні спеціалісти працюють над усуненням вразливостей в розумних пристроях. Для підвищення&lt;br /&gt;
якості написання програмного забезпечення для даних пристроїв необхідно підняти питання сертифікації. За умов&lt;br /&gt;
мінімальної бюрократії та надання користувачам гарантії, що продукт достатньо захищений від хакерських атак,&lt;br /&gt;
рівень довіри до виробника значно зросте. Питанням сертифікації займаються приватні компанії. Зокрема компанія&lt;br /&gt;
Online Trust Alliance (OTA) випустила IoT Trust Framework – ряд критеріїв для розробників, постачальників послуг,&lt;br /&gt;
який направлений на покращення безпеки, конфіденційності та життєвого циклу їх IoT-продуктів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Компанія Verizon запустила програму тестування безпеки та сертифікації IoT-пристроїв. Як стверджують її&lt;br /&gt;
розробники, вона являється однією з перших в своєму роді, і тестує такі складові як сповіщення/протоколювання,&lt;br /&gt;
криптографія, аутентифікації, зв’язок, фізична безпека та безпека платформи. Пристрої, що пройшли сертифікацію,&lt;br /&gt;
будуть відмічені знаком схвалення ICSA Labs та буде вказувати, що вони були протестовані, а знайдені&lt;br /&gt;
вразливості були усунені. Також пристроїв, що пройшли сертифікацію будуть знаходитись під наглядом і&lt;br /&gt;
періодично тестуватись протягом їх життєвого циклу для збереження безпеки. Інтернет речей стала однією з&lt;br /&gt;
перших сфер, в якій використовується блокчейн-технологія. Наприклад, управління аутентифікацією, перевірка&lt;br /&gt;
роботоспроможності різних сервісів та ін. Ряд компаній, як Cisco, BNY Mellon, Bosch, Foxconn та ряд інших&lt;br /&gt;
організували консорціум, який буде знаходити рішення з використання блокчейну для збільшення безпеки і&lt;br /&gt;
покращення взаємодії IoT-продуктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Отже, довіра користувачів до інтернету речей залежить від реалізації безпеки в ньому, тому саме питання її&lt;br /&gt;
забезпечення має бути ключовим для виробників. Позитивним є об’єднання компаній заради створення стандартів&lt;br /&gt;
та реалізації різних концепцій для підтримки цієї технології та її популяризації.&lt;br /&gt;
&lt;br /&gt;
[https://conf.ztu.edu.ua/wp-content/uploads/2019/02/115-1.pdf Джерело]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Статистичні дані''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У січні 2014 року в журналі '''Forbes''' кібержурналіст Джозеф Стейнберг (англ. Joseph Steinberg) '''опублікував список''' пов'язаних із '''Інтернетом приладів''', '''які «шпигують» за нами буквально в наших будинках'''. До них належать '''телевізори, кухонна техніка, камери'''. Дуже '''ненадійна комп'ютерна система автомобілів''', яка '''контролює гальма, двигун, замки, капот, вентиляцію і приладову панель'''; '''ці частини системи найбільш уразливі для зловмисників''' під час спроби отримання доступу до бортової мережі. Також '''атака може бути проведена віддалено по Інтернету'''. &lt;br /&gt;
&lt;br /&gt;
Хакерами була продемонстрована можливість дистанційного керування електрокардіостимуляторами. Пізніше вони навчилися отримувати доступ до інсулінових помп й імплантованих кардіо-дефібриляторам.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Компанія Hewlett Packard провела масштабне дослідження в 2015 році, в якому повідомляється, що '''70 % пристроїв IoT мають вразливості своїх паролів''', існують '''проблеми з шифруванням даних та з дозволами для доступу''', і 50 % додатків для мобільних пристроїв не обмінюються даними.&lt;br /&gt;
&lt;br /&gt;
'''Лабораторія Касперського''' — компанія, що спеціалізується на виробництві програмного забезпечення для захисту інформації, '''провела випробування на об'єктах, підключених до IoT''', і виявила, що '''відеоняні можуть бути зламані для перехоплення відео''' та '''кавомашини''', які '''передають інформацію в незашифрованому вигляді''', можуть зберігати '''пароль мережі Wi-Fi''', до якої були приєднані.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Так, на самому початку експлуатації&lt;br /&gt;
користувачеві обов'язково потрібно замінити фабричний пароль, встановлений за&lt;br /&gt;
замовчуванням, на свій особистий, оскільки фабричні паролі однакові на всіх пристроях і не&lt;br /&gt;
відрізняються стійкістю. На жаль, роблять це далеко не всі. Оскільки не всі прилади мають&lt;br /&gt;
вбудовані засоби ІБ-захисту, власникам також слід подбати про встановлення зовнішнього&lt;br /&gt;
захисту, призначеної для домашнього використання, з тим щоб інтернет-пристрою не стали&lt;br /&gt;
відкритими шлюзами в домашню мережу або прямими інструментами заподіяння шкоди.&lt;br /&gt;
В ході проведеного HP дослідження виявлено, що приблизно в 70% проаналізованих&lt;br /&gt;
пристроїв не шифрується бездротової трафік. Веб-інтрефейс 60% пристроїв експерти HP&lt;br /&gt;
порахували небезпечним через небезпечну організацію доступу і високих ризиків&lt;br /&gt;
міжсайтового скриптинга. У більшості пристроїв передбачені паролі недостатньою стійкості.&lt;br /&gt;
Приблизно 90% пристроїв збирають ту чи іншу персональну інформацію про власника без&lt;br /&gt;
його відома.&lt;br /&gt;
Всього ж фахівці HP нарахували близько 25 різних вразливостей в кожному з&lt;br /&gt;
досліджених пристроїв (телевізорів, дверних замків, побутових ваг, домашніх охоронних&lt;br /&gt;
систем, електророзеток ...) і їх мобільних і хмарних компонентах.&lt;br /&gt;
Висновок експертів HP невтішний: безпечної екосистеми IoT на сьогоднішній день не&lt;br /&gt;
існує. Особливу небезпеку речі Інтернету таять в собі в контексті поширення цільових атак&lt;br /&gt;
(APT). Варто тільки зловмисникам проявити інтерес до будь-кого з нас, і наші вірні&lt;br /&gt;
помічники зі світу IoT перетворюються в зрадників, нарозхрист відкривають доступ в світ&lt;br /&gt;
своїх власників.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Слабкі місця IoT:''' ==&lt;br /&gt;
&lt;br /&gt;
* перехід на IPv6;&lt;br /&gt;
* живлення датчиків;&lt;br /&gt;
* стандартизація архітектури і протоколів, сертифікація пристроїв.&lt;br /&gt;
* інформаційна безпека;&lt;br /&gt;
* стандартні облікові записи від виробника, слабка аутентифікація;&lt;br /&gt;
* відсутність підтримки з боку виробника для усунення вразливостей&lt;br /&gt;
* важко або неможливо оновити ПЗ і ОС;&lt;br /&gt;
* використання текстових протоколів і непотрібних відкритих портів;&lt;br /&gt;
* використовуючи слабкість одного гаджета, хакеру легко потрапити у всю мережу;&lt;br /&gt;
* використання незахищених мобільних технологій;&lt;br /&gt;
* використання незахищеною хмарної інфраструктури;&lt;br /&gt;
* використання небезпечного ПЗ.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2679</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2679"/>
		<updated>2022-09-09T14:24:32Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0 - функціональні моделі, засновані на методі SADT;'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X - діаграми даних &amp;quot;сутність-зв'язок&amp;quot; (ERD);'''&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3 - діаграми потоків робіт (Work Flow Diagrams);'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2676</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2676"/>
		<updated>2022-09-09T14:21:43Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
'''IDEF0 - функціональні моделі, засновані на методі SADT;'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X'''&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X - діаграми даних &amp;quot;сутність-зв'язок&amp;quot; (ERD);'''&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
'''IDEF3 - діаграми потоків робіт (Work Flow Diagrams);'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2674</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2674"/>
		<updated>2022-09-09T14:21:02Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X'''&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X - діаграми даних &amp;quot;сутність-зв'язок&amp;quot; (ERD);'''&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
'''IDEF3 - діаграми потоків робіт (Work Flow Diagrams);'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2672</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2672"/>
		<updated>2022-09-09T14:20:03Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X'''&lt;br /&gt;
&lt;br /&gt;
IDEF1X - діаграми даних &amp;quot;сутність-зв'язок&amp;quot; (ERD);&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X (IDEF1 Extended)''' – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
IDEF3 - діаграми потоків робіт (Work Flow Diagrams);&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2671</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2671"/>
		<updated>2022-09-09T14:19:32Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X'''&lt;br /&gt;
&lt;br /&gt;
IDEF1X - діаграми даних &amp;quot;сутність-зв'язок&amp;quot; (ERD);&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
'''IDEF1X (IDEF1 Extended)''' – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
IDEF3 - діаграми потоків робіт (Work Flow Diagrams);&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2670</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2670"/>
		<updated>2022-09-09T14:11:06Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2669</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2669"/>
		<updated>2022-09-09T14:10:43Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Завдання UML.''' ==&lt;br /&gt;
&lt;br /&gt;
Мова UML призначена для рішення наступних завдань:&lt;br /&gt;
&lt;br /&gt;
1. надати в розпорядження користувачів готову до використання виразну потужну мову візуального моделювання, що дозволяє розробляти осмислені моделі й обмінюватися ними;&lt;br /&gt;
&lt;br /&gt;
2. передбачити внутрішні механізми розширюваності й спеціалізації базових концепцій мови;&lt;br /&gt;
&lt;br /&gt;
3. забезпечити максимальну незалежність проекту створення програмного забезпечення від конкретних мов програмування й процесів розробки;&lt;br /&gt;
&lt;br /&gt;
4. забезпечити формальну основу для однозначної інтерпретації мови;&lt;br /&gt;
&lt;br /&gt;
5. стимулювати розширення ринку об’єктно-орієнтованих інструментальних засобів створення програмного забезпечення;&lt;br /&gt;
&lt;br /&gt;
6. інтегрувати кращий практичний досвід використання мови й реалізації програмних засобів його підтримки.&lt;br /&gt;
&lt;br /&gt;
У значній мірі мова UML не залежить від процесу розробки програмного забезпечення. Уніфікований процес розробки ПЗ (Rational Unified Process, RUP) - це один з підходів до організації життєвого циклу ПЗ, який особливо добре сполучається з UML. Цей комерційний продукт задає строгий регламент розподілу завдань і відповідальності між виконавцями в процесі розробки ПЗ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2668</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2668"/>
		<updated>2022-09-09T14:00:45Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію '''IDEF1X'''. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF2'''&lt;br /&gt;
&lt;br /&gt;
Simulation Model Design – методологія динамічного моделювання розвитку систем. У зв'язку з дуже серйозними складнощами аналізу динамічних систем від цього стандарту практично відмовилися, і його розвиток припинився на початковому етапі. Нині присутні алгоритми та його комп'ютерні реалізації, дозволяють перетворювати набір статичних діаграм IDEF0 в динамічні моделі, побудовані з урахуванням «розфарбованих мереж Петрі» (CPN — Color Petri Nets);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF3'''&lt;br /&gt;
&lt;br /&gt;
Process Description Capture (Документування технологічних процесів) — методологія документування процесів, які у системі (наприклад, для підприємства), описує сценарій і послідовність операцій кожному за процесу. IDEF3 має прямий взаємозв'язок із методологією IDEF0 - кожна функція (функціональний блок) може бути представлена у вигляді окремого процесу засобами IDEF3;&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2667</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2667"/>
		<updated>2022-09-09T13:55:46Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Information Modeling — методологія моделювання інформаційних потоків усередині системи, що дозволяє відображати та аналізувати їх структуру та взаємозв'язки.&lt;br /&gt;
&lt;br /&gt;
IDEF1X (IDEF1 Extended) – Data Modeling – методологія моделювання баз даних на основі моделі «сутність-зв'язок». Застосовується для побудови інформаційної моделі, що представляє структуру інформації, необхідної підтримки функцій виробничої системи чи середовища. Метод IDEF1, розроблений Т. Реймі (T. Ramey) на основі підходів П. Чена і дозволяє побудувати модель даних, еквівалентну реляційній моделі у третій нормальній формі. В даний час на основі вдосконалення методології IDEF1 створено її нову версію — методологію IDEF1X. Вона розроблена з урахуванням таких вимог, як простота вивчення та можливість автоматизації. IDEF1X-діаграми використовуються рядом поширених CASE-засобів (зокрема, ERwin, Design/IDEF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' - Нотація для документування процесів виробництва та відображення інформації про використання ресурсів на кожному з етапів проектування систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF1''' - Нотація для документування інформації про виробниче оточення систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF2''' - Нотація для документування поведінки системи в часі.&lt;br /&gt;
&lt;br /&gt;
'''IDEF3''' - Нотація спеціально для моделювання бізнес-процесів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2666</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2666"/>
		<updated>2022-09-09T13:45:07Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) '''для вирішення завдань моделювання складних систем''', що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IDEF-методології створювалися у межах запропонованої ВПС США програми комп'ютеризації промисловості — ICAM, під час реалізації якої виявилася потреба у розробці методів аналізу процесів взаємодії виробничих (промислових) системах. &lt;br /&gt;
Принциповою вимогою при розробці аналізованого сімейства методологій була '''можливість ефективного обміну інформацією між усіма фахівцями''' – учасниками програми ICAM (звідси назва: Icam DEFinition – IDEF; інший варіант – Integrated DEFinition). Після опублікування стандарту він був успішно застосований у різних галузях бізнесу, показавши себе ефективним засобом аналізу, конструювання та відображення бізнес-процесів. Понад те, що з широким застосуванням IDEF (і попередньої методології — SADT) пов'язано виникнення основних ідей популярного нині поняття BPR (бізнес-процес реінжиніринг).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
Function Modeling (Моделювання бізнес-процесу) – методологія функціонального моделювання. За допомогою наочної графічної мови IDEF0 система, що вивчається, постає перед розробниками та аналітиками у вигляді набору взаємопов'язаних функцій (функціональних блоків — у термінах IDEF0). Як правило, моделювання засобами IDEF0 є першим етапом вивчення будь-якої системи. Методологію IDEF0 можна вважати наступним етапом розвитку добре відомої графічної мови опису функціональних систем SADT (Structured Analysis and Design Technique);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' - Нотація для документування процесів виробництва та відображення інформації про використання ресурсів на кожному з етапів проектування систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF1''' - Нотація для документування інформації про виробниче оточення систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF2''' - Нотація для документування поведінки системи в часі.&lt;br /&gt;
&lt;br /&gt;
'''IDEF3''' - Нотація спеціально для моделювання бізнес-процесів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2665</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2665"/>
		<updated>2022-09-09T13:35:43Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF (I-CAM DEFinition або Integrated DEFinition)''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF (I-CAM DEFinition або Integrated DEFinition)''' — методологія сімейства ICAM (Integrated Computer-Aided Manufacturing) для вирішення завдань моделювання складних систем, що дозволяють відображати та аналізувати моделі діяльності широкого спектру складних систем у різних розрізах. При цьому широта та глибина обстеження процесів у системі визначається самим розробником, що дозволяє не перевантажувати створювану модель зайвими даними.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' - Нотація для документування процесів виробництва та відображення інформації про використання ресурсів на кожному з етапів проектування систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF1''' - Нотація для документування інформації про виробниче оточення систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF2''' - Нотація для документування поведінки системи в часі.&lt;br /&gt;
&lt;br /&gt;
'''IDEF3''' - Нотація спеціально для моделювання бізнес-процесів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2664</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2664"/>
		<updated>2022-09-09T13:25:14Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' - Нотація для документування процесів виробництва та відображення інформації про використання ресурсів на кожному з етапів проектування систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF1''' - Нотація для документування інформації про виробниче оточення систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF2''' - Нотація для документування поведінки системи в часі.&lt;br /&gt;
&lt;br /&gt;
'''IDEF3''' - Нотація спеціально для моделювання бізнес-процесів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2663</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2663"/>
		<updated>2022-09-09T13:23:55Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1''' - Нотація для документування інформації про виробниче оточення систем&lt;br /&gt;
&lt;br /&gt;
'''IDEF2''' - Нотація для документування поведінки системи в часі.&lt;br /&gt;
&lt;br /&gt;
'''IDEF3''' - Нотація спеціально для моделювання бізнес-процесів&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2662</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2662"/>
		<updated>2022-09-09T13:20:12Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2661</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2661"/>
		<updated>2022-09-09T13:20:00Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML - це мова, призначена для '''візуалізації''', '''спеціфікації''', '''конструювання''' й '''документування програмних систем'''. Слово «уніфікований» у назві мови означає, що UML може використовуватися для моделювання широкого кола додатків від вбудованих систем і систем реального часу до розподілених web-додатків. Виразні засоби мови дозволяють описати систему зі всіх точок зору, що мають відношення до розробки й розгортання.&lt;br /&gt;
&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2660</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2660"/>
		<updated>2022-09-09T13:07:28Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''&amp;lt;big&amp;gt;Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).&amp;lt;/big&amp;gt;''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2659</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2659"/>
		<updated>2022-09-09T13:04:41Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2658</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2658"/>
		<updated>2022-09-09T13:00:06Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0''' — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
'''IDEF1Х''' — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
'''IDEF4''' — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2657</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2657"/>
		<updated>2022-09-09T12:58:38Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Техніки моделювання IDEF (IDEF Modeling Techniques)''' — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''IDEF0'''&lt;br /&gt;
&lt;br /&gt;
IDEF0 — це техніка моделювання робіт. Методологія функціонального моделювання IDEF0 може бути використана не тільки для економічного моделювання, а й для формування вимог до складних технічних систем. Прикладом такого підходу став проєкт, започаткований TARDEC (США) щодо ідентифікації критичних вимог до основного бойового танку НАТО (Main Battle Tank, MBT).&lt;br /&gt;
&lt;br /&gt;
IDEF1Х — це техніка моделювання правил, даних.&lt;br /&gt;
&lt;br /&gt;
IDEF4 — мова моделювання об'єктно-орієнтованого проєктування клієнт-серверних систем, що базуються на компонентах.&lt;br /&gt;
&lt;br /&gt;
IDEF10 — IDEF14&lt;br /&gt;
IDEF10 — Implementation Architecture Modeling — моделювання архітектури виконання;&lt;br /&gt;
IDEF11 — Information Artifact Modeling - моделювання інформаційних артифактів;&lt;br /&gt;
IDEF12 — Organization Modeling — організаційне моделювання;&lt;br /&gt;
IDEF13 — Three Schema Mapping Design — трисхемне проєктування перетворення даних.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2656</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2656"/>
		<updated>2022-09-09T12:38:28Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''IDEF''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Техніки моделювання IDEF (IDEF Modeling Techniques) — комбінація графічних і мовних символів та правил, розроблених для фіксації процесів і структури інформації в організації.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2655</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2655"/>
		<updated>2022-09-09T12:35:49Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
* Підвидом діаграм композитної структури є '''Діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2654</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2654"/>
		<updated>2022-09-09T12:34:12Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
  * Підвидом діаграм композитної структури є '''діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2653</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2653"/>
		<updated>2022-09-09T12:33:53Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
 * Підвидом діаграм композитної структури є '''діаграми кооперації''' (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2652</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2652"/>
		<updated>2022-09-09T12:29:17Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма композитної/складеної структури'''&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма розгортання'''&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма об'єктів'''&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма пакетів'''&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2651</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2651"/>
		<updated>2022-09-09T12:18:49Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2650</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2650"/>
		<updated>2022-09-09T12:18:34Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|400*400px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
&lt;br /&gt;
'''Діаграма компонентів'''&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2649</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2649"/>
		<updated>2022-09-09T12:17:21Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|400*400px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2648</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2648"/>
		<updated>2022-09-09T12:16:59Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|400*400pix|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2647</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2647"/>
		<updated>2022-09-09T12:16:18Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg||центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2646</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2646"/>
		<updated>2022-09-09T12:16:06Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|серед|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2645</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2645"/>
		<updated>2022-09-09T12:15:43Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|мідл|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2644</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2644"/>
		<updated>2022-09-09T12:15:15Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100px*100px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2643</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2643"/>
		<updated>2022-09-09T12:08:46Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|міні|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2642</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2642"/>
		<updated>2022-09-09T12:08:23Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100px*100px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2641</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2641"/>
		<updated>2022-09-09T12:07:58Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100*100px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Структурні діаграми'''&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма профілю'''&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
'''Діаграма класів'''&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2639</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2639"/>
		<updated>2022-09-09T12:02:01Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100*100px|центр]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Структурні діаграми&lt;br /&gt;
Структурні діаграми (англ. Structure Diagrams) відображають статичні стани системи. За їхньою допомогою виділяються основні елементи системи, яка проектується. Оскільки структурні діаграми відображують саме структури, вони використовуються при документуванні архітектури програмного забезпечення.&lt;br /&gt;
&lt;br /&gt;
Діаграма профілю&lt;br /&gt;
Діаграма профілю (англ. Profile Diagram) — діаграма профілю працює на рівні метамоделі, щоб показати стереотипи як класи зі стереотипом «стереотип», а профілі як пакети зі стереотипом «профіль». Відношення розширення (суцільна лінія із замкнутим, заповненим наконечником стрілки) вказує, який елемент метамоделі поширює даний стереотип. Діаграма профілю не існувала в UML 1. Вона була представлена в UML 2 для відображення використання профілів. До її впровадження для відображення цієї проблеми використовувалися інші діаграми.&lt;br /&gt;
&lt;br /&gt;
Діаграма класів&lt;br /&gt;
Діаграма класів (англ. Class Diagram) — статична структурна діаграма, яка описує струкутру системи, демонструє класи системи, їхні атрибути, методи й залежності між класами.&lt;br /&gt;
&lt;br /&gt;
Існують різні точки зору на побудову діаграм класів залежно від цілей їхнього застосування:&lt;br /&gt;
&lt;br /&gt;
концептуальна точка зору — діаграма класів описує модель предметної області, у ній присутні тільки класи прикладних об'єктів;&lt;br /&gt;
точка зору специфікації — діаграма класів застосовується при проектуванні інформаційних систем;&lt;br /&gt;
точка зору реалізації — діаграма класів містить класи, які використовуються безпосередньо у програмному коді (при використанні об'єктно-орієнтованих мов програмування).&lt;br /&gt;
Діаграма компонентів&lt;br /&gt;
Діаграма компонентів (англ. Component diagram) — статична структурна діаграма, яка показує поділ програмної системи на структурні компоненти й зв'язки (залежності) між компонентами. В якості фізичних компонентів можуть виступати файли, бібліотеки, модулі, файли виконання, пакети й т.п.&lt;br /&gt;
&lt;br /&gt;
Діаграма композитної/складеної структури&lt;br /&gt;
Файл:Decorator template.png&lt;br /&gt;
Decorator template&lt;br /&gt;
Діаграма композитної/складеної структури (англ. Composite structure diagram) — статична структура діаграма, яка демонструє внутрішню структура класів й, за можливістю, взаємодію елементів (частин) внутрішньої структури класу.&lt;br /&gt;
&lt;br /&gt;
Підвидом діаграм композитної структури є діаграми кооперації (англ. Collaboration diagram, введені в UML 2.0), які показують ролі й взаємодію класів у рамках кооперації. Кооперації є зручними для моделювання шаблонів проектування.&lt;br /&gt;
&lt;br /&gt;
Діаграми композитної структури можуть використовуватися разом з діаграмами класів.&lt;br /&gt;
&lt;br /&gt;
Діаграма розгортання&lt;br /&gt;
Діаграма розгортання, діаграма розміщення (англ. Deployment diagram) — слугує для моделювання працюючих вузлів (апаратних засобів, англ. node) й артефактів, які на них розгорнуті. У UML2 на вузлах розгортаються артефакти, (англ. artifact), тоді як у UML1 на вузлах розгоралися компоненти. Між артефактом і логічним елементом (компонентом), який він реалізує, установлюється залежність маніфестації.&lt;br /&gt;
&lt;br /&gt;
Діаграма об'єктів&lt;br /&gt;
Діаграма об'єктів (англ. Object diagram) — демонструє повний або частковий знімок системи, яка моделюється, у заданий момент часу. На діаграмі об'єктів відображуються примірники класів (об'єктів) системи з указанням поточних значень їхніх атрибутів й зв'язків між об'єктами.&lt;br /&gt;
&lt;br /&gt;
Діаграма пакетів&lt;br /&gt;
Діаграма пакетів (англ. Package diagram) — структуран діаграма, основним змістом якої є пакети і відношення між ними. Жорсткий розділ між різними структурними діаграмами не проводиться, тому дана назва пропонується виключно для зручності й не має семантичного значення (пакети й діаграми пакетів можуть бути присутніми на інших структурних діаграмах). Діаграми пакетів служать, насамперед, в організацію елементів у групи за ознакою з метою спрощення структури та організації роботи з моделлю системи.&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2638</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2638"/>
		<updated>2022-09-09T12:00:28Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100*100px|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2637</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2637"/>
		<updated>2022-09-09T12:00:10Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100*100px|право]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2636</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2636"/>
		<updated>2022-09-09T11:59:47Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|100*100px|ліво]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2635</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2635"/>
		<updated>2022-09-09T11:58:26Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|mini|ліво]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2634</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2634"/>
		<updated>2022-09-09T11:58:00Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|mini|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2633</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2633"/>
		<updated>2022-09-09T11:57:40Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|250*250px|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2632</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2632"/>
		<updated>2022-09-09T11:57:18Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|500*500px|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2631</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2631"/>
		<updated>2022-09-09T11:57:01Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|1000*750px|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2630</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2630"/>
		<updated>2022-09-09T11:55:51Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|1000*750|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2629</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2629"/>
		<updated>2022-09-09T11:55:16Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|центр|250*250]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2628</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2628"/>
		<updated>2022-09-09T11:54:51Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|250*250|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2627</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2627"/>
		<updated>2022-09-09T11:54:24Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|500*600|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2626</id>
		<title>Uml-language</title>
		<link rel="alternate" type="text/html" href="https://wiki.welard.com/index.php?title=Uml-language&amp;diff=2626"/>
		<updated>2022-09-09T11:53:10Z</updated>

		<summary type="html">&lt;p&gt;Sergiy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== '''Уніфікована мова моделювання програмного забезпечення (UML-Unified Modeling Language) та нотації проектування IDEF (Integrated DEFinition) (IDEF0, IDEF1, IDEF2, IDEF3).''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML (англ. Unified Modeling Language) — уніфікована мова моделювання, використовується у парадигмі об'єктно-орієнтованого програмування.&lt;br /&gt;
UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, яка називається UML-моделлю. UML був створений для визначення, візуалізації, проєктування й документування в основному програмних систем. UML не є мовою програмування, але в засобах виконання UML-моделей як інтерпретованого коду можлива кодогенерація.&lt;br /&gt;
&lt;br /&gt;
Перша версія (1.0) UML вийшла 13 січня 1997р., вона була створена консорціумом UML Partners за запитом Object Management Group (OMG) — організації, відповідальної за прийняття стандартів в галузі об'єктних технологій і баз даних.&lt;br /&gt;
&lt;br /&gt;
У вересні 1997 року, версія 1.1 UML була представлена на голосування в OMG.&lt;br /&gt;
&lt;br /&gt;
Поточна версія — 2.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Застосування''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''UML може бути застосовано на всіх етапах життєвого циклу аналізу бізнес-систем і розробки прикладних програм.''' Різні види діаграм які підтримуються UML, і найбагатший набір можливостей представлення певних аспектів системи робить UML універсальним засобом опису як програмних, так і ділових систем.&lt;br /&gt;
&lt;br /&gt;
Діаграми дають можливість представити систему (як ділову, так і програмну) у такому вигляді, щоб її можна було легко перевести в програмний код.&lt;br /&gt;
&lt;br /&gt;
'''Основною причиною використання мови UML є спілкування розробників між собою.'''&lt;br /&gt;
&lt;br /&gt;
Крім того, UML спеціально створювалася для оптимізації процесу розробки програмних систем, що дозволяє збільшити ефективність їх реалізації у кілька разів і помітно поліпшити якість кінцевого продукту.&lt;br /&gt;
&lt;br /&gt;
UML чудово зарекомендувала себе в багатьох успішних програмних проєктах. '''Засоби автоматичної генерації кодів дозволяють перетворювати моделі мовою UML у вихідний код об'єктно-орієнтованих мов програмування, що ще більш прискорює процес розробки.'''&lt;br /&gt;
&lt;br /&gt;
Практично усі CASE-засоби (програми автоматизації процесу аналізу і проєктування) мають підтримку UML. Моделі розроблені в UML, дозволяють значно спростити процес кодування і направити зусилля програмістів безпосередньо на реалізацію системи.&lt;br /&gt;
&lt;br /&gt;
Діаграми підвищують супроводжуваність проєкту і полегшують розробку документації.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UML необхідний:&lt;br /&gt;
&lt;br /&gt;
* керівникам проєктів, які керують розподілом завдань і контролем за проєктом ;&lt;br /&gt;
* проєктувальникам інформаційних систем які розробляють технічні завдання для програмістів;&lt;br /&gt;
* бізнес-аналітикам, які досліджують реальну систему і здійснюють інжиніринг і реінжиніринг бізнесу компанії;&lt;br /&gt;
* програмістам які реалізують модулі інформаційної системи.&lt;br /&gt;
&lt;br /&gt;
При модифікації системи об'єктний підхід дозволяє легко включати в систему нові об'єкти і виключати застарілі без істотної зміни її життєздатності. Використання побудованої моделі при модифікаціях системи дає можливість усунути небажані наслідки змін, оскільки вони не ламають структури системи, а тільки змінюють поведінку об'єктів.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Діаграми''' ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''UML використовується 14 видів діаграм''' (для уникнення непорозумінь, також наведено англомовні назви):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
'''Structure Diagrams:'''&lt;br /&gt;
* Class diagram&lt;br /&gt;
* Component diagram&lt;br /&gt;
* Composite structure diagram&lt;br /&gt;
** Collaboration (UML2.0)&lt;br /&gt;
* Deployment diagram&lt;br /&gt;
* Object diagram&lt;br /&gt;
* Package diagram&lt;br /&gt;
'''Behavior Diagrams:'''&lt;br /&gt;
* Activity diagram&lt;br /&gt;
* State Machine diagram&lt;br /&gt;
* Use case diagram&lt;br /&gt;
* '''Interaction Diagrams:'''&lt;br /&gt;
** Collaboration (UML1.x) / &amp;lt;br/&amp;gt;Communication diagram (UML2.0)&lt;br /&gt;
** Interaction overview diagram (UML2.0)&lt;br /&gt;
** Sequence diagram&lt;br /&gt;
** UML Timing Diagram (UML2.0)&lt;br /&gt;
||&lt;br /&gt;
'''Структурні діаграми:'''&lt;br /&gt;
* Діаграма класів&lt;br /&gt;
* Діаграма компонентів&lt;br /&gt;
* Композитної/складеної структури&lt;br /&gt;
** Кооперації (UML2.0)&lt;br /&gt;
* Діаграма розгортування&lt;br /&gt;
* Діаграма об'єктів&lt;br /&gt;
* Діаграма пакетів&lt;br /&gt;
'''Діаграми поведінки:'''&lt;br /&gt;
* Діаграма діяльності&lt;br /&gt;
* Діаграма станів (UML)&lt;br /&gt;
* Діаграма прецедентів&lt;br /&gt;
'''Діаграми взаємодії:'''&lt;br /&gt;
* Діаграма Кооперації (UML1.x) / &amp;lt;br/&amp;gt;Комунікації (UML2.0)&lt;br /&gt;
* Огляду взаємодії (UML2.0)&lt;br /&gt;
* Діаграма послідовності&lt;br /&gt;
* Діаграма Синхронізації (UML2.0)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Файл:UML-diagram.jpg|центр]]&lt;/div&gt;</summary>
		<author><name>Sergiy</name></author>
		
	</entry>
</feed>