Первым этапом и самым главным этапом в процессе проектирования и создания базы данных, является разработка инфологической модели.
Цель инфологического моделирования – обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
База данных создаётся для информационного обслуживания пункта авто-проката.
БД должна содержать данные об автомобилях, сдающихся в прокат или находящихся в прокате, о клиентах, о заключенных сделках и предоставлять возможность получать разнообразные отчёты.
В соответствии с предметной областью система строится с учётом следующих особенностей:
- каждый автомобиль сдается в рамках контракта;
- автомобиль может быть арендован одним клиентом;
- один контракт создается на каждую сделку об аренде;
- контракт оформляется на одного клиента;
- количество заказов, которые сделал клиент влияет на цену сделки;
- стаж вождения клиента влияет на цену сделки;
- каждый автомобиль выпущен определенной фирмой;
- автомобиль каждой фирмы имеет определенную цену за день аренды;
- ДТП регистрируется на одного водителя-арендатора и на один автомобиль за рулем которого он был.
- Существует предел кол-ва автомобилей, которыми может оперировать авто-прокат, примерно 50-100.
Схемы базовых сущностей этой предметной области:
Атрибуты Автомобилей Атрибуты клиентов
.
Атрибуты ДТП – ID номер, дата, клиент-водитель, автомобиль,
·
Контракты будем рассматривать, как связь между клиентами, автомобилями и ДТП. Атрибуты Контракта:
ДАТА ЗАКЛЮЧЕНИЯ КОНТРАКТА
|
ДАТАТ ОКОНЧАНИЯ КОНТРАКТА
|
В соответствии с представленными выше схемами сущностей и их атрибутов, а также схемой связей между сущностями можно построить инфологическую модель базы данных «Прокат автомобилей»
ДАТА ЗАКЛЮЧЕНИЯ КОНТРАКТА
|
ДАТАТ ОКОНЧАНИЯ КОНТРАКТА
|
.
E tVql8JxZ3LhZvVMsgrWcsOXZ9kTIkw3JpQp4UBvQOVsn9fyYpbPldDnNB/loshzkaV0PHldVPpis svtxfVdXVZ39DNSyvGgFY1wFdhclZ/nfKeV8p04avGr52obkFj32C8he3pF0HHiY8UktG82Oa3sR Aog3Op8vWrgdb/dgv/0dLF4BAAD//wMAUEsDBBQABgAIAAAAIQDIsw3q3wAAAAkBAAAPAAAAZHJz L2Rvd25yZXYueG1sTI/BTsMwEETvSPyDtUhcEHWapE0b4lQIiTMlcOjRjbdxRLyObDcNfD3mRI+r eZp5W+1mM7AJne8tCVguEmBIrVU9dQI+P14fN8B8kKTkYAkFfKOHXX17U8lS2Qu949SEjsUS8qUU oEMYS859q9FIv7AjUsxO1hkZ4uk6rpy8xHIz8DRJ1tzInuKCliO+aGy/mrMR4JJw6JoH3Wc2d2/7 KUt/9qdUiPu7+fkJWMA5/MPwpx/VoY5OR3sm5dkgoFiuVxEVkBYpsAgUeb4FdhSQbVfA64pff1D/ AgAA//8DAFBLAQItABQABgAIAAAAIQC2gziS/gAAAOEBAAATAAAAAAAAAAAAAAAAAAAAAABbQ29u dGVudF9UeXBlc10ueG1sUEsBAi0AFAAGAAgAAAAhADj9If/WAAAAlAEAAAsAAAAAAAAAAAAAAAAA LwEAAF9yZWxzLy5yZWxzUEsBAi0AFAAGAAgAAAAhACtygJsyAgAAVgQAAA4AAAAAAAAAAAAAAAAA LgIAAGRycy9lMm9Eb2MueG1sUEsBAi0AFAAGAAgAAAAhAMizDerfAAAACQEAAA8AAAAAAAAAAAAA AAAAjAQAAGRycy9kb3ducmV2LnhtbFBLBQYAAAAABAAEAPMAAACYBQAAAAA= " strokecolor="red"/>
Описание атрибутов инфологической модели:
Автомобили:
ü ID номер – атрибут хранящий информацию о номер машины в базе
ü номер модели в базе - атрибут хранящий информацию о номере модели в базе
ü марка - атрибут хранящий информацию о марке автомобиля
ü цвет - атрибут хранящий информацию о цвете автомобиля
ü статус - атрибут хранящий информацию о расположении автомобиля
Контракты:
ü номер контракта - – атрибут хранящий информацию о номере контракта в базе.
ü ДАТА ЗАКЛЮЧЕНИЯ – атрибут хранящий информацию о дате начала аренды.
ü ДАТАТ ОКОНЧАНИЯ – атрибут хранящий информацию о окончании срока аренды.
ü номер клиента в базе – атрибут хранящий информацию о порядковом номере клиента в базе.
ü номер машины - – атрибут хранящий информацию о номере автомобиля в базе, его ID.
ü Длительность аренды – атрибут хранящий информацию о кол-ве дней аренды.
ü Цена аренды/сутки – атрибут хранящий информацию о стоимости аренды автомобиля в сутки.
ДТП:
ü ID номер – атрибут хранящий уникальный идентификатор.
ü Дата – атрибут хранящий информацию о дате совершения аварии
ü ID номер контракта – атрибут хранящий информацию о номере контракта
ü Автомобиль – атрибут хранящий информацию о автомобиле который попал в ДТП.
ü УРОН -– атрибут хранящий информацию о процентном отношении от основной оставляющей единицы.
ü Повреждение -– атрибут хранящий информацию описывающую повреждение
Клиенты:
ü ID номер ID номер – атрибут хранящий уникальный идентификатор.
ü ФИО атрибут хранящий фамилию, имя, отчество клиента.
ü паспортные данные - атрибут хранящий данные паспорта
ü стаж вождения – атрибут описывающий общий стаж вождения.
ü кол-во заказов - атрибут хранящий информацию о количестве
ü телефон - атрибут хранящий информацию о телефоне
ü Домашний адрес - атрибут хранящий данные места регистрации клиента.
ER–диаграмма авто-проката приведена на схеме
(базовые сущности на рисунках выделены полужирным шрифтом):
Данная программа предполагает:
· Вводить информацию о новых клиентах, автомобилях.
· Составление договоров на сдачу автомобилей в аренду.
· Облуживание поисковых запросов(поиск автомобиля по базе данных, поиск арендаторов, поиск сданных автомобилей)
· Получение информации о прибыли
В таблицах должны быть ключевые поля для того, чтобы по фамилии арендатора я мог узнать, какой автомобиль он взял и какие дополнительные затраты произвел. Так же по марке авто определить его арендатора.
В программе будет реализовано добавление арендатора и машины, удаление арендатора и машины, поиск арендатора и машины (плюс ключевые поля), сохранение.
Анализ информационных задач и круга пользователей системы.
Система создаётся для обслуживания следующих групп пользователей:
ü менеджеры;
ü сотрудники, обслуживающие заказы и клиентов;
ü сотрудники, обслуживающие автомобили;
ü клиенты (для аренды автомобилей);
ü администрация (дирекция);
Определим границы информационной поддержки пользователей:
1) Функциональные возможности:
- ведение БД (запись, чтение, модификация, удаление в архив);
- обеспечение логической непротиворечивости БД;
- обеспечение защиты данных от несанкционированного или случайного доступа (определение прав доступа);
- реализация наиболее часто встречающихся запросов в готовом виде;
- предоставление возможности сформировать произвольный запрос на языке манипулирования данными.
- ведение списка автомобилей;
- ведение списка клиентов;
- поиск автомобилей по марке, вместимости, цвету, году выпуска;
- учет времени проката;
- учет стоимости проката (цена проката зависит от марки автомобиля);
- предоставление скидок для постоянных клиентов: величина скидки зависит от стажа водителя, от того, сколько раз данный клиент брал автомобили напрокат и от степени аварийности его езды.
2) Готовые запросы:
· Список автомобилей, которые в настоящее время не сданы напрокат.
· Список моделей легковых автомобилей с ценой не более 600 грн в день.
· Список автомобилей, пользующихся наибольшим спросом в течение последнего месяца.
· Список автомобилей, не пользующихся спросом.
· Список клиентов, которые брали напрокат одновременно более одного автомобиля.
· Список постоянных клиентов с указанием того, сколько раз они брали напрокат автомобили (в разное время).
· Расчет суммы, которую должен за прокат определенный клиент.