Помощь в написании студенческих работ
Антистрессовый сервис

Разработка БД для АСУ «Расписание движения поездов»

Курсовая Купить готовую Узнать стоимостьмоей работы

В курсовом проекте была разработана ИС «Расписание движения поездов» для открытого акционерного общества «Самарская пригородная пассажирская компания», состоящая из базы данных и интерфейса. Для разработки базы данных использовалась СУБД MySQL. Для разработки интерфейса использовался сильно типизированный объектно-ориентированный язык программирования. В ИС реализовано разграничение уровней… Читать ещё >

Разработка БД для АСУ «Расписание движения поездов» (реферат, курсовая, диплом, контрольная)

Содержание

  • ВВЕДЕНИЕ
  • ГЛАВА 1. СИСТЕМНЫЙ АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
    • 1. 1. Анализ объекта автоматизации (ОАО «Самарская пригородная пассажирская компания»)
    • 1. 2. Обзор информационных технологий
    • 1. 3. Обзор продуктов-аналогов
    • 1. 4. Требования к разрабатываемой базе данных
  • ГЛАВА 2. ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
    • 2. 1. Разработка инфологической модели
    • 2. 2. Обоснование выбора модели данных
    • 2. 3. Даталогическое проектирование
    • 2. 4. Нормализация, схема БД
  • ГЛАВА 3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
    • 3. 1. Анализ и выбор СУБД
    • 3. 2. Физическое проектирование базы данных в СУБД
    • 3. 3. Разработка представлений
    • 3. 4. Разработка форм
    • 3. 5. Реализация ограничений, автоматизация обработки данных в БД
    • 3. 6. Безопасность и контроль
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ЛИТЕРАТУРЫ

Из приведенных выше клиент-серверных СУБД была выбранаMySQL, так как:

является одной из самых быстрых баз данных из имеющихся на современном рынкеявляется высокопроизводительной и относительно простой в использовании СУБДработает на языке запросов SQLколичество строк в таблицах может достигать 50 миллионовсервер позволяет одновременно подключаться неограниченному количеству пользователейвозможен и с помощью приложений, поддерживающих ODBCпредназначена для работы в сети и может быть доступна через Internet снабжена развитой системой защиты от несанкционированного доступаотлично работает как под управлением самых различных версий UNIX, так и под управлением систем, таких как Windows и OS/2имеет ограниченный размер3.

2 Физическое проектирование базы данных в СУБДДля создания новой базы данных будет использоваться клиентская программа mysql [11]. Первым шагом для создания базы данных являетсявызов mysql. exe из командной строки и подключение к серверу баз данных MySQL (рисунок 3).Рисунок 3 — Вызов mysql. exeиз командной строки и подключение к серверу баз данных MySQLВторым шагом является создание самой базы данных (рисунок 4).Рисунок 4 — Создание базы данных.

