1. Записывайте сценарии использования мобильных устройств. Не существует лучшего способа, чем описание на бумаге каждого возможного пользовательского сценария из подготовленного вами списка. Чем более подробно описаны сценарии, тем лучше. Определите круг потенциальных пользователей мобильного приложения. Определите, какие устройства они могут иметь при себе. Определите, какие задачи они смогут решать при помощи данного программного обеспечения. Определите где и когда они могут использовать ваше мобильное приложение. Определите длительность и частоту возможных сеансов взаимодействия с устройством. Запись всей этой информации на бумаге обострит ваше мышление и позволит получить конкретные отзывы от других участников рабочей группы, потенциальных пользователей приложения и других заинтересованных сторон. Не менее важно указать также то, для выполнения чего ваше мобильное приложение не предназначено. Тем самым будут полностью определены границы и сфера применения вашего мобильного приложения
2. Определите, какая часть системы перемещается на устройство. Будет очень неплохо, если вы предварительно разделите приложение на части, соответствующие серверу, устройству и настольному компьютеру, если это только возможно. Это позволит вам получить хорошее представление о запросах вашего мобильного приложения в отношении обработки, хранения и обмена данными.
3. Создайте начальный прототип. Располагая современным инструментарием RAD (Rad Application Development — быстрая разработка приложений), можно сравнительно легко создавать начальные прототипы того, что вы задумали. Создание прототипов — отличная вещь. Подготовка и выполнение прототипов на устройстве поможет вам лучше изучить возможности и ограничения выбранного вами оборудования и выявить проблемы проекта, которые вы могли упустить. Помимо этого, наличие выполняющегося прототипа сделает возможной оценку дееспособности определенных вами сценариев использования приложения
4. Проанализируйте, подходит ли разработанный вами пользовательский интерфейс прототипа для выбранного целевого устройства. Создание прототипа приложения ясно покажет вам, каким образом приложение будет представлять данные и взаимодействовать с пользователем. Не каждое приложение подойдет для любого устройства. Прототип продемонстрирует вам, как именно будут выглядеть и работать определенные вами сценарии использования приложения на физическом оборудовании устройства. В зависимости от полученных при этом результатов может потребоваться уточнение сценариев, изменение парадигмы пользовательского интерфейса и даже выбор другого целевого мобильного устройства.
5. Используя опыт работы с прототипом, уточните модель данных приложения. Работа с прототипом приложения должна помочь вам лучше понять, с какими типами данных придется иметь дело приложению, и в каких условиях будет осуществляться отправка и получение этих данных. У вас будет достаточно информации для того, чтобы определить, необходимо ли использовать локальную базу данных, и какой тип локального хранилища может потребоваться. Как и в случае пользовательского интерфейса, потребности вашего приложения в данных могут вынудить вас к пересмотру решения о выборе целевого оборудования на основании доступности баз данных или требований к хранению данных.
6. Проанализируйте, реализуемы ли для выбранного целевого устройства заложенные в прототипе приложения допущения, касающиеся вопросов обмена информацией. Критически оцените потребности вашего мобильного приложения в обмене информацией и взаимодействии с другими системами. Требуется ли высокоскоростной доступ в сеть? Существует ли необходимость в роуминге? Смогут ли соединение с сетью и синхронизация данных через настольный или переносной компьютер в достаточной мере удовлетворить потребности вашего мобильного приложения в обмене информацией?
7. Приступите к разработке программного обеспечения! Вооружившись тщательно продуманным списком пользовательских сценариев, первоначальным представлением о том, каким должно быть подходящее разбиение приложения на отдельные части, и ценными сведениями, полученными в процессе апробирования экспериментальной модели приложения, вы будете вполне готовы приступить к его разработке.