Лінгвістичні засоби проектування ІС


Мови проектування використовуються для опису відомостей про об’єкти і задачі проектування. Вони поєднують усі засоби розробки окремих видів забезпечень (V) (концептуального, функціонального, інформаційного, програмного і т.д.) для виділених структурних компонентів (S) (системи, підсистеми, модуля, елемента модуля) на всіх етапах її створення (Е) (ТЗ, ЕП, ТП, РД і т.д.). Крім того, у цю групу входять усі мови опису переходів на вимірах S–V–Е, тобто переходів від одного структурного компоненту до іншого, від одного виду забезпечення до іншого і від одного етапу проектування до іншого. Це засоби автоматизованого проектування ІС.

До цієї групи відносяться мови опису:

- цілей і планів їх досягнення (мови опису завдань);

- структурних компонентів ІС;

- функцій і задач усіх структурних складових системи (опис і маніпулювання даними, представлення і маніпулювання знаннями, описи алгоритмів).

Проектування цілей і планів їх досягнення реалізується за допомогою засобів цільового програмного планування, планування маршрутів і сценаріїв їх виконання.

Для опису структурних компонентів системи і їх функціонування використовуються мови специфікацій об’єктів гіперпростору, репертуару і процесу проектування ІС.

Перші дві з названих – це мови об’єктно-орієнтованого проектування ІС. Вони широко використовуються для опису об’єктів і побудови їх моделей. Так, наприклад, моделі, описані мовою UML (Unified Modeling Language) фірми PLATINUM, за допомогою CASE–засобів цієї ж фірми автоматично перетворюються в прикладні програми на мовах C++, Visual Basic, Java, Ada, Smalltalk і ін. Мови специфікацій процесу проектування використовуються, в основному, для опису завдань з урахуванням їх автоматизованого виконання.

Мови опису і маніпулювання даними (типу SQL) використовуються для роботи з базами даних, а мови представлення знань –для роботи з базами знань експертних систем. Для представлення знань використовуються реляційні, логічні і рольові мови. У реляційних мовах структурними одиницями є відносини. Кожному описові знань на реляційній мові можна поставити у відповідність деяку семантичну мережу. У логічних мовах структурними одиницями є формули (висловлення). Перемінні й інші складові формул зв’язуються між собою за допомогою символів логічних операцій, кванторів існування і спільності. Прикладами цієї мовної групи є Пролог, ЛИСП, C++, Smalltalk і ін. Рольові мови оперують фреймами і слотами. Фрейм являє собою логічний запис, кожному полю якого відповідає свій характерний значеннєвий зміст. Поля фрейму називаються слотами. Останні можуть бути зв’язані між собою відомими відносинами, реалізованими у вигляді процедур. Кожний слот характеризує одну зі сторін знань, що представляються (відіграє певну роль). Слоти, вкладені у фрейми, а потім і слоти, вкладені в слоти, утворюють багаторівневу ієрархію структурованих знань. Кількість ієрархічних рівнів може бути значною.

Розглянуті реляційні, логічні і рольові мови служать для вираження декларативної частини знань і використовуються звичайно в якості вхідних і діалогових мов у системах штучного інтелекту. Інша частина знань, що називається процедурною, описується правилами перетворення декларативних знань. Ці правила типу "умова – дія" одержали назву продукцій або продукційних правил. Продукції є основою такої мови, наприклад, як Пролог і інших.

В якості засобів опису алгоритмів використовуються, як відомо, вербальний опис, блок-схеми, операторний метод, алгоритмічні мови високого рівня й ін.