ВПР31
Информационная система «Автовокзал».
Задание: Требуется разработать информационную систему для работы автовокзала. В качестве пользователей предусматриваются администратор, кассиры и пассажиры.
1. Концептуальная модель предметной области.
Внешняя модель……….
Пассажиры:
Мне нужна информация о рейсах по определенному маршруту и в определенное время, а именно: количество свободных мест, стоимость проезда, стоимость провозки багажа, номер автобуса, время отправления, время прибытия. Я спрашиваю, есть ли автобусы, движущиеся по нужному мне маршруту, если они есть и их несколько, я спрашиваю ближайший по времени, узнаю, есть ли стоимость проезда не больше цены в определенном диапазоне, если она меня устраивает то я покупаю билет, в котором могу прочитать следующую информацию: номер маршрута, маршрут, номер автобуса, время отправления, дата отправления, время прибытия, стоимость проезда, стоимость провозки багажа, номер места, номер перрона. Если стоимость билета меня не устраивает, то я прошу билет на рейс с меньшей стоимостью. Если я передумал ехать на рейсе до того как автобус уехал, то я сдаю билет в кассу, где мне возвращают 2/3 стоимости билета. Если рейс по каким либо причинам отменили, я иду сдавать билет в кассу, и получаю полную стоимость билета.
Кассиры:
Я должен получать информацию о рейсах по определенному маршруту и в определенное время: номер маршрута, маршрут, номер автобуса, время отправления, время прибытия, количество мест, количество свободных мест, стоимость проезда, стоимость провозки багажа, номер перрона. Так же у меня есть возможность изменять информацию о свободных местах.
Кроме того, я выдаю билеты и оперирую списками пассажиров, которые покупают билеты. Я могу редактировать его, удалять из него данные, добавлять новые: имя пассажира, фамилия пассажира, отчество пассажира, дата рождения пассажира, адрес пассажира, серия паспорта, номер паспорта, номер маршрута, маршрут, дата отправления, время отправления, дата прибытия, время прибытия, стоимость проезда, стоимость провозки багажа. Ко мне подходит человек и спрашивает наличие рейсов по нужному ему маршруту, я предоставляю ему эту информацию, говорю стоимость билета. Если его все устраивает, проверяю наличие свободных мест, если места есть, предлагаю ему взять билет. Прошу его паспорт и заношу его в список пассажиров в который записывается вся информация из паспорта и информация о поездке: имя пассажира, фамилия пассажира, отчество пассажира, дата рождения пассажира, адрес пассажира, серия паспорта, номер паспорта, номер маршрута, маршрут, дата отправления, время отправления, дата прибытия, время прибытия, стоимость проезда, стоимость провозки багажа. Если человек решил вернуть билет на рейс до того как автобус уехал, я должен ему вернуть 2/3 стоимости билета. Если рейс отменен по каким либо причинам, я возвращаю полную стоимость билета
Администратор:
Мне нужна вся та же информация, что и кассиру, но кроме того я могу оперировать информацией о маршрутах (добавлять новые маршруты, редактировать, удалять), информацией об автобусах и водителях: номер маршрута, маршрут, время отправления, время прибытия, дата отправления, дата прибытия, количество мест, стоимость проезда, стоимость провозки багажа, пункт отправления, пункт прибытия, номер автобуса, марка автобуса, количество мест, тип автобуса, имя водителя, фамилия водителя, отчество водителя, дата рождения водителя, адрес водителя, телефон водителя. Могу назначать водителя на поездку. Если на какой либо маршрут очень много желающих уехать, а мест в автобусе не хватает, то я могу назначить свободный автобус на этот же маршрут и назначить на этот автобус свободного водителя.
Если автобус задерживается, то я изменяю информацию о рейсе, а именно меняю время отправления и время прибытия. Если автобус поломался или плохие погодные условия, то я отменяю определенный рейс. Если взяли на работу нового водителя, я заношу его в список водителей.
1.1 Описание объектов предметной области, их атрибутов и связей между объектами.
Объект: Рейс
Атрибуты:
· ID рейса
· ID маршрута
· ID автобуса
· ID водителя
· Количество свободных мест
· Номер перрона
Объект: Маршрут
Атрибуты:
· ID маршрута
· Номер маршрута
· Пункт отправления
· Пункт прибытия
· Время отправления
· Время прибытия
· Дата отправления
· Дата прибытия
· Стоимость проезда
· Стоимость провозки багажа
Объект: Автобус
Атрибуты:
· ID автобуса
· Номер
· Марка
· Количество мест
· Тип
Объект: Водитель
Атрибуты:
· ID человека
· ID водителя
Объект: Пассажир
Атрибуты:
· ID человека
· ID пассажира
Объект: Билет
Атрибуты:
· ID пассажира
· ID рейса
· Номер места
Объект: Человек
Атрибуты:
· ID человека
· Имя
· Фамилия
· Отчество
· Дата рождения
· Адрес
· Телефон
· Номер паспорта
· Серия паспорта
1.2 ER-Модель.
![]() |
![]() |
Тип связи:
A – Для составления рейса, нужна информация о маршрутах
B – К каждому рейсу привязан свой автобус
C – Водитель назначается на рейс
D – Человек может быть водителем
E – Человек может быть пассажиром
F – В билете содержится информация о пассажире
G – В билете содержится информация о рейсе
1.3 Код.
CREATE TABLE РЕЙС (ID INTEGER PRIMARY KEY, ID_МАРШРУТА INTEGER, ID_АВТОБУСА INTEGER, ID_ВОДИТЕЛЯ INTEGER, КОЛИЧЕСТВО_СВОБОДНЫХ_МЕСТ INTEGER, НОМЕР_ПЕРРОНА INTEGER)
CREATE TABLE МАРШРУТ (ID INTEGER PRIMARY KEY, НОМЕР_МАРШРУТА TEXT, ПУНКТ_ОТПРАВЛЕНИЯ TEXT, ПУНКТ_ПРИБЫТИЯ TEXT, ВРЕМЯ_ОТПРАВЛЕНИЯ DATE, ВРЕМЯ_ПРИБЫТИЯ DATE, ДАТА_ОТПРАВЛЕНИЯ DATE, ДАТА_ПРИБЫТИЯ DATE, СТОИМОСТЬ_ПРОЕЗДА INTEGER, СТОИМОСТЬ_ПРОВОЗКИ_БАГАЖА INTEGER)
CREATE TABLE АВТОБУС (ID INTEGER PRIMARY KEY, НОМЕР TEXT, МАРКА TEXT, КОЛИЧЕСТВО_МЕСТ INTEGER, ТИП TEXT)
CREATE TABLE ВОДИТЕЛЬ (ID INTEGER PRIMARY KEY, ID_ЧЕЛОВЕКА INTEGER)
CREATE TABLE ПАССАЖИР (ID INTEGER PRIMARY KEY, ID_ЧЕЛОВЕКА INTEGER)
CREATE TABLE БИЛЕТ (ID_ПАССАЖИРА INTEGER, ID_РЕЙСА INTEGER, НОМЕР_МЕСТА INTEGER)
CREATE TABLE ЧЕЛОВЕК (ID INTEGER PRIMARY KEY, ИМЯ TEXT, ФАМИЛИЯ TEXT, ОТЧЕСТВО TEXT, ДАТА_РОЖДЕНИЯ DATE, АДРЕС TEXT, ТЕЛЕФОН TEXT, НОМЕР_ПАСПОРТА INTEGER, СЕРИЯ_ПАСПОРТА INTEGER)
Во внешней модели не должны содержаться предложения языкавнутренней (физической) модели
1.4 Датологическая модель. ??
Необходимо закончить внешнюю модель, в том числе привести описание отчетов, которые предоставляют пользователи до разработки и внедрения информационной системы. Посмотрите Методические указания по курсовой работе.
10 баллов





