Мова моделювання — це будь-яка штучна мова, котра може використовуватися для вираження інформації (даних) або знань чи систем у структурі, і яка визначається послідовним набором правил. Правила застосовуються задля інтерпретації значення компонентів у структурі. В області інформатики та суміжних галузях керування даними або процесами, мови моделювання дозволяють розробникам програмного забезпечення, системним аналітикам чи системним архітекторам, визначати вимоги до організації або системи програмного забезпечення, а також до її структур та внутрішніх процесів, з вищим рівнем абстракції.
Огляд
Мовна модель може бути графічною чи текстовою.[1]
- Мови графічного моделювання використовують діаграмну техніку з іменованими символами, які представляють концепції та лінії, що зв'язують символи та надають співвідношення і різні інші графічні позначення, для подання обмежень.
- Мови текстового моделювання, можуть використовувати стандартизовані ключові слова, супроводжувані параметрами або термінами та фразами природною мовою, щоб утворити вирази, які визначаються комп'ютером.
Прикладом мови графічного моделювання та відповідної мови текстового моделювання, є EXPRESS.
Не всі мови моделювання є виконуваними, і для тих, хто їх використовує, це не обов'язково означає, що програмісти більше не потрібні. Навпаки, виконувані мови моделювання, призначено для посилення продуктивності кваліфікованих програмістів, аби вони могли розв'язувати складніші питання, як-от паралельні обчислення та розподілені системи.
Види мов моделювання
Графічні типи
Приклади мов графічного моделювання у галузі інформатики, керування проєктами та системної інженерії:
- Поведінкове Дерево — це формальна, графічна мова моделювання, що використовується переважно у системах та програмній інженерії. Зазвичай застосовується, щоб однозначно представляти сотні або навіть, тисячі вимог до природних мов, які зазвичай вживаються для вираження потреб зацікавлених сторін, щодо всеохопної інтегрованої системи програмного забезпечення.
- Теорія C-K — складається з мови моделювання для процесів проєктування.
- DRAKON — це мова алгоритмічного моделювання загального призначення для визначення програмно-інтенсивних систем, схематичного представлення алгоритму або поетапного процесу, та сімейство мов програмування.
- EXPRESS та EXPRESS-G (ISO 10303-11) — це міжнародна стандартна мова моделювання даних загального призначення.
- Мова розширеного корпоративного моделювання (EEML) — зазвичай використовується для моделювання бізнес-процесів на декількох рівнях.
- Блок-схема — являє собою схематичне зображення алгоритму або поетапного процесу.
- Основи моделювання фундаментальних концепцій (FMC) для програмно-інтенсивних систем.
- LePUS3 — це об'єктно-орієнтований візуальний дизайн опису мови та формальна мова специфікації, яка підходить, перш за все, для моделювання великих об'єктно-орієнтованих (Java, C ++, C #) програм і шаблонів проєктування.
- Object-Role Modeling (ORM) у галузі розробки програмного забезпечення — це метод концептуального моделювання і може бути використаний як інструмент аналізу інформації та правил.
- Southbeach Notation — це мова візуального моделювання, що використовується для опису ситуацій з точки зору агентів, які вважаються корисними чи шкідливими з боку модельєра. Позначення показують, як агенти співдіють один з одним і чи ця взаємодія покращує або погіршує становище.
- Мова специфікації та опису (SDL) — це мова специфікації, спрямована на однозначну специфікацію та опис поведінки реактивних і розподілених систем.
- SysML — це мова моделювання специфічна для домену системотехніки, яка визначається як профіль UML (налаштування).
- Уніфікована мова моделювання (UML) — це мова моделювання загального призначення, яка є галузевим стандартом для визначення програмно-інтенсивних систем. UML 2.0, поточна версія, підтримує тринадцять різних діаграмних способів і має всеохопну підтримку інструментів.
- Мова опису архітектури (ADL) — це мова, яка використовується для опису та представлення устрою архітектури системи.
- AADL (AADL) — це мова моделювання, котра підтримує ранні та повторювані аналізи архітектури системи, відносно критично важливих властивостей, за допомогою розширюваних позначень, структур інструментів та точно визначеної семантики.
Приклади мов графічного моделювання в інших галузях науки.
- EAST-ADL — це спеціальна мова моделювання, присвячена проєктуванню автомобільних систем.
Текстові види
Інформаційні моделі також, може бути виражено формалізованими природними мовами, як-от Gellish[3]. Gellish має варіанти з природними мовами, скажімо формальна англійська Gellish і формальна голландська Gellish (Gellish Formeel Nederlands) тощо. Gellish Formal English — це мова представлення інформації, або мова семантичного моделювання, яка визначається в англійському словнику-таксономії Gellish (Gellish English Dictionary-Taxonomy), що має форму таксономії-онтології (аналогічно для голландців). Gellish Formal English, не лише підходить для виразу знань, вимог і словників таксономій та онтологій, а також для інформації про окремі речі. Всі ці дані виражаються однією мовою і тому можуть бути інтегровані, незалежно від того, чи зберігаються вони у центральних, розподілених або у федеративних базах даних. Інформаційні моделі у Gellish Formal English, складено з набору виразів Gellish Formal English, які використовують терміни з природною мовою та формалізовані вирази.
Наприклад, географічна інформаційна модель, може складатися з низки формальних англійських виразів Gellish, як-от:
- the Eiffel tower <is located in> Paris — Ейфелева вежа <розташована у> Парижі
- Paris <is classified as a> city - Париж <класифікується як> місто
тоді як інформаційні вимоги та знання може бути виражено, наприклад, так:
- tower <shall be located in a> geographical area — вежу <розташовано у> географічному районі
- city <is a kind of> geographical area - місто <є свого роду> географічним регіоном
У таких виразах Gellish Formal English, застосовуються назви концептів (наприклад, «city») і вислови, що є способами зв'язків (наприклад, <is located in> і <is classified as a>), які мусять бути вибрані з Gellish English Dictionary-Taxonomy (або вашого власного словника домену). Англійський словник-таксономія Gellish, дозволяє створювати семантично багаті інформаційні моделі, оскільки він містить більше 600 стандартних типів зв'язків і має визначення більше 40000 положень. Інформаційна модель у Gellish, може виражати факти або виробляти твердження, запити та відповіді.
Більш конкретні види
В галузі інформатики згодом з'явилися більш конкретні типи мов моделювання.
Алгебраїчна
Мови алгебраїчного моделювання (AML) — це мови програмування високого рівня для опису та вирішення завдань високої складності для громіздких математичних обчислень. Однією з особливих переваг AML, як-от: AIMMS, AMPL, GAMS, LPL, MPL, OPL і OptimJ, є подібність їх синтаксису з математичним позначенням завдань оптимізації. Це дозволяє отримати дуже стисле та зрозуміле визначення проблем у галузі оптимізації, яке підтримується деякими мовними елементами, як-от набори, показники, алгебраїчні вирази, потужні розріджені змінні індексів і обробки даних, обмеження з довільними іменами. Алгебраїчне формулювання моделі не містить ніяких підказок, як його обробляти.
Поведінкова
Поведінкові мови призначені для опису спостережуваної поведінки складних систем, що збираються зі складових, які виконуються одночасно. Ці мови зосереджено на описі ключових визначень, наприклад: паралелізм, недетермінізм, синхронізація та зв'язок. Семантичні основи поведінкових мов — це обчислення або алгебра процесів.
Предметно-специфічна
Мова моделювання, заснована на дисципліні (DspM), орієнтована на підсумки, пов'язані з проміжком життєвого циклу певної розробки програмного забезпечення. Таким чином, ця мова пропонує відмінну лексику, синтаксис та позначення для кожного етапу, скажімо: виявлення, аналіз, дизайн, архітектура, стиснення тощо. Наприклад, щодо етапу аналізу проєкту, модельєр використовує специфічну нотацію аналізу для доправлення діаграми аналітичної пропозиції. Однак, на етапі проєктування, логічне позначення дизайну, використовується для опису взаємодії між об'єктами програмного забезпечення. Водночас, практичні поради з мови моделювання, притаманні для конкретної дисципліни, не перешкоджають практикам поєднувати різні позначення на одній діаграмі.
Предметно-орієнтовані
Моделювання доменних імен (DSM) — це методологія розробки програмного забезпечення для проєктування і створення систем — найчастіше це ІТ-системи, як-от комп'ютерне програмне забезпечення. Це передбачає систематичне використання графічної мови, специфічної для домену (DSL), щоби представляти різні грані системи. Мови DSM, мають властивість підтримувати абстракції вищого рівня, ніж мови моделювання загального призначення, тож вони потребують менше зусиль та деталей низького рівня, для позначення даної системи.
Див. також
Джерела
- Xiao He (2007). «A metamodel for the notation of graphical modeling languages». In: Computer Software and Applications Conference, 2007. COMPSAC 2007 — Vol. 1. 31st Annual International, Volume 1, Issue , 24–27 July 2007, pp 219—224
Посилання
- PhD: Gellish: a Generic Extensible Ontological Language
- Service-Oriented Modeling: Service Analysis, Design, and Architecture
- modeling-languages.com [Архівовано 9 вересня 2018 у Wayback Machine.]
- Fundamental Modeling Concepts [Архівовано 6 вересня 2018 у Wayback Machine.]