В ходе работы был проведён анализ предметной области туристических онлайн-сервисов, включая обзор существующих систем бронирования гостиниц. На основе данного анализа были сформулированы требования к разрабатываемому приложению. Для реализации проекта были выбраны современный архитектурный паттерн MVVM и облачная платформа Google Firebase, а также реализована интеграция с платёжным сервисом ZaloPay для обеспечения онлайн-оплаты. Кроме того, была спроектирована и подробно описана архитектура приложения.
В результате проделанной работы разработано мобильное Android-приложение для онлайн-бронирования гостиниц и хостелов, реализующее основные функции: регистрацию и авторизацию пользователей, поиск и фильтрацию гостиниц по различным критериям, просмотр подробной информации о номерах, оформление бронирования с возможностью онлайн-оплаты, а также административные функции по управлению бронированиями, услугами и персоналом. Приложение построено с использованием паттерна MVVM и облачных сервисов Firebase, что обеспечивает надёжное хранение данных и мгновенную синхронизацию информации, а интеграция SDK ZaloPay позволяет безопасно обрабатывать платежные транзакции. Корректность работы и удобство использования приложения подтверждены тестированием на реальном устройстве.
ВВЕДЕНИЕ ............................................................................. 8
ГЛАВА 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ ....................................... 10
1.1. Актуальность и проблема ..................................................................................................... 10
1.2. Обоснование необходимости разработки .............................................. 10
1.3. Обзор аналогичных решений ................................................. 11
1.4. Целевая аудитория ....................................... 12
1.5. Выбор языка программирования и инструментов разработки ......... 12
1.6. Архитектурный паттерн MVVM для Android-приложения ................. 14
ГЛАВА 2. ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ ............................................................................... 18
2.1. Retrofit (REST API) ..................................................................................................................... 18
2.2. Glide (загрузка изображений) .......................................................... 19
2.3. ViewModel и LiveData .............................................................. 19
2.4. Firebase Realtime Database..................................................................... 20
2.5. Firebase Authentication ......................................... 21
2.6. Firebase Cloud Messaging............................................ 22
2.7. ZaloPay SDK (онлайн-платежи) ............................................................ 23
2.8. SharedPreferences (локальное хранилище) ........................................... 24
2.9. LanguageManager (динамическое переключение языка) ....... 25
ГЛАВА 3. ТЕХНОЛОГИЧЕСКОЕ РЕШЕНИЕ ................................................................................... 28
3.1 Регистрация ....................................................................... 28
3.2 Вход в систему (Авторизация) ....................................................................... 30
3.3 Восстановление пароля ...................................................................... 32
3.4 Обновление профиля пользователя ....................................................... 35
3.5 Просмотр списка гостиниц ................................................ 37
3.6 Просмотр деталей гостиницы ......................................................................... 39
3.7 Добавление гостиницы в избранное ............................................................ 41
3.8 Бронирование номера .................................................................................... 43
3.9 Просмотр истории бронирований ............................................................ 45
3.10 Управление бронированиями (для сотрудников) ................................. 47
3.11 Управление услугами (добавление, обновление, удаление) .................... 50
3.12 Управление оплатами .......................................................................... 52
3.13 Создание отчётов и чеков ....................................................................... 55
3.14 Просмотр отчётов (администратор) ................... 59
3.15 Управление персоналом (добавление, обновление, удаление сотрудников) ......... 61
3.16 Диаграмма классов приложения ............................................................. 63
3.17 Диаграмма вариантов использования приложения для бронирования отелей ..... 66
3.18 Диаграмма архитектуры системы .............................................................. 69
3.19 Технологическая реализация: архитектура и взаимодействие компонентов ........ 71
ГЛАВА 4. РЕЗУЛЬТАТЫ И ПРОВЕРКА РАБОТОСПОСОБНОСТИ СИСТЕМЫ .......................... 74
4.1 Описание сценариев тестирования .................................................................. 74
4.2 Иллюстрации результатов работы приложения ................................................ 77
ЗАКЛЮЧЕНИЕ ....................................................................................... 85
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ....................................................................... 87
[1] Android Developers – официальная документация по разработке Android-
приложений. [Электронный ресурс]. – URL:
[2] Firebase – облачная платформа от Google. [Электронный ресурс]. – URL:
[3] Glide – библиотека для загрузки изображений. [Электронный ресурс]. – URL:
[4] Retrofit – HTTP-клиент для Android от Square. [Электронный ресурс]. – URL:
[5] Google Material Design – руководство по проектированию интерфейсов. [Электронный ресурс].
10.04.2025).
[6] PlantUML – инструмент для создания UML-диаграмм. [Электронный ресурс]. – URL: [7] ZaloPay Developers – документация SDK платёжной системы ZaloPay. [Электронный ресурс]. – URL:
[8] Firebase Blog – блог платформы Firebase с примерами. [Электронный ресурс]. – URL:
[9] GeeksforGeeks – статьи по Android-разработке. [Электронный ресурс]. – URL:
[10] Medium – публикации разработчиков о мобильной архитектуре. [Электронный ресурс]. – URL: