Дизайн на база данни - стр. 2

Тип материалУрок

Съдържание

2. Модел на домейн 2.1. Обекти и класове обекти 2.2. Връзки между класове обекти 2.3. Видове взаимоотношения в предметната област 2.3.2. Характеристика на пълнотата на комуникацията
Подобен материал:
  • 1 научете как да създадете таблица на база данни в режим на таблица, 54.71kb.
  • Указания за дизайн на курса в курса "Бази данни" Москва, 654.27kb.
  • Дизайн на база данни за лекции, 227.73kb.
  • Ms access Създаване на база данни, 34.31kb.
  • Лекция 2 10. Пълнотекстови бази данни, 133.46kb.
  • Практическа работа № "Създаване на база данни", 21.96kb.
  • Информационни системи, използващи бази данни: хардуер, софтуер, 102.98kb.
  • Бележки за лекции по курса "бази данни" (гл., 861.92kb.
  • Резюме по темата: Достъп. Бази данни, 274.77kb.
  • Лекция: Етапи на проектиране на ИС чрез uml: Основните видове използвани uml диаграми, 209.83kb.

2. Домейн модел

Домейн модел (инфологичен модел) е описание на предметен домейн, направено без фокусиране върху софтуера и хардуера, използвани в бъдеще. Целта на инфологичния дизайн е да представи семантиката (т.е. значението) на домейна. Този модел трябва да бъде разбираем за клиент, който не е експерт по бази данни.

За описание на предметната област най-често се използва моделът "същност-връзка", предложен от П. Чен през 1976 г. (или неговите модификации). Накратко, такъв модел се нарича ER-модел от английското наименование "Entity-Relationship" ("Entity-relationship").Диаграмата на модела има лексикографска структура, т.е. включва текстови и графични елементи. От името на модела става ясно, че неговите основни структурни елементи ще бъдат обекти и връзки между тях. Нека разгледаме всеки от структурните елементи.

2.1. Обекти и класове обекти

Предметната област се състои от обекти, които могат да бъдат хора, материални обекти, производствени отдели, хартиени документи, операции, явления, абстрактни идеи. Например обекти могат да бъдат: студент Иванов I.I., група 22301, Стопански факултет, стипендия на студент Иванов I.I., зачетна книжка на студент Иванов I.I. и др.

Не е възможно да се покаже всеки обект от предметната област в модела. Моделът предполага известно обобщение и свеждане на всичко до обща структура. Следователно сред всички специфични обекти е необходимо да се отделят техните общи характеристики, характеристики и да се комбинират в класове според тях. И така, С. П. Петрова, И. И. Иванов и А. А. Булкин могат да бъдат комбинирани в клас Ученик, а Молив, Бележник и Линийка в клас Стоки.

Всеки клас се дефинира от набор от атрибути, т.е. свойства, които има всеки обект, принадлежащ към този клас. Например класът Студент може да има следните свойства: Пълно име, Година на раждане, Курс на обучение, Номер на дневника, а класът Продукт може да има Име, Дата на производство, Цена.

Свойствата могат да бъдат статични или динамични, което означава, че стойността на дадено свойство не може да се промени или може да се промени с течение на времето. Например стойността на свойството Година на раждане за клас Студент не може да се промени, но стойността на свойството Курс на обучение за същия клас ще се променя всяка учебна година, освен ако, разбира се, не е добросъвестен ученик.

По отношение на моделаentity-relationship, класовете обекти се обозначават с правоъгълници, а свойствата с овали. Името на класа е написано вътре в правоъгълника, името на свойството е написано вътре в овала. Променливостта на свойствата в диаграмата се обозначава с латинските букви S и D. Буквата S означава статичността на свойството, буквата D - динамична.

Фигурата по-долу показва класа Student, който има четири свойства, две от които са статични (година на раждане и номер на дневника), а другите две са динамични (име и курс).

2.2. Връзки между класове обекти

Може да има някои връзки между класове обекти, наречени връзки. Например, има връзка между класовете Студент и Група: студентите са разделени на групи или можете да кажете, че групите се състоят от студенти.

Връзките могат да бъдат двоични, т.е. между два класа обекти или между повече класове. Можете също така да дефинирате циклични връзки, т.е. връзки между обекти от един и същи клас.

Може да има произволен брой връзки между едни и същи класове. Например, между класовете Студент и Група можете да формирате връзката „разпределение на учениците в групи“ и връзката „ръководител на група“.

Отношенията, подобно на класовете, могат да имат свойства. Например между двата класа Продукт и Доставчик има връзка, която ще наречем Доставка, което означава, че доставчикът доставя стоките. Тази връзка ще има две свойства, дата на доставка и количество. Ясно е, че датата и количеството не могат да бъдат свойства нито на класа Продукт, нито на класа Доставчик. Това са характеристиките на отношенията между две класи.

По отношение на ER диаграмите връзката се изобразява като диамант, вътре в който е написано името на връзката. Класовете функции, включени в тази връзка, са свързани с диамантстрелки. Използването на двойни стрелки ще бъде обсъдено по-долу.

Свойствата на релацията се изчертават по същия начин като свойствата на класа и са свързани с ромб, представляващ релацията.

2.3. Видове отношения в предметната област

2.3.1. Характеристика на уникалност за бинарни отношения

  1. Комуникация 1:1, "един към един". Тази връзка означава, че на всеки обект от първия клас съответства точно един обект от втория клас и обратно, всеки обект от втория клас съответства на точно един обект от първия клас. Два обекта от различни класове влизат в релация.
Например връзката между класовете Факултет и Декан. Един факултет може да има само един декан, а деканът може да бъде декан само на един факултет. На диаграмата такава връзка е изобразена с две единични стрелки.

  1. Връзка 1:M, "един към много" (или M:1, "много към един"). Тази връзка означава, че един обект от първия клас съответства на няколко обекта от втория клас, но всеки обект от втория клас съответства само на един обект от първия клас. Няколко обекта влизат в такава връзка - един обект от първи клас, останалите от втори и ако някой обект от втори клас вече влиза в връзка с някакъв обект от първи клас, то той вече не може да влезе в същата връзка с друг обект от първи клас.
Това е естеството на връзката между класовете Group и Student. В една група може да има няколко ученика, но всеки студент може да бъде само в една група. Или връзката между класовете Факултет и Катедра. Един факултет може да има няколко катедри, но всяка катедра принадлежи само на един факултет.

На диаграмата връзката е изобразена с една единична и една двойна стрелка. двойна стрелкасе насочва към класа, чиито обекти могат да бъдат включени в релацията в произволен брой.

На диаграмата такава връзка е изобразена с две двойни стрелки.

2.3.2. Характеристика на пълнотата на комуникацията

Характеристиката пълнота отразява зависимостта на класа от връзката, в която е включен.

  1. Връзка, която е незадължителна по отношение на клас, означава, че съществуването на обекти на класа не зависи от наличието на връзка.
  2. Връзка, която е задължителна по отношение на клас, означава, че съществуването на класови обекти зависи от съществуването на връзка.

В диаграмата връзка, която е задължителна за даден клас, е обозначена с квадрат с точка вътре в съседство с правоъгълника, представляващ класа, пред стрелката на връзката, която влиза в него.

Например:

  1. Връзка между класове Факултет и Компютърен клас. Университетът има факултети, които нямат компютърни класове, и има компютърни класове, които не са причислени към нито един от факултетите, т.е. както компютърните класове, така и факултетите съществуват независимо дали компютърният клас принадлежи на факултета и дали факултетът има поне един компютърен клас. Такава връзка не е задължителна както по отношение на факултетния клас, така и по отношение на компютърния клас.

  1. Връзка между класове Служител и Длъжност. Всеки служител в организацията трябва да има длъжност, т.е. няма служител без длъжност. Това означава, че няма обект от клас служител, който да не е свързан с някакъв обект от клас работа. Но позицията може също да е свободна, т.е. да не е свързана с нито един обект от класа Employee. Такова свързване е задължително по отношение на клас Служител и незадължително по отношение на клас Позиция.

  1. Връзка между класовете Студент и Група. Не може да има ученик, който да не принадлежи към никоя група, както не може да има група без ученици. Такава връзка е задължителна както за клас Ученик, така и за клас Груп.

Общата схема, съдържаща всички класове обекти, техните свойства, връзки между класовете и свойствата на тези връзки, ще бъде инфологичният модел на предметната област, понякога наричан концептуален модел.

След изграждането на инфологичния модел на предметната област може да се премине към изграждането на модела на данните.