Актуальность данной работы заключается в том, что на сегодняшний день не существует автоматизированной информационной системы, которая бы собирала данные о ценах как с малых интернет-магазинов, так и с крупных российских и международных ритейлеров, а также предоставляла возможность отслеживания интересующего пользователя товара и получения уведомления об изменении цены в мессенджер Telegram. Полная автоматизация процесса получения цены каждого товара позволит обеспечить высокую актуальность данных и своевременно оповестить пользователя о выгодном для него предложении. В процессе консультации с научным руководителем была поставлена цель и выделены задачи. Была налажена регулярная коммуникация с научным руководителем для уточнения вопросов и консультаций. Из-за текущей эпидемиологической ситуации все консультации проводились в удаленном формате.
Целью ВКР является создание автоматизированной информационной системы для анализа и мониторинга цен интернет-магазинов.
Задачи выпускной квалификационной работы:
1. Провести анализ предметной области;
2. Провести обзор существующих аналогов;
3. Составить техническое задание к функциональной части и интерфейсу;
4. Описать программные средства реализации информационной системы;
5. Спроектировать базу данных и пользовательский интерфейс;
6. Разработать серверную часть;
7. Протестировать информационную систему и отладить ее. Выпускная квалификационная работа состоит из 4-ех глав, введения,
заключения, списка использованной источников и приложений. В работе описан весь процесс проектирования, конструирования и разработки системы, представлены скриншоты страниц веб-приложения, описания классов, репозиториев и контроллеров, а также вставлены наиболее важные части кода приложения.
Аннотация........................................................................................................ 3
Введение........................................................................................................... 5
1. Исследование предметной области анализа и мониторинга цен интернет- магазинов и описание средств разработки.......................................................................... 8
1.1. Анализ предметной области..................................................................... 8
1.2. Обзор сервиса «Яндекс.Маркет»............................................................. 9
1.3. Обзор ресурса «Pepper.ru».................................................................... 13
1.4. Описание программных средств реализации........................................ 14
2. Проектирование многопользовательского веб-приложения................... 16
2.1. Составление технического задания........................................................ 16
2.2. Проектирование базы данных и пользовательского интерфейса......... 18
3. Разработка многопользовательского веб-приложения............................ 21
3.1. Реализация серверной части веб-приложения....................................... 21
3.2. Реализация пользовательской части информационной системы.......... 31
3.3. Разработка модулей для автоматизированного мониторинга цен....... 45
4. Тестирование многопользовательского веб-приложения........................ 49
4.1. Тестирование пользовательского интерфейса веб-приложения........... 49
4.2. Тестирование функциональной части веб-приложения........................ 51
Заключение.................................................................................................... 53
Список использованных источников............................................................ 57
Приложения
1. Автостопом по Python [Текст]: учебное пособие / Рейтц Кеннет, Шлюссер Таня - СПб.: Питер, 2017. - 336 с.
2. Алгоритмы и структуры данных. Извлечение информации на языке Java [Текст]: учебное пособие / А.Б. Дауни [и др.]. - 2-е изд., перераб. и доп. - СПб.: Питер, 2018. - 240 с.
3. Современные Java-технологии на практике [Текст]: учебное пособие
/ М.Т. Сергеевич - СПб.: БХВ-Петербург, 2010. - 560 с.
4. Java Persistence API и Hibernate [Текст]: учебное пособие / Кристиан Бауэр, Гэвин Кинг, Гэри Грегори / пер. с англ. Д.А. Зинкевича; под науч. ред. А.Н. Киселева - М.: ДМК Пресс, 2017. - 632 с.
5. Spring 5 для профессионалов [Текст]: учебное пособие / Кларенс Хо, Крис Шефер, Юлиана Козмина, Роб Харроп / пер. с англ. - СПб.: ООО
«Диалектика», 2019. - 1120 с.
6. Spring Boot 2: лучшие практики для профессионалов [Текст]: учебное пособие / Гутьеррес Фелипе - СПб.: Питер, 2020. - 464 с.
7. Spring. Все паттерны проектирования [Текст]: учебное пособие / Раджпут Динеш - СПб.: Питер, 2019. - 320 с.
8. Vue.js в действии [Текст]: учебное пособие / Хэнчетт Эрик, Листуон Бенджамин - СПб.: Питер, 2020. - 304 с.
9. Быстрый старт — Vuetify.js [Электронный ресурс]. – Режим доступа: https://v2.vuetifyjs.com/ru/getting-started/quick-start/. Дата обращения: 10.02.2021.
10. Знакомство с TestComplete 8 [Электронный ресурс]. – Режим доступа: http://www.interface.ru/home.asp?artId=26912. Дата обращения: 08.04.2021.
11. Краткое руководство по библиотеке Python Requests [Электронный ресурс]. – Режим доступа: https://pythonru.com/biblioteki/kratkoe-rukovodstvo- po-biblioteke-python-requests. Дата обращения: 27.03.2021.
12. Программная навигация [Электронный ресурс]. – Режим доступа: https://router.vuejs.org/ru/guide/essentials/navigation.html. Дата обращения: 15.02.2021.
13. Руководство по Spring (полная версия) [Электронный ресурс]. – Режим доступа: https://proselyte.net/tutorials/spring-tutorial-full-version/. Дата обращения: 25.01.2021.
14. Getting Started — BootstrapVue [Электронный ресурс]. – Режим доступа: https://bootstrap-vue.org/docs/. Дата обращения: 15.02.2021.
15. Lingallery [Электронный ресурс]. – Режим доступа: https://www.npmjs.com/package/lingallery. Дата обращения: 04.03.2021.
16. Maven Guide [Электронный ресурс]. – Режим доступа: http://maven.apache.org/guides/getting-started/index.html. Дата обращения: 02.02.2021.
17. Pykson: A JSON Serializer/Deserializer for Python [Электронный ресурс]. – Режим доступа: https://pypi.org/project/pykson/. Дата обращения: 03.04.2021.
18. Spring MVC — основные принципы [Электронный ресурс]. – Режим доступа: https://habr.com/ru/post/336816/. Дата обращения: 07.02.2021.
19. Spring MVC и Spring Security. Пример настройки страницы логина, настройка ролей [Электронный ресурс]. – Режим доступа: https://javastudy.ru/spring-mvc/security. Дата обращения: 14.02.2021.
20. Spring Security [Электронный ресурс]. – Режим доступа: https://docs.spring.io/spring-security/site/docs/3.0.x/reference/springsecurity.html. Дата обращения: 10.02.2021.
21. Vue Sidebar Menu [Электронный ресурс]. – Режим доступа: https://www.npmjs.com/package/vue-sidebar-menu. Дата обращения: 19.02.2021.
22. Vue Trend Chart [Электронный ресурс]. – Режим доступа: https://github.com/dmtrbrl/vue-trend-chart. Дата обращения: 17.03.2021.