Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

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

Содержание:

Введение

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

В теме данной курсовой работы подробно рассматриваются этапы идеи создания, разработки, тестирования и релиза отдельно взятого мобильного приложения. Как правило, это трудоемкий процесс, требующий от разработчика глубоких познания в сфере веб-разработки, разработки под Android, IOS и, в некоторых случаях, под платформу Windows. Поэтому чаще задача поделена на группу лиц, каждое из которых обладает познаниями в отдельно взятой области. Это не обязательно только разработчики и программисты; в процесс также включены тестировщики, менеджеры по маркетингу, дизайнеры и специалисты в SEO.

В качестве основных источников задействованы материалы из сети Интернет, выложенные в свободном доступе: учебное пособие Белова М. П. по алгоритмизации в информационных системах, «Модели и алгоритмы поддержки принятия решений при продвижении на промышленные рынки прикладных программных продуктов: монография» авторства Ехлакова Ю. П., Бараксанова Д. Н., Пермяковой Н. В., а также материалы с официального сайта android.com и прочие авторитетные издания.

Остальные источники указаны в библиографии.

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

Разработка

Предварительный анализ рынка и целевой аудитории

Большинство IT-компаний ориентируются на две модели: первая, так называемая «индийская модель» - разработка программного обеспечения под заказ, с ориентацией на пожелания заказчика. Вторая – «Израильская модель» или «продуктовая модель», где делается ставка на продукт, представляющий интерес для более широкого круга пользователей.

В первом случае команда разработчиков или отдельно взятый разработчик полностью зависят от пожеланий заказчика; минус данной модели в «плавающем» техническом задании и возможности изменения оного практически на любом этапе разработки.

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

Остановимся на второй модели, которая ярко иллюстрирует основные понятия в бизнесе и рыночных отношениях (Рис. 2).

«Под товаром на рынке понимается любой продукт производственно-экономической деятельности в материально-вещественной форме, являющийся объектом купли-продажи и соответственно рыночных отношений, возникающих между продавцами и покупателями.» [[1]]

Главная задача бизнес-коммуникации – донести до пользователя информацию о:

  1. Существовании продукта;
  2. Его потребительской ценности. (См. рис. 1)

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

Далее идет анализ конкурентного рынка, сравнение аналогов, выявление их сильных и слабых сторон.

Для успешной обработки ЦА, согласно основам маркетингового продвижения, исследуются и применяются пять сложившихся принципов:

  1. Различия группы потребителей. Для выявления различий и, соответственно, разработки дополнений определенной группе пользователей.
  2. Сходство потребителей. Для выявления показателей, присущих всему потребительскому сегменту.
  3. Оптимальное количество потребителей. Рынок потенциальных клиентов должен быть обширным.
  4. Характеристика потребителей. Она же, по сути, и является анализом ЦА.
  5. Достижимость потребителей. В контексте разработки мобильного приложения – потребитель должен быть активным пользователем сети Интернет с мобильных устройств.

«Базовой предпосылкой при выборе конкретных медиа и формирований медийного плана кампании является следующее. Необходимо обеспечить максимальный охват целевой аудитории при оптимальной частоте контакта в течение установленного периода времени при минимальных / оптимальных затратах». [[2]]

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

Прототипирование

«Прототипирование – деятельность людей, которые занимаются разработкой и созданием вещей.» [[3]]

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

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

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

Существует пять принципов, на которые ориентируются при создании архитектуры приложения:

1.) Расстановка приоритетов. Функции, которые можно скрыть в выпадающем меню без вывода на непосредственно главный экран.

2.) Распределение пространства. Как было сказано выше: удобство использования.

3.) Основные интерактивные элементы, которые показываются на экране, когда приложение запущено. Собственно, с них начинается работа.

4.) Опциональность. Схожа с расстановкой приоритетов, с разницей в том, что именно на этом этапе решается, какие опции можно урезать без вреда основному функционалу.

5.) Переход от одного экрана к другому. Анимация, статичные переходы, исчезновение и прочие декоративные эффекты.

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

