Критерии оценки качества логической модели данных

· Адекватность базы данных предметной области

· Легкость разработки и сопровождения базы данных

· Скорость выполнения операций обновления данных (вставка, обновление, удаление кортежей)

· Скорость выполнения операций выборки данных

Основной пример

Рассмотрим в качестве предметной области некоторую организацию, выполняющую некоторые проекты. Модель предметной области опишем следующим неформальным текстом:

1. Сотрудники организации выполняют проекты.

2. Проекты состоят из нескольких заданий.

3. Каждый сотрудник может участвовать в одном или нескольких проектах, или временно не участвовать ни в каких проектах.

4. Над каждым проектом может работать несколько сотрудников, или временно проект может быть приостановлен, тогда над ним не работает ни один сотрудник.

5. Над каждым заданием в проекте работает ровно один сотрудник.

6. Каждый сотрудник числится в одном отделе.

7. Каждый сотрудник имеет телефон, находящийся в отделе сотрудника.

В ходе дополнительного уточнения того, какие данные необходимо учитывать, выяснилось следующее:

1. О каждом сотруднике необходимо хранить табельный номер и фамилию. Табельный номер является уникальным для каждого сотрудника.

2. Каждый отдел имеет уникальный номер.

3. Каждый проект имеет номер и наименование. Номер проекта является уникальным.

4. Каждая работа из проекта имеет номер, уникальный в пределах проекта. Работы в разных проектах могут иметь одинаковые номера.

Первая нормальная форма (1НФ) - это обычное отношение. Ссвойства 1НФ:

  • В отношении нет одинаковых кортежей.
  • Кортежи не упорядочены.
  • Атрибуты не упорядочены и различаются по наименованию.
  • Все значения атрибутов атомарны.

СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ (Н_СОТР, ФАМ, Н_ОТД, ТЕЛ, Н_ПРО, ПРОЕКТ, Н_ЗАДАН)

где

Н_СОТР - табельный номер сотрудника

ФАМ - фамилия сотрудника

Н_ОТД - номер отдела, в котором числится сотрудник

ТЕЛ - телефон сотрудника

Н_ПРО - номер проекта, над которым работает сотрудник

ПРОЕКТ - наименование проекта, над которым работает сотрудник

Н_ЗАДАН - номер задания, над которым работает сотрудник

Н_СОТР ФАМ Н_ОТД ТЕЛ Н_ПРО ПРОЕКТ Н_ЗАДАН
1 Иванов 11-22-33 1 Космос
1 Иванов 11-22-33 2 Климат
2 Петров 11-22-33 1 Космос
3 Сидоров 33-22-11 1 Космос
3 Сидоров 33-22-11 2 Климат

Таблица 1 Отношение СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ

Различают следующие виды аномалий:

  • Аномалии вставки (INSERT)
  • Аномалии обновления (UPDATE)
  • Аномалии удаления (DELETE)


Пример 1. В отношении СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ можно привести следующие примеры функциональных зависимостей:

Зависимость атрибутов от ключа отношения:

{Н_СОТР, Н_ПРО} Критерии оценки качества логической модели данных - student2.ru ФАМ

{Н_СОТР, Н_ПРО} Критерии оценки качества логической модели данных - student2.ru Н_ОТД

{Н_СОТР, Н_ПРО} Критерии оценки качества логической модели данных - student2.ru ТЕЛ

{Н_СОТР, Н_ПРО} Критерии оценки качества логической модели данных - student2.ru ПРОЕКТ

{Н_СОТР, Н_ПРО} Критерии оценки качества логической модели данных - student2.ru Н_ЗАДАН

Зависимость атрибутов, характеризующих сотрудника от табельного номера сотрудника:

Н_СОТР Критерии оценки качества логической модели данных - student2.ru ФАМ

Н_СОТР Критерии оценки качества логической модели данных - student2.ru Н_ОТД

Н_СОТР Критерии оценки качества логической модели данных - student2.ru ТЕЛ

Зависимость наименования проекта от номера проекта:

Н_ПРО Критерии оценки качества логической модели данных - student2.ru ПРОЕКТ

Зависимость номера телефона от номера отдела:

Н_ОТД Критерии оценки качества логической модели данных - student2.ru ТЕЛ

Отношение Критерии оценки качества логической модели данных - student2.ru находится во второй нормальной форме (2НФ) тогда и только тогда, когда отношение находится в 1НФ и нет неключевых атрибутов, зависящих от части сложного ключа. (Неключевой атрибут - это атрибут, не входящий в состав никакого потенциального ключа).

Н_СОТР ФАМ Н_ОТД ТЕЛ
1 Иванов 11-22-33
2 Петров 11-22-33
3 Сидоров 33-22-11

Таблица 2 Отношение СОТРУДНИКИ_ОТДЕЛЫ

Н_ПРО ПРОЕКТ
1 Космос
2 Климат

Таблица 3 Отношение ПРОЕКТЫ

Н_СОТР Н_ПРО Н_ЗАДАН
1 1
1 2
2 1
3 1
3 2

Таблица 4 Отношения ЗАДАНИЯ

Отношение Критерии оценки качества логической модели данных - student2.ru находится в третьей нормальной форме (3НФ) тогда и только тогда, когда отношение находится в 2НФ и все неключевые атрибуты взаимно независимы.

Отношение СОТРУДНИКИ_ОТДЕЛЫ декомпозируем на два отношения - СОТРУДНИКИ, ОТДЕЛЫ.

Отношение СОТРУДНИКИ (Н_СОТР, ФАМ, Н_ОТД):

Зависимость атрибутов, характеризующих сотрудника от табельного номера сотрудника:

Н_СОТР Критерии оценки качества логической модели данных - student2.ru ФАМ

Н_СОТР Критерии оценки качества логической модели данных - student2.ru Н_ОТД

Н_СОТР Критерии оценки качества логической модели данных - student2.ru ТЕЛ

Н_СОТР ФАМ Н_ОТД
1 Иванов
2 Петров
3 Сидоров

Таблица 5 Отношение СОТРУДНИКИ

Отношение ОТДЕЛЫ (Н_ОТД, ТЕЛ):

Функциональные зависимости:

Н_ОТД Критерии оценки качества логической модели данных - student2.ru ТЕЛ

Н_ОТД ТЕЛ
1 11-22-33
2 33-22-11

Таблица 6 Отношение ОТДЕЛЫ



Наши рекомендации