xRouten — рефакторинг приложения навигации: кейс

Заказчик — сервис навигации и планирования маршрутов для бизнеса. Задача — масштабный рефакторинг нестабильного Android-приложения навигации xRouten и расширение поддержки iOS.

Задача

Провести масштабный рефакторинг и доработку существующего Android-приложения, которое страдало от низкой производительности, ошибок и критических багов. Основная цель — стабилизировать работу приложения, исправить логику и ключевые функции, чтобы остановить отток пользователей и вернуть доверие к продукту

21231111

Особенности проекта

  • Работа с Legacy-кодом: Проект требовал работы с уже существующим, но нестабильным продуктом, а не создания с нуля.
  • Высокие ставки: Ошибки в приложении напрямую влияли на бизнес-процессы клиентов (срыв доставок, финансовые потери), что требовало безошибочного исправления.
  • Языковой и географический барьер: Интерфейс и документация были на немецком языке, а тестирование навигационного функционала требовало работы с картами Германии из России.
Techs_ZipIt

Технологический стек

Kotlin

Решения

Были существенно доработаны следующие ключевые функции:

Высокоскоростное построение маршрутов

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

xr1

Функция отслеживания водителей на карте

Четкое и плавное отображение местоположения всех сотрудников в режиме реального времени.

xr2

Модуль цифровой документации

Интеграция функции быстрого формирования и отправки счетов клиенту прямо из приложения.

xr3

Результат сегодня

  • Готовый к публикации продукт: Приложения для iOS и Android полностью готовы и проходят финальные процедуры перед размещением в App Store и Google Play.
  • Стабильная работа: Критические ошибки предыдущей версии устранены, что гарантирует бесперебойную работу для пользователей.
  • Удобный и современный интерфейс: Проведенный редизайн значительно улучшил пользовательский опыт и восприятие бренда.
  • Надежная монетизация: Внедрение работающей платежной системы обеспечивает бесперебойное проведение транзакций и повышает конверсию в покупки.
  • Платформа для роста: Созданная структура позволяет легко интегрировать новый функционал для дальнейшего развития сервиса.

В цифрах

  • Глубокий рефакторинг legacy-кода на Kotlin: стабилизация без полного переписывания с нуля.
  • Устранены критические ошибки и нестабильность, которая вызывала срывы доставок и потери клиентов.
  • Высокоскоростное построение маршрута между десятками точек без зависаний.
  • Отслеживание водителей на карте в реальном времени.
  • Модуль цифровой документации: счета прямо из приложения.
  • iOS и Android готовы к публикации в App Store и Google Play.

Почему рефакторинг, а не с нуля

Переписывание с нуля означает потерю накопленной бизнес-логики, дополнительные риски и отсрочку ввода для пользователей. Рефакторинг сохраняет работающие элементы, устраняет причины нестабильности и даёт продукт второе дыхание без полной остановки сервиса.

Клиентская часть переведена на Kotlin — официальный язык Android: полный доступ к API карт, фоновым сервисам и GPS без ограничений. Рассматривались альтернативы: React Native (быстрее старт, но хуже UX карты и ограниченный доступ к GPS API) и Flutter (близок по возможностям, но отдельная цепочка сборки). Выбор нативного Kotlin обусловлен требованиями к UX навигации и трекинга в реальном времени.

Архитектура и персональные данные

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

Соответствие: 152-ФЗ, оператор ПДн в реестре РКН, ИСО 27001 (внедрение), локализация персональных данных. Реестр операторов: pd.rkn.gov.ru.

Часто задаваемые вопросы

Сколько стоит рефакторинг мобильного приложения?

Стоимость зависит от глубины проблем в legacy-коде, объёма покрытия тестами и набора нужных функций. Точную оценку даём после анализа кодовой базы.

Чем рефакторинг отличается от разработки с нуля?

Рефакторинг сохраняет работающие элементы продукта и накопленную бизнес-логику. Разработка с нуля обычно занимает больше времени и требует заново согласовывать все функции с заказчиком. Рефакторинг значительно быстрее и дешевле, если ядро продукта работает.

Как ускоряется расчёт маршрута через десятки точек?

Оптимизированный алгоритм обрабатывает граф маршрута в памяти и минимизирует запросы к внешнему API при пересчёте. Результат — быстрый ответ даже на десятках точек без зависаний интерфейса.

Как защищаются ПДн водителей и что требует 152-ФЗ?

ПДн водителей (геолокация, маршруты, контакты) хранятся на серверах заказчика в пределах РФ. Передаём шаблоны документов: политику обработки ПДн, уведомление регулятора и приказ об ответственном. Реестр операторов: pd.rkn.gov.ru.

Сколько времени занимает такой рефакторинг?

Сроки зависят от объёма проблем, покрытия тестами и набора новых функций. Типичный диапазон для рефакторинга Android-приложения средней сложности — 10–16 недель (отраслевой диапазон, не гарантия). Точные сроки фиксируем после аудита кодовой базы.

Нужно доработать приложение — обсудим

Команда YuSMP Group разрабатывает и рефакторит мобильные приложения для логистики, доставок и навигации: нативный Android и iOS, рефакторинг legacy. Работаем по Москве, Новосибирску и другим городам. Опишите задачу — мобильная разработка или оставьте заявку на проект.

Наши услуги

image 63

Создание сайтов и других веб-продуктов для успешного ведения бизнеса

image 64

Полноценная web-разработка – актуальная необходимость для современной компании

image 65

Профессионально создаём мобильные приложения. iOS, Android, кроссплатформенная разработка

Мы найдем лучшее решение вашей задачи

    Отправляя заявку, вы соглашаетесь на обработку персональных данных.