
УТС 4 семестр / 8391_Орещенко_СУБД_5часть_исправ
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра АПУ
Курсовая РАБОТА
по дисциплине «Системы управления базами данных»
Тема: Создание информационной системы
Студент гр. 8391 |
|
Орещенко Н.В. |
Преподаватель |
|
Белаш О.Ю. |
Санкт-Петербург
2020
Разработка технического задания к ИС.
Формирование требований к ИС.
Определение видения, границ и назначения ИС.
Краткое описание ИС.
Преимущества, которые получит заказчик при внедрении ИС.
ИС предназначена для автоматизации следующих процессов, происходящих в компании:
Продажа
Составление наиболее комфортного и бюджетного маршрута
Назначения транспортных компаний
ИС предназначена для работы сотрудников следующих видов:
Служба составления маршрутов
Служба продажи
Служба организации транспортных компаний
ИС обеспечивает:
Единство информационного пространства по основному виду деятельности – пассажироперевозкам
Учёт информации о выполненных маршрутах
Мониторинг информации о текущем положении пассажира в маршруте
Оповещение о чрезвычайных ситуациях как диспетчерскую, так и пассажира
Преимущества, которые получит заказчик при внедрении ИС:
Повышение качества пассажироперевозок за счёт грамотного составления маршрута, который сочетает в себе принципы комфортности и бюджетности, а также быстрого обслуживания.
Ускорение обращения информации
Упрощение работы сотрудников транспортных компаний
Единое цифровое пространство в транспортном комплексе
Новые возможности и разнообразие сервисов для комфортной перевозки пассажиров
Определение функциональных требований к ИС:
Общая функциональная модель ИС
Описание функциональных требований к ИС (диаграмма вариантов использования (UseCaseDiagram) с комментариями и формулировкой бизнес-правил)
Детализация варианта использования «Продажа ЕТБ»
Комментарии и бизнес-правила для варианта использования «Продажа ЕТБ»
При оформлении продажи билета фиксируется следующее:
Номер билета
Номер маршрута
ФИО
Паспортные данные (серия и номер)
Дата и время отправления
Дата и время прибытия
Цена
Номер телефона
Дата покупки билета
Номер билета уникален
После окончания продажи данные, перечисленные выше, не могут быть изменены
В случае возврата билет должен быть снова свободен для продажи, но уже с другим номером
Список пунктов подразумевает пункт отправления, промежуточные пункты, если они есть, и пункт назначения
Каждые сутки оформляется отчёт о проданных билетах
Детализация варианта использования «Составление маршрутов»
Комментарии и бизнес-правила для варианта использования «Составление маршрутов»
К характеристикам маршрута относятся
Id
Пункт отправления
Пункт назначения
Список промежуточных пунктов
Дата и время отправления
Дата и время прибытия
id для каждого маршрута уникален.
В случае если была совершена продажа по определённому маршруту и данный маршрут удаляется, то необходимо оформить возврат (см. «оформление возврата» из «Продажа ЕТБ»)
Детализация
варианта использования «Работа с
транспортными
»
Комментарии и бизнес-правила для варианта использования «работа с т.к.»
К характеристикам т.к.относятся
id
Наименование т.к.
Вид транспорта
Автобус
Самолёт
Список рейсов
Время отправления
Время прибытия
Пункт отправления
Пункт назначения
Частота
Количество мест
id для каждой т.к. уникален
Формирование данных как по отдельным т.к., так и по всем.
Редактирование запрещено во время выполнения маршрута
Работа с т.к. также подразумевает работу с рейсами, т.е. их добавление, удаление и редактирование
Нельзя продать билетов на рейс больше, чем количество мест.
Разработка концептуальной модели данных.
Модели пользовательских представлений данных для каждого варианта использования.
ER-диаграмма с комментариями.
Диаграмма классов UML с комментариями.
Концептуальная модель данных для варианта использования «Продажа ЕТБ»
ER-диаграмма:
Комментарии:
Сущность БИЛЕТ:
Номер билета – уникальный идентификатор.
Дата и время отправления – композитный атрибут
Дата и время прибытия – композитный атрибут
Атрибут «Статус возврата» - возвращен или не возвращен билет.
Также отметим, что билет может быть куплен на поездку в другую страну. В таком случае необходимо убедиться в том, что у пассажира есть все необходимые документы (виза, например).
Диаграмма классов UML:
Концептуальная модель данных для варианта использования «Работа с транспортными копаниями»
ER-диаграмма:
Комментарии:
Сущность ТРАНСПОРТНАЯ КОМПАНИЯ (т.к.):
Номер т.к.(транспортной компании) – уникальный идентификатор.
Частота – композитный многозначный атрибут: { Пн, Вт. Пт }
По четным дням
По нечетным дням
Каждый день
Важно отметить, что одна транспортная компанияможет осуществлять свою деятельность строго либо самолётом, либо автобусом.
Диаграмма классов UML:
Концептуальная модель данных для варианта использования «Составление маршрутов»
ER-диаграмма:
Комментарии:
Сущность МАРШРУТ:
Номер маршрута – уникальный идентификатор.
Дата и время отправления – композитный атрибут
Дата и время прибытия – композитный атрибут
Диаграмма классов UML:
1.2.2. Объединенная концептуальная модель данных.
ER-диаграмма с комментариями.
Диаграмма классов UML с комментариями.
Результирующая концептуальная модель данных ИС Единого Транспортного Билета (ЕТБ)
ER-диаграмма:
Комментарии:
Диаграмма классов UML:
2. Разработка технического проекта ИС.
2.1. Разработка структуры БД.
2.1.1. Преобразование концептуальной модели данных в реляционную модель.
Ограничения делового регламента, реализуемые программно:
· Атрибут Номер маршрута в отношении «Маршрут» должен совпадать с атрибутом Номер маршрута в отношении «Покупатель билета»;
· Атрибут Номер маршрута в отношении «Маршрут» должен совпадать с атрибутом Номер маршрута в отношении «Маршрут - рейс»;
· Атрибут Номер рейса в отношении «Рейс» должен совпадать с атрибутом Номер рейса в отношении «Маршрут - рейс»;
· Атрибут Номер т.к. в отношении «Транспортная компания» должен совпадать с атрибутом Номер т.к. в отношении «Рейс»;
· Атрибут ID вида транспорта в отношении «Вид транспортов» должен совпадать с атрибутом ID вида транспорта в отношении «Транспортная компания»;
Схема данных
Свойства полей таблиц.
Таблица «Маршрут»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер маршрута |
Короткий текст, 9 |
Да |
Да (Совпадения не допускаются) |
Формат поля: 000">LLL"000 Маска: >000\-LLL\-000;;# |
Дата отправления |
Дата и время |
Да |
Да (Допускаются совпадения) |
Формат поля: Краткий формат даты Маска: 00.00.0000;0;# |
Время отправления |
Дата и время |
Да |
Да (Допускаются совпадения) |
Формат поля: Краткий формат времени Маска: 00:00;0;# |
Дата прибытия |
Дата и время |
Да |
Нет |
Формат поля: Краткий формат даты Маска: 00.00.0000;0;# |
Время прибытия |
Дата и время |
Да |
Нет |
Формат поля: Краткий формат времени Маска: 00:00;0;# |
Цена |
Денежный |
Да |
Нет |
|
* К дополнительным ограничениям относятся сформированные маски ввода, значения по умолчанию, условия на значение (правила проверки)
Таблица «Покупатель билета»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер билета |
Короткий текст, 5 |
Да |
Да (Совпадения не допускаются) |
Формат поля: ">LL"000 Маска: >00\-LL\-00;;# |
Номер маршрута |
Короткий текст, 9 |
Да |
Да (Допускаются совпадения) |
Формат поля: 000">LLL"000 Маска: >000\-LLL\-000;;# |
ФИО |
Короткий текст, 100 |
Да |
Да (Допускаются совпадения) |
Значение по умолчанию: "Иванов Иван Иванович" |
Паспортные данные |
Короткий текст, 50 |
Да |
Нет |
|
Номер телефона |
Короткий текст, 20 |
Да |
Нет |
Маска: \+0" ("000") "000\-00\-00;;# |
Дата покупки |
Дата и время |
Да |
Нет |
Формат поля: Краткий формат даты Маска: 00.00.0000;0;# Значение по умолчанию: =Дата() |
Таблица «Маршрут-рейс»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер маршрута |
Короткий текст, 9 |
Да |
Да (Допускаются совпадения) |
Формат поля: 000">LLL"000 Маска: >000\-LLL\-000;;# |
Номер рейса |
Короткий текст, 6 |
Да |
Да (Допускаются совпадения) |
Формат поля: >"LL0000" Маска: >LL0000;;# |
Таблица «Рейс»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер рейса |
Короткий текст, 6 |
Да |
Да (Совпадения не допускаются) |
Маска: >LL0000;;# |
Пункт отправления |
Короткий текст, 100 |
Да |
Нет |
Значение по умолчанию: "Санкт-Петербург" |
Пункт назначения |
Короткий текст, 100 |
Да |
Да (Допускаются совпадения) |
|
Время отправления |
Дата и время |
Да |
Да (Допускаются совпадения) |
Формат поля: Краткий формат времени Маска: 00:00;0;# |
Время прибытия |
Дата и время |
Да |
Нет |
Формат поля: Краткий формат времени Маска: 00:00;0;# |
Номер транспортной компании |
Короткий текст, 6 |
Да |
Да (Допускаются совпадения) |
Формат поля: 000">LLL" Маска: >000:LLL;;# |
Частота |
Короткий текст, 100 |
Да |
Нет |
Значение по умолчанию: "Каждый день" |
Таблица «Транспортная компания»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер транспортной компании |
Короткий текст, 6 |
Да |
Да (Совпадения не допускаются) |
Формат поля: 000">LLL" Маска: >000:LLL;;# |
Название транспортной компании |
Короткий текст, 100 |
Да |
Да (Допускаются совпадения) |
|
Номер вида транспорта |
Короткий текст, 1 |
Да |
Да (Допускаются совпадения) |
Маска: 0 |
Таблица «Вид транспорта»
Название поля |
Тип данных и размер |
Обязательное или нет |
Индексированное или нет |
Дополнительные ограничения* |
Номер вида транспорта |
Короткий текст, 1 |
Да |
Да (Совпадения не допускаются) |
Маска: 0 |
Вид транспорта |
Короткий текст, 50 |
Да |
Нет |
Значение по умолчанию: “Автобус” |
Количество мест |
Длинное целое |
Нет |
Нет |
Правило проверки: >=0
Сообщение об ошибке: «Ошибка: пожалуйста, введите кол-во мест корректно!» |
Заполненные данными таблицы
Вид
транспорта:
Маршрут:
Маршрут-рейс:
Покупатель билета:
Рейс:
Транспортная компания: