Проектирование БД
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Базы данных
Тема 5. Проектирование реляционных БД
Преподаватель: к.ф.н.,
доцент кафедры АСУ,
Муртазина М.Ш.
Powerpoint Templates
Процесс проектирования РБД
Процесс проектирования баз данных – это анализ того, какого
рода информация должна быть в ней представлена и каковы
взаимосвязи между элементами информации.
Структура или схема базы определяется средствами языков или
систем обозначений пригодных для описания проектов.
По
завершению
уточнений
и
согласований
проект
преобразовывается в форму, которая может быть воспринята
конкретной выбранной СУБД – инструкции языка DDL (Data
Definition Language).
Powerpoint Templates
2
Процесс проектирования РБД
1. Анализ предметной области
2. Концептуальное проектирование
(ER-модель)
3. Логическое проектирование
(реляционная модель, нормализация, ограничения)
4. Определение требований,
выбор СУБД
5. Физическое проектирование
в конкретной СУБД
Powerpoint Templates
3
Процесс проектирования РБД
1. Анализ предметной области
На этапе анализа предметной области нужно:
1. Выделить роли пользователей БД.
2. Идентифицировать входные данные (данные, которые будут
вносится пользователями в БД )
3. Идентифицировать выходные данные (данные, которые будут
запрашиваться из БД)
Источники информации для анализа: описание бизнеспроцесса,
в
рамках
которого
применяется
БД,
бланки
документов, используемых в рамках бизнес-процесса.
Сценарии. Рассмотрения альтернативных вариантов
Powerpoint Templates
4
Пример
Бизнес-процесс: Управление персоналом
Powerpoint Templates
Пример
Powerpoint Templates
Пример
Powerpoint Templates
7
Пример
Powerpoint Templates
8
Концептуальное проектирование БД.
ER-диаграмма
ER-модель (entity relationship diagram – ERD, модель «сущностьсвязь»)
используется
при
высокоуровневом
(концептуальном)
проектировании баз данных. ER-модель отображается графически, в
виде диаграммы сущностей и связей состоящих из множеств:
• Сущности
• Атрибуты
• Связи
Любой фрагмент предметной области может быть представлен как
множество
сущностей,
между
которыми
существует
некоторое
множество связей.
Powerpoint Templates
9
Концептуальное проектирование БД
Спецификация атрибута состоит из его названия, указания типа
данных и описания ограничений целостности - множества значений (или
домена), которые может принимать данный атрибут.
Домен - это набор всех допустимых значений, которые может
содержать атрибут.
Тип данных - это физическая концепция, а домен - логическая.
Например, "целое число" – это тип данных, а «возраст человека» - это
домен.
В понятие домена входит не только тип данных, но и область
значений данных. Домен «возраст человек» как положительное целое
Powerpoint
Templates
число и определить атрибут
им «Возраст
сотрудника».
10
ER-диаграмма
Основные идеи ER-модели П.Чена былb представленs им в работе
«Модель сущность-связь - Унифицированное представление данных»
(«The entity-relationship model—toward a unified view of data», 1976)
Оригинал работы можно найти по ссылке
https://dl.acm.org/doi/10.1145/320434.320440
Следует отметить, что основные положения графического моделирования БД
были опубликованы в ряде работ других авторов, например, в статье А. П. Г.
Брауна «Modelling a Real-World
System and
Designing a Schema to Represent It» 11
Powerpoint
Templates
ER-диаграмма
Powerpoint Templates
12
ER-диаграмма
Иногда для более удобной классификации используются так называемые
подтипы (подкатегории или дочерние категории) сущностей. Их обозначают с
помощью треугольника с надписью "есть" (т.е. "является").
Powerpoint Templates
13
Получение реляционной схемы
из ER-модели
Шаг 1. Каждая простая сущность превращается в отношение. Имя сущности становится
именем отношения.
Шаг 2. Каждый атрибут становится столбцом с тем же именем.
Шаг 3. Компоненты уникального идентификатора сущности превращаются в первичный
ключ отношения.
Шаг 4. Вспомогательные атрибуты , перемещенные в другие сущности после
формализации связей, становятся внешними ключами.
Шаг 5 Если в концептуальной схеме присутствовали подтипы, то возможны два способа их
отображения:
* все подтипы размещаются в одной таблице (а);
* для каждого подтипа строится отдельная таблица (б).
При применении способа (а) таблица создается для внешнего супертипа. В таблицу
добавляется по крайней мере один столбец, содержащий код ТИПА, и он становится
частью первичного ключа.
Шаг 6. Выполнить шаги по нормализации полученных отношений.
Шаг 8. Указать ограничения целостности проектируемой базы данных
и дать краткое описание полученных таблиц и их полей.
Шаг 9. Создать индексы для первичного ключа (уникальный индекс),
внешних ключей и тех атрибутов, на которых предполагается в основном базировать
запросы и выполнять соединения.
Powerpoint Templates
14
Основные понятия
реляционной модели данных
Powerpoint Templates
Реляционная модель.
Физическая модель
Не привязана к конкретной СУБД.
Содержит описание таблиц, атрибутов, ограничений, связей.
Является логической моделью, которая отображается на физическую модель
БД в выбранной СУБД
Powerpoint Templates
16
База данных
Является частью местом хранения данных, которые
используются одним или несколькими приложениями.
Проектирование БД связано с требованиями к
функционалу приложений.
Разработка программного продукта ведется по
некоторой методологии.
Powerpoint Templates
Обеспечение целостности данных
позволяет гарантировать высокое качество данных
в БД. Существует три типа целостности данных:
•доменная целостность (столбец);
•объектная целостность (таблица);
•ссылочная целостность.
Powerpoint Templates
Доменная целостность
• предусматривает определение набора
значений данных, который является допустимым
для этого столбца, а также возможность
использовать пустые значения;
• может быть реализована путем ограничения
допустимых для столбца значений по типу данных,
формату или диапазону значений.
Powerpoint Templates
Объектная целостность
• требуется, чтобы все строки таблицы имели
уникальный код, называемый значением первичного
ключа;
• возможность изменения ключевого поля и
удаления целой строки зависит от уровня
целостности, который требуется обеспечить между
ключевыми полями и другими таблицами.
Powerpoint Templates
Ссылочная целостность
• гарантирует сохранение связей между ключевыми
полями таблицы, на которую указывают ссылки, и
внешними ключами таблиц, которые содержат
ссылки;
• строку в таблице, на которую указывают ссылки,
нельзя удалить;
Powerpoint Templates
Ссылочная целостность
•нельзя изменить ключевое поле строки, если на нее
указывает внешний ключ и при этом не разрешено
выполнение каскадных действий (!);
• отношения ссылочной целостности можно
определить в рамках одной таблицы или между
разными таблицами.
Powerpoint Templates
Способы обеспечения целостности данных
Механизм
Описание
Типы данных
Определяют тип данных, которые могут храниться в
столбце
Правила
Определяют допустимые значения, которые могут
добавляться в столбец
Значения по
Определяют значение столбца, если значение не задано
умолчанию
Ограничения
Определяют, как ядро базы данных обеспечивает
целостность данных
Триггеры
Определяют код, который выполняется автоматически
при изменении таблицы
XML-схемы
Определяют допустимое содержимое XML-документов
и фрагментов, помещенных в столбец данных xml
Powerpoint Templates
Типы ограничений
Тип
целостно
сти
Доменная
Объектная
Тип
Описание
ограничения
DEFAULT
Задает значение по умолчанию для
столбца
CHECK
Задает разрешенное значение для столбца
FOREIGN
KEY
Задает столбец, в котором должны
существовать значения
NULL
Задает, разрешено ли значение NULL
PRIMARY
KEY
Определяет однозначно каждую строку
UNIQUE
Предотвращает повторение основных
ключевых полей
Powerpoint Templates
Типы ограничений
Тип
целостно
сти
Ссылочная
Тип
Описание
ограничения
FOREIGN
KEY
Определяет столбцы, значения которых
должны сопоставляться с основным
ключевым полем этой таблицы
CHECK
Задает разрешенное значение для
столбца на основе содержимого
другого столбца
Powerpoint Templates
Инженерия требований и управление проектами
Требования – это свойства, которыми должен обладать продукт, и ограничения,
связанные с ними.
Инженерия требований – это междисциплинарный подход, который связывает
стороны поставщика и заказчика с целью определения и поддержания требований,
которым должна соответствовать целевая система, продукт или услуга
(ISO/IEC/IEEE 29148).
Извлечение требований
Анализ требований
Управление
требованиями
Валидация требований
Спецификация требований
Управление изменениями
Управление атрибутами
Трассирование
Powerpoint Templates
26
Инженерия требований
ОжиданияPowerpoint Templates
Реальность
27
Инженерия требований
Powerpoint Templates
28
Методы управления проектом по разработке ПО
Разработка требований
Водопад:
11 %
Следование первоначальному плану
60 %
проваленные
риск
успешные
29 %
проблемные
Разработка
требований
Разработка
требований
Разработка
требований
9%
39 %
52 %
риск
проваленные
успешные
проблемные
Agile:
Готовность к изменениям важнее следования первоначальному плану
Powerpoint Templates
29
Процессный фреймворк Scrum
Общая схема организации работ по фреймворку Scrum
Powerpoint Templates
30
Конус
неопределенности
Powerpoint Templates
31
Итеративный подход –
горизонтальная декомпозиция
Обозначения:
Powerpoint Templates
Как Scrum влияет на
разработчиков баз данных
Разработчики баз данных часто оказываются плечом к
плечу с разработчиками приложений во время спринтов.
Определить какая часть работы должна быть выполнена
до того, как разработчики приложения смогут начать
свои задачи Sprint.
Какие элементы БД, такие как, например, хранимые
процедуры, необходимо добавить в течении итерации.
Powerpoint Templates
Спасибо за внимание!
Powerpoint Templates