Чуть сложнее обстоит с мобильными версиями социальных сетей, где в минимум деталей приходится закладывать максимум возможностей (пример: мобильное приложение Вконтакте). Имея доступ к полной версии, редкий пользователь довольствуется ограниченным функционалом. Здесь в игру вступают нюансы, как значительные, так и мелкие: начиная с авторских прав (та же музыка или воспроизведение видео) и заканчивая невозможностью вместить все возможности отдельно взятой социальной сети в мобильное приложение. В последнем случае наличествует риск пожертвовать оптимальностью «веса» и скорости работы. Впрочем, тот же Вконтакте с этой задачей практически справляется.

«Прототип, независимо от точности, функциональности или способа изготовления, отражает цели разработки и симулирует ряд ее состояний. Каркасное проектирование и раскадровка – статические представления модели и при всех своих достоинствах не могут отражать множественность состояний. Разница заключает в симуляции и множественности состояний.» [[4]]

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

В сфере мобильных приложений рунета, если взглянуть на популярные магазины, все же лидируют приложения, изначально рассчитанные на выход и использование оных с переносных устройств (Instagram, мобильные игры и так называемые «читалки»).

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

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

Выбор средств и среды разработки

Для начала разберем, что такое мобильное устройство.

Соколова В. В. дала весьма емкую характеристику:

«Мобильными устройствами считаются компактные устройства, которые обеспечивают подключение к локальным и глобальным компьютерным сетям с помощью беспроводных технологий или технологий цифровой связи.» [[5]]

Широкое распространение WI-FI, а также 4G, практически уравняли возможности ПК и современного смартфона. Среди множества ОС, большая часть пользователей приходится на Android (см. рис. 4).

Именно на этой ОС мне хотелось бы остановиться.

Парамонов И. В. утверждает [[6]], что данная операционная система давно вышла за рамки обычного средства для разработки приложений, тем самым размыв само понятие мобильного приложения. Богатый выбор инструментов, среды, гибкость настройки, а также практически неограниченный функционал, совершенствующийся с каждым годом, приобрел немало поклонников среди разработчиков. Операционная система Android на пике популярности уже не первый год. Она мало уступает аналогам, но благодаря своей распространенности и довольно быстрому развитию, в текущий момент остается на первом месте, опережая таких гигантов в сфере информационных технологий как Windows и IOS.

Аксенов К. В в своей статье [[7]] выделяет три среды разработки:

  1. Eclipse.
  2. Intellij IDEA.
  3. Android Studio.

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

«Android SDK — это набор инструментов, позволяющих осуществлять разработку приложений для платформы Android. В его состав входят библиотеки, предоставляющие программисту API платформы Android, утилиты для создания и сборки приложений, управления образами виртуальных устройств и выполнения других действий. Android SDK распространяется бесплатно для всех основных платформ и может быть загружен с сайта Google.» [[8]]

Для компиляции приложений на Android требуется Java Development Kit (JDK), в настоящее время он распространяется бесплатно на официальном сайте Oracle. Выбор среды разработки необязателен, осуществление операций возможно и с использованием командной строки, однако большинство разработчиков предпочитает пользоваться инструментарием. Также платформа содержит большое количество библиотек, преимущественно на языках C/C++, ориентированных как на ускорение, так и на графику.

Классическим выбором при разработке приложений ранее оставался Java. Самый распространенный вид при разработке приложений – мидлет, он же специальный архив JAR. Несмотря на то, что Java медленно, но верно вытесняется более новыми и гибкими языками, у данного языка есть неоспоримые достоинства:

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

- гибкость разработки. Каждый разработчик сам решает, на каком устройстве и как именно будет работать готовое программное обеспечение;

- большой набор библиотек в помощь разработчику.

Герберт Шилдт, один из лучших программистов на языке Java, также отметил приятную особенность данного языка:

«Защита от атак реализуется путем создания специальной среды для выполнения аплета, не позволяющей ему обращаться к ресурсам компьютера. При отсутствии такой среды аплет выполняться не может. Возможность загружать аплет с уверенностью в том, что он не нанесет вреда системе, относится к числу наиболее привлекательных особенностей Java.» [[9]]

