Файл: Этапы разработки, тестирования и ввода в эксплуатацию мобильных приложений (Описание мобильных приложений).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 29.03.2023

Просмотров: 218

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Глава 1 Описание мобильных приложений

1.1 Классификации приложений:

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

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

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

Развлекательные (игры, обработка изображений, аудио и видео форматов);

Помощники (поиск информации, приложения погоды и т.д.);

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

I-commerce (возможность покупки через приложения);

Приложения B2B в структуре (внутренние системы контроля и организации процессов внутри компании).

У каждого есть свои преимущества и недостатки, способы монетизации и конверсионный потенциал — чтобы сделать правильный выбор, для начала обратитесь к бизнес-аналитику и техническому специалисту, которые проведут аудит и выдадут рекомендации. От общей картины перейдем к процессу создания приложения и команды, которая в этом участвует [6].

1.2 Аспекты разработки мобильных приложений

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

Многозадачность

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


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

Форм-фактор

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

Устройство и фрагментация ОС

Важно принимать во внимание различия устройств на протяжении жизненного цикла разработки программного обеспечения:

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

Дизайн– При разработке User eXperience (UX) приложения, следует иметь в виду пропорции различных экранов и их размеров. Кроме того, при разработке пользовательского интерфейса (UI) приложения, следует рассматривать различные разрешения экрана [4].

Разработка– При использовании какой-либо функции из кода, наличие этой функции всегда должны быть сначала протестировано. Например, перед использованием функций устройств, таких как камера, всегда вначале опросите ОС на присутствие этого устройства. Затем при инициализации функции устройства, требуется проверить, что ОС в настоящее время поддерживает устройство, а затем используйте эти параметры конфигурации.

Testing– Невероятно важно начать тестировать ваше приложение как можно раньше и тестировать как можно чаще на разных реальных устройствах. Поведение устройств, даже с теми же аппаратными спецификациями может очень сильно различаться.

Ограниченность ресурсов

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


Кроме того ресурсоемкие приложения, такие как игры или программы распознавания текста может серьёзно загрузить мобильный процессор и отрицательно повлиять на производительность устройства.

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

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

2.1. Абстракция идеи.

Все начинается именно с абстракции идеи. Для прохождения этого этапа необходимо пройти следующее.

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

Определение целевой аудитории: необходимо знать, какую именно аудиторию приложение должно охватывать.

Анализ конкурентов: необходимо знать, что другие приложения той же категории включают в себя, а также какие услуги они предлагают клиентам. Это исследование необходимо, чтобы сделать приложение выделиться в толпе. Дополнительная функция в дополнение к другим приложениям, доступным на рынке, принесет ваше приложение, которое дополнительные очки домового. И да,это не простое дело с миллионами и миллиардами приложений, идущих раундов в магазине Google Play. После того, как идея взлетела, затем наступает реализация. Но как долго это продлится, чтобы получить эту идею? Это занимает очень много времени и продолжительность неизбежна, так как качество приложения играет жизненно важную роль в лестнице на вершину.

Оценка бюджета.

Приложение будет бесплатным или платным?

Оговоренное время для запуска приложения.

Кому доверить задачу разработки приложений? Необходимо исследование компании мобильной разработки приложений на Ближнем Востоке и возложить на андроид/iOS App развития компании по Вашему требованию [2].

Аналитика не всегда входит в процесс разработки мобильного приложения. Бывает, что клиенты самостоятельно выполняют бизнес-анализ приложения, либо приходят с готовым списком требований. Но те приложения, которые прошли этот этап у компании-разработчика, выигрывают, — именно аналитика помогает бизнесу и разработчикам достичь единого видения, и уже на основе этого сделать переоценку требуемых работ и получить детальный бюджет проекта[1].


2.2 Построение каркаса

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

2.3 Оценка технологии

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

Некоторые из них - это:

Принятие решения о платформе, такой как android / iOS, с которой приложение, как ожидается, будет совместимо.

Какая технология необходима для реализации приложения на выбранной платформе?

Какие фреймворки необходимы для этого?

К каким функциям в телефоне приложению потребуется доступ?

Какую технологию следует использовать в серверной части в зависимости от данных, используемых приложением?

2.4 Прототипирование приложения

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


"Стежок во времени спасает девять", не так ли? Если вы являетесь клиентом, не стесняйтесь вносить как можно больше изменений и вкладывать больше идей в приложение на этом этапе, потому что творчество на более позднем этапе будет стоить вам состояния и задерживает выпуск приложения.

Обратная связь смогла быть проанализирована. Перспективы пользователей помогут улучшить приложение и вывести его на более высокий уровень. Есть много инструментов, доступных на рынке, чтобы сделать прототипирование легким и эффективным [5].

2.5 Дизайн

UI и UX звучат одинаково, но являются двумя разными функциями все вместе. Пользовательский интерфейс нацелен на внешний вид и отображение экрана приложения, а UX нацелен на такие функции, как отзывчивость приложения. Пользовательский интерфейс и UX должны быть идеально сбалансированы, и они идут рука об руку, чтобы включить взаимодействие с пользователем в приложении.

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

Рисунок 1 Варианты дизайна

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

Кроме того, есть еще Раскадровка: в технических требованиях, которые вы собрали, если приложение разработано для платформы iOS, пользовательский интерфейс будет разработан раскадровкой. Это помогает создавать экраны и соединять их. Xcode предлагает визуальный редактор для раскадровок.

2.6 Разработка

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

Разработка серверной части

У многих приложений это большая головная боль, особенно у стартап проектов, поскольку данному этапу не уделяется сразу много внимания. А ведь именно серверная часть во многих проектах является его ядром. То есть, если разработка клиентской и серверных частей будут происходить практически независимо друг от друга, то и работать в итоге они будут также,  каждая сама по себе. А без корректного клиент-серверного взаимодействия можно забыть о стабильной работе приложения, как бы оно хорошо и правильно не было реализовано.