- Главная
- Информатика
- Проектирование БД. Теоретические пояснения к курсовой работе. Часть 1
Содержание
- 2. Описание информационного представления предметной области. ER-диаграмма Иллюстрацию вводимых понятий и этапов проектирования базы данных будем проводить
- 3. Введем основные понятия, с помощью которых описывается предметная область. Сущность (Entity) или объект – то, о
- 4. Для информационного описания сущности вводится понятие атрибута. Атрибут – поименованное свойство ( характеристика) сущности. Атрибут представляет
- 5. Экземпляром сущности будем называть конкретную сущность (сущность с конкретными значениями соответствующих свойств). Выше мы определили сущность
- 6. Наиболее распространенным способом представления концептуальной модели является так называемая ER-диаграмма. В разных источниках используются разные системы
- 7. Для реализации иформационных потребностей пользователя недостаточно найти интересующий его экземпляр сущности. Информационные потребности тесно связаны с
- 8. Рассмотрим классификацию бинарных связей. В зависимости от того, сколько экземпляров сущности одного класса связаны со сколькими
- 9. В данном пособии на ER-диаграммах связи между сущностями будем обозначать стрелками, рядом со стрелками указываем имя
- 10. Напомним, что каждый экземпляр сущности должен уникально идентифицироваться (иметь уникальный идентификатор). Так как могут быть несколько
- 11. Построение концептуальной модели в виде ER-диаграммы Основные этапы построения Как уже отмечалось, концептуальная модель представляет собой
- 12. При разработке концептуальной модели, прежде всего, следует определить сущности. С этой целью нужно сделать следующее: •
- 13. Моделирование локальных представлений Прежде всего, необходимо отметить, что построенная модель должна удовлетворять ряду требований: • адекватно
- 14. Так, например, ранее мы определили сущность ФАКУЛЬТЕТ с атрибутами «номер факультета», «название факультета». Введем сущность КАФЕДРА
- 15. Объединение локальных моделей На этом этапе ранее построенные модели локальных представлений отдельных пользователей (или групп пользователей)
- 16. Рассмотрим каждый из этих путей. Слияние идентичных элементов Два или более элементов модели идентичны, если они
- 17. Установление связей между наборами сущностей разных моделей При рассмотрении наборов сущностей объединяемых моделей необходимо выявление связей
- 18. Как уже отмечалось, одним из показателей «зрелости» модели является возможность ответа на запросы пользователей, и установление
- 19. Два набора сущностей C ПЕЦИАЛЬНОСТИ ФАКУЛЬТЕТА ВМК и СПЕЦИАЛЬНОСТИ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА в моделях 1 и 2
- 20. Рассмотрим другой пример. Предположим, что мы храним данные о студентах (фамилия, имя, отчество, курс, группа) и
- 21. У студента атрибут «Место работы (учебы)» будет принимать значение соответствующее атрибутам «Курс. Группа», у преподавателя –
- 22. Ограничения целостности Под целостностью базы данных понимается то, что в ней содержится полная, непротиворечивая и адекватно
- 23. Соответствующие ограничения обычно разделяют на 3 группы: внешние, специально конструируемые и внутренние. К предметной области относятся
- 25. Скачать презентацию
Слайд 2Описание информационного представления
предметной области. ER-диаграмма
Иллюстрацию вводимых понятий и этапов проектирования базы данных
Описание информационного представления
предметной области. ER-диаграмма
Иллюстрацию вводимых понятий и этапов проектирования базы данных
Чаще всего концептуальная модель представляется в виде диаграммы сущностей – связей (entity – relationship) или ER-диаграммы. Процесс построения ER-диаграммы называется ER-моделированием.
Слайд 3Введем основные понятия, с помощью которых описывается предметная область.
Сущность (Entity) или объект
Введем основные понятия, с помощью которых описывается предметная область.
Сущность (Entity) или объект
Если в системе обрабатывается информация о факультетах, сущностью будет являться факультет, если о студентах, сущность – студент и т.п.
Имя сущности при ER-моделировании, как правило, записывается заглавными буквами. Каждая сущность обладает определенным набором свойств (рассматриваем только свойства, представляющие интерес для пользователей в рамках проводимого исследования), которые запоминаются в информационной системе. Так, например, в качестве свойств сущности ФАКУЛЬТЕТ можно указать номер факультета, название факультета, в качестве свойств сущности СТУДЕНТ можно указать фамилию, дату рождения, место рождения, в качестве свойств сущности ЭКЗАМЕН – предмет, дату проведения экзамена, экзаменаторов.
Слайд 4Для информационного описания сущности вводится понятие атрибута.
Атрибут – поименованное свойство (
Для информационного описания сущности вводится понятие атрибута.
Атрибут – поименованное свойство (
Совокупность сущностей, характеризующихся в информационной системе одним и тем же перечнем свойств, называется классом сущностей (набором объектов). Так, например, совокупность всех сущностей СТУДЕНТ составляет класс сущностей СТУДЕНТ, совокупность всех сущностей ФАКУЛЬТЕТ составляет класс сущностей ФАКУЛЬТЕТ. Класс сущностей описывается перечнем свойств сущностей, составляющих этот класс.
Слайд 5Экземпляром сущности будем называть конкретную сущность (сущность с конкретными значениями соответствующих свойств).
Экземпляром сущности будем называть конкретную сущность (сущность с конкретными значениями соответствующих свойств).
Слайд 6Наиболее распространенным способом представления концептуальной модели является так называемая ER-диаграмма. В разных
Наиболее распространенным способом представления концептуальной модели является так называемая ER-диаграмма. В разных
В четырехугольнике записано уникальное имя класса сущности (прописными буквами) и
имена атрибутов строчными буквами.
Пример класса сущностей СТУДЕНТ и конкретного экземпляра сущности показан на рисунке
Слайд 7Для реализации иформационных потребностей пользователя недостаточно найти интересующий его экземпляр сущности. Информационные
Для реализации иформационных потребностей пользователя недостаточно найти интересующий его экземпляр сущности. Информационные
Класс связей может затрагивать несколько классов сущностей. Число классов сущностей, участвующих в связи, называется степенью связи n = 2, 3, … Так, например, класс сущностей СТУДЕНТ связан с классом сущностей ФАКУЛЬТЕТ связью «учится на факультете». Степень этой связи равна двум. При n=2 связь называется бинарной. Заметим, что связь нужно рассматривать как двустороннюю: «студент учится на факультете» и «на факультете учатся студенты».
Слайд 8Рассмотрим классификацию бинарных связей. В зависимости от того, сколько экземпляров сущности одного
Рассмотрим классификацию бинарных связей. В зависимости от того, сколько экземпляров сущности одного
• Связь 1:1. Одиночный экземпляр сущности одного класса связан с одиночным экземпляром сущности другого класса. Примером является связь между классами сущностей ФАКУЛЬТЕТ и УЧЕБНЫЙ ПЛАН ПО СПЕЦИАЛЬНОСТИ ДЛЯ ФАКУЛЬТЕТА (каждому факультету соответствует свой учебный план по специальности или направлению).
• Связь 1:M. Единый экземпляр сущности одного класса связан со многими экземплярами сущности другого класса. Примером является связь между классами сущностей ФАКУЛЬТЕТ и СТУДЕНТ (на одном факультете учатся много студентов).
• Связь M:N. Несколько экземпляров сущности одного класса связаны с несколькими экземплярами сущности другого класса. Примером является связь между классами сущностей ФАКУЛЬТЕТ и СПЕЦИАЛЬНОСТЬ (на факультете может быть несколько специальностей и одна и также специальность может быть на нескольких факультетах).
Числа, описывающие типы бинарных связей (1:1, 1:M, M:N), обозначают максимальное количество сущностей на каждой стороне связи. Эти числа называются максимальными кардинальными числами, а соответствующая пара чисел называется максимальной кардинальностью.
Слайд 9В данном пособии на ER-диаграммах связи между сущностями будем обозначать стрелками, рядом
В данном пособии на ER-диаграммах связи между сущностями будем обозначать стрелками, рядом
Слайд 10Напомним, что каждый экземпляр сущности должен уникально идентифицироваться (иметь уникальный идентификатор). Так
Напомним, что каждый экземпляр сущности должен уникально идентифицироваться (иметь уникальный идентификатор). Так
Заметим, что по этой ER-диаграмме можно указать последовательность действий, производимых при реализации запроса пользователей. Например, для реализации запроса «на каком факультете учится студент Иванов» необходимо выполнить следующие действия: найти среди экземпляров сущности СТУДЕНТ экземпляр с фамилией Иванов, перейти по связи «Студент учится на факультете» к экземпляру сущности ФАКУЛЬТЕТ, значение атрибута «Название» этого экземпляра и есть искомое название факультета. Отметим также, что иногда на ER-диаграммах две связи между сущностями изображают одной двухсторонней стрелкой или просто линией. Заметим, что на приведенной ER-диаграмме не представлены
какие-либо способы реализации этих связей (на логическом и, тем более, на физическом уровнях). Соответствующие способы реализации связей зависят от возможностей модели данных конкретной СУБД и будут рассмотрены в следующей части на второй стадии концептуального проектирования при представлении концептуальной модели средствами модели данных СУБД.
Слайд 11 Построение концептуальной модели в виде ER-диаграммы
Основные этапы построения
Как уже отмечалось,
Построение концептуальной модели в виде ER-диаграммы
Основные этапы построения
Как уже отмечалось,
Здесь необходимо отметить, что моделирование представлений отдельных пользователей приводит к снижению уровня интеграции данных, а моделирование совместных представлений группы пользователей – к повышению сложности проектирования. В связи с этим при выборе области данных для локального моделирования приходится выбирать компромиссное решение между вышеуказанными вариантами.
Слайд 12При разработке концептуальной модели, прежде всего, следует определить сущности.
С этой целью
При разработке концептуальной модели, прежде всего, следует определить сущности.
С этой целью
• необходимо понять, какая информация должна храниться и обрабатываться и можно ли это определить как сущность;
• присвоить этой сущности имя;
• выявить атрибуты сущности и присвоить им имя;
• определить уникальный идентификатор сущности.
Выявив сущности, необходимо определить, какие связи имеются между ними.
При определении связей (естественно, рассматриваем только те связи, которые имеют отношение к решаемым задачам обработки данных) необходимо учитывать следующее:
• то, как экземпляр одной сущности связан с экземпляром другой сущности;
• то, как должны быть установлены связи, чтобы была возможность ответа на все запросы пользователей (исходя из их информационных потребностей).
Далее необходимо присвоить связям имена и определить тип связей.
На втором этапе построенные локальные модели объединяются в обобщенную концептуальную модель.
Слайд 13Моделирование локальных представлений
Прежде всего, необходимо отметить, что построенная модель должна удовлетворять
Моделирование локальных представлений
Прежде всего, необходимо отметить, что построенная модель должна удовлетворять
• адекватно отражать представление пользователя о данных;
• давать возможность ответа на возможные запросы пользователя, причем делать это с минимальными затратами по количеству просматриваемых сущностей;
• представлять данные с минимальным дублированием.
Процесс построения модели, удовлетворяющей указанным требованиям, является творческим, и формализовать его, как правило, невозможно. Тем не менее можно указать некоторые способы порождения вариантов при моделировании. Выбор одного из таких вариантов на основе оценок объемов дублирования и числа просматриваемых объектов при ответах на запросы пользователей позволяет улучшить эксплуатационные характеристики проектируемой базы данных.
Вариативность моделирования обусловливается неоднозначностью выбора сущностей, атрибутов и связей. В одном варианте можно что-то взять за сущность, в другом варианте это же можно взять за атрибут (несколько атрибутов), в третьем варианте это можно определить как связь.
Слайд 14Так, например, ранее мы определили сущность ФАКУЛЬТЕТ с атрибутами «номер факультета», «название
Так, например, ранее мы определили сущность ФАКУЛЬТЕТ с атрибутами «номер факультета», «название
После того как выбран рациональный вариант локальной модели, производится редактирование введенных наименований сущностей, атрибутов и связей. Здесь выполняются следующие действия:
• устраняются расплывчатые наименования (все наименования должны однозначно
пониматься каждым пользователем);
• устраняются синонимы (различные наименования одного и того же понятия);
• устраняются омонимы (одно и то же наименование разных понятий).
Эти действия, вообще говоря, носят итерационный характер, т.к. после их выполнения
вновь могут возникать и расплывчатые наименования, и синонимы, и омонимы.
Слайд 15Объединение локальных моделей
На этом этапе ранее построенные модели локальных представлений отдельных
Объединение локальных моделей
На этом этапе ранее построенные модели локальных представлений отдельных
• слияние идентичных элементов;
• установление связей между наборами сущностей разных моделей;
• введение новых агрегированных элементов для представления связей между элементами разных моделей;
• обобщение различных подобных типов сущностей, позволяющее трактовать эти сущности как одну обобщенную сущность.
Слайд 16Рассмотрим каждый из этих путей.
Слияние идентичных элементов
Два или более элементов
Рассмотрим каждый из этих путей.
Слияние идентичных элементов
Два или более элементов
и могут быть заменены одним набором сущностей (рис.):
Слайд 17Установление связей между наборами сущностей разных моделей
При рассмотрении наборов сущностей объединяемых
Установление связей между наборами сущностей разных моделей
При рассмотрении наборов сущностей объединяемых
Введение агрегированных элементов
При объединении моделей связь между элементами разных моделей может рассматриваться как новый элемент.
Рассмотрим в качестве примера моделирование информационного представления сдачи студентом экзаменов. Можно выделить ряд локальных представлений (рис.).
Объединяя локальные представления,
устанавливаем новые связи (рис.).
Слайд 18Как уже отмечалось, одним из показателей «зрелости» модели является возможность ответа на
Как уже отмечалось, одним из показателей «зрелости» модели является возможность ответа на
Далее процесс объединения локальных моделей продолжается обычным образом.
Обобщение подобных типов сущностей
Рассмотрим локальные модели разных факультетов, например – модель факультета вычислительной математики и кибернетики (ВМК), модель экономического факультета и так далее.
В локальную модель факультета ВМК входят сущности СПЕЦИАЛЬНОСТИ ФАКУЛЬТЕТА ВМК и СТУДЕНТЫ ФАКУЛЬТЕТА ВМК, в локальную модель экономического факультета входят, соответственно, сущности СПЕЦИАЛЬНОСТИ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА и СТУДЕНТЫ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА (рис.).
Слайд 19Два набора сущностей C ПЕЦИАЛЬНОСТИ ФАКУЛЬТЕТА ВМК и СПЕЦИАЛЬНОСТИ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА в
Два набора сущностей C ПЕЦИАЛЬНОСТИ ФАКУЛЬТЕТА ВМК и СПЕЦИАЛЬНОСТИ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА в
Отметим, что в данном случае подобным образом можно слить и все остальные сущности локальных моделей факультетов, так как сущности СТУДЕНТЫ ЭКОНОМИЧЕСКОГО ФАКУЛЬТЕТА и СТУДЕНТЫ ВМК также имеют одинаковое смысловое значение и их также можно объединить. Однако в общем случае каждая локальная модель может содержать сущности и связи, которых нет в других локальных моделях.
Слайд 20Рассмотрим другой пример. Предположим, что мы храним данные о студентах (фамилия, имя,
Рассмотрим другой пример. Предположим, что мы храним данные о студентах (фамилия, имя,
Эти разные сущности можно в некоторых случаях трактовать как подобные. Для обобщения соответствующих сущностей необходимо, прежде всего, обобщить их атрибуты. Заметим, что атрибуты «Фамилия, Имя, Отчество» у обеих сущностей совпадают, атрибуты «Кафедра» и «Курс», «Группа» показывают место работы (учебы) и их можно заменить обобщенным атрибутом «Место работы (учебы)». Атрибут «Должность» можно использовать и у сущности СТУДЕНТ, если в качестве значения соответствующего атрибута использовать значение «студент». Тогда две сущности ПРЕПОДАВАТЕЛЬ и СТУДЕНТ можно трактовать как подобные и заменить их на обобщенную сущность. Дадим этой обобщенной сущности название КАДРОВАЯ ЕДИНИЦА (рис.).
Слайд 21У студента атрибут «Место работы (учебы)» будет принимать значение соответствующее атрибутам «Курс.
У студента атрибут «Место работы (учебы)» будет принимать значение соответствующее атрибутам «Курс.
В этом случае почти в два раза упрощается структура концептуальной модели, и соответственно, структура базы данных. Для работы с данными о преподавателях и студентах достаточно одного набора программ. Таким образом, обобщение подобных типов объектов может существенно сократить последующие затраты на программирование.
В процессе объединения локальных представлений, как и при локальном моделировании, производится редактирование наименований (т.к. здесь появляются новые наименования). Процесс объединения также носит итерационный характер и продолжается до тех пор, пока не будут интегрированы все представления, согласованы и устранены все противоречия, отредактированы все наименования. Полученное в результате объединения локальных представлений обобщенное представление и является концептуальной моделью.
Слайд 22Ограничения целостности
Под целостностью базы данных понимается то, что в ней содержится
Ограничения целостности
Под целостностью базы данных понимается то, что в ней содержится
Огромный объем данных, вводимых в базу данных (причем разные данные могут вводиться разными пользователями), обусловливает большое число ошибок ввода (занесения).
Заметим, что при традиционной «бумажной» обработке информации также достаточно часто встречаются данные, записанные неверно. Но человек, работая с определенными данными, неявно использует для контроля имеющиеся у него представления об этих данных. Например, сотрудник отдела кадров, увидев в карточке работника год рождения 1693, сразу заметит эту ошибку и предположит, что просто переставлены две цифры и реальный год рождения 1963. То есть в представлениях сотрудника заключены некоторые логические ограничения на данные. Очевидно, что для контроля правильности вводимых данных при работе с базой данных целесообразно сформировать и использовать ограничения.
Слайд 23Соответствующие ограничения обычно разделяют на 3 группы: внешние, специально конструируемые и внутренние.
Соответствующие ограничения обычно разделяют на 3 группы: внешние, специально конструируемые и внутренние.
модели данных и будут рассматриваться в разделе, посвященном модели данных.
Внешние ограничения.
Эти ограничения связаны с адекватностью отражения предметной области. Например, сотрудник организации не может быть моложе 17 и старше 90 лет. Соответствующее ограничение на год рождения (GR) можно записать следующим образом:
Текущий год – 17 > GR > Текущий год – 90.
Одним из способов задания таких ограничений является перечисление конечного множества допустимых значений какого-либо атрибута (так называемый «перечислимый» тип данных). Например, должность преподавателя в вузе может принимать одно из следующих значений: профессор, доцент, старший преподаватель, преподаватель, ассистент. Вводимое значение должности для конкретного экземпляра, не совпадающее с одним из перечисленных значений, является ошибкой.