You are on page 1of 25

CSCB686 РАЗПРЕДЕЛЕНИ И ОБЕКТНО

– ОРИЕНТИРАНИ БАЗИ ОТ ДАННИ

МОДУЛ 3: СЕМАНТИЧНО
МОДЕЛИРАНЕ

Лекция 5: Абстракция на данните и


представяне на знания
ЛЕКТОР: ЮЛИАНА ПЕНЕВА
Департамент “Информатика” – НБУ

Е-mail: july_peneva@abv.bg
СЪДЪРЖАНИЕ НА ЛЕКЦИЯ №5

1. Семантично моделиране.
2. Форми на абстракция.

Трябва да са усвоени Модули 1, 2 и 6 на


Бази от данни – I част

CSCB686 - лекция 5 Юлиана Пенева 3


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
Цел на семантичното моделиране
Представяне на свойствата на разработваните
приложения по близък до потребителите начин
чрез модели.
Не може ли да се използва релационния модел?
НЕ!!
Директното прилагане на релационния модел
обикновено допринася за създаването на
неясни и неестествени схеми на базата от
данни - единствената структура е отношението!
Използват се семантични модели за концептуално
представяне на приложението под формата на
обекти и взаимодействия между тях !!
CSCB686 - лекция 5 Юлиана Пенева 4
АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
Семантично моделиране

CSCB686 - лекция 5 Юлиана Пенева 5


КОНЦЕПТУАЛЕН МОДЕЛ
1. Концептуален модел – абстрактно
представяне на явления от реалния свят,
присъщи на определено приложение.
2. Използва се за:
 построяването на обща схема на
системата при общуването между
потребители и разработчици;
 моделиране на потребителските
изисквания към системата;
 основа при проектирането и
реализацията на системата;
 документиране на системата, с оглед
успешното поддържане и експлоатиране.

CSCB686 - лекция 5 Юлиана Пенева 6


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
Процесът на моделиране преминава през
следните етапи:
1. Абстракция.
2. Семантично моделиране.
3. Използуване на езиков или диаграмен
метод за представяне на модела.
4. Анализ на бизнес правилата и
семантичните ограничения на
приложението.

CSCB686 - лекция 5 Юлиана Пенева 7


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ НА
ЗНАНИЯ

Абстракция
1. Дефиниция - процес на идентифициране на
основните аспекти на дадено понятие и
игнориране на маловажните му свойства.
2. Метод за структуриране на данните -
разглеждат общи свойства на дадено
множество от обекти, като се изпускат
несъществените детайли.
3. Цел - разработчиците да обхванат
изискванията към данните и обработките.

CSCB686 - лекция 5 Юлиана Пенева 8


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ НА
ЗНАНИЯ

Абстракция – примери

CSCB686 - лекция 5 Юлиана Пенева 9


АБСТРАКЦИЯ НА ДАННИТЕ И
ПРЕДСТАВЯНЕ НА ЗНАНИЯ
Характеристики на семантичните модели
1. Подобряват моделиращите възможности
на класическите модели.
2. Прилагат няколко основни вида (форми
на) абстракции:
 класификация;
 обобщение;
 агрегация;
 асоциация;
 идентификация.

CSCB686 - лекция 5 Юлиана Пенева 10


АБСТРАКЦИЯ НА ДАННИТЕ И
ПРЕДСТАВЯНЕ НА ЗНАНИЯ
Характеристики на семантичните модели
3. Имат по-малък обхват отколкото
методите за представяне на знания.
4. С тяхна помощ се представя основно
схемата на базата от данни.
5. Предлагат символни структури или
термини, чрез които се моделира
приложението.

CSCB686 - лекция 5 Юлиана Пенева 11


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
1. Методите за представяне на знания се
използуват за прецизното моделиране на
дадена област на знание.
2. За целта се създава онтология, която описва
понятията от дадена област, заедно с
правилата и изключенията.
3. Онтология - специфициране на множеството от
понятия за пълното представяне на дадена
предметна област или знание.
4. Онтологията дефинира структурите,
използувани в моделите, чрез които се описват
статичните свойства на дадено приложение.

