1. Базові концепції технології проектування онтологічних моделей ПрО з використанням PROTÉGÉ


Скачати 163.93 Kb.
Назва 1. Базові концепції технології проектування онтологічних моделей ПрО з використанням PROTÉGÉ
Дата 12.07.2013
Розмір 163.93 Kb.
Тип Документи
bibl.com.ua > Інформатика > Документи
ПОБУДОВА ОНТОЛОГІЧНОЇ МОДЕЛІ ПрО РЕСУРСІВ

ЯК БАЗИ ДЛЯ ПІДТРИМКИ ПРОЕКТУВАННЯ СКЛАДНИХ ПП
ВСТУП
Пропонується процедура онтологічного моделювання Предметних Областей (ПрО) ресурсів як бази знань для підтримки проектування сімейств складних Програмних Продуктів (ПП).

Застосована методологія інженерного проектування ПП реалізує один з методів генеруючого программування (GP - Generative Programming), а саме компонентний, який запроваджує збірку складних ПП з Повторно Використовуємих Компонентів (ПВК), В ролі ПВК можуть поставати заздалегідь виготувані продукти обчислювального та програмно-інструментального характеру. Базисом цього методу є ООП, розширений механізмами компонентного складання та у перспективі механізмами генерації кінцевого ПП.

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

Узагальнена онтологічна модель ПрО подається у вигляді графічної структури, або у форматах – HTML, RDF, OWL, та ін. Усі концепції ПрО, у даному разі артефакти інженерії ПрО, мають бути відображені в моделі через класи, адекватність яких поняттям (concepts) ПрО та взаємовідношення між останніми визначається через атрибути класів. Така узагальнена модель ПрО подає собою Базу Знань (БЗ) обраної предметної області. Ця модель править за понятійний каркас деякої множини конфігурацій ПП.

Проведена подальше, повна або часткова, конкретизація БЗ ПрО шляхом екземплярізації обраних класів дозволяє конфігурувати деяку Проблемну Область у вигляді Бази Даних (БД), де екземплярам класів відповідають безпосередньо фізичні ПВК, розміщені у репозиторії, або через URL-адреси їх розташування у мережі Інтернет.

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

Результати запитів до БД постають у вигляді певних конфігурацій логічно взаємозв’язаних ПВК, поданих через списки імен або URL-адрес.

Розглянутий підхід розроблений та апробований на проблемній області інформаційно-технологічнної підтримки наукових досліджень, тобто у галузі Software Science. Рішення на такой моделі подають собою інформаційні технології (ІТ), що мають віртуальний характер і формуються виключно за критеріями кінцевих користувачів – наукових дослідників щодо тематичних категорій досліджень, постанов задач, вибору методів їх рішення та інструментально-технологічною підтримки останніх.

Побудову та апробацію онтологічної моделі ПрО здійснено за допомогою онтологічного редактора PROTÉGÉ версії 3.4.6.
1. Базові концепції технології проектування онтологічних моделей ПрО з використанням PROTÉGÉ

Мета підходу ГП – мінімізувати участь людини у процесі створення кінцевого програмного продукту (ПП) та максимально автоматизувати етапи зазначеного процесу. Автоматизація першого і другого етапу – моделювання ПрО та формування проблемнихї областей – здійснюється шляхом використання пакету Protégé.

Проблемна область відбиває коло інтересів користувача, формується шляхом екземплярізації обраної ним підмножини класів моделі ПрО, постає у вигляді БД та визначає простір рішень задач кінцевого користувача.

Окреме рішення (або його фрагмент) становить собою набір ПВК, які логічно пов’язані між собою, а їх функціональні та експлуатаційні характеристики задовольняють вимогам кінцевого користувача.

Такий набір компонентів подає змістовну основу майбутнього кінцевого ПП з заданими властивостями. Спектр таких продуктів може бути досить широким – від окремої програми до складного ПП, або системи іншого призначення, наприклад, інформаційно-технологічного комплексу підтримки науково-дослідних робіт (НДР).
Використання Protégé у нашому випадку орієнтовано на інформаційно-ресурсну підтримку одного з методів ГП, а саме компонентного, а саме на формування потрібної архітектури ПП з КПВ, типізованих за окремими функціями узагальненої архітектури ПП.

