DeviceAnywhere: Ускорение разработки мобильных приложений с помощью модели "программное обеспечение как услуга" (исходники)Источник: IBM Rational Джон Броди
Разработчик мобильного контента сталкивается с препятствиями на каждом шагу: постоянно растущие требования и ожидания потребителей, тысячи мобильных устройств, для которых необходимо разрабатывать контент и ограниченность доступа к устройствам с разных концов света. Ветераны индустрии мобильного контента Фараз Сайед и Дэвил Марсила потратили годы на исследование вопросов и проблем ручного тестирования мобильных приложений. Они пришли к выводу, что скупать мобильные устройства для "живого" тестирования или надеяться на эмуляторы и симуляторы неприемлемо с финансовой и технической точек зрения. Они решили создать продукт, который позволил бы разработчикам проводить тестирование на реальных устройствах без неразберихи и затрат на их приобретение. Кроме того, развивающаяся и очень изменчивая индустрия мобильных устройств с одной стороны и потребители мобильного контента, желающие получать все более сложный и функциональный мобильный контент с другой, обусловили потребность разработчиков в средствах доступа к мобильным устройствам со всего мира и в средствах эффективного тестирования контента на этих устройствах. Хорошо, если бы, - думали Сайед и Марсила, - можно было моментально получить доступ к любой из существующих моделей мобильных устройств. Их труд увенчался созданием DeviceAnywhere™ - компании, в настоящий момент предлагающей решение этой проблемы разработчикам встроенного программного обеспечения. DeviceAnywhere предлагает платформу, распространяемую по модели ПО-как-Сервис (Software-as-a-Service, SaaS) и позволяющую разработчикам получать доступ к более чем 1,500 реальных мобильных устройств со всего света простым, дешевым и не требующим особых накладных расходов способом. Данная статья рассказывает о концепции DeviceAnywhere и о том, как пользователи IBM® Rational® ClearQuest® могут воспользоваться данной технологией для управления тестированием и отслеживания результатов. Бизнес-модель SaaSМодель SaaS исключительно удобна для подписчиков, поскольку позволяет DeviceAnywhere обеспечивать текущие потребности широкого диапазона пользователей, предоставляя при этом возможность платежей по гибкому графику и техническую поддержку в случае возникновения проблем. Подписчики платят только за фактически использованное время работы с DeviceAnywhere без необходимости внесения фиксированных сумм, которые могут не окупиться. Устройства сгруппированы в пакеты, которые могут содержать различные телекоммуникационные сети и модели мобильных устройств со всего света; подписчики могут выбрать то, что их интересует и в конце месяца оплатить услуги согласно почасовому тарифу. Помимо этого подписчики могут обращаться в круглосуточную службу поддержки, способную помочь с устранением неполадок и специфических проблем, которые могут возникнуть при использовании сервиса. Поскольку сама программа находятся под управлением DeviceAnywhere, сотрудники службы поддержки могут просматривать экраны пользователей для точного определения причин возникновения проблемы и выработки решения. Как идти в ногу с изменчивым глобальным рынком Чтобы производство высококачественного мобильного контента стало реальным, возможности инструментов его разработки должны успевать за меняющимися требованиями рынка. В последнее время пользуются спросом приложения следующего поколения, предлагающие расширенные возможности, такие, как поддержка системы глобального позиционирования (GPS) и работа в Интернет. Удовлетворить данные потребности без того, чтобы столкнуться со сложностями и затруднениями, невозможно. Исследование, проведенное в 2007 г. компанией Harris Interactive, показало, что 80% потребителей мобильных услуг отказываются от телекоммуникационных сетей, марок оборудования или ПО, а также от отдельных приложений после получения негативного опыта их использования. По мере роста сложности мобильного контента и приложений растет и сложность возникающих проблем. Таким образом, для разработчика исключительно важно провести тщательное тестирование и проверку материалов для того, чтобы обеспечить высокое качество продукта, поступающего к потребителю. С помощью DeviceAnywhere разработчики и тестировщики могут совместно с коллегами, находящимися в любой точке мира, получать удаленный доступ к реальным мобильным устройствам, запускать процессы мониторинга, обеспечивающие обнаружение неполадок до того, как продукт попадет в руки конечных пользователей и создавать сценарии автоматического тестирования, сокращающие затраты времени и труда. Все эти возможности позволяют разработчикам поставлять на рынок высококачественный мобильный контент, имеющий расширенные функции, быстрее, чем возможно при ручном тестировании. На рисунке 1 приведен пример использования технологии Direct-to-Device, обеспечивающей пользователю интерактивный доступ к реальному устройству через Интернет. При использовании технологии Direct-to-Device пользователь имеет возможность управлять данными, передаваемыми в устройство и просматривать данные, получаемые из устройства. В основе технологии лежит стенд, подключающий к серверу интерфейсы ввода/вывода компонентов мобильного устройства - клавиатуры, сенсорного экрана, дисплея, динамика, ламп подсветки, микрофона, аккумулятора и т.д.
Рисунок 1: Один из центров обработки данных DeviceAnywhere, в котором реальные устройства подключены к серверам, что позволяет пользователям получать доступ к более чем 1,500 мобильных устройств со своих рабочих станций. Входящие сигналы, например, нажатия клавиш, передаются по Интернету с рабочей станции пользователя на мобильное устройство; исходящие сигналы, такие, как видео- и аудиоданные, передаются обратно в режиме реального времени, что обеспечивает комфортное взаимодействие с устройством. Таким образом, с помощью несложного интерфейса вы можете работать с устройством так, как если бы оно находилось в ваших руках - удаленно нажимать клавиши, работать с сенсорными экранами, видеть подсветку и слышать звуки из динамика. Более того, все сценарии взаимодействия могут быть зафиксированы и сохранены, что позволяет пользователям отслеживать состояние процесса разработки и тестирования, а также находить источники проблем и неполадок. В дополнение, подписчикам предоставляется возможность использования выделенных устройств (предназначенных исключительно для использования их персоналом), находящихся как в собственных центрах обработки данных, так и в любой другой точке земного шара. На рисунке 2 показан слой автоматизации, обеспечивающий создание как визуальных сценариев, так и программных, использующих API. Используя возможности автоматизации, пользователи могут запускать сценарии автоматического тестирования и взаимодействия с телефоном.
Рисунок 2: Слой автоматизации обеспечивает создание как визуальных сценариев, так и программных, использующих API. Кроме того, слой автоматизации обеспечивает полнофункциональную среду мониторинга, позволяющую разработчикам обнаруживать ошибки и проблемы в приложениях до того, как они попадут в руки конечных пользователей. В дополнение, сценарии автоматического тестирования позволяют избежать потерь времени и трудозатрат на тестирование приложений на реальных устройствах. Сценарии могут быть запущены на любом устройстве на ночь или в другое время по расписанию, позволяя разработчикам уделять свое время более сложным проблемам и остальным задачам разработки. Технологии, в совокупности составляющие решение DeviceAnywhere, дают разработчикам удаленный доступ к 1,500 реальных устройств со всего мира через простой интерфейс, доступный через Интернет. Решение DeviceAnywhere не зависит от конкретного устройства, телекоммуникационной сети или операционной системы и поддерживает весь спектр мобильных устройств, что дает разработчикам возможность доступа к обширному банку телефонных аппаратов, содержащему любое устройство, которое может потребоваться для работы. Применение для тестирования технологии DeviceAnywhere снижает потребность в ручном тестировании и, следовательно, сокращает сопутствующие затраты и потери эффективности. Возможности взаимодействия позволяют группам разработчиков, к примеру, из США совместно работать с группами из Японии над одним проектом и с одним устройством. Интеграция с продуктами Rational С начала 2008 г. в DeviceAnywhere появилась поддержка интеграции с IBM Rational ClearQuest. Интеграция позволяет сообществу пользователей продуктов IBM тестировать мобильные приложения на более чем 1,200 мобильных устройствах, используя ClearQuest для управления тестированием и отслеживания результатов. Пользователи могут применять слой автоматизации тестирования DeviceAnywhere для создания и автоматического выполнения скриптов на мобильных устройствах и ClearQuest для управления выполнением тестов, отслеживания результатов и управления запросами на изменение как показано на рисунке 3.
Рисунок 3: Пользователи могут применять слой автоматизации тестирования DeviceAnywhere для создания и автоматического выполнения сценариев на мобильных устройствах и ClearQuest для управления тестированием, отслеживания результатов и управления запросами на изменение. Пользователи могут просматривать и редактировать сценарии с помощью интерфейса DeviceAnywhere Pro, который можно запустить как из ClearQuest так и из DeviceAnywhere. После того, как сценарий готов к работе, пользователи могут запускать его путем выполнения сконфигурированного варианта тестирования, связанного с ClearQuest. С помощью ClearQuest пользователи могут получать информацию о состоянии выполнения сценариев наряду с протоколом тестирования, содержащим текущий шаг и результат выполнения каждого из них. Если выполнение теста завершилось ошибкой, пользователь может просмотреть журнал, содержащий детальную информацию о месте возникновения ошибки и, таким образом, определить участок кода, в который необходимо внести изменения. Кроме того, все обнаруженные проблемы и дефекты регистрируются в ClearQuest, что обеспечивает бесшовный процесс тестирования, на результат которого можно легко сделать ссылки. Использование механизма интеграции DeviceAnywhere/ClearQuest Конфигурации связи ClearQuest и DeviceAnywhere создаются с помощью простого модуля развертывания. Конфигурация включает следующие параметры:
Перечисленная выше информация необходима для того, чтобы пользователь мог запускать DeviceAnywhere из интерфейса ClearQuest и связывать варианты тестирования, сконфигурированные для ClearQuest, со сценариями DeviceAnywhere. В диалоговом окне, показанном на рисунке 4, пользователь может выбрать сценарий DeviceAnywhere, который необходимо привязать к варианту тестирования, сконфигурированному для ClearQuest.
Рисунок 4: В диалоговом окне, показанном на рисунке 4, пользователь может выбрать скрипт DeviceAnywhere, который необходимо привязать к сценарию тестирования, сконфигурированному для ClearQuest. Просмотр и редактирование сценариев DeviceAnywhere Пользователи могут просматривать и редактировать сценарии с помощью интерфейса DeviceAnywhere Pro (см. описание продукта DeviceAnywhere в заключительной части статьи), известного, как DeviceConductor. Данный интерфейс легко запустить из ClearQuest - необходимо только щелкнуть правой кнопкой на сконфигурированный вариант тестирования, связанный со сценарием DeviceAnywhere и выполнить команду "open script" появившегося меню. Если приложение DeviceAnywhere уже выполняется на рабочей станции пользователя, сценарий будет открыт для просмотра в клиентском интерфейсе DeviceAnywhere. В противном случае оно запустится автоматически и откроет сеанс работы для данного пользователя. Затем будет отображено окно DeviceConductor, содержащее сценарий. Теперь пользователь может выбирать устройства и редактировать сценарии, как показано на рисунке 5.
Рисунок 5: DeviceConductor позволяет выбирать устройства и редактировать сценарии, находящиеся в системе вложенных каталогов в верхней левой части экрана. Выполнение тестов из ClearQuest Когда сценарий готов к работе, пользователи могут запустить его путем выполнения сконфигурированного варианта тестирования, связанного с данным сценарием через ClearQuest, как показано на рисунке 6.
Рисунок 6: Выполнение сконфигурированного варианта тестирования, связанного со сценарием ClearQuest предоставляет высокоуровневую информацию о состоянии выполнения сценариев. Просмотр результатов тестирования После завершения варианта тестирования, становятся доступными как высокоуровневые, так и детальные результаты его выполнения. Пользователи могут просматривать протокол тестирования (Test Log), как показано на рисунке 7. Для сценариев тестирования, завершившихся ошибкой, доступна более подробная информация по шагу, на котором произошел сбой, включая все данные, переданные в устройство и полученные из него.
Рисунок 7: Просмотр протокола тестирования Для получения детальной информации, необходимо выполнить команду View Detailed Log и, затем, команду View Detailed Results на приведенном выше экране. Результаты тестирования, сохраненные DeviceAnywhere Pro, появятся в разделе Results приложения ClearQuest, как показано на рисунке 8.
Рисунок 8: Результаты тестирования, сохраненные DeviceAnywhere Pro, появятся в разделе Results приложения ClearQuest. Пользователи могут использовать ClearQuest для регистрации проблем выявленных в ходе выполнения вариантов тестирования. Чтобы пользователи могли видеть точные результаты тестирования и информацию о возникших ошибках, сохраненные результаты тестирования привязываются с помощью DeviceAnywhere Pro к зарегистрированным дефектам, как показано на рисунке 9.
Рисунок 9: Просмотр точных результатов тестирования и информации о возникших ошибках Компания DeviceAnywhere, основанная в 2003 г., находится в Сан-Матео, Калифорния и имеет дополнительные офисы в Великобритании, Германии, Франции, Японии, Канаде и Пакистане. С момента запуска сервиса DeviceAnywhere в январе 2006 г. разработчики могут пользоваться услугами удаленного доступа к мобильным устройствам и комплексным решениям в области поддержки разработки для мобильных устройств, обеспечивающим создание и распространение высококачественного мобильного контента. В настоящее время DeviceAnywhere поддерживает более 1,000 реальных устройств, соединенных с серверами и работающих в более чем 25 телекоммуникационных сетях по всему свету. При этом число поддерживаемых устройств и сетей постоянно растет. Кроме того, экономичная модель SaaS, предлагаемая DeviceAnywhere позволяет снижать затраты на ручное тестирование и, за счет этого, выводить контент на рынок быстрее, чем было возможно ранее. В 2008 г., DeviceAnywhere планирует продолжить расширение производственных мощностей в Азии и Западной Европе. DeviceAnywhere предлагает решения, обеспечивающие полный цикл разработки мобильных приложений. Помимо стандартного сервиса в линейке DeviceAnywhere имеются продукты с еще более богатыми функциональными возможностями. DeviceAnywhere Pro представляет собой полнофункциональную интеллектуальную платформу, позволяющую создавать и выполнять автоматические тесты на более чем 1,200 реальных устройствах, работающих в глобальных телекоммуникационных сетях. В отличие от альтернативных продуктов, использующих эмуляторы или симуляторы, DeviceAnywhere Pro сочетает удобство инструментов автоматического тестирования с точностью, которую обеспечивает применение реальных устройств, что позволяет получать надежные, воспроизводимые и публикуемые результаты. С помощью DeviceAnywhere Pro пользователи могут осуществлять автоматическое тестирование приложений, фиксировать его результаты, создавать тестовые сценарии любой сложности, проверять работу одного и того же сценария на нескольких устройствах и запускать сценарии по удобному расписанию. DeviceAnywhere Monitoring позволяет поставщикам мобильного контента непосредственно с их рабочих станций осуществлять мониторинг работы своих приложений на реальных мобильных устройствах, работающих в реальных телекоммуникационных сетях. Используя проверенную технологию Direct-To-Device™ компании Mobile Complete, пользователи могут собирать важную информацию, такую, как время загрузки мобильного контента в различных телекоммуникационных сетях и данные о том, одинаково ли отображается контент различными моделями мобильных телефонов. DeviceAnywhere Monitoring дает пользователям возможность находить неполадки в контенте до того, как тот попадет в руки конечных пользователей, осуществлять сбор и анализ результатов тестирования, понимать закономерности изменения производительности, получать значения соответствующих метрик при воспроизведении видеоизображения. DeviceAnywhere Consumer предлагает виртуальные копии мобильных телефонов, построенные на основе данных, полученных от реальных устройств с помощью технологии Virtual-Device™. Моделью передается пользователю в виде HTML-страницы, содержащей механизм отображения интерфейса телефона, использующий новейшие технологии Web 2.0. Все это позволяет создать полностью интерактивный виртуальный мобильный телефон, доступный через Интернет. С помощью DeviceAnywhere Consumer магазины могут предоставить покупателям возможность пробного использования виртуальных мобильных устройств, приложений и сервисов через Интернет. Покупатели могут изучать различные мобильные устройства, оценивать работу контента и приложений на этих устройствах, что позволит им привыкнуть к ним настолько, чтобы выбрать наиболее подходящее устройство и, кроме того, лучше разобраться с возможностями конкретных моделей. Система DeviceAnywhere Consumer может быть включена в инфраструктуру службы поддержки пользователей, что позволит поставщикам телекоммуникационных услуг, производителям и разработчикам повысить качество обслуживания и увеличить число потребителей. Помимо этого, систему можно использовать для обучения сотрудников работе с различными моделями мобильных устройств. |