Изображение предоставлено компанией SimbirSoft с сайта https://www.simbirsoft.com/

Развитие приложения для сервиса онлайн-бронирования

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

Особенности кейса: Специалисты SimbirSoft решали разноплановые задачи, делясь экспертизой в тех направлениях, которые были необходимы заказчику.

Заказчик проекта: Сервис онлайн-бронирования.

Цель проекта: Развитие раздела сервиса, связанного с подбором отелей.

Продолжительность работ на проекте: 13 месяцев.

Команда проекта: Android, iOS и Frontend-разработчики, аккаунт-менеджер.

Технологии, использованные в проекте: Android, iOS, Node.JS.

Актуальность проекта и задачи, стоящие перед разработчиком

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

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

Решение задач заказчика

Повышение удобства для пользователей

Чтобы пользователям было удобнее, специалисты разработали новый раздел “Отели”.

Система запоминала количество гостей и даты размещения (из предыдущих бронирований или по билетам, купленным через сервис заказчика). Когда клиент в следующий раз занимался поиском отелей, эти данные заполнялись автоматически.

По мнению MarketingTECH, опция автозаполнения для ниши путешествий является существенным конкурентным преимуществом. Так как туристам зачастую приходится осуществлять срочное бронирование в дороге, при нестабильно работающем Интернете.

Кроме этого, разработчики реализовали отображение важной информации таким образом, чтобы она всегда была “на глазах”:

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

– По каждому отелю сразу виден наиболее дешевый номер.

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

Реализация маркетинговой стратегии

Улучшив клиентский опыт пользователей сервиса, специалисты оказали заказчику помощь в развитии маркетингового направления.

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

  • Бонусная система.
  • Виртуальная банковская карта с увеличенным кэшбэком.
  • Рекламные баннеры.
  • Рассылки пуш-уведомлений об акциях.
  • Вовлекающий контент (сториз, опросы и т.д.)

Правка кода Android-версии приложения

Команда SimbirSoft выполнила задачу по повышению качества программного кода приложения, работающего на базе Android.

Оно включало:

  • legacy-код,
  • чередование разных архитектурных подходов,
  • низкое покрытие кода тестами,
  • длительная сборка проекта.

Легаси-код (legacy – наследие) – это устойчивое выражение, обозначающее устаревший код, который является частью работающего программного продукта. Обычно он оставляется для поддержки старых версий приложения или ради экономии ресурсов, чтобы не переписывать ядро и другие части решения.

Три основных свойства legacy-кода:

– создан с использованием устаревших средств разработки,

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

– не обладает необходимой документацией, поэтому разобраться, как он работает, очень сложно, а спросить обычно не у кого, т.к. предыдущие разработчики недоступны.

Эти свойства legacy-кода делают работу с ним на порядок сложнее, чем обычную разработку.

Для преодоления всего вышеперечисленного, в ходе работы над проектом специалисты SimbirSoft занимались:

  • рефакторингом,
  • разбиением кода на модули,
  • писали UI- и unit-тесты.

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

Мобильное приложение глазами Android-разработчика. Примерно таким образом специалисты SimbirSoft и создают крупные международные проекты. Изображение предоставлено компанией SimbirSoft с сайта https://www.simbirsoft.com/

Чтобы управлять реализацией проекта, применялась методология SCRUM. Специалисты SimbirSoft принимали участие в daily, demo и retro митингах. А/B тестирование подтвердило правильность предложенных ими решений.

Итоги проекта

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

Команда SimbirSoft отмечает, что в процессе работы над проектом постановка задач заказчиком осуществлялась качественно, было налажено эффективное взаимодействие с его сотрудниками. Обсуждение всех тасков происходило с привлечением разработчиков, тимлида, аналитиков и продукт оунера. Достигнутые договоренности фиксировались в Jira и Confluence.

В результате специалисты SimbirSoft смогли выстроить работу таким образом, что новые релизы выпускались каждые 2-3 недели. Периодичность зависела от уровня сложности и количества реализуемых задач.

Заказчик доволен результатами сотрудничества.