# 

## Контекст проекта

Мобильное приложение для компании такого масштаба — это не просто удобный сервис, а ключевой цифровой канал: запись на тренировки, управление абонементом, коммуникация с клиентом. Если он работает ненадежно, это отражается и на лояльности пользователей, и на репутации бренда.
К моменту обращения World Class в Morizo мобильное приложение спортивного клуба нуждалось в технической доработке. При смене подрядчика часть инфраструктуры не была передана, поэтому команде Morizo предстояло оперативно восстановить контекст данных и перезапустить продукт, сохранив доступность сервиса для сотен тысяч пользователей.

## Проблемы, с которыми обратился клиент

Нерегулярные релизы и срывы сроков. Бизнес не мог планировать маркетинговые коммуникации или запуск новых функций.

Отсутствие безопасного тестового контура. Все проверки и изменения интегрировались в ту же версию, которой пользовались клиенты — постоянные сбои, низкие оценки в сторах были неизбежным следствием.

Потеря инфраструктуры при смене подрядчика. Предыдущая команда  не передала конфигурации и историю изменений по проекту. Командам World Class и Morizo пришлось разбираться с системой с нуля.

Хаос в процессах. Задачи не имели понятных статусов и критериев готовности, зоны ответственности были размыты.

80% технического долга. Монолитная архитектура не давала развивать продукт: новые идеи либо не доходили до реализации, либо внедрялись частично и некорректно.

## Совместно с командой World Class специалисты Morizo сформулировали пять ключевых целей проекта:

- **Регулярные и прогнозируемые релизы, чтобы бизнес мог планировать обновления и анонсировать их.**
- **Отдельный тестовый контур: безопасная среда, где эксперименты не влияют на пользователей.**
- **Повышение качества: снижение крашрейта и минимизация инцидентов после обновлений.**
- **Архитектура для роста: продукт, готовый к масштабированию и быстрому выводу новых функций.**
- **UX, удобный для клиента: простые и понятные сценарии взаимодействия с клубом прямо с экрана смартфона.**

## Решения

## Первоочередные задачи

- **QA-контур с нуля за две недели.** - Выстроили отдельную среду для тестирования, эксперименты полностью изолировались от пользовательского приложения. Это сразу убрало постоянный источник сбоев.
- **Прозрачные процессы и предсказуемые релизы.** - Совместно с командой World Class выстроили регулярные синхронизации и единые правила работы с задачами. Релизы стали выходить раз в две недели, так бизнес получил возможность планировать заранее.

## CI/CD и прозрачность изменений

Раньше при ошибке было практически невозможно понять, какое именно изменение её вызвало. Команда настроила полноценную систему визуализации истории задач: теперь путь от инцидента к конкретному изменению в коде и задаче в трекере стал коротким и очевидным.
Репозиторий перенесли в контур заказчика: прозрачность и управляемость остались у клиента, а не в «чёрном ящике подрядчика». Это сократило стоимость ошибок и ускорило диагностику.

## Единые правила работы над задачами

Опираясь на предложения заказчика, команда проекта внедрила внутреннюю статусную модель работы с задачами: чёткие правила движения по этапам с назначенными ответственными и критериями переходов. Процесс разработки, тестирования и подготовки релиза стал прозрачным для всех участников.
Для бизнеса это означало главное: видно, что именно входит в релиз, на какой стадии каждая задача и где возникают риски.

### Единые правила работы над задачами

## Версионирование API: безопасное развитие без «поломок» у не обновившихся клиентов

- **Мобильная специфика такова: значительная часть пользователей не обновляет приложение сразу.** - Без версионирования API любое изменение на сервере могло «сломать» старый клиент.
- **Morizo внедрила API-версионирование и согласовал с командой World Class правила его развития.**

## Новые функции теперь живут в новых версиях API, старые клиенты продолжают работать стабильно до момента, когда пользователь сам обновится.

