Повна версія

Головна arrow Інформатика arrow Бази даних: проектування

  • Увеличить шрифт
  • Уменьшить шрифт


<<   ЗМІСТ   >>

Аналіз об'єктів предметної області

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

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

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

Наприклад, при розгляді документа "Замовлення клієнта" для розробника бази даних ключовими атрибутами є не властивості документа (номер документа, дата створення і т.д.), а опис товарів, які клієнт замовив, а характеристики документа описують не документ, а стан об'єкта "Замовлення клієнта", і їх поява в базі даних визначається необхідністю фіксувати ці відомості відповідно до вимог замовника. У разі, коли сам документ "Замовлення клієнта" є об'єктом предметної області в частині автоматизації документообігу, то основними стають характеристики цього документа, тобто його номер і дата створення, а інші характеристики, що описують склад замовлення, є допоміжними і можуть бути відсутніми в базі даних, якщо логікою предметної області з метою автоматизації не передбачено їх зберігання в базі даних.

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

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

Як правило, ключовий об'єкт представляється продуктом бізнес-процесу. Але, в разі розгляду окремо функцій, незалежно від рівня їх деталізації, ключовим об'єктом стає будь-який предмет (матеріальний або документарний), що становить базову основу даної функції. Змістившись на рівень опису функцій предметної області і побудови бази даних, розробник практично вже не замислюється про сутність розглянутих функцій (бізнес-функція або допоміжна функція). Це дозволяє розробнику з однаковою увагою ставитися до будь-якої функції предметної області і вибудовувати базу даних, з огляду на її функціональність.

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

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

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

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

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


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

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

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

  • • в один клас включаються об'єкти предметної області з загальними характеристиками і властивостями;
  • • в один клас об'єктів входить не менше двох об'єктів;
  • • об'єкти предметної області можуть мати ієрархічну залежність.

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

  • • збірний - в клас входять об'єкти, що не мають спільних атрибутів, але логічно пов'язані один з одним і що характеризують деякий єдиний предмет реального світу;
  • • узагальнюючий (категорізаціонний) - до класу входять об'єкти, що мають загальні атрибути та описують подібні предмети реального світу, але логічно не пов'язані один з одним;
  • • об'єктний - в клас входить єдиний об'єкт, що володіє особливими властивостями зберігання даних і їх обробки.

Також визначаються групи класів:

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

Виділення об'єктів на етапі аналізу предметної області доцільно робити з метою спрощення подальшого моделювання бази даних і розуміння функціональних особливостей роботи бази даних з відомостями про розглянутих об'єктах. Саме для цього, при розробці бази даних на етапі аналізу, формують опис кожного виділеного об'єкта, класифікуючи їх на ключові (основні) для функції і допоміжні, які можуть брати участь в реалізації функції, по використовуються, як правило, тільки в якості довідника (класифікатора) . В результаті розгляду об'єктів формується табл. 2.8.


п / п

функція

об'єкт

Тип

Характеристики

опис

1

облік

товарів

магазина

товар

ключовий

Артикул и Найменування

Об'єкт в предметної області є класифікатором і використовується в якості довідника, коли виконуються основні бізнес- функції. Наповнення об'єкта екземплярами проводиться в рамках реалізації допоміжної функції

2

товар

на складі

допоміжний

Артикул и Найменування Ціна поставки Кількість

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

3

формування

замовлення

клієнта

замовлення

клієнта

ключовий

замовлення

товар

кількість

Ціна

Основний об'єкт бізнес-функції, формування примірника якого визначає склад замовлення клієнта та включає в себе вказівку на окремі екземпляри допоміжних об'єктів: "Замовлення", "Товар"

4

замовлення

допоміжний

І Номер замовлення Клієнт Дата замовлення

Класифікатор замовлень, який виступає в якості допоміжного об'єкта, який забезпечує наповнення бази даних базовими відомостями про зроблених клієнтами замовленнях

5

товар

допоміжний

Артикул и Найменування

Класифікатор, що забезпечує наповнення замовлення клієнта списком замовлених товарів

6

клієнт

допоміжний

ПІБ

Адреса доставки Телефон

Класифікатор покупців (клієнтів), що роблять замовлення в магазині

...

...

...

...

...

...



Характеристиками об'єкта є його атрибути, що описують сутність подаються примірників цього об'єкта. Проте, варто пам'ятати про те, що в якості характеристики може бути вказаний інший об'єкт предметної області. Таке уявлення дозволить в подальшому виділити допоміжні об'єкти предметної області та послідовно провести ефективне моделювання бази даних. Іноді, якщо розробник, розглядаючи предметну область і документообіг, бачить, що необхідно виділити допоміжний об'єкт, то фактично відбувається процес виділення дочірніх об'єктів. Але цей процес не завжди можна виконати ефективно тільки на основі логічного аналізу предметної області, враховуючи, що такий аналіз може до того ж привести до виникнення помилок проектування в вигляді виділення невірних об'єктів. Саме тому, коли виконуються розгляд і опис об'єктів предметної області, виділяють тільки ключові об'єкти, розуміючи, що в процесі моделювання, використовуючи спеціальні правила обробки об'єктів, будуть виділені всі необхідні допоміжні об'єкти.

