🔍 Поиск работ

МОБИЛЬНОЕ ПРИЛОЖЕНИЕ - АГРЕГАТОР СЕРВИСОВ ТПУ

Работа №203977

Тип работы

Бакалаврская работа

Предмет

информационные системы

Объем работы167
Год сдачи2023
Стоимость4310 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
26
Не подходит работа?

Узнай цену на написание


Введение 21
Объект и методы исследования 23
Глава 1. Исследование предметной области 25
1.1 Инфраструктура информационных систем ТПУ 25
1.2 Выбор языка разработки мобильного приложения 26
1.3 Выбор инструментов работы с картами и изображениями в мобильном
приложении 30
1.4 Обзор технологий внутреннего позиционирования 31
1.5 Поэтажные планы учебных корпусов 34
1.6 Обзор архитектурных подходов при разработке сервера 35
1.6.1 Монолитная архитектура 36
1.6.2 Модульная архитектура 39
1.6.3 Микросервисная архитектура 40
1.6.4 Обоснование выбора архитектуры 42
1.7 Инструменты и методологии, используемые при разработке серверной
части 43
1.7.1 Обоснование выбора программной платформы 43
1.7.2 NestJS 44
1.7.3 PostgreSQL 44
1.7.4 MongoDB 45
1.7.5 Swagger 45
1.7.6 Docker 46
1.7.7 Kubernetes 47
1.7.9 Kong API Gateway 48
1.7.9 Grafana 49
1.7.10 Fluent-Bit 50
1.7.11 Redis 50
1.7.12 RabbitMQ 51
1.7.13 DevOps 51
1.7.14 VK Cloud 53
1.8 Вывод по главе 54
Глава 2. Проектирование Суперсервиса 56
2.1 Проектирование инфраструктуры indoor-навигации на примере
десятого учебного корпуса 56
2.2 Работа с BLE маячками 58
2.3 Требования к Мобильному приложению 59
2.4 Проектирование мобильного приложения 62
2.5 Проектирование UX / UI дизайна мобильного приложения 65
2.6 Описание процесса публикации нового сервиса 70
2.7 Проектирование архитектуры серверной части 73
2.8 Вывод по главе 75
Глава 3. Разработка Суперсервиса 76
3.1 Разработка приложения для работы с маячками 76
3.2 Разработка мобильного приложения «Суперсервис ТПУ» 78
3.3 Разработка кластера Kubernetes 79
3.4 Интеграция сторонних инструментов 87
3.5 Настройка CI/CD пайплайна 91
3.6 Разработка модуля пользователя 92
3.7 Вывод по главе 99
Глава 4. Результаты разработки Суперсервиса 100
4.1 Мобильное приложение «Суперсервис ТПУ» 100
4.2. Многофункциональный сервер 104
4.3 CI/CD пайплайн 106
Глава 5. Финансовый менеджмент, ресурсоэффективность и ресурсосбережение 109
Введение 109
5.1 Оценка коммерческого потенциала и перспективности научных
исследований 109
5.1.1 Потенциальные потребители результатов исследования 109
5.1.2 Анализ конкурентных технических решений 111
5.1.3 Технология QuaD 112
5.1.4 SWOT-анализ 114
5.2 Определение возможных альтернатив проведения научного
исследования 117
5.3 Планирование работ по научно-техническому исследованию 118
5.3.1 Структура работ в рамках научного исследования 118
5.3.2 Определение трудоемкости выполнения работ 120
5.3.3 Разработка графика проведения научного исследования 120
5.4 Бюджет научно-технического исследования (НТИ) 126
5.4.1 Расчет материальных затрат 127
5.4.2 Расчет затрат на специальное оборудование для научных работ . 127
5.4.3 Основная заработная плата исполнителя темы 128
5.4.4 Расчет дополнительной заработной платы 131
5.4.5 Отчисления во внебюджетные фонды 132
5.4.6 Накладные расходы 133
5.4.7 Формирование бюджета затрат научно-исследовательского проекта 133
5.5 Определение ресурсной (ресурсосберегающей), финансовой,
бюджетной, социальной и экономической эффективности исследования134 Вывод по главе 136
Глава 6. Социальная ответственность 137
Введение 137
6.1 Правовые и организационные вопросы обеспечения безопасности при
разработке проектного решения 137
6.1.1 Правовые нормы трудового законодательства 137
6.1.2 Эргономические требования к правильному расположению и
компоновке рабочей зоны 138
6.2 Производственная безопасность 139
6.2.1 Отсутствие или недостаток необходимого искусственного
освещения 140
6.2.2 Монотонность труда, вызывающая монотонию 142
6.2.3 Нагрузка на зрительный аппарат 142
6.2.4 Умственное перенапряжение, в том числе вызванное
информационной нагрузкой 143
6.2.5 Статические физические нагрузки, связанные с рабочей позой... 143
6.2.6 Аномальные микроклиматические параметры воздушной среды на
местонахождении рабочего 144
6.3 Экологическая безопасность 145
6.4 Безопасность в чрезвычайных ситуациях 146
Вывод по разделу 147
Заключение 149
Список публикаций студентов 151
Список использованных источников 152
Приложение А. Страницы приложения 157
Приложение Б. Диаграммы последовательностей 158
Приложение В. Docker Compose файл 160
Приложение Г. GitHub Actions 165
Приложение Д. Skaffold конфигурация 167

