Мобильный клиент в ритейле. Внедрение и первые результаты использования

16.01.23

Разработка - Мобильная разработка

Олег Репников, руководитель департамента развития систем дистрибуции в ПАО «Вымпелком», рассказал о том, с какими сложностями можно столкнуться при внедрении в компании мобильного клиента: о реорганизации архитектуры решения, необходимости перестроения мышления всей команды разработки, и о том, что плохой код – враг мобильного клиента.

В 2018 году я уже выступал на конференции Инфостарта. Для тех, кто тогда не присутствовал, немного расскажу о компании Билайн.

 

 

Помимо того, что Билайн оказывает услуги связи, у нас есть монобрендовая сеть магазинов – на текущий момент 2200 салонов.

Автоматизация этих магазинов выполнена на базе 1С:

  • база у нас большая – порядка 10 тысяч рабочих мест, одновременно в базе находятся порядка 7-8 тысяч пользователей;

  • за минуту в системе пробивается 100 чеков;

  • размер базы – 7 терабайт (прим. ред.: май 2021 года);

 

 

У нас нет маленьких баз и нет обменов: все процессы – в единой большой базе, к которой через тонкий клиент по каналу VPN подключаются все пользователи.

В этой базе 1С автоматизированы все розничные процессы в монобренде: продажи, услуги, кредиты, интернет-магазин, выдача посылок, обмены с различными внешними организациями – с OZON, с Qiwi, c «Золотой короной» и т.д.

 

Почему мы решили развивать мобильный клиент

 

 

В 2018 году я закончил свое выступление на конференции тем, что сказал: «Мы будем развивать мобильный клиент».

Почему родилась такая идея? У решения, когда есть большая база, которую одномоментно используют 7 тысяч пользователей, есть огромное количество плюсов и один большой минус – если интернет в магазине по какой-то причине прерывается, точка становится неработоспособной. Она не может делать ничего.

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

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

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

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

 

Как выглядела архитектура проекта

 

 

Сначала мы рассматривали вариант – просто подключить мобильный клиент к большой базе, чтобы пользователи смогли работать.

Однако есть большое ограничение – в основной базе у нас огромное количество персональных данных. Мы храним ваши паспортные данные, историю покупок и прочую информацию. И мы совершенно не имеем желания выпускать эту информацию в интернет, потому что, если есть желание, можно сломать любую систему: ломают и Фейсбук, и Амазон, и Гугл. Данные утекают.

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

Поэтому мы сделали следующее:

  • мы взяли точно такую же конфигурацию, какую имеет основная база, и создали отдельную маленькую базу;

  • на этой маленькой базе мы не храним данные – там только нормативно-справочная информация и цены;

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

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

 

 

Немного отступлю в сторону, потому что должен обязательно об этом упомянуть.

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

Обновлять необходимо, так как фирма «1С» активно развивает мобильный клиент – мы сотрудничаем с фирмой «1С» и можем подтвердить, что на новых платформах появляется много новых функций.

Поэтому, если вы планируете использовать мобильный клиент, я вам не рекомендую сидеть на платформе 8.3.15 – только 8.3.18 и выше.

 

С какими проблемами мы столкнулись при переходе на мобильный клиент

 

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

 

Проблема №1 – плохопереносимый код

 

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

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

 

Например, у нас бизнес-логика могла оказаться реализованной в модуле формы – в одном из модулей формы у нас было 60 тысяч строк.

В каких-то формах было 50 реквизитов для ввода, и это считалось нормальным.

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

Дело в том, что при использовании мобильного клиента в формах не должно быть никакой логики – не должно быть огромных контекстов, которые передаются между клиентом и сервером. Мобильный клиент работает, как правило, по SIM-карте на 3G или 4G, на узком канале. И когда передается пятимегабайтный контекст, вы получите зависание на несколько минут – это приходилось исправлять.

 

Проблема №2 – отсутствие документации и компетенций в команде

 

 

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

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

  • мы пишем бизнес-функциональные требования;

  • потом пишем функциональный дизайн;

  • дальше функциональность разрабатывается;

  • ее показывают заказчику;

  • заказчик вносит свои замечания;

  • бизнес-функциональные требования переписываются;

  • функциональность тоже переписывается…

Все это накладывается друг на друга, а спустя два года приходит заказчик и говорит, что хочет все переделать.

В итоге мы получаем «матрешку».

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

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

 

Проблема №3 – железо

 

 

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

Они утверждали, что планшеты дешевые и быстрые. Хотя вы понимаете, что в данном случае можно было выбрать только один из двух пунктов – либо дешевые, либо быстрые.

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

