Разработка интернет-гипермаркета для сети «Уютерра», интеграция с SAP
С чего начинается выход огромного оффлайн-бизнеса в онлайн-продажи? С корректировки бизнес-мышления и существующих бизнес-процессов компании. Ведь 80 магазинов сети товаров для дома и уюта «Уютерра» по всей России работали как часы, также должен работать и онлайн-гипермаркет.
Первые два месяца мы вникали в существующие бизнес-процессы в компании, обсуждали, как лучше адаптировать их под интернет-продажи с разных точек зрения (бизнес, логистика, бухгалтерия и т.д.).
Товар искать легко и удобно:
каталог, фильтр, встроенный «Удобный поиск» помогают покупателю за секунды подобрать нужный товар. |
| Благодаря динамическому фильтру
можно выбирать товары по цене, бренду, категориям, материалу, цвету и свойствам. |
|
Связывание аккаунтов соцсетей
позволяет покупателю быстро
авторизироваться и зайти
в личный кабинет
при
повторной покупке.
|
Одновременно с этим проектировали интеграцию с системой SAP, обслуживанием которой занимается собственный отдел высококвалифицированных специалистов «Уютерры», а также внутренней информационной системы компании.
Интеграция с SAP
Интеграция 1С-Битрикс с SAP – процесс сложный и таинственный. Доступной информации в интернете мало, и получить ясное представление заказчику очень трудно. Мы отдельно опишем в корпоративном блоге Infospice особенности интеграции Битрикса с SAP.Вкратце. Если для выгрузки товаров из 1С Предприятия в Битрикс существует встроенный модуль, то для SAP такого модуля нет. Сложная промышленная ERP-система SAP имеет свою особенную архитектуру, свою систему хранения и обновления данных. В данном проекте интеграция строилась на системе веб-сервисов, обмен данными осуществлялся в формате XML по протоколу SOAP в защищенном виде.
Масштабы интеграции становятся ясны, если озвучить цифры по обмену данными:
- Более 60 000 товаров.
- 80 магазинов, в каждом магазине свои цены и свои остатки по всем этим товарам :) – более 60 миллионов записей о ценах и остатках. Каждый день.
- Данные по бонусным картам (объем не раскрывается).
- Заказы (данные не раскрываются).
Интеграция с SAP – самая сложная часть проекта. Важно с самого начала уделить большое внимание этому этапу и предусмотреть жизнеспособность механизма интеграции при росте нагрузки.
Проектирование интерфейса, дизайн
При проектировании мы стремились сделать навигацию по сайту максимально прозрачной: вынесли на первый план удобные сервисы подбора товара (динамический фильтр в каталоге и прямой поиск с подсказками), проверку баланса клубной карты без авторизации.Дизайн и интерфейс проектировался в виде интерактивных прототипов с помощью программы Axure RP.
Фрагмент прототипа
главной страницы. |
| Главная страница
интернет-гипермаркета «Уютерра». |
Интерактивный прототип фильтра
для интернет-гипермаркета «Уютерра». |
| Работа каталога в реализованном
проекте. |
Согласитесь, найти нужный товар среди 60 000 позиций простому пользователю с помощью категорий каталога трудно. К счастью, в SAPе уже хранились и пополнялись дополнительные свойства товара, из которых можно было сделать фильтры.
Навигация по каталогу построена так, что покупатель может начать с любого доступного для него свойства (цвет, материал, коллекция, цена, категория и т.д.) и за пару кликов найти список подходящих ему товаров. Выбираемые значения фильтров выводятся в строке «Ваш выбор», что удобно.
Программирование
Интеграция с SAP – большой, но все же первый этап в программировании. Когда мы получили все данные, то приступили к реализации той программной архитектуры, которая была определена на этапе проектирования.Во всем большом объеме программных работ хотелось бы выделить следующие моменты:
1) Мультизависимый фильтр по характеристикам
Мультизависимый фильтр по свойствам – хорошее решение для тех покупателей, которые не знают конкретный товар, а пришли на сайт, чтобы подобрать его. Проходя по категориям, бренду или другим свойствам товара и выбирая какое-то значение, пользователь всякий раз сужает перечень выводимых товаров, пока не найдет нужный.
Но сужение фильтра после какого-либо выбора не занижает поисковых возможностей. Хотя фильтр является мультизависимым и всякий раз список свойств и значений для фильтрации выводится в зависимости от уже сделанного выбора, у пользователя всегда сохраняется возможность отменить одно из выбранных ранее значений фильтра.
Дело в том, что выбор пользователя записывается в строке «Ваш выбор», он всегда может изменить какое-либо значение и получить обновленный список подходящих товаров.
Например, пользователя интересуют сковородки до 3000 рублей. Зайдя в раздел Посуда для приготовления:
Он видит множество свойств для фильтрации, однако его интересуют именно сковороды до 3000 рублей:
Пользователю нравится марка ViTESSE:
Однако в ценовой категории он не находит интересующего его товара и, снимая ограничение по цене в строке "Ваш выбор” (убираемый параметр выделяется красным):
Подобный способ фильтрации товаров используется и на магазине-миллиардере Zappos.com.
Если же пользователь знает название товара или ключевое слово, то ему на помощь приходит поиск по заголовкам, выводящий список подходящих товаров пока пользователь вводит запрос в поисковую строку.
2) Карточка товара и мультирегиональность
Карточка товара объединяет в себе разрозненно поступающие данные по ценам, свойствам и остаткам. Именно в карточке товара можно добавить товар в корзину, узнать свою выгоду на товары с акционной ценой, посмотреть рекомендуемые товары или оставить отзыв. А для пользователей из других регионов карточка товара выполняет только информационную функцию. Определяя регион пользователя по ip-адресу, мы закрываем возможность купить товар для тех регионов, где онлайн-продажи еще не открыты.
3) Оформление заказа
Оформление заказа, казалось бы, обычное дело, но при интеграции с SAP необходимо одновременно с формированием заказа уведомлять SAP о новом резерве, так как любой товар должен проходить стадию резервирования, чтобы исключить продажу отсутствующих на складе товаров. С другой стороны, любые стадии оформления заказа должны фиксироваться в Битриксе, а клиент должен получать соответствующие уведомления.
Объем проделанных программных работ очень большой, мы не будем описывать каждую из десятков решенных задач. Упомянем только, что при разработке подобных проектов необходимо постоянно держать в уме перспективу роста нагрузочности.
Оптимизация под высокие нагрузки
Из пресс-релиза «Уютерры»:
Особое внимание при разработке уделено вопросам удобства использования интернет-магазином и производительности сайта при высоких нагрузках. Интернет-гипермаркет готов принять более 50 000 покупателей в сутки. |
Нагрузки можно разделить на 4 этапа:
1) Прием и обработка данных при интеграции с SAP и другими информационными системами Заказчика
Данные необходимо принять и записать, а также предусмотреть способы экстренной полной выгрузки и обработки данных без ущерба для публичной части.
2) Нагрузки при работе публичной части сайта
Сайт должен уметь фильтровать 200 000 товаров не более 1 секунды, оформлять заказ, выводить список товаров и вообще быть быстрым для пользователя. Конечно, сервер и хостинг имеют важное значение при измерении скорости работы сайта, но сайт без грамотно сделанного кеширования или с долгими запросами к базе данных не спасет даже мощный сервер.
3) Одновременная работа п 1) и 2)
При правильной работе проекта посетители сайта не должны замечать процесса обновления данных, а нагрузка от посетителей не должна критически влиять на скорость приема и обработки данных SAP.
4) Отказоустойчивость и расширяемость.
- Проектирование структуры и интерфейса;
- Написание Технического задания;
- Дизайн;
- Верстка;
- Интеграция с SAP;
- Программирование;
- Тестирование с учетом нагрузок;
- Обучение;
- Техподдержка;
- PR-сопровождение запуска проекта.
Материалы по теме:
«Сеть «Уютерра»: быть там, где покупатели», история успеха на сайте «1С-Битрикс»
«Уютерра» ушла в сеть», 02.04.2012, Retailer.Ru.
«Онлайн-магазин сети «Уютерра» запущен на платформе «1С-Битрикс», 15.06.12, Cnews
«Интернет-магазин «Уютерра» заработал на «1С-Битрикс», 15.06.12, Oborot.Ru
«Поиск за секунду» , 20.06.12, Открытые системы