База даних як модель предметної області
Поняття предметної області
Поняття предметної області є ключовим при розгляді бази даних як інформаційної системи. Інтуїтивний зміст цього поняття очевидний: предметна область - це деяка сфера діяльності. Більш точне визначення, що дозволяє сформулювати поняття моделі предметної області. передбачає уточнення ряду інших базових понять.
Дані. Деякий факт, на якому заснований висновок або будь-яка інша інтелектуальна діяльність. Первинними компонентами даних є цифри і символи або їх кодоване подання у вигляді рядка двійкових бітів.
Семантика. Присвоєння даними деяких властивостей. після чого вони стають корисними як для людей (в сенсі прийняття рішень), так і для програм або процедур (при визначенні обгрунтованості використання). Надалі слово сенс будемо використовувати як синонім "семантики".
Елемент даних. Найменша семантично значуща пойменована одиниця даних, що приймає значення (прізвище, посаду, колір, зарплата).
Об'єкт. Те, про що зберігаються дані (службовець, верстат, матеріал).
Атрибут. Характеристика (властивість) об'єкта.
Зауважимо, що сенс об'єкта (даного) визначається тільки сукупністю його атрибутів, представлених відповідними елементами даних. У цьому сенсі можна сказати, що значення елемента даних є значенням атрибута об'єкта. На рис.3. проілюстрована зв'язок між введеними вище поняттями.
Найпростішим способом відображення зв'язку елементів даних з атрибутами і відповідними значеннями є їх фіксація у вигляді послідовності на рис.4.
На малюнку форма подання вказує на тип значень відповідного елемента (N - ціле число, S - рядок символів, B - коди логічних констант True і False, D - дата).
Предметна область. Сукупність об'єктів реального світу, що розглядається в рамках певного контексту (теорії, сфери діяльності, моделі і т.п.).
Зауваження 1. У цьому визначенні поняття об'єкта трактується досить широко: як об'єкти предметної області можуть розглядатися предмети, явища, процеси. Дійсно, нехай, наприклад, потрібно зберігати відомості про товари, що надійшли на склад, тобто, про матеріальні (фізичних) об'єктах типу ТОВАР. Швидше за все, до складу бази даних необхідно буде включити і інформацію про замовлення на поставку товарів на склад, хоча ЗАМОВЛЕННЯ суть не фізичний об'єкт, а процес з атрибутами, що включають назву товару, що поставляється, його кількість, назва постачальника, термін поставки і т.д.
Мал. 3. Базові поняття предметної області
Рис.4. Зв'язок атрибутів з елементами даних і їх значеннями
Зауваження 2. Вказівка серед атрибутів об'єкта ЗАМОВЛЕННЯ назви товару, що є, очевидно, атрибутом об'єкта ТОВАР, тим самим визначає, що існують у даній галузі (на складі), існує зв'язок між шуканими об'єктами. Таким чином, об'єкти реального світу мають один з одним безліч складних зв'язків і залежностей, які необхідно враховувати в інформаційній діяльності.
Зауваження 3. Реальний світ нескінченний; в будь-якій предметній області можна виділити безліч об'єктів з нескінченною кількістю властивостей у кожного з них і нескінченну кількість зв'язків між об'єктами. Очевидно, що повне і вичерпне опис предметної області в БД практично неможливо. Однак для вирішення виникаючих в практичній діяльності завдань (проблем) повне інформаційне опис предметної області і не потрібно. Оскільки будь-яка вирішується завдання пов'язана з досягненням певної мети, з предметної області завжди можна виділити лише обмежену сукупність (підмножина) взаємопов'язаних об'єктів з певними властивостями, поведінка якої істотно для вирішення завдання. Ясно, що такі обмежені підмножини пов'язані з кожної завданням, розв'язуваної в рамках конкретної предметної області.
Визначення 2. БД - це структурна сукупність даних. відображають властивості актуальних об'єктів зовнішнього світу (що розглядаються з певної точки зору).
Визначення 3. База даних - це сукупність описів об'єктів реального світу і зв'язків між ними, актуальних для конкретної прикладної області.
Іншими словами, база даних - це деякий набір даних, що відображає актуальні (необхідні для вирішення завдань) дані та актуальні (значущі) зв'язку.
Дамо ще кілька визначень, уточнюючих окремі поняття, що вже зустрічалися раніше.
Проблема. Об'єктивно виникає в діяльності людини питання або комплекс питань, вирішення яких представляє теоретичний або практичний інтерес.
Проблемна ситуація. Ситуація, яка не може бути дозволена наявними засобами.
Мета. Деякий стан. до якого рухається (або повинна рухатися) сукупність взаємопов'язаних об'єктів. Очевидно, що мета виникає при наявності проблемної ситуації.
Зауваження. Стан сукупності взаємопов'язаних об'єктів предметної області в кожен момент часу визначається сукупністю значень атрибутів об'єктів і характеристик зв'язків. Змінилися значення (характеристики зв'язків) - змінився стан.
Проблемна середовище (область). Взаємопов'язана сукупність описів вирішуваних завдань в рамках певної інформаційної системи.
Система. Під системою будемо розуміти безліч об'єктів і відносин (зв'язків) між ними, виділена з предметної області відповідно до визначеної мети в рамках певного часового інтервалу.
У цьому визначенні відзначимо два важливих моменти.
1. Створення системи можливо тільки при наявності поставленої мети. У цьому сенсі завжди актуальним гасло "Ні системи без проблеми!". Іншими словами, без чіткого і повного осмислення проблемної області можна починати розробку інформаційної системи. Згаданий принцип можна проілюструвати наступною схемою:
На діаграмах прикладів зображені дві сукупності об'єктів, один з яких відповідає безлічі службовців. а другий - зарплат.
Зауваження. Такі сукупності об'єктів звуться «тип об'єкту». Окремі елементи цих множин називаються екземплярами відповідних типів об'єктів. Ясно, що всі екземпляри одного типу (однотипні об'єкти) характеризуються однаковим набором атрибутів (властивостей). Таким чином, зустрічаючи термін об'єкт. необхідно точно уявляти собі, йдеться про типи об'єктів або окремих примірниках. В теорії баз даних використовується еквівалентну об'єкту (типу об'єкта, екземпляру типу об'єкта) поняття записи (типу записи. Примірника типу записи).
Очевидно, що, розглядаючи сукупність незв'язаних об'єктів Прімера 1. що відносяться до типів службовець і ЗАРПЛАТА. ми не можемо визначити величину зарплати конкретних службовців і, відповідно, вирішити питання про її (зарплати) достатності або необхідності збільшення. Таким чином, дані можуть бути зрозумілі (усвідомлені) тільки в тому випадку, якщо між ними встановлено зв'язок; саме взаємопов'язані дані несуть певну інформацію.
Згідно [1], виділимо наступні групи властивостей, які характеризують систему як об'єкт дослідження:
· Цілісність. Дозволяє відокремити систему від навколишнього середовища.
· Відкритих ь. Зв'язок із середовищем. Наявність у системи входів (надходження інформації з середовища) і виходів (видача результуючої інформації в середу).
· Внутрішня неоднорідність. Дозволяє виділити в системі її складові частини.
· Структурованість. Наявність зв'язків між частинами системи.
· Функціональність. Функції - це процеси, що відбуваються на виходах системи; результати її діяльності; продукція, нею вироблена.
· Стимульовані ь. Схильність системи впливів ззовні і зміна її поведінки під цими впливами.
· Мінливість згодом. Можливість зміни складу елементів, самих елементів, зв'язків.
· Стійкість. Існування візменяющейся середовищі. Збереження працездатності системи при змінах в предметної області.
· Емерджентність (emergence - раптова поява). Поява властивостей системи як цілого, відсутніх у окремих частин системи.
· Нероздільні на частини. Слідство емерджентність. Зникнення деяких властивостей системи при виконанні операції її декомпозиції.
· Інгерентно (inherent - є невід'ємною частиною чогось). Узгодженість з навколишнім середовищем, сумісність з нею.
· Доцільність. Підпорядкованість певної мети.