RideTaxi: как создать мощное приложение для службы такси с нуля

Василий
Василий
IT Sales Manager
29.11.2024
536
0

Классические службы такси давно переживают непростые времена, ведь вынуждены конкурировать с новыми сервисами каршеринга и райдхеллинга типа Uber. У бизнеса, который хочет сохранить свое место на рынке, есть только один путь – самому превратиться в “Убер”. Современная служба такси не просто нуждается в удобном онлайн-сервисе: ей нужна глубокая автоматизация процессов и мощные возможности аналитики для конкуренции с сервисами нового поколения.

Давайте обсудим Ваш проект
Заполните личные данные.
Phone
Нажимая на кнопку “Отправить”, вы даете согласие на обработку личных данных. Подробнее

Создание комплексной системы приложений для такой службы – задача не из легких, но она сулит огромные преимущества как пассажирам, так и оператору перевозок. Мы знаем это из собственного опыта, поскольку реализовали платформу RideTaxi для одного из наших клиентов. В этом материале мы расскажем о функционале, преимуществах и тонкостях такой разработки. Наши выводы будут полезны для всех, кто интересуется развитием IT-индустрии, инновациями в транспорте и созданием приложений, меняющих нашу повседневную жизнь.

Проблема клиента 

Начать стоит с того, что нейминг RideTaxi  – вымышленный, ведь бренд нашего клиента защищен NDA. Но, по сути, к нам обратился крупный оператор перевозок такси, который столкнулся с острой конкуренцией, навязанной новейшими сервисами райдхеллинга: Uber и подобными. Это заставило компанию существенно пересмотреть и ускорить свои планы диджитализации. 

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

В целом клиент нуждался в диджитал-решении для решения ряда задач:

  • Автоматизация метчинга и роутинга заказов с помощью гибких алгоритмов;

  • Снижение нагрузки на диспетчерскую службу, сокращение расходов на колл-центр и телефонию;

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

  • Минимизация рисков человеческого фактора и конфликтов благодаря системе отзывов и рейтингов водителей/пассажиров;

  • Построение для водителей и менеджеров компании удобной онлайн-экосистемы для расчетов и коммуникации. В частности, чтобы водители всегда могли видеть свой текущий уровень заработка;

  • Оптимизация использования автопарка и рабочего времени водителей с помощью алгоритмов построения маршрутов и формирования цепочек заказов; 

  • Эффективный сбор статистики каждого водителя и налаживание сквозной аналитики для мониторинга общей производительности компании и формирования данных для оптимизации процессов.

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

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

Задачи разработки

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

  • Построение системы управления для службы такси;

  • Разработка мобильных приложений для пассажиров и водителей;

  • Реализация административной панели для администраторов системы;

  • Настройка интеграции в систему внешних продуктов и сервисов.

Для решения этих комплексных задач разработчики сформировали достаточно широкий стек технологий.

  • Основой для бэкенда выступили среда разработки Node.js и фреймворк Spring, который базируется на Java EE; 

  • База данных в системе реализована с помощью PostgreSQL;

  • Для реализации админпанели на фронтенде были выбраны библиотеки ReactJS и Ant.Design;

  • Мобильные приложения команда решила писать нативно, на Kotlin (под Android), и на Swift (под iOS);

  • Базой для сетевой инфраструктуры системы стали облачные решения Amazon Web Services (AWS);

  • Система также получила несколько важных интеграций: Google Maps и OpenStreetMaps – для картографии, WayforPay – для онлайн-платежей и еще ряд сервисов.

Как мы построили разработку

Цикл создания системы для службы такси ничем не отличается от разработки любых других IT-решений. Когда речь идет о кастомной разработке системы с нуля, все так или иначе начинается с предварительных обсуждений и исследований, и в идеале завершается успешным релизом и последующей многолетней поддержкой системы. Разберем основные этапы разработки RideTaxi.

Предварительная аналитика и планирование

На старте проекта команда должна четко сформулировать концепцию продукта, то есть, понять, что и для кого она разрабатывает. В кейсе RideTaxi специалисты WEZOM подробно изучали не только запрос клиента, но и рыночную нишу, в которой он работает, разбирали решения конкурентов, целевую аудиторию и т.д. Это позволило определить для нового приложения эффективное предложение и позиционирование на рынке, сформировать дорожную карту проекта и перейти к следующим этапам. 