Но в планшетах плохо работает камера – казалось бы, зачем камера в планшете? Не селфи же делать?

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

  • фокусировка камеры – проблема была в самой платформе, разработчики поправили ее буквально за пару недель;

  • качество камеры – эту проблему никак нельзя было решить, не поменяв железо.

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

 

Проблема №4 – необходимость смены процессов

 

 

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

Если посмотреть на экран стационарного компьютера, то у нас есть разработчики, которые умеют красиво рисовать формы. На слайде показан модуль РМК – это прием платежа в биллинг. Не скажу, что там очень красиво, но не вызывает какого-либо диссонанса. Выглядит не вырвиглазно, и достаточно удобно использовать, потому что много кнопок, которые знают продавцы.

Но при переносе этих форм в мобильное рабочее место, все надо серьезно переделывать. Мы почему-то думали, что сейчас возьмем большие формы, немножко их ужмем, кнопочки размером уменьшим, и все будет красиво. Оказалось, что нужно переписывать фактически все.

По всем бизнес-процессам мы перешли на пошаговые мастера. Здесь же на слайде можно видеть сравнение – как выглядит модуль РМК на стационарном рабочем месте и на мобильном (первый шаг, второй шаг, третий шаг).

 

 

Здесь тоже на слайде примеры мастеров о том, как у нас работает замена SIM-карты, регистрация контракта и так далее.

 

Проблема №5 – создание красивых интерфейсов

 

 

При создании интерфейсов мы сломали много копий.

  • Для примера привел на слайде SAP. Наверное многие видели SAP-овские интерфейсы – это хороший пример интерфейса, который создан не для людей.

  • Следующий интерфейс на слайде – это мобильное рабочее место. Все гораздо красивее.

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

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

Есть мнение, что в B2B не очень важны интерфейсы, но вы должны понимать, что в рознице очень большая текучка – порядка 60% в год. В основном, работают молодые люди, которые привыкли к красивым интерфейсам на мобильных устройствах.

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

 

Проблема №6 – низкая лояльность к продукту

 

 

Низкая лояльность к продукту – это интересная проблема, которую мы совсем не ожидали.

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

Все работает быстро, красиво и удобно. Но пользователи не заходят в систему.

В основной базе у нас порядка семи тысяч пользователей, а в мобильном клиенте – 100-200 человек в день. Количество операций – около 1000 в день. В основной системе – сто тысяч человек, в мобильном клиенте – тысяча.

Мы разными методами пытались перевести на мобильный клиент:

  • Мы спрашивали у пользователей, почему они не заходят в мобильный клиент, и что им не нравится. В ответ: «Все хорошо. У вас здорово и удобно. Обязательно будем работать!»

  • Мы пробовали использовать дополнительную мотивацию. Сотрудник, который продал телефон через мобильный клиент, получал на 10% больше, чем если бы он продавал через стационарное рабочее место.

  • Мы угрожали им. Говорили: «Мы сейчас отключим у вас стационарные компьютеры. У вас стоит на точке два компьютера, а через месяц мы вам оставим только один. И если вы не научитесь работать в мобильном клиенте, у вас будут проблемы с продажами – вы будете не знать, как продавать и начнете зарабатывать меньше!»

Ничего не помогало. Мы долго анализировали и поняли, что мы сами себя перехитрили. Мы сделали стационарное настольное место настолько удобным и хорошим, что удобнее пользоваться им, а не переходить на мобильный клиент. Зачем менять шило на мыло?

Доступность стационарного места на текущий момент – четыре девятки. Мы постоянно следим за производительностью стационарного рабочего места, и оно работает быстро. Если ухудшается производительность на 20%, автоматически создается инцидент, и все сразу исправляется.

Поэтому пользователи просто не хотят переходить на мобильный клиент.

На текущий момент нет решения этой проблемы, но генерация гипотез продолжается. Сейчас расскажу про одну из гипотез, которую мы обыграли.

 

Какие ошибки мы допустили при запуске мобильного клиента

 

 

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

Идея была какая: у сотрудников есть планшет, куда вставляется корпоративная SIM-карта. Интерфейсы настроены под планшет – то есть они горизонтальные.

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

Мы посмотрели на те устройства, которые используют пользователи – оказалось, что примерно 60% используют последние айфоны, а остальные 30% используют самсунги 10-й и 20-й серии.

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

И это мы только Android подключили.

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

Повторюсь, гипотезы продолжают генерироваться.

 

 

Вторую ошибку мы допустили при постановке задачи.

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

По мнению бизнеса, все взаимодействие должно было выглядеть так:

  • клиент подходит к сотруднику и говорит: «Я хочу купить новый айфон»;

  • сотрудник на планшете забивает все данные;

  • отдает клиенту мобильный эквайринговый терминал, к которому прикладывается карта;

  • затем с мобильного фискального регистратора выходит чек;

  • сотрудник отдает клиенту чек, отдает товар – все счастливы.

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

  • в одной руке у человека планшет,

  • в другой – фискальный регистратор;

  • в третьей руке – терминал;

  • в четвертой – товар;

  • «Фару на лоб мне приделайте еще», думает про себя мужчина.

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

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

 

Советы, которые помогут не допустить наших ошибок

 

 

Подведу итоги:

  1. Используйте гибкие методологии. Если вы будете запускать проект по водопаду – в течение двух-трех месяцев будете писать техническое задание, потом в течение шести месяцев – реализовывать проект, три месяца – тестировать и еще два месяца – внедрять, скорее всего, на втором месяце вы сломаетесь, потому что узнаете, что все на самом деле совсем не так.

  2. Не бойтесь экспериментировать. Это к вопросу о гипотезах. Гипотезы должны генерироваться постоянно. Гипотезы должны идти от разработчиков, от аналитиков, от бизнеса, от всех участвующих в проекте. Это связано с тем, что 1С-ники не работают с мобильным клиентом, и опыт еще не накоплен.

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

    Не стесняйтесь экспериментировать и не стесняйтесь высказывать гипотезы. И старайтесь их быстро внедрять.

  3. Будьте готовы к «странным» проблемам. Проблемы могут быть какие угодно. Они действительно странные, как, например, с камерой, которая у нас не фокусировалась, с тем, что пользователи почему-то не хотят использовать мобильный клиент – будьте готовы, что проблемы будут не такими, как при внедрении обычного стационарного решения.

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

Хочу сказать фирме «1С» спасибо за то, что они стараются идти «на гребне волны». Стараются не давать нам зачахнуть в 7.7 и 8.х, и развивают, в том числе, мобильные решения.

 

Вопросы

 

Какие методы тестирования мобильных клиентов вы используете?

Используем стандартное ручное функциональное тестирование мобильного клиента на мобильных устройствах. Перед релизом естественно используем регрессионное тестирование перед релизом – прямо на мобильных устройствах.

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

Вы сказали, что разрешили использовать личные телефоны. Конечно у всех разные разрешения, разное железо. Есть ли с этим проблемы?

Мы поступили как «кровавый энтерпрайз» и сказали: «На этих устройствах будет работать точно, а на этих мы не гарантируем – рекомендуем использовать вот такие. Если что-то не работает, то сорян». У нас нет цели добиться работоспособности приложения для десяти тысяч устройств.

 

*************

Статья написана по итогам доклада (видео), прочитанного на конференции Infostart Event 2021 Post-Apocalypse.

См. также

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 1С:Конвертация данных Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 руб.

27.12.2021    38193    108    161    

201

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3000 руб.

03.12.2018    59288    192    103    

172

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    97216    586    189    

321

Логистика, склад и ТМЦ Сканер штрих-кода Терминал сбора данных Мобильная разработка Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

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

3450 руб.

28.04.2023    9468    15    0    

9

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Финансовые услуги, инвестиции Управленческий учет Платные (руб)

Мобильное приложение и конфигурация 1С для автоматической торговли на бирже через API Тинькофф банка. Достаточно задать настройки, нажать «Пуск», и робот сам торгует ежедневно.

7000 руб.

25.05.2022    4643    1    0    

6

Мобильная разработка WEB-интеграция Программист Мобильная платформа Абонемент ($m)

Экспериментальный релиз и простенький скрипт к нему закрывает потребности в любых видах синхронизации между устройствами Simple и между Simple и бек-системами (например 1С). По сути – это очень простой python-скрипт, который можно запустить на доступной машине, сервере или VPS и он будет связывать клиентские устройства между собой и с 1С или другими бек-системами. В самой платформе появилось для этого множество доработок для поддержки стабильного постоянного соединения, докачки больших файлов и работе в фоне. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

23.08.2024    1215    6    informa1555    1    

13

Мобильная разработка Мобильная платформа Абонемент ($m)

В этом релизе собрано много нового из области интерфейса, связи, хранения и важные новые способы управления. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

25.06.2024    2605    29    informa1555    0    

33
Оставьте свое сообщение