Page 118 - 4190
P. 118
ти собі загальну проблематику процесу розроблення моделей систем.
Саме інтеграція цих представлень утворює нову парадигму ООАП,
практичним слідством і центральним стержнем якої є мова UML.
2. Забезпечити початкові поняття мови UML можливістю розши-
рення і спеціалізації для точнішого представлення моделей систем у
конкретній предметній області.
Хоча мова UML є формальною мовою - специфікацій, формаль-
ність його опису відрізняється від синтаксису як традиційних форма-
льно-логічних мов, так і відомих мов програмування. Розробники з
OMG припускають, що мова UML як ніякий інший не може бути
пристосований для конкретних предметних областей. Це стає можли-
вим з тієї причини, що в самому описі мови UML закладений меха-
нізм розширення базових понять, який є самостійним елементом мови
і має власний опис у формі правил розширення.
У той самий час розробники з OMG вважають украй небажаним
перевизначення базових понять мови з будь-якої причини. Це може
привести до неоднозначній інтерпретації їх семантики і можливій
плутанині. Базові поняття мови UML не слід змінювати більше, ніж
це необхідно для їх розширення. Усі користувачі мають бути здатні
будувати моделі систем для більшості звичайних застосувань з вико-
ристанням тільки базових конструкцій мови UML без застосування
механізму розширення. При цьому нові поняття і нотації доцільно за-
стосовувати тільки в тих ситуаціях, коли наявних базових понять яв-
но недостатньо для побудови моделей системи.
Мова UML допускає також спеціалізацію базових понять. Йдеть-
ся про те, що в конкретних застосуваннях користувачі повинні уміти
доповнювати наявні базові поняття новими характеристиками або
властивостями, які не суперечать семантиці цих понять у мові UML.
3. Опис мови UML повинен підтримувати таку специфікацію мо-
делей, яка не залежить від конкретних мов програмування та інстру-
ментальних засобів проектування програмних систем.
Йдеться про те, що жодна з конструкцій мови UML не повинна
залежати від особливостей її реалізації у відомих мовах програмуван-
ня. Тобто, хоча окремі поняття мови UML і пов'язані з останніми ду-
же тісно, їх жорстка інтерпретація у формі конструкцій програмуван-
ня не може бути визнана коректною. Іншими словами, розробники з
OMG вважають необхідною властивістю мови UML його контекстно-
програмну незалежність.
З іншого боку, мова UML повинна мати потенційну можливість
118