Согласно Соколовой В. В., процесс разработки от начала и до конца выглядит так:

«- проектирование и кодирование – написание программы;

- компилирование;

- предварительная проверка – выполнение предварительной проверки обработки классов Java до упаковки: проверка использования операций с плавающей точкой и методов завершения в классах Java;

- упаковка архивного файла;

- распаковка и размещение ресурсов приложения под контролем эмулятора;

- запуск приложения с использованием эмулятора;

- отладка, нахождение ошибок и внесение исправлений в исходный код.» [[10]]

В связи с глобальной популяризацией приложений на платформе Android, в дело пошел гибкий, легкоизменяющийся и также набирающий популярность JavaScript в связке с HTML5 и CSS3. Принцип и алгоритм процесса разработки на Java и JS - практически идентичны.

Существует множество языков программирования, средств разработки и операционных систем. Наиболее оптимальным мне кажется сочетание операционной системы Android, среды разработки Android Studio с поддержкой на Java или JS ввиду большого сообщества поддержки и количества вспомогательных средств.

Тестирование и алгоритмизация. Безопасность

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

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

Белов М. П. в своем пособии «Основы алгоритмизации в информационных системах» дает следующее определение алгоритмическому процессу:

«Алгоритмизация задачи – процесс разработки (проектирования) алгоритма решения задачи с помощью ПК на основе ее условия и требований к конечному результату.» [[11]]

У любого алгоритма есть набор свойств, характерный для каждого вида:

- понятность;

- дискретность;

- определенность;

- результативность;

- массовость.

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

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

Тестирование приложения

Кандидат технических наук, доцент Белорусского Государственного Университета информатики и радиоэлектроники С. Куликов дает такое определение понятию «тестирование»:

«Тестирование программного обеспечения — процесс анализа программного средства и сопутствующей документации с целью выявления дефектов и повышения качества продукта.» [[12]] (см. рис. 5)

Соответственно, тестировщик – это специалист, анализирующий программное обеспечение на предмет ошибок и багов. Как правило, обладает базовыми познаниями в программировании, однако нередки случаи, когда тестированием занимается и сам разработчик.

«Тестирование программного обеспечения выполняет две базовых функции: верификацию и аттестацию. В функции верификации и аттестации (verification and validation, V&V) определяются следующим образом:

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

Аттестация (validation) есть гарантия того, что программный продукт удовлетворяет системным требованиям. Цель аттестации заключается в том, что система должна отвечать всем предъявляемым требованиям, так чтобы происхождение каждой функции можно было проследить до конкретного требования заказчика. Другими словами, аттестация дает гарантию того, что строится правильный продукт.» [[13]]

Возьмем абстрактное мобильное приложение, которое нужно проверить на предмет багов и ошибок. В общем и целом, весь процесс характеризуется так:

«Модель разработки ПО (Software Development Model, SDM) - структура, систематизирующая различные виды проектной деятельности, их взаимодействие и последовательность в процессе разработки ПО. Выбор той или иной модели зависит от масштаба и сложности проекта, предметной области, доступных ресурсов и множества других факторов.» [[14]]

То есть, модель разработки – это совокупность данных, включающих в себя подробную документацию, объем задач и, собственно, исходный код, который необходимо протестировать. Существует множество видов МР, самые распространенные из них:

- спиральная,

- гибкая,

- водопадная,

- v-образная,

- итерационная инкрементальная.

Крайне важно следовать заданным в модели алгоритмам.

«Требование (requirement49) — описание того, какие функции и с соблюдением каких условий должно выполнять приложение в процессе решения полезной для пользователя задачи.» [[15]]

Оно же техническое задание. Чем яснее и прозрачнее оно составлено, тем быстрее и лучше будет продвигаться проект. После ТЗ вторым по важности понятием, является упомянутая выше техническая документация – продуктная и проектная.

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

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

