- •1 Анализ и постановка задачи 4
- •2 Проектирование базы данных 5
- •1 Анализ и постановка задачи
- •1.1 Определение требований
- •2 Проектирование базы данных
- •Определение сущностей
- •Определение взаимосвязей между сущностями
- •Задание первичных и альтернативных ключей, определение атрибутов сущностей
- •Создание физической модели данных
- •Описание физической модели
- •Требования, предъявляемые к базе
- •Разработка программной среды
- •Технология разработки интерфейса пользователя
- •Работа с данными
- •Документация пользователя
- •Системные требования
- •Назначение программной среды
- •Инструкция пользователя
2 Проектирование базы данных
База данных, входящая в состав программной системы должна содержать то количество информации, которое является необходимым и достаточным для ее работы. Для этого база должна быть грамотно спроектирована. Этот процесс можно условно разбить на несколько стадий. Первая из них называется определение сущностей. На этом этапе принимается решение о том, какая информация и в каких таблицах будет храниться.
Определение сущностей
Сущность (объект) – в реляционной теории баз данных элемент информационной системы, информация о котором сохраняется. Объект может быть реальным и абстрактным. Каждый объект обладает определенным набором свойств, которые запоминаются в информационной системе.
Исходя из предметной области задачи, информационная система должна содержать следующие сущности:
Bilet – проданные билеты (Номер билета, номер рейса, дата продажи, место, куплен ли на вокзале, скидка, цена).
Bus – автотранспорт (Номер автобуса, модель, кол-во мест, дата выпуска, дата кап. ремонта, пробег, гос. номер, фото).
Driv – личные данные о водителях (Номер водителя, имя, фамилия, отчество, дата рождения, телефон, категория, класс).
Marsh – данные по маршрутам (Номер маршрута, пункт отправления, пункт прибытия, расстояние, номер расписания).
Rasp – расписание маршрутов (Номер расписания, время отправления, время прибытия).
Reis – данные по рейсам (Номер рейса, номер маршрута, номер водителя, номер автобуса).
Shtraf – информация по штрафам (Номер штрафа, номер рейса, дата, сумма).
Определение взаимосвязей между сущностями
Существующие взаимосвязи между сущностями представлены на рисунке 1.
Рис 1.
Задание первичных и альтернативных ключей, определение атрибутов сущностей
Сущности, атрибуты, ключи и вид данных представлены в таблице 1.
Сущность |
Первичный ключ |
Атрибуты |
1 |
2 |
3 |
Bilet |
Id |
Idr Data Mesto Bov Skid |
Bus |
Id |
Mark Model Mest Data Rem Number foto |
Reis |
Id |
Idm Idv idb |
Bron |
Id |
Idr Data mesto |
marsh |
Id |
Run end l idr |
Shtraf |
Id |
Idr data sum |
rasp |
Id |
Trun tend |
На данном этапе были определены атрибуты сущности, а также альтернативные и первичные ключи.
После определения сущностей и их атрибутов можно приступить к созданию связей таблиц.
Создание физической модели данных
Описание физической модели
Процесс приведения модели данных в соответствие требованиям реляционных баз данных называется нормализацией. Описание этого процесса приводится в таблице 2.
Наименование |
Тип данных |
Примечание |
1 |
2 |
3 |
Bilet |
||
Id |
Счетчик |
Ключ |
Idr |
Числовой |
Длинное целое |
Data |
Дата/время |
Краткий формат даты |
Mesto |
Числовой |
Длинное целое |
Bov |
Логический |
Да/нет |
skid |
Числовой |
Длинное целое |
Bus |
||
Id |
Счетчик |
Ключ |
Mark |
Текстовый |
20 |
Model |
Текстовый |
20 |
Mest |
Числовой |
Длинное целое |
Data |
Дата/время |
Краткий формат даты |
Rem |
Дата/время |
Краткий формат даты |
Probeg |
Числовой |
Длинное целое |
Nomer |
Числовой |
Длинное целое |
Foto |
Поле объекта ole |
Фото автобуса |
Reis |
||
Id |
Счетчик |
Ключ |
Idm |
Числовой |
Длинное целое |
Idv |
Числовой |
Длинное целое |
Idb |
Числовой |
Длинное целое |
Bron |
||
Id |
Счетчик |
Ключ |
Idr |
Числовой |
Длинное целое |
Data |
Дата/время |
Краткий формат даты |
Mesto |
Числовой |
Длинное целое |
Продолжение таблицы 2.
Marsh |
||
Id |
Счетчик |
Ключ |
Run |
Текстовый |
20 |
End |
Текстовый |
20 |
L |
Числовой |
Длинное целое |
Idr |
Числовой |
Длинное целое |
Shtraf |
||
Id |
Счетчик |
Ключ |
Idr |
Числовой |
Длинное целое |
Data |
Дата/время |
Краткий формат даты |
Sum |
Числовой |
Длинное целое |
Rasp |
||
id |
Счетчик |
Ключ |
Trun |
Текстовый |
20 |
Tend |
Текстовый |
20 |