Окончательное согласование состава решения продукта, с которым оно было запланировано до запуска, было обосновано перед заказчиком с использованием методологии RICE. Она учитывает охват пользователей, влияние на достижение целевых показателей и конверсий, обоснование необходимой реализации и необходимые для нее затраты. К примеру, функцию оплаты поездок криптовалютой команда разработки определила нецелесообразной для первого релиза. Эту идею отложили на будущее. В то же время, ночной режим экрана для водителя – наоборот, был внесен в приоритетный функционал. Методы RICE позволили составить для продукта перечень действительно востребованных функций, обеспечивших проекту понятный ROI.

Проектирование

Следующий шаг заключался в том, чтобы продумать технические и практические аспекты воплощения концепции в жизнь. Команда в интерактивном формате разработала интерфейсы управления для мобильных приложений и админпанели, чтобы обеспечить удобный и понятный функционал конечным пользователям – заказчикам такси. Главная цель создаваемых решений заключалась в том, чтобы пользователь мог заказать машину за три клика в смартфоне. 

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

Работа над алгоритмами

На этом этапе команда начала глубоко прорабатывать ключевой функционал продукта, такой как алгоритмы прибыльности. В качестве наиболее интересных можем отметить следующие: 

  • Просчет в смене водителя доли времени, посвященного непосредственно перевозке пассажиров. Это так называемое время "чистого" заработка. Когда водитель ждет заказа, едет к клиенту или ожидает его, его рабочее время тратится неэффективно. Задача платформы заключалась в том, чтобы минимизировать простой;

  • Просчет показателя заработка водителя за час смены. Этот показатель важнее "среднего чека" перевозчика. Ведь в определенный момент система может предложить водителю дешевый заказ, но с его помощью он попадет в зону высокого спроса, где следующий заказ уже будет дорогим;

  • Формирование "цепочки заказов", которое не позволяет машинам простаивать. Платформа должна была искать для водителя следующий релевантный заказ уже в тот момент, когда он еще не завершил предыдущую поездку с пассажиром. При этом алгоритм метчинга должен учитывать не только линейное расстояние от места посадки до автомобиля, но и его доступность с точки зрения дорожного движения. Машина может находиться фактически в 100 метрах от нового пассажира, но быть отделенной от него физическими препятствиями, улицами с односторонним движением, плотным трафиком и т.д. В то же время машина, находящаяся в 500 метрах, но на той же улице, закроет заказ гораздо быстрее; 

  • Близкой к этому пункту задачей стала также реализация в приложении водителя офлайн-таксометра. Этот функционал сделал возможным расчет стоимости поездки в зонах неустойчивого интернет-соединения;

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

Дизайн 

Параллельно с предварительным техническим проектированием команда дизайнеров работала над решениями UI. Специалисты призваны определить ключевые аспекты и визуальные решения для проекта. Эта работа должна соответствовать общим правилам и трендам дизайна. В частности, мобильные приложения должны отвечать требованиям Material Design (Google) и Human Interface Guidelines (Apple). 

Более того, решения дизайна должны вписываться в общую концепцию продукта и работать в контексте бренда компании-клиента. Дизайн начинается с проработки архетипа бренда (можно выбрать за основу один из двенадцати "классических" архетипов) и его Tone of Voice. Следовательно, дизайнеры готовят несколько прототипов для продукта, тестируют его на фокус-группах и обсуждают со стороной Заказчика, пока не согласуют лучшие решения.

Технический этап разработки

Когда проект имеет четкие решения, документацию и согласованный дизайн, разработчики могут переходить непосредственно к написанию кода. В кейсе RideTaxi специалисты по бэкэнду писали серверную часть с нуля, фронтенд-разработчики занимались административной панелью, мобайл-разработчики - создавали приложения для пассажиров и водителей в двух нативных версиях: под Android и IOS. 

DELIVERY GROUP
Logistics
TMS-система
кейс для экономии топлива с отображением на маршруте всех автозаправок
смотреть проект
Logistics
DELIVERY GROUP
мобильное приложение для лидера рынка сборных грузов в Украине
смотреть проект
Logistics
RideTaxi
комфортный онлайн-сервис пассажирских перевозок
смотреть проект
Logistics
TMS-система
кейс для экономии топлива с отображением на маршруте всех автозаправок
смотреть проект
Logistics
DELIVERY GROUP
мобильное приложение для лидера рынка сборных грузов в Украине
смотреть проект

Это не самый быстрый, и не самый простой способ реализации приложений, но он был выбран из-за требований Заказчика проекта к быстродействию и стабильности работы с нативными функциями GPS в смартфонах. Эта технология была также выбрана как решение на перспективу. Ведь в перечне планов развития продукта есть ряд фич, которые сейчас могут быть реализованы только с использованием нативных средств разработки.

Тестирование

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

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

Релиз

