Доставка алкоголя ночью. Рекомендации по доработке приложения

12 mar. 2023
Доставка алкоголя ночью. Рекомендации по доработке приложения

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

Требуется ввести адрес доставки, чтобы добавить товары в корзину

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

Требует адрес доставки для добавления товаров в корзину

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

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

Дублирующиеся фотографии в товарах

В некоторых товарах выводятся несколько абсолютно одинаковых фотографий товара (т.е. снятые с одинакового ракурса), но с по-разному кропнутым фоном. Смысл этого для меня загадка. Я бы понял, если бы менялся ракурс или крупным планом демонстрировалась часть товара, на которой необходимо сфокусировать внимание (к примеру этикетка с обратной стороны бутылки, пробка и т.п.), но здесь буквально по-разному обрезан фон. Это встречается в каталоге довольно часто, примеры таких товаров: Водка Tundra Authentic, Джин White Lace Gin Lime, белое вино Libe Dame.

Дубликаты фотографий товаров

Каталог медленно загружается

Заметил, что первоначальная загрузка каталога происходит довольно медленно. На актуальном iPhone c 500-мегабитным интернет-каналом холодная загрузка приложения может занимать более 5 секунд. Виден существенный потенциал для оптимизации скорости работы API или количества загружаемых данных, если это связано с предыдущим пунктом.

Медленная загрузка каталога

Неработоспособный поиск

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

Неработоспособный поиск

Я бы предложил при поиске учитывать названия разделов, в которых расположены товары, а в идеале начать логировать поисковые запросы пользователей, которые не дали результата, выделять на основе анализа логов популярные запросы, заносить их в БД и указывать для них релевантные товары, чтобы затем это учитывалось в поиске, здесь подразумеваются запросы в свободной форме, что-то вроде “французское вино”, “дешевая водка” и т.п. Также было бы полезно применять механизм триграммного поиска, если используемая СУБД его поддерживает (к примеру, PostgreSQL поддерживает), это помогло бы во многих случаях, когда пользователь допустил опечатку в запросе.

API работает неудоувлетворительно медленно

Каждый раз, когда мы меняем количество товара в корзине, мы 2-3 секунды наблюдаем анимированный индикатор обработки запроса, блокирующий дальнейшие действия пользователя. Это делает интерфейс крайне неотзывчивым, что неприемлемо с точки зрения юзабилити. Стоит либо поработать над оптимизацией скорости работы API и доработать механизм взаимодействия с интерфейсом таким образом, чтобы обработка запросов к API происходила в фоне и не блокировала интерфейс. Для примера, посмотрите, как сделано изменение количества товаров в приложении “Сбермаркета”.

Медленная работа API

При выборе опций в фильтре “болтаются” соседние кнопки

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

Тестовый товар во многих разделах

Во многих разделах каталога содержится только товар с названием “Тестовый”. Что как-то несерьезно на продакшне. Примеры: все подразделы разделах “Аптека и гигиена”, “Все для кальяна”, почти все подразделы в разделе “Еда и закуски”.

Тестовые товары

Ваш комментарий появится на сайте после проверки модератором
При отправке комментария произошла ошибка

  1. Привет. Мой интернет магазин с алкашкой постоянно блокируют. Хотя продаж на сайте нет . Есть какое то готовое решение. Бютжет небольшой и мне удобнее в рассрочку.Помогите пожалуйста, вы моя единственная надежда.

    1. Доброе утро, Свят.
      К сожалению, не смогу вам помочь. Данное мероприятие далеко не бюджетное. В рассрочку не работаю. Платеж можно разбить на контрольные точки. Это да, без проблем.

  2. Напиши мне в тг ImyaPolzovatelya133

    1. Добрый день. Хмм. Не ты, а вы. 

  3. макс