- •Базы данных. Плещеев в.В.
- •1.3.2. Типы моделей данных
- •1.3.4. Контроль целостности связей
- •1.3.5. Формы записи концептуальной модели
- •1.3.6. Иерархическая модель
- •1.4.Определение доменов атрибутов.
- •1.5. Определение первичных и вторичных ключей.
- •1.6. Определение суперклассов и подклассов для типов сущностей.
- •1.7. Создание er‑диаграмм для отдельных пользователей.
- •2.6. Создание er‑диаграмм для отдельных пользователей.
- •3.4. Создание er‑диаграммы глобальной логической модели.
- •4. Создание глобальной логической модели в среде целевой субд.
- •6. Разработка механизма защиты.
3.4. Создание er‑диаграммы глобальной логической модели.
3.5. Согласование глобальной логической модели с пользователями. Проверка соответствия модели предметной области приложения.
4. Создание глобальной логической модели в среде целевой субд.
4.1. Создание таблиц.Создание таблиц, индексов, связей, ограничений, схем (диаграмм), правил, триггеров и других элементов базы данных.
4.2. Реализация бизнес‑правил.Правила защиты, контроля, обновления и обработки данных.
5. Проектирование физического представления данных. Определение способов хранения таблиц, строк индексов и других элементов базы данных на магнитных дисках.
5.1. Анализ транзакций.Определение характеристик транзакций (частота выполнения, время доступа к данным и др.).
5.2. Настройка физической среды. Распределение файлов по различным дисководам и таблиц по файлам. Определение первичных и максимально возможных размеров файлов и их приращений. Формирование факторов заполнения страниц данных и индексов. Определение кластерных индексов.
5.3. Определение дополнительных индексов.Введение таких индексов может увеличить производительность системы.
5.4. Анализ введения избыточности данных.Анализ возможности хранения производных данных, дублирования и объединения таблиц на предмет повышения производительности системы.
6. Разработка механизма защиты.
6.1. Разработка представлений (видов) для пользователей.
6.2 Определение прав доступа.Определение прав (полномочий, ролей) для каждого пользователя и его объектов (таблиц, запросов, представлений, колонок и строк и др.).
7. Загрузка информации в базу данных.
7.1. Конвертирование существующих файлов в загрузочные файлы. Если уже существуют файлы с данными, пригодными для загрузки, то разрабатываются программы‑конверторы, которые преобразуют эти файлы в файлы, используемые для загрузки в базу данных.
7.2. Загрузка реальной информации в базу данных.
7.3. Сдача системы в эксплуатацию.
8. Настройка функционирования системы и ее модификация.
8.1. Настройка функционирования системы.Сбор и обработка статистической информации об эффективности функционирования системы и ее настройка с целью повышения производительности работы системы.
8.2. Модификация системы.Внесение изменений в систему с целью устранения выявленных ошибок, связанных с изменениями в предметной области.
Нормализация отношений с примерами (1НФ, 2НФ, 3НФ).
Метод нормализации отношения (таблицы) ‑ это процесс постепенного улучшения отношения (таблицы) путем последовательного перевода отношения (таблицы) из ненормализованной формы в первую, во вторую, в третью (иногда в четвертую и пятую) нормальные формы.
Проектирование таблиц можно начинать с построения концептуальной модели и определения состава атрибутов для каждого объекта. Затем все атрибуты можно объединить в одну исходную таблицу. Можно сразу, без построения концептуальной модели, сформировать исходную таблицу. Исходная таблица в дальнейшем нормализуется путем расщепления на взаимосвязанные новые таблицы. Таким образом, можно построить или уточнить существующую концептуальную модель базы.
Определение.Таблица находится не в нормализованной форме, если существует ячейка, в которой находится несколько значений.
Примерненормализованной таблицы
ИЗДЕЛИЯ (Код изделия, список деталей). Может встретиться изделие, которое содержит список из нескольких деталей.
Виды зависимостей между атрибутами
Атрибут (группа атрибутов) В функционально зависитот атрибута (группы атрибутов) A, если каждому значению A соответствует одно значение B. Такая зависимость изображается в виде A-->B (Табельный номер -->Фамилия сотрудника).
Если существует функциональная зависимость вида A-->B и B-->A, то имеет место функциональная взаимозависимость, которая изображается в виде A<-->B (Табельный номер <-->Номер паспорта сотрудника).
Частичная функциональная зависимость ‑ это зависимость неключевого атрибута от части составного ключа, а не от всего ключа.
Полной функциональной зависимостьюназывается зависимость неключевого атрибута от всего ключа.
Атрибут C транзитивно зависитот атрибута А, если выполняются условия A-->B и B-->C, но обратная зависимость отсутствует.
Многозначные зависимостивида 1:M, M:1, M:M между атрибутами
A и B изображаются в виде A-->>B, A<<--B и A<<-- >>B соответственно.
Первая нормальная форма (1НФ)
Определение.Таблица находится в первой нормальной форме, если в каждой ее ячейке находится не более одного значения.
Пример.Преобразуем таблицу “ИЗДЕЛИЯ” из предыдущего примера в таблицу вида: ИЗДЕЛИЯ (код изделия, деталь). Тогда, за счет дублирования кода изделия, в каждой строке в колонке “Деталь” будет стоять только одно значение ‑ наименование кода детали. Новая таблица будет в первой нормальной форме.
Покажем процесс нормализации на следующей исходной таблице:
ВЫПУСК ИЗДЕЛИЙ (Код подразделения (KP), наименование подразделения (NP),код изделия (KI), наименование изделия (NI), код типа изделия (KTI), наименование типа изделия (NTI),дата выпуска (DVI), количество (KVI), себестоимость изделия (SI)). Ключевые атрибуты первичного ключа подчеркнуты. Эта таблица находится в первой нормальной форме.
Рассмотрим аномалии (недостатки) первой нормальной формы.
Избыточное дублирование данных. Все наименования будут дублироваться в каждой строке нашей таблицы.
Аномалия включения. Пока изделие не будет выпущено, информация о нем (проектируемом или ранее снятом с производства) будет отсутствовать в базе.
Аномалия удаления. Если изделие не выпускается в отчетный период, то информация об изделии исчезнет из базы.
Аномалия корректировки. Если меняется, например, название изделия, то нужно откорректировать наименование не в одной строке, а во всех строках таблицы, где оно встречается.
Для устранения этих недостатков продолжим процесс нормализации. Вторая нормальная форма (2НФ)
Определение.Таблица находится во второй нормальной форме, если она уже находится в первой нормальной форме, и все неключевые атрибуты целиком зависят от всего ключа, а не от отдельной его части.
Рассмотрим нашу таблицу на предмет выявления неключевых атрибутов, зависящих только от части ключа.
Атрибут “Наименование подразделения” зависит только от атрибута “Код подразделения” и не зависит от атрибутов “Код изделия” и “Дата выпуска”. Поэтому его следует удалить из таблицы. Чтобы не потерять информацию о подразделении создадим новую таблицу “ПОДРАЗДЕЛЕНИЯ” и в нее включим удаляемый атрибут “Наименование подразделения” вместе с ключевым атрибутом “Код подразделения” (иначе потеряется связь с таблицей “ВЫПУСК ИЗДЕЛИЙ”) и получим таблицу вида:
ПОДРАЗДЕЛЕНИЯ (Код подразделения, наименование подразделения).
Атрибут “Наименование изделия” зависит только от атрибута “Код изделия” и не зависит от остальных ключевых атрибутов. Аналогично предыдущему случаю, удалим его из таблицы в новую таблицу:
ИЗДЕЛИЯ (Код изделия, наименование изделия).
Атрибут “Код типа изделия” зависит только от атрибута “Код изделия” и не зависит от атрибутов “Код подразделения” и “Дата выпуска”. Аналогично предыдущему случаю удалим его из таблицы, добавим в таблицу “ИЗДЕЛИЯ” и получим таблицу:
ИЗДЕЛИЯ (Код изделия, наименование изделия, код типа изделия).
Атрибут “Наименование типа изделия” зависит только от атрибута “Код изделия”. Аналогично предыдущему случаю удалим его из таблицы и добавим в таблицу “ИЗДЕЛИЯ” и получим таблицу:
ИЗДЕЛИЯ (Код изделия, наименование изделия, код типа изделия, наименование типа изделия).
Атрибуты “Количество” и “Себестоимость изделия” зависят от всего ключа, поэтому оставим их в исходной таблице.
Таким образом, получим три таблицы:
ВЫПУСК ИЗДЕЛИЙ (Код подразделения,код изделия,дата выпуска, количество, себестоимость изделия).
ПОДРАЗДЕЛЕНИЯ (Код подразделения, наименование подразделения).
ИЗДЕЛИЯ (Код изделия, наименование изделия, код типа изделия, наименование типа изделия).
Очевидно, что все они находятся во второй нормальной форме.
Третья нормальная форма (3НФ)
Определение.Таблица находится в третьей нормальной форме, если она уже находится во второй нормальной форме, и все неключевые атрибуты взаимно функционально независимы.
Очевидно, что первые две таблицы удовлетворяют определению третьей нормальной формы. Рассмотрим таблицу “ИЗДЕЛИЯ”.
Атрибут “Наименование типа изделия” функционально зависит от неключевого атрибута “Код типа изделия”, поэтому его следует удалить (по определению третьей нормальной формы) из таблицы в новую:
ТИПЫ ИЗДЕЛИЙ (Код типа изделия, наименование типа изделия).
В результате получим модель базы данных из четырех таблиц в третьей нормальной форме (рис. 1.5.2.1):
ВЫПУСК ИЗДЕЛИЙ (Код подразделения,код изделия,дата выпуска, количество, себестоимость изделия).
ПОДРАЗДЕЛЕНИЯ (Код подразделения, наименование подразделения).
ИЗДЕЛИЯ (Код изделия, наименование изделия, код типа изделия).
ТИПЫ ИЗДЕЛИЙ (Код типа изделия, наименование типа изделия).