Уже к концу этапа тестирования команда начала подготовку к полноценному развертыванию системы и размещению приложения RideTaxi в сторах Play Market и App Store. После успешного запуска и публикации начался этап поддержки, который продолжается и сейчас. Последние технические ошибки были исправлены во время двухмесячного гарантийного периода. В дальнейшем команда начала работу над новым функционалом и апдейтами системы. 

В целом рабочий процесс в WEZOM строится на agile-методологии scrum, которая опирается на высокотемповую работу в небольших командах и выполнение задач в формате спринтов - это небольшие рабочие отрезки длительностью в 1-2 недели. В кейсе RideTaxi мы отчитывались перед клиентом по результатам каждого спринта и получали от него полезный фидбек. Это позволило выдать максимально качественный результат в относительно короткие сроки. На разработку всей системы ушло более 8 тысяч рабочих часов командной работы.

Что стало результатом

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

Мобильное приложение для пассажиров

В мобильном приложении пассажир получает максимально бесшовный опыт - на уровне лучших решений для райдхелинга. Пользователь может заказать авто в три клика на интерактивной онлайн-карте; выбрать авто по ряду параметров (количество мест в салоне, багажник, корзина для животных и т.д.); отфильтровать водителей по рейтингу и отзывам; сохранить необходимые ему адреса для упрощения заказов, применить любой вариант оплаты, включая Google Pay / Apple Pay, рассчитаться бонусами или подарочными сертификатами. Доступны такие возможности как совместимые поездки с оптовой оплатой, поездки с несколькими плановыми остановками на маршруте и возможность менять маршрут уже во время движения. 

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

Приложение для водителей

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

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

Одной из важнейших функций RideTaxi для таксистов является встроенная подробная отчетность по доходам. В приложении выводится вся индивидуальная статистика водителя: его рейтинг, финансы (состояние которых отображается динамично), бонусы и тому подобное.  

Админпанель

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

Менеджер может наглядно видеть локацию водителей системы на интерактивной онлайн-карте. Ему доступны инструменты для модерации заказов, контроля работы водителей, допуска в систему нового персонала, обработки отзывов и жалоб клиентов и т.д. Более того, администраторы системы получают доступ к комплексной аналитике по финансам, качеству выполнения заказов, предпочтениям пассажиров и производительности водителей. Данные визуализируются в админпанели с помощью инфографик, что делает их удобным и наглядным рабочим инструментом. “Фишкой” проекта стал бот, который собирает информацию о выявленных проблемах и распределяет соответствующие “алармы” между ответственными лицами.

Система на всех уровнях интегрирована с необходимыми компании внешними цифровыми системами и сервисами, без которых вести бизнес невозможно: API картографических систем, CRM-система клиента, средства бухгалтерского учета, IP-телефония, платежные шлюзы, Google Analytics, дополнительные аналитические инструменты для маркетинга и т.д. 

Результаты проекта 

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

Более того, масштабная автоматизация помогла ощутимо оптимизировать операционные расходы: нагрузка на колл-центр сократилась на 62%. В то же время темпы обработки заказов в диджитале выросли, поэтому автопарк компании может выполнять гораздо больше перевозок по сравнению с “аналоговым” менеджментом: прирост достиг 20%. Соответственно улучшились финансовые показатели. 

На сегодня RideTaxi - одно из самых востребованных подобных решений на рынке Клиента. Но его потенциал еще не раскрыт до конца. Команда и Заказчик имеют амбициозные планы по развитию функционала и возможностей системы. В частности – по внедрению ИИ для пользовательской поддержки и применения компьютерного зрения: для идентификации водителя и автомобиля, определения состояния авто и т.д. Поэтому у специалистов WEZOM впереди еще много работы.

Василий
Про автора
Василий
IT Sales Manager
Опыт работы 6 лет
Эксперт по IT-продуктам в области логистики и девелопмента, помогает потенциальным клиентам WEZOM подбирать оптимальные платформы и технологии для решения задач бизнеса.
Больше статей от автора
Как вам статья?
Давайте обсудим Ваш проект
Заполните личные данные.
Phone
Нажимая на кнопку “Отправить”, вы даете согласие на обработку личных данных. Подробнее
Свернуть
Комментарии
(0)
Будьте первыми, кто оставит комментарий
have questions image
Остались вопросы?
Оставьте ваши контактные данные. Наш менеджер свяжется и проконсультирует вас.
Подписывайтесь на рассылку Айтыжблог
blog subscriber decor image
Хотите получать интересные статьи?
Нажимая на кнопку “Отправить”, вы даете согласие на обработку личных данных. Подробнее
Следите за нами в социальных сетях