Як зазначено вище, в якості КПВ прийняті заздалегідь розроблені артефакти ПрО - продукти програмно-обчислювального, технологічного та програмно-інструментального характеру, що мають зберігатись у Репозиторії Eclipse.

Заздалегідь, під час аналізу ПрО провадиться класифікація артефактів, тобто виділяються типи артефактів, що відповідають видам функціональних компонентів узагальненої структури ПП, або базовим поняттям ПрО.

Кожному типу артефактів в онтологічній моделі ПрО зіставляється окремий клас, структура якого відбивається специфікацією (або паспортом) відповідного типу артефакта, що певною мірою додержується Дублінського стандарту.

Protégé, як і засоби DSL, здійснює проектування (створення) моделі ПрО (або домена), користуючись для цього своїми власними мовами чи форматами подання знань о ПрО, а саме: RDF, RDFS, XML, OWL, а також фреймами.

Нижче подається інструкція по побудові онтологічної моделі знань о ПрО, що заснована на фреймах, у відповідності з OKBC (Open Knowledge Base Connectivity protocol – прикладний інтерфейс програмування для доступу до баз знань систем подання знань). Результат моделювання може бути експортований до форматів RDF, RDFS, XML, OWL, HTML та Clips (C language integrated Production System).

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

Процес побудови моделі ПрО повністю регламентується документом Protégé-Frames User’s Guide [1], та безпосередньо самою системою меню і змістом вікна проектування - табульованими за допомогою закладок (tabs) панелями вікна з наборами контекстних меню. Саме тому у звіті приводяться лише коментарі до технології побудови моделі ПрО, суттєві для поставленої задачи використання Protégé.
2. ІНСТРУКЦІЯ ПО РОБОТІ з PROTÉGÉ


  1. Розробка переліку базових понять ПрО

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

При побудові онтологічній моделі ПрО за допомогою Protégé кожному типу артефактів має бути зіставлений окремий клас, структура якого у моделі відбивається через специфікацію (або паспорт), що певною мірою додержується Дублінського стандарту.


  1. Запуск та розгортання Protégé у середовищі Eclipse

Protege підключено до інструментального середовища Eclipse як плагін. Для запуску плагіна слід відкрити список Run у верхньому меню-барі, натиснути на зелену Protege-іконку і Protégé стартує.


Рис. 1. Запуск Protégé Eclipse


  1. Створення проекту

Для створення нового проекту (Create New Project) насамперед слід вибрати формат подання онтологічної моделі, потрібного для подальшого використання в інтегрованому інструментальному середовищі технології ГП. Формат обирається у режимі діалогу з списку - Protégé files (pont and pins – by default), OWL / RDF files, RDF files.


Рис. 2. Вибір формату проектуємої


  1. Визначення класів подання базових понять ПрО та проектування їх структур.

Основне вікно Protégé складається з закладок (tabs), які відбивають різні аспекти моделі знань, тобто онтологічної моделі ПрО. У закладці класів (Classes) cкладається перелік класів, що відповідають базовим концепціям ПрО.

Класи відповідають типам артефактів, які, у свою чергу, відповідають ролям програмних компонентів в архитектурі та у функціональних властивостях ПП. Класи відбиваються в Protégé у вигляді ієрархії спадкування (inheritance hierarchy) (Рис.?), яка розташовується в окні навігатору класів (Class Browser). Коренем дерева класів в Protégé, за умовчанням, призначений клас THING (річ, дещо). Усі створюємі класи мають спадкувати його безпосередньо або посередньо.

У системі Protégé класи можуть бути абстрактними та конкретними, но, за умовчанням, вони створюються як абстрактні. Останні призначенні для понять ПрО, що носять узагальнюючий характер, наприклад, інструментальний програмний засіб.

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

Властивості класів (або їх слоти) відбиваються у редакторі класів (Class Editor)


Рис. 3. Проектування класів моделі


  1. Створення структур слотів класу (атрибутів) та відношень між класами в світлі обраної проблематики


