adidas miCoach

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

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

Ситуация

Наш клиент – adidas – один из самых известных в мире производителей спортивной одежды и оборудования как для спортсменов-любителей, так и для профессионалов.

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

Семейство продуктов adidas miCoach включает в себя несколько гаджетов: Speed Cell, Pacer Bundle и Heart Rate Monitor. Данные устройства собирают различную статистику о физической активности пользователя, включая скорость передвижения, количество шагов и потраченных калорий, время тренировки, пройденное расстояние и пульс. Устройства подключаются к PC/Mac, а также к Ipod/iPhone для передачи собранных данных на портал miCoach.com. Бэк-энд веб-решения хранит данные, анализирует результаты и позволяет составлять индивидуальные планы тренировок, способствуя достижению поставленных перед собой целей. Другими словами, пользователи получают в свое распоряжение профессионального виртуального тренера.

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

adidas нуждался в разработке комплексного решения, которое отвечало бы современным технологическим требованиям и ожиданиям конечных пользователей. Руководство adidas приняло решение доработать существующее десктопное приложение, упростив процесс синхронизации устройств с веб-порталом, что, в конечном счете, должно было повысить объем продаж устройств miCoach. Для этих целей заказчик обратился к Itransition – компании с богатым опытом работы в сфере разработки ПО для смарт-гаджетов.

Трудности

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

Обзор функциональности

Десктопный менеджер adidas miCoach обладает следующей функциональностью:

  • Синхронизация устройств miCoach с десктопным приложением на PC/Mac;
  • Передача данных десктопному приложению;
  • Соединение с веб-порталом, обработка данных и их передача для последующего анализа.

Поддержка различных форматов данных

Решение позволяет извлекать и объединять данные для дальнейшего анализа со следующих устройств:

  • Speed Cell собирает данные о скорости передвижения, пройденном расстоянии и физических нагрузках;
  • Heart Rate Monitor отслеживает пульс пользователя в течение тренировки и передает данные устройству Pacer Bundle;
  • Pacer Bundle может соединяться как с устройством Speed Cell, так и с устройством Heart Rate Monitor для отслеживания и сбора полученной от разных сенсоров информации о пройденном расстоянии, количестве шагов и пульсе, а также для подсчета потраченных калорий.

Извлечение данных из смарт-гаджетов

Устройства adidas miCoach снабжены беспроводными адаптерами и могут синхронизировать данные о физической нагрузке, собранные в ходе тренировки, с iPod/iPhone или ноутбуком по Wi-Fi. Десктопное приложение позволяет выбирать и синхронизировать нужные гаджеты, выбрав их из списка обнаруженных устройств. При подключении к устройствам Speed Cell, Pacer Bundle или Heart Rate Monitor приложение сохраняет настройки соединения и в дальнейшем автоматически подключает данные устройства.

Когда устройства подключены к PC/Mac, пользователи могут запустить процесс синхронизации данных с веб-порталом adidas miCoach.com и отправить данные в аналитическое веб-приложение, используя SOAP-протокол.

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

Используя веб-приложение miCoach, спортсмены могут отслеживать эффективность их тренировок и найти оптимальный баланс между объемом физических нагрузок и достигаемыми результатами. Основываясь на собранной информации, пользователи могут составлять индивидуальный план тренировок. Персональная программа тренировок может быть загружена с веб-портала в десктопное приложение и синхронизирована с устройствами. Таким образом, пользователи смогут получать указания во время тренировки через устройство Pacer Bundle и выполнять требуемые упражнения.

Совместная работа с удаленной командой

Работа над проектом была очень интенсивной, поскольку разработка десктопного приложения осуществлялась параллельно с доработкой веб-приложения и обновлениями прошивок устройств. Команда Itransition должна была постоянно поддерживать связь с несколькими командами, расположенными в США и Европе, которые были ответственны за разработку веб-портала, мобильных приложений и обновление прошивок устройств miCoach. В процессе совместной работы мы должны были разработать и протестировать десктопное приложение, а также обеспечить возможность извлечения данных и их передачу веб-приложению вне зависимости от версии прошивки.

Контроль качества

Разрабатывая десктопное приложение miCoach, команда Itransition продемонстрировала безупречный контроль качества, в результате чего заказчик принял решение сделать Itransition своим основным QA-партнером по контролю качества и тестированию мобильных приложений adidas miCoach на iOS, Android и Symbian. Команда Itransition отвечала за полный цикл тестирования, включая подготовку документации для приемочного тестирования, интеграционное тестирование, запуск автоматизированных тест-скриптов, тестирование юзабилити и ручное тестирование. Наша QA-команда участвовала во всех стадиях разработки ПО, начиная с утверждения дизайна и спецификаций и заканчивая загрузкой финального релиза в App Store и Google Play Market.

Технологии

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

Слой бизнес-логики и интеграционный слой построены с использованием библиотеки Boost C++ для достижения максимальной производительности, масштабируемости и общей стабильности приложения.

Коммуникационный слой разработан с использованием HIDAPI C++ библиотеки, которая используется для соединения посредством USB, в то время как SOAP/XML-соединение обеспечивается за счет использования библиотеки gSOAP C++.

Результаты

Благодаря усилиям команды Itransition, adidas смог выпустить доработанную десктопную версию наряду с мобильными приложениями. adidas miCoach обрел чрезвычайную популярность: более 5 миллионов пользователей уже установили iOS/Android приложения из AppStore и Google Play.

Скриншоты

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

dailymail.co.uk

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

Маркус Бауманн Вице-президент Adidas Global Football

Ключевые моменты

  • Решения

    Порталы

    Социальные сети

    Мобильные приложения

  • Отрасли

    Торговля

  • Технологии

    C/C++

    Мобильные технологии

Бесплатные Курсы

  • Подать заявку

    Разработка ПО

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

  • Пройти тест

    Процедура занимает всего один день. Ваш результат станет известен сразу

  • Обучение

    Преподаватели курсов – сотрудники компании с большим практическим опытом

  • Курсовой проект

    Наше обучение ориентировано на получение практических навыков

  • Трудоустройство

    Лучшие выпускники получают предложение о трудоустройстве