С увеличением темпов роста использования информационных технологий увеличивается количество информации, которую необходимо собирать, хранить и обрабатывать [1]. Цифровизация проникает во все сферы жизни [2], ускоряя и усовершенствуя протекание бизнес-процессов. Множество преимуществ цифровизация дает и университету: широкий доступ обучающихся к ин-формационным ресурсам вуза, возможность строить индивидуализированные образовательные траектории, оптимизацию взаимодействия между преподавателями и студентами и др.
Томский Политехнический Университет можно назвать передовым в области цифровизации образования, на момент написания работы он имеет 110 действующих цифровых продуктов [3]. 1,5 года назад университет столкнулся с проблемой - большой спрос на новые продукты и сервисы не мог быть удовлетворен в условиях большой монолитной системы с закрытой архитектурой, в которой каждый компонент разрабатывался в разное время разными разработчиками, использовавшими разные технологии. Поэтому руководством университета было принято решение кардинально перестроить всю имеющуюся архитектуру следующим образом: в центр системы поместить плат-формы: «Образование», «Наука», «СОУД», «Кадры» и «Финансы», и с помощью мастер-данных, рассылки машиночитаемых документов и единого API и предоставить им возможность общаться между собой, и создать комфортную среду для микросервисов - отчуждаемых систем, разрабатываемых для ТПУ внешними разработчиками; сторонних систем, встроенных в инфраструктуру ТПУ; а также внешних систем, сопряженных с системой ТПУ [4].
Но у данного подхода тоже есть свои недостатки - единая точка входа хоть и позволят авторизовываться во всех сервисах, но каждый раз требует ввода логина и пароля. Большое количество распределенных сервисов хоть и оптимизируют многие задачи, но в то же время требуют осведомленности пользователей. Наиболее важные для студента сервисы, такие как, например, Корпоративный портал, не оптимизированы под маленькие экраны, что затрудняет их использование на смартфонах.
В то же время в цифровом мире наблюдается другой тренд - корпорации стремятся объединить все свои продукты в единое Суперприложение или Суперсервис, мобильный интерфейс для экосистемы, который объединяет ее продукты и сервисы в едином окне.
Авторы данной выпускной квалификационной работы приняли решение перенять опыт крупных компаний и спроектировать и разработать мобильное приложение - Агрегатор сервисов Томского Политехнического Университета «Суперсервис ТПУ». Для демонстрации возможностей платформы решено разработать 4 сервиса: улучшенное расписание, сервис для поиска ауди-торий и сервис для мероприятий.
Объект и методы исследования
Объект исследования: мобильное приложение - агрегатор сервисов Томского Политехнического Университета «Суперсервис ТПУ». В качестве методов исследования используются методы анализа и синтеза, проектирование общей структуры системы. Были использованы справочные и статистические материалы по выбранной теме.
Цель выпускной квалификационной работы: разработать платформу системы «Суперсервиса ТПУ» и на его основе запустить три сервиса - улучшенное расписание, сервис для поиска аудиторий, сервис для участников культмассовых мероприятий. Система должна иметь микросервисную архитектуру, а также предоставлять другим студентам возможность вести отдельную разработку своих сервисов и впоследствии интегрировать их в основное приложение
Для достижения поставленной цели необходимо решить задачи:
1. Проанализировать литературу и интернет-ресурсы по теме внутреннего устройства суперприложений и суперсервисов.
2. Проанализировать существующие сервисы и архитектуру серверов Томского Политехнического Университета. Сформировать запрос на получение нужных данных.
3. Подключиться к API Томского Политехнического Университета.
4. Спроектировать и разработать сервер для мобильного приложения «Суперсервис ТПУ».
5. Спроектировать и разработать мобильное приложение «Суперсервис ТПУ».
6. Спроектировать и разработать 3 сервиса - улучшенное расписание, сервис для поиска аудиторий, сервис для участников культмассовых мероприятий.
Актуальность работы обусловлена наличием большого количества слабо связанных и не адаптированных под мобильные устройства сервисов Томского Политехнического Университета. При использовании разных сервисов необходимо заново проходить процесс авторизации. Сервис расписания необходим для более глубокой персонализации действующего расписания; сервис поиска аудиторий - для помощи студентам в ориентировании в учебных корпусах; сервис для культмассовых мероприятий - для создания нового вида взаимодействия между участниками и мероприятием.
Другая проблема - оторванность вузовского проектного обучения от реальной практики. Действующий Суперсервис позволит студентам обучаться программированию на создании реальных университетских сервисов.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В результате выполнения работы выпускной квалификационной работы было спроектировано и разработано приложение - агрегатор сервисов ТПУ. Для разработки использовались фреймворки Flutter и NestJS, для управления контейнеризованными модулями применяется Kubernetes.
Была исследована предметная область, а именно состояние информационной инфраструктуры Томского политехнического университета. Были выбраны архитектурные подходы к проектированию системы, инструменты разработки и службы развёртывания.
Перед началом процесса разработки были описаны бизнес-процессы, которые необходимо автоматизировать, а также спроектированы пользовательский интерфейс приложения и архитектура веб-сервера.
На этапе разработки системы Кудашкиным Алексеем Вячеславовичем было разработано мобильное кроссплатформенное приложение, которое можно автоматически расширять при помощи веб-представлений сервисов. Якубицким Владиславом Романовичем была реализована основа веб-сервера, который построен на микросервисной архитектуре, а также настроены каналы взаимодействия элементов системы и сформирован CI/CD пайплайн. Сенчиным Данилом Михайловичем были разработаны основные сервисы и подключены внешние службы для их работы.
Выполнены задания по разделам «Финансовый менеджмент, ресурсоэффективность и ресурсосбережение» и «Социальная ответственность», где была показана финансовая эффективность проекта и соответствие его правовым нормам по организации производственного процесса.
27.04.2022 была проведена встреча с представителями ТПУ, на которой Томский политехнический университет выразил интерес к разработанному продукту и пожелал выступить в роли заказчика, что определяет дальнейшее развитие проекта следующим образом: осуществить более тесную интеграцию сервера с api.tpu.ru, обеспечить взаимодействие клиента и сервера, собрать с заказчика требования, спроектировать, разработать и внедрить заказанные сервисы. Также планируется постепенно расширять количество функциональных возможностей системы.
В рамках выпускной квалификационной работы были выполнены все основные поставленные задачи, что позволило достигнуть цели работы.