Під поняттям слотів у Protégé слід мати на увазі атрібути класу. Створення слотів здійснюється на закладці Slots у панелі редактору слотів (Slot Editor) та завершується прив’язкою слоту до потрібного класу.

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

Створення фасетів (аспектів /меж) слоту. Слоти самі по собі можуть мати властивості, а крім того можуть бути використанні і для завдання відношень між класами. Властивості слотів створюються як на закладці класів (Tab Classes), використовуючи діалог специфікації слоту, так і на закладці слотів, використовуючи редактор слоту.

При створенні онтологічної моделі ПрО генеруючого програмування засобами Protégé є змога використовувати два типи зв’язку між класами:

  • Прямі зв’язки (direct relationships) між класами, що відбивають відношення ієрархії успадкування класів у вигляді Subclass-Superclass. Такі зв’язки реалізують, окрім іншого, принцип множинного успадкування класів та створюються за допомогою редактору класів Protégé. Використання при побудові ієрархії класів принципу множинного успадкування класів (що еквівалентно реєстрації для класу декількох суперкласів) дозволяє в наступному виділяти відповідні Use Cases, тобто варіанти використання цього класу в контекстах різної проблематики. Таким чином, можна мовити, що принцип множинного успадкування класів лежить в основі виділення проблемних областей в ієрархічній моделі ПрО.

  • Зв’язки, які з’єднують класи шляхом зв’язування слотів певного типу. Якщо перший тип зв’язків відбиває принцип успадкування, прийнятий при ООП, то другий зв’язує класи, які перебувають у деяких відношеннях, докорінно відмінних від відношень ієрархії. Прикладом таких слотів можуть служити слоти з іменами responsible-for (відповідний-за) або produce_something (виробляючий-щось). До таких слотів належать слоти з типами значень Class та/або Instance.


Згадані відношення мають наступні тлумачення: якщо клас А містить слот типу Class або Instance, що містить клас В з множини класів, дозволених для слоту, то можна казати, що клас В залежить від класу А. Більш детально розглянуті характеристик ціх типів слотів:

  • Слоти з типом значення клас (Class). Слоти з типом значення клас (Class) в якості значення можуть мати Суперкласи (SuperClass), та ні в якому разі власні підкласи. На стадії екземплярізації класу такий слот отримує в якості значення один з підкласів специфікованого в моделі ПрО суперкласу.

Як приклад, можна розглянути клас моделі ПрО, що описує поняття якого-небудь програмно-інструментального засобу. Тоді, на стадії моделювання, такому слоту як значення надається ім’я суперкласу <�Методологія>. На стадії екземплярізації класу, який описує інструмент, цей слот отримує як значення ім’я одного з підкласів суперкласу <�Методологія>, тобто (умовно) <�Метод1>, <�Метод2>,…, <�МетодN>.

  • Слоти з типом значення екземпляр (Instance). Для слотів з типом значення екземпляр (Instance) на стадії моделювання ПрО як джерело можливих значень вказується який-небудь клас (Class). На стадії екземплярізації класу з таким слотом останній отримує як значення ім’я одного з екземплярів, що прив’язаний до слоту класу.

Як приклад можна навести наступний випадок. Екземпляр класу Інструмент (наприклад, программа тестування) як значення свого слоту з типом Instance може отримати посилання на інший інструмент (наприклад, графічний редактор для подання результатів) як на екземпляр прив’язаного до слоту класа.


Рис. 4. Проектування атрибутів класів моделі


  1. Створення БД проблемної області шляхом екземплярізації обраних класів


Основною метою створення онтологічної моделі ПрО є її подальше використання для:

  • визначення потрібної користувачу проблемної області,

  • визначення набору компонентов проектуємого ПП,

  • конфігурування ПП згідно з потребами кінцевого користувача.

Визначення проблемних областей реалізується через створення екземплярів класів моделі та конкретизацію зв’язків або відношень (relations) між екземплярами класів.

Така екземплярізація здійснюється через надання відповідних значень слотам обраних класів, які, у належності від типу, можуть подавати:

  • просто властивості класів або

  • відношення (relationships) між класами.

Надання значень слотам, що визначають властивості класів, не завдає будь-яких труднощів. Складніше постає справа з слотами типу Class та Instance, що описані у коментарії у підрозділі 2.5.

Екземпляри класів, по суті, є даними БД проблемної області та створюються у закладці Instances Protégé. яка має три панелі:

  • перша (зліва) – Class Browser - відбиває ієрархію класів, тобто показує класи у вдношеннях superclass/subclass. Класи можна лише проглянути, та не редагувати.

  • середня панель - Instance Browser - показує список екземплярів, що створенні для конкретного класу. Засоби панелі дозволяють проглянути, відредагувати, створити або видалити екземпляри.

  • остання, третя панель містить редактор екземпляра класу – Instance Editor - через який можна увести та редагувати значення слотів поточного обраного класу. Цей редактор використовує форму, що відбиває структуру поточного класу та характеристики його слотівв. Для кожного класу онтології Protégé генерує форму за замовченням (by default), яку можна використовувати для введення даних екземпляру, та якщо стандартна форма, створена Protégé, не влаштовує розробника, її можна змінити за допомогою закладки форм Forms.



Рис. 5. Побулова екземплярів класів моделі


  1. Визначення набору компонентів проектуємого ПП шляхом формування запитів до БД проблемної області

Рішення задач користувача ініціюється шляхом формування та вводу в БД запитів. Для того в Protégé існує закладка запитів Queries, яка дозволяє отримувати відомості від поточного проекту по всім екземплярам класів, які задовольняють заданим критеріям.

Закладка Queries складається з наступних компонентів:

  • Query Editor, що дозволяє створювати, виконувати або модифікувати запити з їх можливим комбінуванням;

  • кнопки Find, що ініціює виконання запиту;

  • панелі Search Results для подання результатів запитів;

  • Save Query Bar, що дозволяє іменовувати та зберігати запит;

  • Query Library, що дозволяє проглядати, видаляти та витягувати збережені запити. Збережені запити можна модифікувати чи комбінувати.

Для створення запиту слід вибрати один або більше класів та один або більше слотів у класі. Побудовані запити можна зберігати у бібліотеці для подальшого використання. Запити не є частиною створеної бази знань, а шляхом идентификації (тобто, вибору) екземплярів вашої БД.

Після створення запиту можна ініціювати його виконання і проглянути результати, для чого слід натиснути кнопку пошуку Find. Для зберігання запиту у бібліотеці запитів слід використовувати кнопку Add to Query Library. Для завантаження збереженого запиту його слід вибирати у бібліотеці запитів.


Рис. 6. Отримання результатів ланцюжку запитів до проблемної області
Обсяг набору КПВ, що отримується внаслідок обробки запитів, прямо пропорційний кількості пов’язаних запитів у пакеті запитів. Сами запити зберігаються у бібліотеці запитів (Query Library), припускаючи тим самим їх повторне використання, а за потребою комбінування. Результати запитів подаються як в екранних форматах пакету Protégé, так і у вигляді текстових файлів.

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

Структура окремого запиту виглядає наступним чином:

Назва Запиту – Імя КласуІмя СлотуМеню КрітерієвЗначення Крітерія

де

Назва Запиту (Query Name) становить собою строку довільного текста, який уводиться користувачем

Ім’я Класу вибирається з меню – переліка класів проекта

Ім’я Слоту вибирається з меню – переліка слотів обраного класу

Меню Крітерієв (Criteria Menu) містить перелік крітерієв для значень слотів.
Значення Крітерія уводиться відповідно з типом значення слоту обраного класа. Для слота з типом значення Instance ввід значення декілька відрізняється від інших типів. Так в якості значення можно надавати:

  • один з екземплярів класу, що вказаний в опису слота, або

  • назву потрібного користувачу запита з Query Library.

