ВВЕДЕНИЕ 3
1 КОНЦЕПЦИЯ РЕШЕНИЯ 6
1.1 Требования к системе 6
1.2 Принцип работы системы 7
2 РЕАЛИЗАЦИЯ ФУНКЦИЙ 9
2.1 Отображение тепловых карт в десктопном приложении 9
2.2 Распознавание эмоций 13
2.3 Статистика эмоций на видеозаписях взаимодействий 16
2.4 Определение возраста и пола пользователя 18
2.5 Алгоритм выявления проблем с UX на основе эмоций 20
2.6 Серверная часть программного решения 23
3 ОПИСАНИЕ РЕШЕНИЯ 25
3.1 Мобильный инструментарий для сбора данных 25
3.2 Десктопное приложение 27
ЗАКЛЮЧЕНИЕ 31
СПИСОК ЛИТЕРАТУРЫ И ИСТОЧНИКОВ 32
ПРИЛОЖЕНИЕ
Опыт пользователя (UX) - это общее ощущение или переживание, которое человек испытывает при взаимодействии с продуктом, например таким, как веб-сайт, мобильное приложение или любое другое ПО. Он включает в себя все эмоции, убеждения, предпочтения, ощущения, физические и психологические реакции пользователя, поведение и достижения, которые возникают до, во время и после использования системы
[13-
Положительный пользовательский опыт повышает качество продукта и заинтересованность пользователей, однако негативный пользовательский опыт может привести к следующим последствиям [2]:
• снижение продаж;
• недовольство клиентов;
• отрицательные отзывы и низкие позиции в рейтинге;
• негативное влияние на бренд;
• повышенная потребность в документации и обучении;
• увеличение запросов и затрат на поддержку.
Включение действий по проектированию пользовательского опыта в стандартный процесс разработки программного обеспечения увеличивают временные и финансовые затраты на создание программного продукта. Однако, в то же время, данные работы на начальном этапе позволяют снизить риски внесения более ресурсозатратных изменений на поздних этапах разработки.
Итеративное юзабилити-тестирование и редизайн находит и устраняет проблемы, а также проверяет направление проектирования. Перед началом разработки проект проверяется как бизнесом, так и пользователями, что исключает дорогостоящие запросы на изменения из-за неудовлетворенных
требований и проблем с юзабилити в конце процесса разработки. Вносить изменения во время определения требований и на этапе проектирования гораздо дешевле, чем вносить изменения во время или после разработки. По оценкам Forrester, на каждый 1 доллар, чтобы решить проблему во время проектирования, будет стоить 5 долларов, чтобы решить ту же проблему во время разработки, а также 30 долларов, чтобы решить ту же проблему после выпуска продукта [3].
Например, исправив проблемы с юзабилити на этапе разработки своего сайта, авиакомпания American Airlines снизила стоимость этих исправлений на 60-90% [4], а компания Sodala Software внедрила сценарии использования в свой процесс разработки, чтобы смоделировать дизайн с учетом потребностей пользователей, сократив количество дефектов на 79% и повысив степень удовлетворенности клиентов [5].
Таким образом, ключом к хорошему пользовательскому опыту является вовлечение пользователей в процесс проектирования UX, анализ их поведения, проектирование на основе принципов человеческого фактора и лучших методик проектирования, тестирование проекта с ними в итеративном процессе проектирования.
Целью данной работы является реализация системы, позволяющей производить сбор данных о взаимодействии пользователей с прототипами, их анализ и находить проблемы с UX на основе эмоций при взаимодействии. Данная система позволит находить и устранять проблемы с UX на этапе прототипирования мобильных приложений.
Задачи, выполнение которых необходимо для достижения поставленной цели:
• проектирование системы для взаимодействия владельца прототипа и тестировщиков;
• реализация отображения тепловых карт нажатий;
• реализация взаимодействия с интерактивным прототипом;
• реализация функционала распознавания эмоций во время взаимодействия тестировщика с прототипом;
• сбор и отображение информации о пользователях;
• реализация просмотра результатов анализа в виде видеозаписей и графиков;
• создание алгоритма для выявления проблем с UX.
В результате выполнения данной дипломной работы была разработана система, позволяющая производить сбор данных о взаимодействии пользователей с прототипами, их анализ и находить проблемы с UX на основе эмоций при взаимодействии с интерактивными прототипами мобильных приложений со следующим функционалом:
• отображение прототипов мобильных приложений;
• запись взаимодействий пользователя и прототипа;
• создание снимков экранов прототипов;
• создание алгоритма для составления тепловой карты и отображения её на основе взаимодействий пользователя с прототипом;
• распознавание эмоций во время взаимодействия пользователя с прототипом;
• взаимодействие с интерактивным прототипом в десктопном приложении;
• сбор и отображение информации о пользователях;
• просмотр результатов анализа в виде видеозаписей и графиков;
• алгоритм для выявления проблем с UX.
Разработанная система позволит находить и устранять проблемы с UX на этапе прототипирования мобильных приложений.
В дальнейшем планируется реализовать работу с прототипами iOS приложений и автоматизацию поиска решений для найденных проблем с UX.
Данная дипломная работа опубликована в открытом доступе в репозитории GitLab и доступна по следующей ссылке:
http: //gititis.kpfu.ru/AjRDinmuhameto v/VKR.