Введение 3
Глава 1 Функциональное моделирование модуля поиска и отображения расписания учебных занятий 5
1.1 Описание процесса работы с расписанием 5
1.2 Определение требований к разрабатываемой системе 6
1.3 Разбор аналогов системы 10
1.4 Постановка задачи на разработку 12
1.5 Разработка модели «Как должно быть» 13
Глава 2 Логическое проектирование модуля поиска и отображения расписания учебных занятий 17
2.1 Выбор технологии логического моделирования 17
2.2 Описание логической модели системы 18
2.3 Создание логической модели данных 20
Глава 3 Функциональное проектирование модуля поиска и отображения расписания учебных занятий 24
3.1 Выбор архитектуры системы 24
3.2 Выбор СУБД для внутренней базы данных 26
3.3 Создание физической модели данных 28
3.4 Реализация серверной части системы 30
3.4.1 Выбор инструментов для реализации 30
3.4.2 Определение структуры проекта 34
3.4.3 Программная реализация компонентов сервиса 35
3.5 Реализация web-приложения 37
3.5.1 Выбор инструментов для реализации 37
3.5.2 Определение структуры проекта 39
3.5.3 Программная реализация компонентов приложения 40
3.6 Реализация мобильного приложения 42
3.6.1 Выбор инструментов для реализации 42
3.6.2 Определение структуры проекта 44
3.6.3 Программная реализация компонентов приложения 45
3.7 Настройка сборки и разворачивания компонентов системы 47
3.8 Описание функциональности системы поиска и отображения расписания учебных занятий 49
3.9 Тестирование системы 50
Заключение 53
Список используемой литературы 55
Приложение А Диаграмма видов деятельности для прецедента «Поиск расписания» («Как есть») 57
Приложение Б Диаграмма прецедентов 58
Приложение В Диаграмма видов деятельности для прецедента «Поиск расписания» (Как должно быть) 59
Приложение Г Диаграмма видов деятельности прецедента «Вход в систему» 60
Приложение Д Диаграмма видов деятельности для процесса «Управление сущностями» 61
Приложение Е Диаграмма последовательности для прецедента «Обновление
БД» 62
Приложение Ж Диаграмма последовательности для прецедента «Добавление пользователя» 63
Приложение И Диаграмма последовательности для прецедента «Удаление пользователя» 64
Приложение К Общая диаграмма классов 65
Приложение Л Диаграмма последовательности для прецедента «Поиск
расписания» 66
Приложение М Диаграмма последовательности для прецедента «Вход в
систему» 67
Приложение Н Метод получения кафедр по идентификатору института 68
Приложение П Процент поисковых запросов на форуме StackOverflow для различных кроссплатформенных инструментов от общего числа запросов .. 69
Приложение Р Использование FutureBuilder 70
Приложение С Диаграмма развертывания системы 71
Приложение Т Docker Compose конфигурация 72
Аннотация. Введение.
Объектом исследования является система управления данными о работе университета.
Предметом исследования является реализация получения, преобразования, хранения данных о расписании учебных занятий, а также реализация системы поиска и отображения этих данных в удобном для пользователей формате.
Целью работы является исследование современных подходов к реализации современных программных систем, а также их применение для реализации системы поиска и отображения расписания учебных занятий в университете.
Для достижения поставленных целей были выделены следующие задачи:
- выявление требований к системе,
- выбор технологий проектирования,
- разработка концептуальной модели системы,
- разработка логической модели системы,
- выбор технологий программной реализации,
- программная реализация системы,
- тестирование системы.
В данной работе была произведена реализация модуля поиска и отображения расписания учебных занятий в Тольяттинском государственном университете.
В рамках работы над проектом был произведен анализ предметной области, определены основные проблемы существующих решений. На основе полученной информации, а также пожеланий пользователей и представителей администрации университета были выявлены требования к реализации и произведено проектирование различных аспектов реализуемой системы. Для проектирования была выбрана одна общая методология UML, а также в процессе по необходимости использовались дополнительные инструменты, такие как IDEF1X. При проектировании было изучено взаимодействие пользователя с системой, потоки и структуры данных. В результате была поставлена задача на реализацию web-приложения, приложения для работы с использованием стационарных терминалов и мобильного приложения.
В рамках процесса реализации была определена архитектура будущей системы. Выбор пал на многоуровневую архитектуру из-за удобного взаимодействия отдельных компонентов системы, а также потенциала дня расширения и модификации.
С использованием полученной информации был определен стек технологий для реализации программного обеспечения, который отвечал основным требованиям, архитектуре, требованиям к удобству разработки и поддержки. Далее с их использованием была произведена реализация отдельных компонентов системы.
По завершении реализации было произведено разворачивание и тестирование системы, по итогам которого была выпущена web версия приложения и версия для терминалов. Мобильная версия ожидает решения организационных вопросов и работает в тестовом режиме.
На данный момент система находится в рабочем состоянии, она эксплуатируется большим числом пользователей, что подтверждают различные встроенные метрики.
При всем вышеописанном система продолжает свое развитие. Готовится публикация мобильного приложения, постоянно вносится дополнительный функционал, производится исправление ошибок, оптимизация процессов. Следующим этапом развития должна стать переработанная версия с новым интерфейсом, с более продвинутым пользовательским опытом, а также значительными оптимизациями в работе сервера.
Подводя итоги, можно утверждать, что работа была проведена в полном объёме, все поставленные задачи выполнены. Система введена в эксплуатацию, активно используется и развивается.