### Количество «необъяснимых» жалоб после релизов снизилось на 85%. Тот же принцип применили к модулю оплаты: доработали обработку платежей, логику задолженностей и историю транзакций — клиент в любой момент видит, за что и сколько он платит.

## От монолита к 50 модулям: архитектура, которую можно масштабировать

Чтобы продукт мог расти без эффекта домино, совместно с командой World Class была разработана модульная архитектура. Один большой монолитный блок последовательно делился на 5-7 меньших — каждый отвечал за свой сценарий и развивался независимо.
В итоге приложение пришло к структуре примерно из 50 модулей. Изменения в одном сценарии перестали «случайно» ломать соседние. Параллельно провели рефакторинг legacy-кода и оптимизировали загрузку главного экрана, профиля и экрана с абонементами — там, где пользователь взаимодействует с сервисом чаще всего. Дополнительно уменьшили размер приложения и решили проблему его неконтролируемого роста в процессе эксплуатации.

## UX-перезапуск

Запись на тренировки вынесли прямо на главный экран, QR-код для входа в клуб перенесли на сплэш-скрин. Добавили новые информеры: актуальные данные о доступных слотах, тренерах и изменениях в расписании теперь появляются мгновенно.
Переработали механику записи на групповые занятия: вместо «молчаливого» отказа — чёткая информация и альтернативные варианты. 
В результате,  количество обращений в поддержку по этому сценарию снизилось на 32%.

### Команда провела редизайн главного экрана и переработала карточки описания сервисов, чтобы пользователь добирался до нужного действия за минимум шагов.

## Новые функции: замеры, гостевые визиты, подарочные карты

Флагманской функцией стали «Замеры» — технологически самая сложная из реализованных. Интеграция заняла около месяца: пользователь генерирует код в приложении, в зале проводится измерение, и результаты — доля жира, воды, мышечной массы и другие параметры — автоматически связываются с аккаунтом и отображаются в виде интерактивных графиков и визуализации динамики.

## Кроме того, команда реализовала важные для маркетинга функции

- гостевые визиты — теперь привести друга в клуб можно в несколько кликов;
  - подарочные карты с механикой передачи другому пользователю и промокодами;
  - продление абонемента прямо в приложении с отображением персональных скидок;
  - переработанный модуль оплаты с поддержкой частичных платежей и оплаты за связанные аккаунты (например, семейные).

## Результаты

Для бизнеса
Приложение стало надёжным цифровым каналом сети: привлекает новых клиентов, удерживает существующих и поддерживает коммуникацию с ними. Регулярный релизный цикл позволяет планировать маркетинговые активности заранее, а модульная архитектура даёт возможность быстро запускать новые сценарии под любые задачи бизнеса.  API-версионирование обеспечило безопасное развитие без «массовых поломок» у пользователей, которые не обновились сразу. Новые функции — гостевые визиты и подарочные карты, усилили роль приложения как инструмента монетизации и удержания. 
Для пользователей
Клиенты получили стабильный и предсказуемый цифровой сервис премиального уровня. Базовые задачи — запись на тренировку, вход в клуб, продление абонемента — решаются за пару кликов вместо похода на ресепшен. Функция «Замеры» превратила приложение в инструмент контроля тренировочного процесса: пользователь видит свои показатели и динамику изменений — это повышает вовлечённость и лояльность к клубу.

## Почему этот проект особенный

Главный вызов состоял не в том, чтобы написать приложение с нуля, а в том, чтобы перезапустить его «на ходу». Клиенты World Class продолжали пользоваться сервисом, пока команда Morizo и World Class в параллельном режиме выстраивала контуры, процессы и поставку. Не было ни технического «стоп-сигнала», ни возможности начать с чистого листа.
Сложные клубные процессы были трансформированы в цифровой сервис премиум-уровня, включая интеграцию с измерительным оборудованием и понятную визуализацию результатов.

