7.5 Інформаційне забезпечення повторного використання
Якими б корисними не були створені ПВК, їх можуть знайти їхні потенційні користувачі тільки при умові, що хтось поінформує їх про наявність та властивості ПВК (див. підрозділ 7.1).
Назвемо апарат інформування потенційних користувачів про наявність, властивості та умови використання ПВК інформаційним забезпеченням повторного використання (dataware reuse). Його основне завдання - навігація користувачів у просторі колекцій ПВК, котрі розрізняються за призначенням, категоріями (див. підрозділ 7.3) та поданням, належністю до різних доменів (проблемної галузі). Мета такої навігації - знайти готові рішення, що відповідають вимогам цільової системи, яку має створити користувач.
Згадаємо як організовано інформаційне обслуговування відвідувачів бібліотеки. Кожний примірник книги (об'єкта зберігання) має свою інформаційну картку в каталозі бібліотеки, котра є інформаційною моделлю книги і виконує роль так званого пошукового образу - моделлю відомостей, за якими інформаційна система виконує обслуговування, зіставляючи поданий читачем так званий пошуковий запит (відомості про об'єкти, які він шукає) з тими пошуковими образами, що відповідають діючим об'єктам зберігання. Так само для ПВК як об'єктів зберігання має бути побудовано відповідні каталоги.
Успіх пошуку звичайно забезпечується якістю каталогів, зокрема інформаційною моделлю, на якій їх побудовано.
Інформаційна модель ПВК, за допомогою якої має бути подано інформаційний образ окремої ПВК у каталозі (пошуковий образ ПВК), орієнтована на розуміння людиною функцій ПВК (інколи досить складних) та на можливість зіставлення їх з власними потребами. Очевидно, таке завдання набагато складніше від бібліотечного пошуку, коли в ролі інформаційної моделі звичайно виступає ім'я автора, назва або жанр книжки тощо.
Можна назвати кілька відомих підходів до побудови інформаційної моделі ПВК [9, 10]:
пошуковим образом ПВК може бути список ключових слів, які найчастіше згадуються в тексті ПВК. Це так званий спосіб вільного індексування;
пошуковий образ ПВК може бути створено на базі заздалегідь побудованої онтології домену проблемної галузі (див. п. 3.2.1.). Це спосіб ієрархічної класифікації, прикладом якого є універсальна десяткова класифікація - УДК, що використовується, зокрема, для каталогізації наукових публікацій: окремим галузям знань присвоюються унікальні номери, так само робиться для їхніх підгалузей до певної глибини, між якими існує відношення рід - вид. Тоді кожна публікація в науковому виданні маркується (кажуть, індексується) послідовністю номерів, розділених крапками, що позначають відповідні галузь, підгалузь, розділ тощо і до тематики яких належить дана публікація. Наприклад, індекс
УДК681.З позначає розділ кібернетики "системи програмування", і якщо хтось хоче знайти наукові публікації з даної теми, він може вказати індекс УДК у пошуковому запиті, якщо в бібліотеці є тематичний каталог, пошукові образи котрого мають у своєму складі індекс УДК. УДК є найпоширенішою міжнародною системою класифікації для точних, технічних та природничих наук у світі. Онтології доменів також є прикладами ієрархічних класифікацій, хоча треба зазначити, що онтологію певного домену може бути створено як кілька ієрархій, кожну зі своєю основою;
пошуковий образ ПВК може складатися з визначених наперед порцій (фасет), кожна з яких належить до окремого аспекту розгляду ПВК. Це є фасетний спосіб. Усередині фасети інформацію можна структурувати на окремі поля, значення яких можуть належати до певної онтології або вільного (наперед не визначеного) списку дескрипторів (термінів), або до одного з наперед визначених альтернативних значень. Тобто, фасетний спосіб може поєднувати в собі можливості двох наведених вище способів.
Кожний із способів, який може бути обрано для побудови інформаційної моделі ПВК, потребує, з одного боку, певного обсягу та ступеня кваліфікації праці, що вкладається попередньо для створення каталогу, а з іншого боку, забезпечує досягнення тієї чи іншої якості пошуку. Будемо вважати критеріями якості пошуку, по-перше, можливість отримати (внаслідок пошуку в каталозі) інформацію, повністю або частково відповідну (кажуть, релевантну) інформаційному запиту, а по-друге, швидкість отримання відповіді.
Спосіб вільного індексування може бути реалізовано з мінімальними витратами праці фахівців при мінімальній кваліфікації. ПВК, що вносяться до каталогу, можуть індексуватися автоматично тими термінами, які згадуються в їхніх описах. Але при цьому є імовірність, що терміни, які було використано для опису ПВК її автором, і терміни, котрі потенційний користувач буде вживати для вираження своєї потреби під час пошуку підходящої ПВК, не збігаються через розбіжність та неузгодженість онтологій, якими користується кожна з діючих сторін.
Спосіб ієрархічних класифікацій потребує попереднього проведення аналізу проблемних галузей експертами високої кваліфікації, здатними побудувати онтології, що відображають специфіку завдань доменів. Отримані ними онтології можуть служити базою для утворення ієрархічних меню, котрі керують формулюванням запитів на пошук ПВК. У цьому разі істотно знижується ефект неузгоджених термінів, а пошук зводиться до вибору однієї з поданих можливостей. Однак цей підхід потребує інвестицій як для початкової побудови онтологій, так і для супроводження та модифікації їх.
Фасетний спосіб також вимагає попередньої експертної підготовки. До його переваг слід віднести можливість звуження кола пошуку за рахунок багатоаспектних критеріїв пошуку.
Слід зазначити, що витрати на побудову онтологій має бути виправдано успішним пошуком, без якого взагалі немає сенсу говорити про повторне використання. Справді, нині маємо бібліотеки модулів мовами програмування, які налічують тисячі об'єктів зберігання. При цьому їх каталоги структуровані переважно лише назвами доменів використання (наприклад, обчислювальні функції, функції роботи з екранами, функції введення-виведення тощо), до того ж каталоги бібліотек фірм-розробників можуть використовувати різні назви для однакових доменів.
На сьогодні існує досить значна множина доменів, досвід роботи з якими дозволяє визначити їхні онтології, стандартизація котрих потребує переважно організаційних зусиль, після чого поняття, що входять до їхнього складу, можуть однозначно трактуватися. Саме така робота тепер проводиться у світі [11].
Джерелом знань для побудови онтологій можуть бути формалізовані вимоги на розроблення ПВК як програмних систем, способи отримання яких розглянуто нами в розділах 3,4,5.
Наявність спектра моделей для відображення різних аспектів вимог (властивості класів об'єктів, їхніх зв'язків, динаміка поведінки тощо) дає підстави для поділу пошукового образу ПВК на фасети. Ще одним джерелом виявлення фасет є традиції побудови окремих інструментів для окремих аспектів створення програмних систем (таких, як інтерфейси користувача, композиції компонент, розподілена обробка тощо), що дозволяє ставити у відповідність таким аспектам окремі фасети пошукового образу ПВК. Такий підхід дає можливість визначити незалежні напрями адаптації ПВК і спростити розуміння їхніх властивостей.
Інформаційно-пошукові системи зберігання й пошуку пошукових образів ПВК мають спеціальну назву репозиторіїв компонент повторного використання.
Контрольні запитання і завдання
1. Назвіть дві характерні властивості повторно використовуваних компонент (ПВК).
2. Назвіть головні процеси життєвого циклу розробки, властиві систематичному повторному використанню.
3. Охарактеризуйте основні властивості ПВК, поєднання яких визначає її категорію.
4. Охарактеризуйте основні властивості ПВК для окремих категорій:
а) мов програмування;
б) генераторів програм;
в) бібліотек програм;
г) каркасів;
д) абстрактних доменів.
5. Як виявляється й подається варіантність проектних рішень під час створення ПВК?
6. Якими механізмами конкретизуються варіанти рішень у реальних проектах?
7. Охарактеризуйте підходи до організації пошуку потрібних ПВК.
8. Визначте процес проектування ПВК.
9. Наведіть методи побудови інформаційного забезпечення ПВК.
10. Що лежить в основі створення ПВК ?
11. Назвіть головну проблему у створенні бібліотеки ПВК.
12. Наведіть приклади ПВК абстрактних архітектур.
13. Що таке селекція або вибір генератора?
14. Визначте типи та приклади різновидів генераторів широкого поширення.
15. Назвіть базові ієрархії моделей систем об`єктів.
16. Які аспекти визначаються та уточнюються в процесі побудови моделі проекту?
17. Що таке успадкована система?
18. Визначте відомі підходи до побудови інформаційної моделі ПВК.
19. Назвіть основні кроки проектування ПВК.
20. Як використовується механізм успадкування для вирішення варіативної точки ПВК?
Вінницький національний технічний університет