714.00K

Лекция 1(Моделирование данных)

1.

Проектирование баз
данных
Моделирование данных

2.

Процесс разработки
приложения
Процесс
Моделирование
функций
Проектирование
приложения
Создание
приложения
Приложение
Потребности
заказчика
Информация
Концептуальное
моделирование
данных
Проектирование
базы данных
Создание базы
данных
База данных
Готовый продукт

3.

Диаграмма «СущностьСвязь» (ER – диаграмма,
ERD)
Описывает потребности в
данных
Описывает отношения между
данными
Является основой для
проектирования базы данных

4.

Компоненты ERдиаграммы
Курорт
Отель
Код
Код
Имя
Имя
Расположение
Класс
Тип
Связь
Сущность
Атрибуты

5.

Сущность – это…
Абстракция множества
объектов реального мира, в
которой все предметы
множества имеют
одинаковые характеристики
и согласованы с одним и
тем же набором правил и
линий поведения

6.

Отношение – это…
Связь двух или
нескольких
сущностей

7.

Типы сущностей
Независимая
Сущность, представляющая
независимые данные, которые всегда
присутствуют в системе. Отношения с
другими сущностями у нее могут
отсутствовать

8.

Типы сущностей
Зависимая
Сущность, представляющая данные,
которые зависят от других сущностей в
системе. Зависимая сущность всегда
имеет отношения с другими сущностями

9.

Типы сущностей
Ассоциированная
Сущность, представляющая данные,
которые ассоциируются с отношениями
между двумя и более сущностями

10.

Атрибут – это…
Абстракция одной
характеристики, которой
обладают все
абстрагируемые как объект
сущности
Атрибуты описывают сущности

11.

Типы атрибутов
Обязательный
Должен быть определен
Необязательный
Может иметь неопределенное (NULL) значение
Каждый атрибут имеет ТИП ДАННЫХ
Для атрибута может быть задан ДОМЕН

12.

Домен – это…
Множество возможных
значений атрибута

13.

Ключ сущности
Курорт
Код
Имя
Расположение
Ключ сущности
Набор атрибутов,
уникально
определяющих
сущность

14.

Связь – это…
Идентификатор требований, в
соответствии с которыми
сущность вовлекается в
отношение

15.

Связь соединяет
сущности
Курорт
Отель
Код
Код
Имя
Имя
Расположение
Класс
Каждый курорт содержит
несколько отелей

16.

Связь соединяет
сущности
Курорт
Отель
Код
Код
Имя
Имя
Расположение
Класс
Каждый отель входит в состав
только одного курорта

17.

Типы связей
Идентифицирующая
Курорт
Отель
Код
Код
Имя
Код_курорта
Расположение
Имя
Класс

18.

Типы связей
Не идентифицирующая
Курорт
Отель
Код
Код
Имя
Имя
Расположение
Класс
Код_курорта

19.

Определение и
моделирование сущностей
Выявить существительные
Это важно?
Нужно ли для бизнеса хранить
информацию об этом?
Это группа вещей или экземпляр?
Задайте имена сущностям
Определите атрибуты

20.

Определение общих и
порожденных данных
Счетчики
Итоги
Максимум, минимум, среднее
Вычисляемые поля
Порожденные атрибуты излишни и
могут привести к несогласованности
данных

21.

Типы отношений
Один к одному
Курорт
Код
Город
Имя
Код
Расположение
Имя

22.

Типы отношений
Один ко многим
Курорт
Отель
Код
Код
Имя
Имя
Расположение
Класс

23.

Типы отношений
Многие ко многим
Курорт
Код
Турист
Имя
Код
Расположение
Имя

24.

Анализ и моделирование
отношений
Определить существование
отношений
Дать имя каждому концу
отношения
Определить множественность
каждого конца отношения
Определить обязательность
каждого конца отношения
Прочесть отношение для
проверки

25.

Разрешение отношения
«многие ко многим»
Курорт
Код
Турист
Имя
Код
Расположение
Имя
Тип
Можно ли определить дату
поездки?
В какой сущности хранить
атрибут «стоимость поездки»?

26.

Ассоциированная
сущность
Путевка
Код
Дата начала
Дата окончания
Стоимость
Курорт
Код
Турист
Имя
Код
Расположение
Имя
Тип

27.

Приложение «Dream
Getaways»

28.

Приложение «Dream Getaways»
Выделение сущностей
Операционная часть бизнеса
состоит из двух частей: мы
регистрируем курорты в своих
файлах и принимаем заказы
клиентов на организацию тура на
курорт

29.

Приложение
«Dream Getaways»
Сколько курортов может резервировать один
клиент?
Ну, точно более одного. Иногда
клиент резервирует 2 курорта,
прежде, чем поехать на один из
них
Для каждой записи о
путевке у вас есть
несколько клиентов?
Хотя в реальности по путевке
может поехать целая семья, мы
регистрируем путевку только на
одного человека

30.

Сущности и связи модели
данных приложения «Dream
Getaways»
Тур
Курорт
Клиент

31.

Выявление атрибутов
Вы ведете адреса для каждого курорта?
Не всегда. Некоторые из курортов
не имеют адресов, например
домики в горах.
Как вы различаете
курорты? Вы
присваиваете им
номера?
Нет, каждый курорт имеет имя, и
два курорта не могут называться
одинаково. Это абсолютно
точно.

32.

Сущности и атрибуты
приложения «Dream
Getaways»
Тур
Курорт
Код
Код
Дата начала
Имя
Дата окончания
ФИО
Адрес
Заказ машины?
Адрес
Телефон
Клиент
Код
Телефон
Стоимость
Экскурсия
E-mail
Тип
Код
Предпочтительный тип
Стиль
Дата начала
Питание
Тип
Предпочтительный
стиль
Комментарий
Заметки
Предпочтительное

33.

Вопросы?
English     Русский Правила