Теперь необходимо создать таблицы согласно схеме базы данных [12]. Таблица Локомотивы: CREATETABLEЛокомотивы (Регистрационный_номерintPRIMARYKEY, Год_выпуска int, Мощность int);Результат создания таблицы Локомотивы показан на рисунке 5. Рисунок 5 — Результат создания таблицы ЛокомотивыCREATETABLEСоставы (Номер_поездаint, Регистрационный_номер_вагона int, Положение_в_составе int, PRIMARYKEY (Номер_поезда, Регистрационный_номер_вагона));Результат создания таблицы Составы показан на рисунке 6. Рисунок 6 — Результат создания таблицы СоставыCREATETABLEВагоны (Регистрационный_номерintPRIMARYKEY, Год_выпуска int, Тип varchar (50), Количество_сидячих_мест int, Количество_стоячих_мест int);Результат создания таблицы Вагоны показан на рисунке 7. Рисунок 7 — Результат создания таблицы ВагоныCREATETABLEПоезда (НомерintPRIMARYKEY, Локомотивint, Маршрутint, Локомотивная_бригада int);Результат создания таблицы Поезда показан на рисунке 8. Рисунок 8 — Результат создания таблицы ПоездаCREATETABLEЛокомотивные_бригады (Номер_бригадыintPRIMARYKEY, Табельный_номер int);Результат создания таблицы Локомотивные бригады показан на рисунке 9. Рисунок 9 — Результат создания таблицы Локомотивные бригадыCREATETABLEСотрудники (Табельный_номерintPRIMARYKEY, Фамилияvarchar (50), Имя varchar (50), Отчество varchar (50), Дата_рождения date, Должность varchar (50));Результат создания таблицы Сотрудники показан на рисунке 10. Рисунок 10 — Результат создания таблицы СотрудникиCREATETABLEРасписание (Номер_поездаint, Код_станцииint, Время_прибытия datetime, Время_отправленияdatetime, PRIMARYKEY (Номер_поезда, Код_станции));Результат создания таблицы Расписание показан на рисунке 11. Рисунок 11 — Результат создания таблицы РасписаниеCREATETABLEМаршруты (Номер_маршрутаint, Код_станцииint, Порядковый_номерint, PRIMARYKEY (Номер_маршрута, Код_станции));Результат создания таблицы Маршруты показан на рисунке 12. Рисунок 12 — Результат создания таблицы МаршрутыCREATETABLEСтанции (Код_станцииintPRIMARYKEY, Название varchar (50), Количество_платформint);Результат создания таблицы Станции показан на рисунке 13. Рисунок 13 — Результат создания таблицы СтанцииCREATETABLEПассажиропоток (Код_станцииint, Количество_пассажиров int, Время_сутокenum (‘утро', ‘день', ‘вечер', ‘ночь'), День_недели enum (‘понедельник',‘вторник',‘среда',‘четверг',‘пятница',‘суббота',‘воскресенье'), Время_года enum (‘зима',‘весна',‘лето',‘осень'), PRIMARYKEY (Код_станции, Время_суток, День_недели, Время_года));Результат создания таблицы Пассажиропоток показан на рисунке 14. Рисунок 14 — Результат создания таблицы Составы.

Таким образом, была создана вся структура базы данных.

3.3 Разработка форм.

Интерфейс программы для работы с разрабатываемой БД разработан на Java [13]. В нем реализовано разделение на группы пользователей:

администраторысотрудникипользователи.

При запуске программы открывается форма авторизации, представленная на рисунке 15. Рисунок 15 — Форма авторизации.

После отправки данных из формы авторизации программа проверяет к какой группе пользователей относится обладатель данной пары «Имя пользователя — Пароль».После проверки в зависимости от принадлежности обладателя к той или иной группе пользователей открывается, соответствующее данной группе окно. Например, для сотрудников компании открывается окно с возможностью просмотра информации из любой из существующих в базе данных таблиц, а также с возможностью добавления, редактирования или удаления данных (рисунок 16).Рисунок 16 — Рабочее окно сотрудника компании.

При нажатии на кнопку соответствующую определенной сущности, например, «Локомотивы», появляется таблица, соответствующая экземплярам данной сущности (рисунок 17).Рисунок 17 — Форма вывода данных о локомотивах.

Для пользователей рабочее окно предоставляет только возможность просмотра расписания. Рабочее окно администратора позволяет работать с базой данных напрямую с помощью запросов на языке SQL, так как предполагается, что администратор базы данных должен быть с ним знаком.

3.4 Реализация ограничений, автоматизация обработки данных в БДВ базе данных были созданы следующие триггеры [14]: Первый триггер предотвращает изменение в базе данных пользователей прав пользователей на права сотрудников или администраторов: CREATE TRIGGER update_usersbeforeupdate ON usersFOR EACH ROW BEGINSET NEW. user_code = 1;END //Второй триггер предотвращает внесение в базу данных новых пользователей с правами сотрудников или администраторов: CREATE TRIGGER insert_users before insert ON usersFOR EACH ROW BEGINSET NEW. user_code = 1;END //Третийтриггерне позволяет у локомотивов старше определенного возраста выставить мощность больше определенной: CREATE TRIGGER update_locomotive before update ON локомотивыFOR EACH ROWIF (NEW.год_выпуска< 1960) THENSET NEW. мощность = 100;ENDIF //3.5 Безопасность и контроль.

Безопасность обеспечивается путем ограничения доступа для определенных групп пользователей (администратор, сотрудник, пользователь)[15]. Триггеры также позволяют предотвратить несанкционированный доступ к данным путем изменения учетных записей пользователей.

ЗАКЛЮЧЕНИЕ

В курсовом проекте была разработана ИС «Расписание движения поездов» для открытого акционерного общества «Самарская пригородная пассажирская компания», состоящая из базы данных и интерфейса. Для разработки базы данных использовалась СУБД MySQL. Для разработки интерфейса использовался сильно типизированный объектно-ориентированный язык программирования. В ИС реализовано разграничение уровней доступа системы путем разбиения пользователей на группы с разными правами. Интерфейс программы позволяет пользователям получать информацию о расписании движения поездов, а сотрудникам просматривать информацию о подвижном составе, станциях, сотрудниках и расписании движения поездов, а также вносить изменения в эту информации. Администратору также предоставляется возможность вносить изменения в базу данных с использованием языка SQL. Данная система отвечает всем требованиям, предъявляемым к системам данного типа, и может использоваться для оптимизации работы пригородной пассажирской компании.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ЛИТЕРАТУРЫСайт ОАО «Самарская пригородная пассажирская компания» [Электронный ресурс] URL:

http://samppk.ru/Сайт немецких железных дорог [Электронный ресурс]URL:

https://www.bahn.de/p/view/index.shtmlСайт ОАО «РЖД» [Электронный ресурс]URL:

http://pass.rzd.ru/Сайт туристического портала Туту.

ру [Электронный ресурс] URL:

https://www.tutu.ru/Куликов Г. Г. Набатов А.Н. Речкалов А. В. Автоматизированное проектирование информационно-управляющих систем. Системное моделирование предметной области. — Уфа: Уфимский государственный авиационный технический университет, 1998. — 104 с. — ISBN 5−89 611−190−0.Дейт К. Дж. Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: «Вильямс», 2006. — 1328 с. — ISBN 0−321−19 784−4.Peter Pin-Shan Chen «The Entity-Relationship Model — Toward a Unified View of Data» (англ.) // ACM Transactions on Database Systems (TODS): Сб. — Нью-Йорк: ACM, 1976. — Vol. 1. — P. 9−36. — ISSN 0362−5915. — DOI:

10.1145/320 434.

Когаловский М. Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002. — 800 с. — ISBN 5−279−2 276−4.Федоренко, Е. В. Базы данных: учебное пособие / Е. В. Федоренко, А. С. Самардак. — М.: Находка, 2016.

— 116 с. Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс = Database Systems: The Complete Book.

— Вильямс, 2003. — 1088 с. — ISBN 5−8459−0384-X.MySQL 5.7 Reference Manual [Электронныйресурс] // ОфициальныйсайтMySQLURL:

https://dev.mysql.com/doc/refman/5.7/en/УчебноепособиепоMySQL [Электронный ресурс] URL:

http://www.mysql.ru/docs/man/Tutorial.htmlО Java[Электронный ресурс]URL:

https://java.com/ru/about/Триггеры в MySQL[Электронный ресурс] URL:

https://habrahabr.ru/sandbox/65 316/Date, C. J. Database in Depth. — O'Reilly, 2005. — 240 с. — ISBN 0−596−10 012−4.

Показать весь текст

Список литературы

  1. Сайт ОАО «Самарская пригородная пассажирская компания» [Электронный ресурс] URL: http://samppk.ru/
  2. Сайт немецких железных дорог [Электронный ресурс] URL: https://www.bahn.de/p/view/index.shtml
  3. Сайт ОАО «РЖД» [Электронный ресурс] URL: http://pass.rzd.ru/
  4. Сайт туристического портала Туту.ру [Электронный ресурс] URL: https://www.tutu.ru/
  5. Г. Г. Набатов А.Н. Речкалов А. В. Автоматизированное проектирование информационно-управляющих систем. Системное моделирование предметной области. — Уфа: Уфимский государственный авиационный технический университет, 1998. — 104 с. — ISBN 5−89 611−190−0.
  6. К. Дж. Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: «Вильямс», 2006. — 1328 с. — ISBN 0−321−19 784−4.
  7. Peter Pin-Shan Chen «The Entity-Relationship Model — Toward a Unified View of Data» (англ.) // ACM Transactions on Database Systems (TODS): Сб. — Нью-Йорк: ACM, 1976. — Vol. 1. — P. 9−36. — ISSN 0362−5915. — DOI:10.1145/320 434.320440.
  8. М. Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002. — 800 с. — ISBN 5−279−2 276−4.
  9. Федоренко, Е. В. Базы данных: учебное пособие / Е. В. Федоренко, А. С. Самардак. — М.: Находка, 2016. — 116 с.
  10. Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс = Database Systems: The Complete Book. — Вильямс, 2003. — 1088 с. — ISBN 5−8459−0384-X.
  11. MySQL 5.7 Reference Manual [Электронный ресурс] // Официальный сайт MySQL URL: https://dev.mysql.com/doc/refman/5.7/en/
  12. Учебное пособие по MySQL [Электронный ресурс] URL: http://www.mysql.ru/docs/man/Tutorial.html
  13. О Java [Электронный ресурс] URL: https://java.com/ru/about/
  14. Триггеры в MySQL [Электронный ресурс] URL: https://habrahabr.ru/sandbox/65 316/
  15. Date, C. J. Database in Depth. — O'Reilly, 2005. — 240 с. — ISBN 0−596−10 012−4.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