Сам процесс тестирования состоит из нескольких этапов:

  1. Планирование. Анализ требований. На данном этапе уточняется объем работы, планируются сроки и выбирается модель разработки, на алгоритм которой будет опираться тестировщик в работе.
  2. Уточнение критериев, по которым будет производиться тестирование.
  3. Стратегия тестирования. Продолжение первого пункта – на данном этапе уточняются первоочередные задачи.
  4. Тест-кейс. Разработка, рассмотрение и прием в работу необходимой документации, разработка тестовых сценариев и сценариев на случай непредвиденных обстоятельств.
  5. Выполнение тест-кейсов. Фиксация обнаруженных дефектов. Передача данных разработчикам.
  6. Анализ результатов и отчетность по итогам тестирования.

Совокупность этапов называется жизненным циклом тестирования. [[16]] (см. рис. 6) После шестого этапа данные окончательно утверждаются и передаются разработчикам, которые обрабатывают исходный код с соответствии с рекомендациями и требованиями, и устраняют дефекты, после чего цикл начинается заново.

«Дефект возникает в результате того, что человек допускает ошибку (error), осуществляя некоторый вид деятельности, который имеет отношение к разработке программного обеспечения. К упомянутым видам деятельности относятся, например, формулирование требований, проектирование программы или написание программного кода. Эта ошибка вкрадывается в рабочий продукт (перечень требований, проектный документ или программный код) в виде неисправности (fault). До тех пор пока эта неисправность (известная еще как дефект (bug, defect)) присутствует в рабочем продукте, она может служить причиной появления других дефектов. Например, если неисправность, допущенная в перечне требований, остается необнаруженной, вполне вероятно, что это приведет к возникновению соответствующих ошибок в проекте системы, в проекте программы, в программном коде и даже в документации для пользователя.» [[17]]

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

Защита информации от злоумышленников

С учетом того, что мобильные ИТ становятся основой повседневных операций, компании, разрабатывающие стратегию мобильной информатизации, должны решить и задачу обеспечения безопасности. Для этого важно понимать характер угроз. (См. рис. 3)

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

- Потеря или кража мобильных информационных устройств;

- Несанкционированный доступ к данным;

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

- Недостатки в управлении устройствами и обеспечении соблюдения правил. [[18]]

Аутентификация и авторизация пользователей требует определенных мер безопасности:

Вход в систему всегда осуществляется посредством ввода логина и пароля. Пароль должен быть сложным и отвечать следующим требованиям:

1.) Длина не более 16 символов;

2.) Пароль должен состоять из больших и малых латинских букв и цифр, включая символы «_», «!», «<», «>»;

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

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

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

Как говорилось выше, восстановить доверие пользователя после краха – весьма трудная задача.

Ввод приложения в эксплуатацию. Релиз

Процесс создания приложения и ввод в эксплуатацию

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

«Он включает в себя следующие основные этапы, показывающие логическую последовательность действий от постановки задачи до получения результата.» [[19]]

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

  1. Формулировка задачи. Компанией, заказчиком или же самим разработчиком поставлена задача и ожидаемый результат, к которому должна прийти команда или отдельно взятый программист.
  2. Математическая модель. Определение математических величин, описывающих задачу, и получение связи между ними. Как правило, используются общепринятые уравнения.
  3. Метод решения задачи. Выбор языка программирования и среды разработки, что будут задействованы в процессе создания мобильной программы.
  4. Составление алгоритма. Или выбор из уже существующих моделей. Помогает просчитать примерные сроки разработки, является ориентировочной последовательностью действий.
  5. Написание кода. А также прототипирование, принятие определенных решений, что могли не учитываться при написании кода: дизайн, расположение элементов, цветовая гамма.
  6. Отладка. Приход к единому решению.
  7. Тестирование. Поиск дефектов в коде, а также незначительных багов. Возвращение к пункту №5. Цикличный режим, повторение.
  8. Собственно, демонстрация готового продукта пользователю. Релиз. Жизненный цикл тестирования - при обнаружении неполадок пользователями, - повторение пунктов 5-7.

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

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

Вывод готового продукта ПО на рынок потребителей

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

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

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

Заключение

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

Итого рассмотрены:

- анализ ЦА;

- основные понятия прототипирования;

- перечень самых популярных средств разработки, рекомендуемых российским IT-сообществом;

- основные моменты в алгоритмизации и тестировании мобильных приложений;

- защита персональных данных пользователя;

- рекомендации по презентации продукта, а также резюмирование всего процесса разработки с начала и до конца.

Тема курсовой работы раскрыта.

Библиография

Антипов К.В. Основы рекламы / К. В. Антипов – ИТК «Дашков и К», 2009 – 326 с.

Белов М. П. Основы алгоритмизации в информационных системах: учебное пособие / М. П. Белов – СПб.: СЗТУ, 2003 – 85 с.

Ехлаков Ю.П., Бараксанов Д. Н., Пермякова Н. В. Модели и алгоритмы поддержки принятия решений при продвижении на промышленные рынки прикладных программных продуктов: монография / Ю. П. Ехлаков, Д. Н. Бараксанов, Н. В. Пермякова. – Изд-во Томск ГУСУиР, 2015 – 128с.

Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 298с.

Парамонов И. В. Разработка мобильных приложений для платформы Android / И. В. Парамонов – ЯРГу, 2015 – 88с.

Соколова В. В. Разработка мобильных приложений: учебное пособие / В. В. Соколова – ТПУ, 2011 – 100с.

Герберт Шилдт. Java 8. Руководство для начинающих / Шилдт Герберт – ИД «Вильямс», 2015 – 712с.

Роберт Калбертсон, Крис Браун, Гэри Кобб. Быстрое тестирование / Роберт Калбертсон, Крис Браун, Гэри Кобб – ИД «Вильямс», 2002 – 374 с.

Т. Варфел. Прототипирование. Практическое руководство / Тодд Заки Варфел, пер. с англ. И. Лейко – М.: Манн, Иванов и Фербер, 2013 – 240 с.

Научные статьи

Аксенов К. В. Обзор современных средств для разработки мобильных приложений / К. В. Аксенов - Московский Институт Электроники и Математики НИУВШЭ, / https://cyberleninka.ru/article/v/obzor-sovremennyh-sredstv-dlya-razrabotki-mobilnyh-prilozheniy

Электронные источники

Официальный сайт Android / https://developer.android.com/guide/

Официальный сайт Oracle / https://www.oracle.com

Клуб программистов (языки программирования) / http://www.programmersclub.ru

Технические документы / https://www.sybase.ru

Сноски

