Уніфікована мова моделювання (UML - Unified Modeling Language) з'явилась внаслідок розвитку методів об'єктно-орієнтованого аналізу і проектування (OOA&D), що виникли наприкінці 80-х років. Мова UML поєднує в собі методи Граді Буча (Booch чи Booch'91), Джима Рамбо (Object Modeling Technique - OMT) і Айвара Джекобсона (Object-Oriented Software Engineering - OOSE), проте володіє розширеними можливостями. Мова моделювання пройшла процес стандартизації в рамках консорціуму OMG (Object Management Group) і на сьогоднішній день представляє собою фактичний стандарт OMG.
UML - це назва мови моделювання, але не методу, оскільки більшість методів містять щонайменше мову моделювання та процес. Мова моделювання - це нотація (як правило, графічна), яка використовується методами для опису проектів; процес - це рекомендація щодо етапів, які необхідно виконати при розробці проекту. Таким чином, мова моделювання є найважливішою частиною методу. Якщо проект обговорюється розробниками, всі вони повинні розуміти саме мову моделювання, а не процес, що використовується при розробці проекту. Розробниками мови UML було також створено і RUP (Rational Unified Process) - раціональний уніфікований процес. Причому, при застосуванні мови UML не висувається вимога одночасного використання RUP, оскільки вони є абсолютно незалежними. Процес RUP може використовуватись для розробки проекту в залежності від типу останнього та вимог замовника.
Розглянемо етапи розвитку галузі розробок програмного забезпечення для ілюстрації процесу становлення мови UML. Поняття об'єкту набуло практичного значення у проектуванні в 70-х - 80-х роках і стало основою методів об'єктно-орієнтованих розробок. В період з 1988 по 1992 роки з'явились наступні праці, присвячені методам об'єктно-орієнтованого аналізу і проектування:
o роботи Саллі Шлеєр (Sally Shlaer) та Стіва Меллора (Steve Mellor), що пізніше були втілені у рекурсивному проектуванні (Recursive Design);
o Пітер Коуд (Peter Coad) та Ед Йордон (Ed Yourdon) розробили неформальний та орієнтований на прототипи метод Коуда;
o Граді Буч (Grady Booch) з компанії Rational Software написав фундаментальну роботу по розробці систем на мові Ada;
o Джим Рамбо (James Rumbaugh) очолив групу у дослідній лабораторії General Electric і розробив популярний метод Object Modeling Technique - OMT;
o Айвар Джекобсон (Ivar Jacobson) виклав свій досвід роботи з телефонними системами фірми Ericsson і вперше ввів поняття варіанту використання (Use Case).
До 1995 року серед методів аналізу і проектування спостерігалось різноманіття підходів та жорстка конкуренція. На той час кожний з авторів методів (про яких згадувалось вище), був лідером групи розробників-практиків, що підтримували їх ідеї. У період 1989-1994 р. загальне число найбільш відомих мов моделювання зросло з десяти до більш ніж п'ятдесят. Багато користувачів відчували істотні труднощі при виборі мови моделювання, оскільки жодна з них не задовольняла всім вимогам, що висуваються до побудови моделей складних систем. Прийняття окремих методик і графічних нотацій як стандартів (IDEF0, IDEF1X) не змогло змінити сформовану ситуацію непримиренної конкуренції між ними на початку 90-х років, що одержала назву "війни методів".
Всі ці методи були подібні по суті, проте розрізнялись у вторинних деталях, що викликало плутанину у замовників. Наприклад, різне представлення одної і тої самої графічної нотації суттєво ускладнювало розуміння моделі, побудованої з використанням різних методів. Виникла необхідність стандартизації усіх існуючих методів проектування.
Проте, у відповідь на пропозицію звести всі методи до єдиного стандарту, компанія OMG отримала відкритий лист із протестом від всіх авторів основних методологій. Тоді Джим Рамбо залишив General Electric і приєднався до Буча в Rational Software з наміром об'єднати їх методи та досягти стандартизації за прикладом компанії Microsoft. Всі, хто не погодився з таким рішенням, сформували анти-Бучівську коаліцію. На конференції OOPSLA'95 Буч та Рамбо представили перший опис об'єднаного методу у формі документації під робочою назвою "Unified Method 0.8". В цей самий час фірма Rational Software здійснила придбання компанії Objectory і до розробників уніфікованого методу приєднався Джекобсон. Розробка нового методу - вже під назвою UML - тривала до 1997 року, причому з відкритим несхваленням зі сторони голови OMG.
Тоді ж деякі компанії та організації побачили в мові UML стратегічний інтерес для свого бізнесу. Компанія Rational Software разом з декількома організаціями, що виявили бажання виділити ресурси для розробки строгого визначення версії 1.0 мови UML, заснувала консорціум партнерів UML, у який спочатку ввійшли такі фірми, як Digital Equipment Corp., HP, i-Logix, Intellicorp, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Rational Software, TI і Unisys. Ці компанії забезпечили підтримку подальшої роботи з більш точного визначення нотації.
В січні 1997 року ряд організацій представив свої пропозиції по стандартизації методів обміну інформацією між різними моделями. Серед тих пропозицій була і документація на мову UML 1.0. Після внесення декількох істотних доповнень версія 1.1. мови UML була обрана в якості офіційного стандарту OMG.
На даний час усі питання подальшої розробки мови UML сконцентровані в рамках консорціуму OMG. При цьому статус мови UML визначений як відкритий для всіх пропозицій по його доробці та удосконаленню. Сама мова UML не є власністю і не запатентована, хоча зазначений вище документ є захищений законом про авторське право. У той же час абревіатура UML, як і деякі інші (OMG, CORBA, ORB), є торговою маркою їх законних власників.
Наринку CASE-засобів представлені десятки програмних інструментів, що підтримують нотацію мови UML і забезпечують інтеграцію, включаючи пряму і зворотну генерацію коду програм, з найбільш розповсюдженими мовами і середовищами програмування, такими як MS Visual C++, Java, Object Pascal/Delphi, Power Builder, MS Visual Basic, Forte, Ada, Smalltalk.
З кожним роком інтерес до мови UML з боку фахівців неухильно зростає. Мова UML поступово стає не тільки основою для розробки і реалізації в багатьох перспективних інструментальних засобах, але і у CASE-засобах візуального та імітаційного моделювання. Більш того, закладені в мові UML потенційні можливості широко використовуються як для об'єктно-орієнтованого моделювання систем, так і для документування бізнес-процесів, а в більш широкому контексті - для представлення знань в інтелектуальних системах, якими в перспективі стануть складні програмно-технологічні комплекси.
18.4. Задачі аналізу і проектування
18.5. Етапи процесу розробки бізнес-моделі
ПЕРЕЛІК РЕКОМЕНДОВАНОЇ ЛІТЕРАТУРИ
ВСТУП
Змістовий модуль І. ОСНОВИ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ НАВЧАННЯ
Лекція 1. ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ НАВЧАННЯ
1.1. Інформація. Інформаційна діяльність. Визначення інформатики як науки
1.2. Види та властивості інформації
1.3. Поняття інформаційної системи