Опис ж об'єктів і їх структурний склад (характеристики) повинні бути достатньо повними, щоб по них можна було виділити необхідні завдання предметної області, які повинні виконуватися в базі даних по обробці примірників даних об'єктів, а також виділити допоміжні об'єкти.

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

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

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

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


Приклад класифікації об'єктів

п / п

об'єкт

склад

клас

гурт

опис

1

категорії

товарів

категорії

товарів

об'єктний

ієрархічний

Об'єкт є цілісним єдиним поданням списку категорій товарів, де виконується ієрархічне зв'язування кожного найменування категорії

2

товар

товар

електротовари

продукти

узагальнюючий

лінійний

Об'єкт є категоризує, поєднуючи в собі всі товари, що володіють різного при ими характеристи- ками, але містять єдиний сенс в предметної області

3

електротовари

електротовари

об'єктний

Квазі-структурований

Склад характеристик об'єкта є змінним залежно від типу електротоварів, і їх повний склад на етапі розробки бази даних визначити неможливо

...

...

...

...

...

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

Вартість = Ціна • Кількість. (2.1)

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

При виділенні атрибутів об'єктів можливі ситуації, коли певний атрибут є груповим і містить в собі деякий безліч інших атрибутів (наприклад, атрибут "Адреса доставки" може всередині містити кілька атрибутів - "Назва міста", "Назва вулиці", "Тип вулиці", " номер будинку "і т.д.). Розгляд цих атрибутів потребує окремої уваги при моделюванні бази даних і прийняття рішення про влаштування на окремі складові або подання у вигляді єдиного неподільного атрибута.


Приклад опису атрибутів об'єктів

п / п

об'єкт

п / п

Атрибут

Тип

даних

довжина

вид

даних

Діапазон

значень

алгоритм

обчислення

Класифікатор

1

11ол людини

1

Найменування

З

10

текст

-

-

Чоловік

жіночий

2

абревіатура

З

1

те ж

-

-

М

Ж

3

Короткий значення

З

3

- "-

-

-

чоловік

Жінки

2

товар

1

Артикул

З

10

- "-

2

Найменування

З

50

- "-

-

-

-

3

Категорія

товару

1

Найменування

З

20

електротовари

Телевізори

11оутбукі

Одяг

чоловіча

взуття

жіноча

взуття

плаття

4

Товар на складі

1

товар

-

-

об'єкт

-

-

-

2

Ціна

дн

7,2

число

0 ... п

-

-

3

кількість

Ч

-

те ж

0 ... п

-

-

4

вартість

дн

10,2

- "-

0 ... п

4.2 * 4.3

-




Інший ситуацією при виділенні атрибутів є поява атрибутів-об'єктів. Такі атрибути вказують на необхідність згодом, при моделюванні бази даних, визначитися з прив'язкою відповідного об'єкта (сутності) до цього атрибуту.

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

  • • символьний (С) - дані містять різні символи, що представляються у вигляді текстового рядка;
  • • числовий (Ч) - дані подаються тільки цифрами і складають цілі і речові числа;
  • • символьно-числового (С-Ч) - дані містять символи, що представляються у вигляді текстового рядка, і містять також числові дані, які можуть формуватися на підставі обчислення або введення числової інформації;
  • • грошовий (Дн) - дані подаються значеннями фінансового характеру, який передбачає деяку кількість числових символів після десяткової коми;
  • • бінарний (Б) - дані зберігаються в машинних кодах і містять інформацію у вигляді: аудіо, відео даних, файлу, посилання на файл, картинки і т.д .;
  • • дата (Д) - дані описуються числовими значеннями дат з роздільником відповідно до правил подання;
  • • час (В) - дані описуються числовими значеннями часу з роздільником відповідно до правил подання;
  • • дата і час (ДВ) - дані описуються сукупними числовими значеннями дати і часу з роздільником відповідно до правил подання.

Вказівка ​​типів даних для атрибутів дає інформацію розробнику бази даних про правила зберігання відомостей в базі даних і, коли з'явиться необхідність вказати тип даних з урахуванням використовуваної СУБД, розробник буде володіти необхідною інформацією.

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

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

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

Іноді трапляється, що в базі даних потрібно зберігати числові відомості, що містять нулі (наприклад, БИК банку - 04452255). Такі атрибути описуються типом даних "Символьний", а вид даних буде "Число". Така вказівка ​​дозволить розробнику бази даних зрозуміти правила по наданню й обробці відомостей.

Також в описі вказується діапазон значень, особливо для числових атрибутів. Діапазон значень може описуватися явними значеннями (0, 1, 2, 3 ...), діапазоном чисел (0 ... 10). Оскільки не завжди можна однозначно вказати діапазон значень, то нижня і (або) верхня межа значень може вказуватися невизначеним значенням, яку представляють літерним символом (0 ... Я).

Оскільки деякі атрибути є обчислюваними, то для них визначається формула обчислення, яку, враховуючи нумерацію об'єктів і атрибутів, можна уявити в закодованому вигляді з використанням можливих математичних функцій і операцій. Наприклад, для обчислення вартості необхідно перемножити ціну і кількість, і обидва вихідних атрибута знаходяться в об'єкті з номером "4", а самі атрибути мають нумерацію "2" і "3". В результаті формула обчислення буде представлена ​​наступним чином: "4.2 * 4.3".

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

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

 
<<   ЗМІСТ   >>