Реферат: Проектирование базы данных для отдела продаж автосалона методом нисходящего проектирования
Название: Проектирование базы данных для отдела продаж автосалона методом нисходящего проектирования Раздел: Рефераты по информатике Тип: реферат | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Оглавление Метод нисходящего проектирования. 2 ВведениеДля разработки и проектирования систем БД используются различные средства моделирования. Конечной целью проектирования, очевидно, является БД. В теории проектирования ИС предметную область принято рассматривать в трех видах: 1) в том виде, в котором она реально существует 2) как ее воспринимает человек 3) как она может быть описана Процесс проектирования разбивается на три этапа: 1) Концептуальное проектирование. a) Обследование предметной области b) Выявление всех фрагментов c) Моделирование представлений После этого произведенных действий получается концептуальная модель, которая чаще всего представляется в виде «Сущность-связь» 2) Логическое проектирование. 3) Физическое моделирование. Метод нисходящего проектированияМетод нисходящего моделирования является одним из самых поулярных методов, применяемых при проектировании БД. Данный метод подразумевает разложение общей функции обработки данных на простые функциональные элементы. В результате получается иерархическая схема, которая показывает состав и подчиненность отдельных функций. Эта схема также носит название функциональной структуры алгоритма приложения (ФСА). При построении ФСА приложения надо придерживаться следующей последовательности действий: 1. Определить цели автоматизации предметной области 2. Установить состав приложений, которые обеспечивают реализацию поставленных целей 3. Уточнить характер взаимосвязи приложений и их основные характеристики 4. Определить необходимые функции обработки данных 5. Выполнить декомпозицию функций до необходимой структурной сложности Разложение обязано носить строго функциональный характер. Отдельный элемент ФСА должен описывать законченную содержательную функцию обработки информации, которая подразумевает определенный способ программной реализации. Степень детализации функций может быть различной, но иерархическая схема должна давать представление о составе и структуре взаимосвязанных функций и общем алгоритме обработки данных. ER -модельМодель Сущность-Связь (ER-модель) (англ. entity-relationship model или entity-relationship diagram ) — это модель данных, позволяющая описывать концептуальные схемы. Она предоставляет графическую нотацию, основанную на блоках и соединяющих их линиях, с помощью которых можно описывать объекты и отношения между ними какой-либо другой модели данных. В этом смысле ER-модель является мета-моделью данных, то есть средством описания моделей данных. ER-модель удобна при прототипировании (проектировании) информационных систем, баз данных, архитектур компьютерных приложений, и других систем (далее, моделей). С её помощью можно выделить ключевые сущности, присутствующие в модели, и обозначить отношения, которые могут устанавливаться между этими сущностями. Важно отметить что сами отношения также являются сущностями (выделяются в отдельные графические блоки), что позволяет устанавливать отношения на множестве самих отношений. На этапе перехода к реализации данной ER-диаграммы в виде реальной информационной системы или программы, происходит отображение ER-модели в более детальную модель данных реляционной (объектной, сетевой, логической, или др.) базы данных, которая называется физической моделью данных по отношению к исходной ER-диаграмме. Основные понятия ER-диаграмм: 1) Сущность – класс однотипных объектов информация о которых должна быть учтена в моделях 2) Экземпляр сущности – представитель сущности 3) Атрибут сущности - именованная характеристика, являющаяся некоторым свойством сущности 4) Ключ сущности – неизбыточный набор атрибутов, значения которых в совокупности являются уникальными для каждого экземпляра сущности 5) Связь – некоторая ассоциация между двумя сущностями a) один-к-одному – экземпляр первой сущности связан только с одним экземпляром второй сущности b) один-ко-многим - экземпляр первой сущности связан с несколькими экземплярами второй сущности. Сущность со стороны «один» называется родительской, а со стороны «много» - дочерней c) много-ко-многим – каждый экземпляр первой сущности может быть связан с несколькими экземплярами другой сущности. Является временным видом связи. Каждая связь обладает одной из двух модальностей: a) Может b) Должен В ER-диаграммах, как и в реляционных моделях БД существует понятие нормальных форм. 1) Первая НФ – устраняются повторяющиеся атрибуты и группы атрибутов, т.е. выявление неявных сущностей. 2) Вторая НФ – устраняются атрибуты зависящие от части уникального идентификатора. Такая часть уникального идентификатора определяет отдельную сущность 3) Третья НФ – устраняются атрибуты, которые зависят от атрибутов не входящих в уникальный идентификатор Рассмотрим построение ER-диаграммы на примере выполняемой работы: Представим предметную область как взаимодействие нескольких сущностей: «Спортсмен», «Тренер», «Вид спорта», «Соревнования», «Организатор» и «Клуб». Сущность «Клуб» и сущность «Спортсмен» взаимодействуют посредством связи «Состоит в». Связь имеет мощность «один-ко-многим» - т.е. один клуб может содержать у нескольких спортсменов. Для связи сущностей используется атрибут «Состоит в клубе». Далее сущность «Тренер» и сущность «Клуб» взаимодействует посредством связи «Работает в». В данном случае мощность связи «один-ко-многим». Связь сущностей осуществляется через атрибут «Работает в». Сущность «Тренер» и сущность «Вид спорта» взаимодействуют посредством связи «Владеет». Связь имеет мощность «один-к-одному», т.к. одна тренер может владеть (в данном контексте – тренировать) только одним видом спорта. Связь через атрибут «Тренирует по». Сущность «Соревнование» «устраивается по» «Вид спорта». Связь этих сущностей имеет мощность «один-ко-многим», т.е. по одному и тому же виду спорта может быть устроено несколько соревнований. Сущность «Организатор» и сущность «Соревнование» взаимодействуют посредством связи «Спонсировать», где связь имеет мощность «многие-ко-многим», т.к. одно и то же соревнование могут спонсировать разные источники и в то же время источники могут спонсировать много соревнований. Сущность «Организатор» взаимодействует с сущностью «Спортсмен» посредством связи «Награждает» где мощность связи «многие-ко-многим», аналогично предыдущему. Сущность «Клуб» и сущность «Спортсмен» взаимодействуют посредством связи «Выставляет на соревнование». Связь имеет мощность «один-ко-многому», т.к. один клуб может выставить на соревнование нескольких спортсменов. Сущность «Тренер» и сущность «Спортсмен» взаимодействуют посредством связи «Тренирует». Связь имеет мощность «многие-ко многим», т.к. Спортсмен может иметь несколько тренеров, и тренер может иметь нескольких спортсменов. Сущность «Спортсмен» и сущность «Ссоревнование» взаимодействуют посредством связи «Учавствует от клуба». Связь имеет мощность «один-ко-многому». Даталогическая модельМодель предметной области должна быть представлена в терминах модели конкретной СУБД – в моем случае MS Access. Данная стадия носит название логического моделирования БД. Результатом выполнения этой стадии является концептуальная схема БД. Не все виды связей могут быть реализованы в логичекой модели. На данном этапе требуется преобразовать ER-диаграмму в реляционную схему. Первый шаг преобразования – превращение каждой сущности в таблицу (отношение). Каждое свойство становится столбцом таблицы. Второй шаг – преобразование связей во внешние ключи. После выполнения этих двух шагов я получил следующую схему: Физическая модельПосле получения концептуальной схемы можно перейти к созданию самой БД. В данном случае БД представлена семью таблицами. 1) Клуб – 1 строка – один клуб 2) Тренер – 1 строка – один тренер 3) Вид спорта – 1 строка – один вид спорта (название) 4) Соревнование – 1 строка – одно соревнование 5) Организатор – 1 строка – один организатор 6) Стадионы – 1 строка – один стадион 7) Спортсмен – 1 строка – 1 спортсмен Типы данныхСледующий этап – определение типов данных, хранящихся в столбцах таблиц. Вместе с этим требуется задать ограничения целостности. Должны быть выделены столбцы, которые должны быть обязательно заполнены при создании новой строки. Также необходимо задать значения столбцов по умолчанию. Таблица Спортсмен
Таблица Соревнование
Таблица Тренер
Таблица Организатор
Таблица Стадионы
Таблица Вид спорта
Таблица Клуб
SQL -запросы
SELECT Стадионы.Название, Стадионы.[Вместительность (чел)] FROM Стадионы WHERE [Вместительность (чел)] >= 30000;
SELECT Спортсмен.ФИО, Спортсмен.[Вид спорта] FROM Спортсмен WHERE [Вид спорта].Value="Бокс";
SELECT Спортсмен.ФИО, Спортсмен.[Тренируется у] FROM Спортсмен WHERE Спортсмен.[Тренируется у].Value="Вакурин Е.Е.";
SELECT Спортсмен.ФИО, Спортсмен.[Тренируется у] FROM Спортсмен WHERE Спортсмен.ФИО="Родинов Г.К.";
SELECT Соревнование.Организатор, Соревнование.[Вид спорта] FROM Соревнование WHERE Соревнование.Организатор="Росспорт";
SELECT Соревнование.[Вид спорта], Соревнование.[Победитель(и)] FROM Соревнование WHERE Соревнование.[Вид спорта]="Шахматы";
SELECT Тренер.ФИО, Тренер.[Тренирует по] FROM Тренер WHERE Тренер.[Тренирует по] = "Бокс"; Список литературы1) Базы Данных – ФОРУМ: ИНФРА-М, 2003 – 352с. Голицына О.Л., Максимов Н.В., Попов И.И. 2) ru.wikipedia.org 3) Базы данных. Учебник для вузов - Корона-принт, 2003 – 630с. Автор: А. Д. Хомоненко, В. М. Цыганков, М. Г. Мальцев 4) Базы данных – Финансы и Статистика, 2003 – 592с. Диго С.М.
|