Содержание


Создание работающих мобильных приложений

Пять советов от экспертов

Comments

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

В данной статье излагаются основные идеи панельной дискуссии, состоявшейся в рамках прошедшей в августе 2013 года на IBM developerWorks Mobile Frontiers Web-трансляции Тестирование мобильных приложений: проверенные методики для создания работающих приложений (см. раздел Ресурсы). Специалисты по мобильным технологиям, работающие с IBM MobileFirst и партнерскими организациями, обсуждали технологии и подходы, помогающие клиентам овладеть средой мобильного тестирования, возможности интеграции тестирования, автоматизацию тестирования и ITW-тестирование, а также растущее значение облачной среды для мобильных устройств.

Мобильные приложения заставляют переосмыслить представления о качестве

Мобильные приложения в значительно большей степени, чем настольные и Web-приложения, оцениваются с позиции пользовательских представлений о качестве. В этой ситуации высокое качество больше не означает просто отсутствие ошибок. Для оценки качества мобильного приложения необходимо посмотреть на него с разных сторон. Нужно учитывать как внешние (удобство использования, производительность и контент), так и внутренние (эксплуатационное качество и безопасность) аспекты.

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

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

Определение требований по-прежнему важно

Стратегия mobile-first является поворотным пунктом для многих корпоративных клиентов, которые понимают, что мобильное приложение стало основным способом взаимодействия клиентов с их организациями. Это уже не просто вещь, которую неплохо иметь; в некоторых случаях мобильное приложение становится двигателем бизнеса и лицом компании.

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

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

Уникальные особенности тестирования мобильных приложений

Фрагментация рынка предоставляет разработчикам и пользователям новые возможности и широту выбора. Однако при тестировании проявляется обратная сторона этого выбора. В настоящее время на рынке насчитывается порядка 12 000 одних только уникальных Android-устройств. Такой уровень фрагментации необходимо учитывать в матрице тестирования для нового мобильного приложения.

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

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

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

Переосмысление стратегии тестирования

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

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

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

Модель FURPS (функциональность, удобство использования, надежность, производительность, поддерживаемость) дает удобную классификацию требований к тестированию мобильных приложений (см. раздел Ресурсы). Добавьте в нее безопасность, конфиденциальность и контент, поскольку они играют важную роль в пользовательском восприятии качества. Бизнес-менеджеры должны внимательно изучить целевой рынок, назначение приложения и уровень риска. Необходима постоянная явная и неявная обратная связь с разработчиками, тестировщиками и пользователями по вопросам качества.

Баланс между качеством и временем выхода на рынок

Бизнес-модель таких компаний, как Twitter, Facebook и Google, основывается на поставке на рынок новых функциональных возможностей. Их маркетинговая стратегия состоит в поставке бесплатных приложений. Каждая из этих компаний научилась не обращать внимания на несущественные ошибки, чтобы успеть запустить новое приложение в момент наибольшего на него спроса. Ошибку, которая не влияет на 100 000 человек, исправлять не обязательно. За последние пять-десять лет эти изменения трансформировали жизненный цикл разработки программного обеспечения.

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

Таким образом, перед поставщиками финансовых услуг встают следующие задачи:

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

Ключи к успеху тестирования мобильных приложений

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

Интеграция тестирования

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

Интеграция всех платформ, которые поддерживают мобильное приложение и управляют его работой, не должна препятствовать раннему тестированию. Виртуализация сервисов с помощью таких решений, как IBM Rational Test Workbench и Rational Test Virtualization Server (см. раздел Ресурсы), дает жизнеспособный обходной путь для некоторых сценариев интеграции и тестирования мобильных приложений. Создание в тесте заглушек для сервисов, от которых зависит мобильное приложение, позволяет разработчикам выполнять тестирование интеграции в процессе разработки приложения согласно графику.

Разработчики могут использовать Rational Test Workbench для автоматизации тестирования пользовательского интерфейса приложения, а также тестирования производительности и функциональности. IBM Rational Test Workbench служит для тестирования интеграции, виртуализации серверных сервисов и автоматизации тестирования пользовательского интерфейса. Виртуализация и автоматизация тестирования пользовательского интерфейса также используются для тестирования непредвиденных условий среды.

Автоматизация тестирования

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

Для групп, разрабатывающих стратегию автоматизированного тестирования мобильных приложений, ключевыми являются три вопроса:

  1. Как реализовать эффективную автоматизацию тестирования для множества устройств?
  2. Как реализовать эффективную автоматизацию, требующую минимальных изменений для конкретной версии?
  3. Как реализовать полную автоматизацию тестирования?

Ответы на эти вопросы определяют уровень эффективности тестирования и полноту покрытия, которой может достичь проект.

Тестирование в реальных условиях

ITW-тестирование (тестирование в реальных условиях) – это привлечение профессиональных тестировщиков к тестированию приложения в реальных сценариях и средах. Такое тестирование выполняется на реальных устройствах, чтобы гарантировать ожидаемое поведение приложения в различных условиях. ITW-тестирование отличается от тестирования в идеальных лабораторных условиях. Его выполняют реальные пользователи, представляющие целевой рынок приложения и пытающиеся определить соответствие приложения заявленному стандарту качества.

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

Заключение

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

  • Внедрение автоматизации тестирования в жизненный цикл DevOps в рамках конвейера выпуск-поставка.
  • Уменьшение фрагментации путем улучшения стандартизации безопасности, разработки и других факторов. (Это знакомо фирмам, которые помнят прежние времена тестирования ПО для Интернета.)
  • Адаптация приложений, созданных для мобильных устройств, к развивающимся средам Интернета вещей, таким как автомобили, телевизоры и холодильники.

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


Ресурсы для скачивания


Похожие темы


Комментарии

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Мобильные приложения, Rational
ArticleID=985635
ArticleTitle=Создание работающих мобильных приложений
publish-date=10092014