Аксенов К. В. Обзор современных средств для разработки мобильных приложений / К. В. Аксенов - Московский Институт Электроники и Математики НИУВШЭ (https://cyberleninka.ru/article/v/obzor-sovremennyh-sredstv-dlya-razrabotki-mobilnyh-prilozheniy) – 9 с.

Антипов К.В. Основы рекламы / К. В. Антипов – ИТК «Дашков и К», 2009 – 4 с.

Белов М. П. Основы алгоритмизации в информационных системах: учебное пособие / М. П. Белов – СПб.: СЗТУ, 2003 – 13, 20 с.

Ехлаков Ю.П., Бараксанов Д. Н., Пермякова Н. В. Модели и алгоритмы поддержки принятия решений при продвижении на промышленные рынки прикладных программных продуктов: монография / Ю. П. Ехлаков, Д. Н. Бараксанов, Н. В. Пермякова. – Изд-во Томск ГУСУиР, 2015 – 3 с.

Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 14-16 с.

Парамонов И. В. Разработка мобильных приложений для платформы Android / И. В. Парамонов – ЯРГу, 2015 – 9-10 с.

Соколова В. В. Разработка мобильных приложений: учебное пособие / В. В. Соколова – ТПУ, 2011 – 9, 12 с.

Т. Варфел. Прототипирование. Практическое руководство / Тодд Заки Варфел, пер. с англ. И. Лейко – М.: Манн, Иванов и Фербер, 2013 – 6-7 с.

Герберт Шилдт. Java 8. Руководство для начинающих / Шилдт Герберт – ИД «Вильямс», 2015 – 11 с.

Роберт Калбертсон, Крис Браун, Гэри Кобб. Быстрое тестирование / Роберт Калбертсон, Крис Браун, Гэри Кобб – ИД «Вильямс», 2002 – 14, 17 с.

Технические документы / https://www.sybase.ru - 18 с.

Рис. 1 «Информирование пользователя о продукте» (Антипов К.В. Основы рекламы / К. В. Антипов – ИТК «Дашков и К», 2009)

Рис. 2 «Анализ ЦА и программа продвижения» (Антипов К.В. Основы рекламы / К. В. Антипов – ИТК «Дашков и К», 2009)

Рис. 3 «Сводная таблица угроз и мер защиты» (технические документы)

Рис. 4 «Архитектура платформы Android» (Соколова В. В. Разработка мобильных приложений: учебное пособие / В. В. Соколова – ТПУ, 2011)

Рис. 5 «Средства алгоритмического описания» (Белов М. П. Основы алгоритмизации в информационных системах: учебное пособие / М. П. Белов – СПб.: СЗТУ, 2003)

Рис. 6 «Жизненный цикл тестирования» (Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017)

  1. Ехлаков Ю.П., Бараксанов Д. Н., Пермякова Н. В. Модели и алгоритмы поддержки принятия решений при продвижении на промышленные рынки прикладных программных продуктов: монография / Ю. П. Ехлаков, Д. Н. Бараксанов, Н. В. Пермякова. – Изд-во Томск ГУСУиР, 2015 – 7 с.

  2. Антипов К.В. Основы рекламы / К. В. Антипов – ИТК «Дашков и К», 2009 – 215 с.

  3. Т. Варфел. Прототипирование. Практическое руководство / Тодд Заки Варфел, пер. с англ. И. Лейко – М.: Манн, Иванов и Фербер, 2013 – 12 с.

  4. Т. Варфел. Прототипирование. Практическое руководство / Тодд Заки Варфел, пер. с англ. И. Лейко – М.: Манн, Иванов и Фербер, 2013 – 10 с.

  5. Соколова В. В. Разработка мобильных приложений: учебное пособие / В. В. Соколова – ТПУ, 2011 – 7 с.

  6. Парамонов И. В. Разработка мобильных приложений для платформы Android / И. В. Парамонов – ЯРГу, 2015 – 13 с.

  7. Аксенов К. В. Обзор современных средств для разработки мобильных приложений / К. В. Аксенов - Московский Институт Электроники и Математики НИУВШЭ (https://cyberleninka.ru/article/v/obzor-sovremennyh-sredstv-dlya-razrabotki-mobilnyh-prilozheniy)

  8. Парамонов И. В. Разработка мобильных приложений для платформы Android / И. В. Парамонов – ЯРГу, 2015 – 7 с.

  9. Герберт Шилдт. Java 8. Руководство для начинающих / Шилдт Герберт – ИД «Вильямс», 2015 – 30 с.

  10. Соколова В. В. Разработка мобильных приложений: учебное пособие / В. В. Соколова – ТПУ, 2011 – 68 с.

  11. Белов М. П. Основы алгоритмизации в информационных системах: учебное пособие / М. П. Белов – СПб.: СЗТУ, 2003 – 5 с.

  12. Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 7 с.

  13. Роберт Калбертсон, Крис Браун, Гэри Кобб. Быстрое тестирование / Роберт Калбертсон, Крис Браун, Гэри Кобб – ИД «Вильямс», 2002 – 18-19 с.

  14. Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 19 c.

  15. Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 30 c.

  16. Куликов С. Тестирование программного обеспечения. Базовый курс (2-е издание) / С. Куликов - EPAM Systems, 2017 – 19-20 c.

  17. Роберт Калбертсон, Крис Браун, Гэри Кобб. Быстрое тестирование / Роберт Калбертсон, Крис Браун, Гэри Кобб – ИД «Вильямс», 2002 – 18 с.

  18. www.sybase.ru

  19. Белов М. П. Основы алгоритмизации в информационных системах: учебное пособие / М. П. Белов – СПб.: СЗТУ, 2003 – 41 с.