1. Internet usage worldwide - statistics & facts [Электронный ресурс]. URL: https://www.statista.com/statistics/871513/worldwide-data-created/(Дата обращения: 05.05.2022).
2. Леднева О.В. Статистическое изучение уровня цифровизации эконо¬мики России: проблемы и перспективы // Вопросы инновационной эко¬номики. - 2021. - Том 11. - № 2. - С. 455-470. - doi: 10.18334/vinec.11.2.111963.
3. Система управления ИТ-проектами ТПУ [Электронный ресурс]. URL: https://pm.tpu.ru/(Дата обращения: 05.05.2022).
4. Выступление Фадеева А.С. на пленарной сессии "Взаимодействие ву¬зов и обогащение технических решений" [Электронный ресурс]. URL: https://www.youtube.com/watch?v=SBJ7FYcAaVc&t=5429s(Дата обра¬щения: 01.06.2022).
5. С Востока на Запад: как распространяется тренд на супераппы [Элек-тронный ресурс]. URL: https://handh.ru/post/superapp_trend(Дата обра¬щения: 05.05.2021).
6. DIGITAL 2021: THE RUSSIAN FEDERATION [Электронный ресурс]. URL: https:// datareportal. com/reports/ digital-2021 -russian-federation (дата обращения: 20.12.2021).
7. Мобильный трафик: российский рынок [Электронный ресурс]. URL: https://www.tadviser.ru/index.php/Статья:Мобильный_трафик_(россий- ский_рынок)) (дата обращения: 20.12.2021).
8. Flutter vs React Native vs Native: Deep Performance Comparison [Электронный ресурс]. URL: https://medium.com/swlh/flutter-vs-react- native-vs-native-deep-performance-comparison-990b90c11433(дата обра¬щения: 12.12.2020).
9. Google Maps [Электронный ресурс]. URL: https://www.google.ru/maps(Дата обращения: 01.02.2022).
10. Яндекс.Карты [Электронный ресурс]. URL: https://yandex.ru/maps(Дата обращения: 01.02.2022).
11. Open Street Maps [Электронный ресурс]. URL: https://www.openstreetmap.org/(Дата обращения: 05.02.2022).
12. Монгуш А. В., Кикин П. М. Обзор технологий indoor-навигации // Ин-терэкспо Гео-Сибирь. - 2017. - Т. 9. - №. 1.
13. Simoes W. C. S. S. et al. A Review of Technologies and Techniques for Indoor Navigation Systems for the Visually Impaired // Sensors. - 2020. - Т. 20. - №. 14. - С. 3935.
14. Создание архитектуры программы или как проектировать табуретку [Электронный ресурс]. URL: https://habr.com/ru/post/276593/(Дата обращения: 12.05.2022).
15. Сравнение микросервисной и монолитной архитектур [Электронный ресурс]. URL: https://www.atlassian.com/ru/microservices/microservices- architecture/microservices-vs-monolith(Дата обращения: 13.05.2022).
16. Монолитная архитектура. Традиционный метод разработки приложений [Электронный ресурс]. URL:
https://codernet.ru/articles/drugoe/monolitnaya_arxitektura_tradiczionnyij_ metod_razrabotki_prilozhenij/ (Дата обращения: 13.05.2022).
17. Построение модульной архитектуры приложения на Forwarding- декораторах (авторский перевод) [Электронный ресурс]. URL: https://habr.com/ru/post/328970/(Дата обращения: 13.05.2022).
18. Модульная архитектура в JavaScript [Электронный ресурс]. URL: https://sohabr.net/habr/post/253258/(Дата обращения: 15.05.2022).
19. Микросервисная архитектура: что это, кому подойдёт, с чего начать
[Электронны ресурс]. URL:
https://cloud.yandex.ru/blog/posts/2022/03/microservice-architecture(Дата обращения: 15.05.2022).
20. Microservices [Электронный ресурс]. URL: https://martinfowler.com/articles/microservices.html(Дата обращения: 15.05.2022).
21. Языки программирования для создания сайтов [Электронный ресурс].
URL: https://studiobit.ru/blog/sozdanie-web-saytov/yazyki-
programmirovaniya-dlya-sozdaniya-saytov (Дата обращения: 05.04.2022).
22. Разработка веб сайтов [Электронный ресурс]. URL:
https://brander.ua/ru/technologies/nestjs(Дата обращения: 23.04.2022).
23. PostgreSQL - объектно-реляционная система управления базами дан¬ных [Электронный ресурс]. URL: https://web-creator.ru/articles/post- gresql(Дата обращения: 13.04.2022).
24. Введение в MongoDB [Электронный ресурс]. URL: https://me- tanit.com/nosql/mongodb/1.1.php(Дата обращения: 17.04.2022).
25. Swagger: что это такое и как с ним работать? [Электронный ресурс]. URL: https://highload.today/swagger-api/(Дата обращения: 27.05.2022).
26. Изучаем Docker, часть 2: термины и концепции [Электронный ресурс].
URL: https://habr.com/ru/company/ruvds/blog/439978/(Дата обращения: 02.05.2022).
27. Что такое Docker и как его использовать в разработке [Электронный ресурс]. URL: https://eternalhost.net/blog/razrabotka/chto-takoe-docker(Дата обращения: 24.05.2022).
28. Kubernetes или с чего начать, чтобы понять что это и зачем он нужен
[Электронный ресурс]. URL: https://habr.com/ru/com-
pany/otus/blog/537162/ (Дата обращения: 24.05.2022).
29. Kong [Электронный ресурс]. URL: https://konghq.com/kong(Дата обра¬щения: 13.04.2022).
30. Grafana как еще один инструмент для технического мониторинга созда-ваемых нами программных продуктов [Электронный ресурс]. URL: https://habr.com/ru/company/southbridge/blog/431122/(Дата обращения: 19.04.2022).
31. Парсинг логов при помощи Fluent-bit [Электронный ресурс]. URL: https://habr.com/ru/post/548998/(Дата обращения: 27.04.2022).
32. Redis [Электронный ресурс]. URL: https://aws.amazon.com/ru/redis/(Дата обращения: 27.03.2022).
33. RabbitMQ. Часть 1. Introduction. Erlang, AMQP [Электронный ресурс]. URL: https://habr.com/ru/post/488654/(Дата обращения: 15.04.2022).
34. Все крупные облачные провайдеры США отказались от бизнеса в Рос¬сии [Электронный ресурс]. URL: https://www.secu-
ritylab.ru/news/530555.php (Дата обращения: 15.04.2022).
35. Навигация в помещениях с iBeacon и ИНС [Электронный ресурс]. URL: https://habr.com/ru/post/245325/(дата обращения: 08.03.2021).
36. Kwok C. Y. T. et al. Performance Evaluation of iBeacon Deployment for Location-Based Services in Physical Learning Spaces // Applied Sciences. - 2020. - Т. 10. - №. 20. - С. 7126.
37. Satan A. Bluetooth-based indoor navigation mobile system // 2018 19th in-ternational carpathian control conference (ICCC). - IEEE, 2018. - С. 332¬337.
38. Roienko A. et al. Data Processing Methods for Mobile Indoor Navigation // 2018 IEEE Second International Conference on Data Stream Mining & Pro¬cessing (DSMP). - IEEE, 2018. - С. 236-240.
39. Простыми словами о фильтре частиц [Электронный ресурс]. URL: https://habr.com/ru/post/276801/(дата обращения: 08.03.2021).
40. Eddystone и Physical Web: эволюция биконов [Электронный ресурс]. URL L: https://habr.com/ru/post/274585/(дата обращения: 08.03.2021).
41. iBeacon [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/IBeacon(дата обращения: 01.06.2021).
42. Профессиональная контейнеризация Nodejs-приложений с помощью Docker [Электронный ресурс]. URL: https://habr.com/ru/company/ruvds/blog/440656/(Дата обращения: 01.06.2022).
43. Kompose [Электронный ресурс]. URL: https://github.com/kubernetes/kompose(Дата обращения: 01.05.2022).
44. Учимся разворачивать микросервисы. Часть 2. Kubernetes [Электрон¬ный ресурс]. URL: https://habr.com/ru/post/488796/(Дата обращения: 01.04.2022).
45. Облачные API Gateway: зачем нужны подобные сервисы и чем они от-личаются у разных платформ [Электронный ресурс]. URL: https://habr.com/ru/post/557004/(Дата обращения: 01.04.2022).
46. Суперапп или суперсервис [Электронный ресурс]. URL:
https://vc.ru/services/290533-superapp-ili-superservis-chem-otlichayutsya- i-chto-vybrat-dlya-biznesa(дата обращения: 20.12.2021).
47. Что такое супераппы и почему их создают крупнейшие компании Рос¬сии и мира [Электронный ресурс]. URL: https://handh.ru/post/superapp(дата обращения: 20.12.2021).
48. The Hitchhikers Guide to iBeacon Hardware: A Comprehensive Report by Aislelabs [Электронный ресурс]. URL: https://www.aislelabs.com/re- ports/beacon-guide/(дата обращения: 08.03.2021).
49. Kriz P., Maly F., Kozel T. Improving indoor localization using bluetooth low energy beacons // Mobile Information Systems. - 2016. - Т. 2016.
50. Wi-Fi или iBeacon? [Электронный ресурс]. URL:
https://habr.com/ru/company/cisco/blog/337130/(дата обращения: 08.03.2021).


Работу высылаем на протяжении 30 минут после оплаты.




©2026 Cервис помощи студентам в выполнении работ