Подходы к проектированию базы данных
1 способ: Проектирование на основе бумажных документов. Основой проектирования являются бланки и другие виды документации, с которыми работают конечные пользователи. По формальным правилам из документов надо выделить информационные объекты (ИО), количество которых зависит от класса документов, представленных в таблице 4. Таблица 4. Описание классов документов
Вначале необходимо сравнить несколько отдельных экземпляров документа (и их папок, если они имеются) и проанализировать, какие атрибуты могут изменяться. Сразу следует исключить из дальнейшего рассмотрения постоянные и вычисляемые реквизиты. Затем для выделения ИО из документов необходимо разделить их реквизиты на группы в соответствии с ИО, которые они описывают. Например, при разработке базы данных для учета преподавателей вуза за основу можно взять представленный на рисунке 5 документ с бланком информации о составе кафедры, откуда выбираются и группируются реквизиты, образующие два объекта предметной области – Кафедра и Преподаватель, поскольку в бланке можно выделить изменяемые части: заголовочную (информация о кафедре) и содержательную (список и информация о преподавателях кафедры).
Рисунок 5. Пример бланка, на основе которого проектируется база данных. Определяя предметную область, предполагается, что база данных проектируется для штатного состава, т. е. преподаватели работают на одной из кафедр вуза. Тогда инфологическая модель выглядит так, как представлено на рисунке 6 (на одной кафедре может работать один или много преподавателей или не работать ни одного, но каждый преподаватель может работать только на одной из кафедр – совместительство не предусмотрено). Рисунок 6 – ER-диаграмма проектируемой базы данных Выписываем все реквизиты, даем им имена и определяем функциональные зависимости (таблица 5): Таблица 5 – Имена и функциональные зависимости реквизитов Полученная информационно-логическая модель (ИЛМ) представлена на рисунке 7. 2 способ: Проектирование на основе имеющейся структуры или внешних данных. Иногда проектирование базы данных начинается с предлагаемых объектов будущей базы данных. Тогда необходимо определить границы предметной области, цели проектирования, самостоятельно продумать, какими атрибутами будут описываться объекты, выявить их взаимосвязи на основе взаимодействия экземпляров этих объектов. Для этого можно разработать бланк учетной информации и далее действовать по описанию 1-го способа. Например, требуется разработать базу данных «Успеваемость» с таблицами Студент, Предмет, Экзамен. Исходя из названия, представляем предметную область следующим образом: в вузе необходимо вести учет сдачи экзаменов в сессию. Исходные данные могут быть выбраны из ведомости, которая выдается на экзамен. В ней фиксируют название предмета, фамилию преподавателя, семестр, группу и список студентов группы. Фраза «Cтудент сдает Экзамен по Предмету» позволяет выявить множественную зависимость между сущностями Студент и Предмет, которые свяжет связующая сущность Экзамен с описательным атрибутом – оценкой. На рисунке 8 представлена информационно-логическая модель (ИЛМ), которая требует дальнейшей нормализации, поскольку заметно излишнее дублирование данных в таблицах.
Рисунок 8 – ИЛМ базы данных «Успеваемость» Если в основе разработки имеются данные, расположенные в других источниках, например, в электронных таблицах, то необходимо провести анализ наименований полей списка электронной таблицы, выявить объекты, построить их взаимосвязи, определиться с целями разработки базы данных. Ниже на рисунке 9 представлена электронная таблица с данными об оплате коммунальных услуг. Из списка полей можно выявить следующие объекты и их атрибуты: Услуга (Наименование, Тариф), Плательщик (Фамилия, Адрес) и Оплата (Код, Дата, Количество: метраж – для квартплаты, объем – за газ и электроэнергию, минуты – за телефон и т. д.). Вычисляемое поле Всего в базу данных не заносится. Рисунок 9. Excel-таблица с данными «Коммунальные услуги» Для проектирования базы данных информационно-логическая модель (ИЛМ) может выглядеть так, как показано на рисунке 10. Рисунок 10 – ИЛМ базы данных «Коммунальные услуги» Таблицы MS Access могут строиться на основе импорта данных, в частности из электронных таблиц. Используя эту возможность, вся таблица переносится в базу данных, затем, используя язык SQL, делаются проекции данных в новые таблицы, структура которых продумывается заранее. Затем эти таблицы в Конструкторе описываются ключевыми реквизитами и полями связи. Уточняются (корректируются) типы данных. Важно не потерять исходную информацию, которая была в электронной таблице. При корректной работе в базе данных получатся таблицы-справочники и таблицы с учетной информацией, что разрешает аномалии, присущие ненормализованным отношениям импортированной исходной таблицы. 3 способ: Проектирование на основе описания предметной области – общей постановки. Например, требуется разработать базу данных для ведения учета денежных затрат на покупки членами семьи. Процесс проектирования состоит в следующем: 1. Требуется определить, чем конкретно должна будет заниматься база данных. Для нашего примера это решение следующих задач:
− учет покупок; − учет ежедневных денежных затрат на покупки; − учет расходов каждого члена семьи и т. д. Эти требования и пожелания к разрабатываемой БД записываются в столбик на большом листе бумаги. 2. Следует просмотреть все требования, удалить все повторяющиеся или явно взаимоисключающие условия и свести все в одну таблицу (таблица 6). Таблица 6 – Выделение реквизитов 3. Необходимо конкретизировать требования к каждому объекту и выявить связи между ними, что показано на рисунке 11. Анализируя исходные данные, можно выявить связи между объектами Персона и Продукт как «многие-ко-многим», что требуется разбить при помощи дополнительной сущности (глагола), который следует превратить в имя существительное. 4. Далее проектируются таблицы, определяются данные, хранящиеся в них, прикидывается домен для данных, описывается каждое данное. 5. Затем следует провести нормализацию таблиц, в результате чего должны быть получены следующие итоги: все пожелания воплощены в конкретные типы и виды данных, все данные взаимосвязаны между собой. Эти связи позволят составить схему функционирования всей БД. В проектируемой базе данных можно делать выборки по временным интервалам (суммы за покупки за день, неделю, месяц и т. д.), оценить на что уходит семейный бюджет.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|