CSCB686 - лекция 5 Юлиана Пенева 12


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ

CSCB686 - лекция 5 Юлиана Пенева 13


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
1. Класификацията (classification)
е форма на абстракция, при
която типът (класът) на обекта
се дефинира чрез множество
от обекти (instance) със
сродни характеристики.
2. Свързва типа на обекта в
схемата с конкретните обекти
в базата.
3. Моделират връзки от вида “е-
представител-на” (is-an-
instance-of) или “е-член-на”
(is-a-member-of).
4. Обединява група от обекти със
сродни характеристики.
5. Поддържа се от релационния
модел.
CSCB686 - лекция 5 Юлиана Пенева 14
АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
1. Агрегацията (aggregation) е форма
на абстракция, при която връзката
между различни типове обекти се
разглежда като групиран на по-
високо ниво обект от нов тип.
2. Моделират се връзки от тип “част-
от” (is-a-part-of) или “композиция”
между типовете обекти.
3. Чрез агрегация се конструират нови
типове обекти със съответните им
атрибути от вече известни типове.
4. Прилага се многократно и служи за
изграждането на сложни типове.
Например, типа обект АВТОМОБИЛ -
агрегация от шаси, волан, други
системи и колела.

Юлиана Пенева CSCB686 - лекция 5 15


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
1. Обобщението (generalization) е
форма на абстракция, при която
подобни обекти се свързват с
пораждащ ги обект на по-високо
ниво, като се пренебрегват
различията помежду им и се
отделят само общите им белези.
2. Подобните обекти представляват
специализации (specialization) на
пораждащия ги обект.
3. Моделират се задават връзки от
тип “това-е” (is-a).
4. Обобщението е отнасяне на
различни типове от обекти към
обект от нов тип.
5. Специализацията извежда типа
на обекта от вече съществуващ
тип - процес обратен на
обобщението.
Юлиана Пенева CSCB686 - лекция 5
16
АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
1. Асоциацията (association) е форма на абстракция, при
която връзката между подобни обекти се разглежда
като обект-множество на по-високо ниво.
2. Моделира се връзка от тип “член-на” (member-of)
между обекта-множество и неговите обекти-членове.
3. При асоциацията (групиране, разпределяне) се
изграждат нови типове обекти (сложни обекти) от
независимо съществуващи обекти.
4. Асоциацията се използува при проектирането за
свързване на отделни компоненти с определен модел
на дадено изделие-автомобил, компютър…

CSCB686 - лекция 5 Юлиана Пенева 17


АБСТРАКЦИЯ НА ДАННИТЕ И
ПРЕДСТАВЯНЕ НА ЗНАНИЯ
Наследяване
1. При някои семантични модели схемите се представят
като йерархии от агрегации и обобщения между типове
обекти.
2. Наследяване - средство, чрез което атрибути на обект от
по-общ тип се предават на обект от специализиран в
йерархията тип.
3. Наследяването е механизъм за деление на поведение и
атрибути между отделни класове, които се намират в is-a
връзка помежду си.
4. Позволява постепенното променяне на дефинициите на
съществуващ клас и изграждането на негови подкласове.
5. От своя страна всеки обект може да бъде прост или
съставен -дефиниран като агрегация, обобщение или
асоциация на други обекти.

CSCB686 - лекция 5 Юлиана Пенева 18


АБСТРАКЦИЯ НА ДАННИТЕ И
ПРЕДСТАВЯНЕ НА ЗНАНИЯ
Наследяване

CSCB686 - лекция 5 Юлиана Пенева 19


АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
Идентификация
1. Механизъм за отличаване на отделните обекти,
изграждащи даден тип - форма на абстракция.
2. Спомага за представянето на някои ограничения:
 зависимости от ключа;
 включване в даден тип.
Например гражданите на Република България се
идентифицират по своя единен граждански
номер.
3. Идентификацията се прилага за постигането на
две цели:
 различаване на обектите и класовете в базата;
 маркиране на обектите в базата и отнасянето им
към реалните обекти от предметната област.
CSCB686 - лекция 5 Юлиана Пенева 20
АБСТРАКЦИЯ НА ДАННИТЕ И ПРЕДСТАВЯНЕ
НА ЗНАНИЯ
Видове семантични модели

1. Модели, използуващи различни форми


на абстракция – ER и EER модели.
2. Модели, осъществяващи
взаимодействия между обектите чрез
атрибути – функционален модел на
данните (functional data model).
3. Модели, комбиниращи средствата от
първите две групи - семантичен модел
на базата (semantic database model).

CSCB686 - лекция 5 Юлиана Пенева 21


ПРИМЕРИ ЗА КОНЦЕПТУАЛНИ МОДЕЛИ
1. Семантични мрежи - 68 г.
Използват графи за моделиране на човешката памет.
Възлите в семантичната мрежа представят понятия.
Ако думата има няколко значения се построяват
съответния брой възли. Възлите се свързват
помежду се чрез връзки от вида “това е”. Добавят се
и някои свойства.

CSCB686 - лекция 5 Юлиана Пенева 22


ПРИМЕРИ ЗА КОНЦЕПТУАЛНИ МОДЕЛИ
2. Езикът Simula
 предложен през 60-те години в Норвегия като разширение на
езика Алгол за симулиране на различни процеси;
 модулите в този език не са процедури, а физическите обекти,
които се моделират при симулацията;
 от този език произлиза и съвременното понятие за обект като
основна моделираща единица за всички елементи на реалния
свят;
 всеки обект представлява уникално идентифицируема единица
и се дефинира като множество от атрибути (instance variables)
и действия (actions).
3. ER модел („същност-връзка“ или модел на Чен).
4. UML (unified modeling language).
5. Data Flow Analysis + ER - моделира потока на
данните в рамките на организацията. Комбинира
се модела на Чен.

CSCB686 - лекция 5 Юлиана Пенева 23


ПРИМЕРИ ЗА КОНЦЕПТУАЛНИ МОДЕЛИ
6. Фреймови модели
 фреймът е структура за представяне на знание –
например за понятието слон или стая;
 фреймът съдържа информация за компонентите на
описваното понятие, връзки с други подобни понятия,
начините за достъп до самия него и как се променя
във времето;
 примери за подобни модели са:KRL, KL-ONE, PSN

7. Терминологични езици
 опит за интегриране на елементи от семантичните
модели, логиката и процедурни представяния;
 пример: езикът CLASSIC - базата от информация се
състои от терминологична компонента, където се
описват термините и компонента, съдържаща
съждения относно въведените термини.

CSCB686 - лекция 5 Юлиана Пенева 24


ПРИМЕРИ ЗА КОНЦЕПТУАЛНИ МОДЕЛИ
8. Структурен анализ и проектиране - Structured Analysis and
Design Technique (SADT), предложен от Ross като език за
съобщаване на идеи.
 според тази техника светът се състои от дейности и данни;
 във всяка дейност участват и се извеждат някакви данни;
 за първи път се моделират динамични аспекти на приложението;
 обръща се внимание върху отделните функции, характерни за
разглежданата проблемна област и входно-изходните данни
необходими на всяка от тях;
 представлява подход за проектиране отгоре - надолу с уточняване
(top-down refinement approach).
9. Семантични модели за нуждите на базите от данни –
разработени са за да може да се представи по-добре
семантиката на приложението.
10. Обектно-ориентирани модели на данните.

CSCB686 - лекция 5 Юлиана Пенева


25

You might also like