Комбінування запитів. Простий запит базується на класі, слоті чи разом на обох. Комбінований запит подає зв’язану множину запитів у вигляді ланцюжку запитів, що об’єднує групу запитів до єдиного запиту. Така процедура здійснюється за допомогою кнопкии More редактора запитів Query Editor. Це дозволяє обмежувати чи навпаки розширювати отримуємі результати шляхом комбінування множини крітерієв. У разі випадку множини запитів додатково постають такі можливості:

  • використання опції Match All вказує, що будь-який знайдений у БД екземпляр має задовільняти усім крітеріям (перетинання або AND), специфікованим у множині запитів, які вводяться.

  • використання Match Any вказує, що будь-який знайдений у БД екземпляр має задовільняти у крайньому разі одному з критерієв, специфікованих у множині запитів.

Збережені у Query Library запити можно використовувати як значення, що зв’язують слоти типу Instance. Результуючий запит шукає екземпляри, значення слота яких становить собою результат пошуку для специфікованого запиту.

Необхідність створення запитів такого типу виникає досить часто. З цією метою шукається клас, що має слот типу Instance, і виникає потреба дізнати, які з екземплярів цього класу мають певну властивість. Для створення комбінованого запиту рекомендується спочатку створити запит для властивості, а потім створити запит для класу.

Експорт результатів запитів у Protégé. Результати запиту експортуються у текстовий файл protégé_query_results.txt.


Instance

Class




Создание_онтологий

Problem/Task











Каркасный_метод

Method








tool_category

OIL

Tool

Языковой инструмент

DAML + OIL

Tool

Языковой инструмент

OWL

Tool

Языковой инструмент

XML

Tool

Языковой инструмент

RDF

Tool

Языковой инструмент

Рис. 7. Приклад змісту файла з результатами ланцюжку запитів
За замовчуванням, текстовий файл містить набір усіх екземплярів та їх класів. Крім того, під час формування вихідних результатів запитів користувач має змогу визначити необхідність виводу значень будь-яких додаткових слотів екземпляру.
Перелік посилань

  1. Protégé-Frames User’s Guide : http://protege.stanford.edu/doc/index.php/PrF_UG


ДОДАТОК 1. Зразок ієрархії класів онтологічної моделі ПрО


Схожі:

Технологічний підхід в освіті Педагогічні технології
Педагогічні технології – сукупність методів, форм, прийомів навчання, тотожних їм моделей управління, підпорядкованих визначеній...
Урок з використанням технології критичного мислення «очікування»
...
УРОК № З Тема. Базові структури алгоритмів. Конструювання алгоритмів
Базові поняття й терміни: алгоритм, виконавець, базові структури алгоритмів, слідування, розгалуження, повторення, блок-схема
Комп ’ ютерні технології проектування та моделювання РЕС
РЕС аналогових та цифрових електронних пристроїв. Володіти основними комп’ютерними технологіями та вміти їх використовувати на практиці....
Поняття про моделі та моделювання. Класифікація моделей. Поняття...
Одним із важливих методів добування нової інформації людиною, пізнання нею довколишнього світу є моделювання
Задача полягає в тому, що необхідно перевести ОК з заданого початкового стану
Мета роботи – засвоїти методи синтезу термінальних систем автоматичного керування з використанням моделей на ЕОМ для їх аналізу
Принципи комп’ютерного проектування та моделювання РЕС
Вміти виконувати основні технологічні операції проектування та моделювання. Розуміти роль проектування та моделювання в електронній...
Синтез оптимальних систем автоматичного керування за допомогою методу динамічного програмування
Мета: засвоїти метод синтезу оптимальних САК за допомогою диференційного рівняння Р. Беллмана та отримати навички аналізу динаміки...
Основні етапи розв’язування прикладної задачі з використанням комп’ютера....
Формулювання задачі в термінах певної предметної галузі знань (математика, фізика, економіка тощо)-постановка задачі
РОБОЧА НАВЧАЛЬНА ПРОГРАМА з дисципліни "Основи комп’ютерного проектування та моделювання РЕЗ"
Предметом дисципліни є комп'ютерне проектування та моделювання з застосуванням сучасних пакетів прикладних програм для автоматизованого...
Додайте кнопку на своєму сайті:
Портал навчання


При копіюванні матеріалу обов'язкове зазначення активного посилання © 2013
звернутися до адміністрації
bibl.com.ua
Головна сторінка