Жизненный цикл базы данных (ЖЦ БД). Определение, виды моделей ЖЦ БД, достоинства и недостатки.
Приведем определения основных терминов.
Жизненный цикл программного обеспечения (ЖЦПО)представляет собой непрерывный процесс с момента начала разработки программного обеспечения до завершения его эксплуатации.
Проектирование ‑ поиск способа удовлетворения функциональных потребностей пользователей средствами имеющихся технологий с учетом заданных ограничений.
Модель ЖЦПО‑ структура, задающая последовательность выполнения и взаимосвязи процессов, задач и действий, выполняемых при создании программного обеспечения.
Типы моделей
Каскадная модельпредполагает последовательное выполнение этапов: анализ (определение требований и анализ), проектирование, реализация (реализация и тестирование), внедрение и сопровождение (модификация системы при изменении предметной области)*.
Достоинства:формирование на каждом этапе технической документации, возможность планирования сроков и затрат.Недостаток: отсутствие возможности пересмотра отдельных этапов.
Каскадная модель с промежуточным контролеманалогична предыдущей модели, но после каждого этапа производится его оценка и при неудовлетворительной оценке производится возвращение на соответствующий предыдущий этап для перепроектирования.
Достоинство:большая надежность ПО.Недостаток: увеличение периода разработки.
Спиральная модельустраняет недостатки предыдущих моделей. На каждом витке ее этапы могут уточняться или дополняться новыми работами (рис. 1.5.4.1). Каждый виток дает уточненный работоспособный вариант ПО, который можно предъявлять пользователю для оценки.


Анализ
Определение
Проектирование требований

1 2 3
Реализация Внедрение
и тестирование версий
Интеграция
Механизм транзакций и блокировок. Триггеры, хранимые процедуры. Определение и назначение.
*Обозначение режимов задается в терминах СУБДVisualFoxPro(п. 2.10].
*В скобках указаны наименования аналогичных этапов спиральной модели или приводится детализация этапа.
