Министерство образования и науки РФ

Федеральное государственное автономное образовательное учреждение

Высшего образования

«КАЗАНСКИЙ (ПРИВОЛЖСКИЙ) ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»

ВЫСШАЯ ШКОЛА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И ИНФОРМАЦИОННЫХ СИСТЕМ

Специальность: 09.03.03. – Прикладная информатика

ДИПЛОМНАЯ РАБОТА

Геймификация процесса обучения верификации ПО

и реализация ее в виде игры

Студент 4 курса

Группа  11- 308

«__»__________20__г.  ______________ (Р. Залеева)

Научный руководитель

(преподаватель/куратор лаборатории)

«__»__________20__г.  _____________ (Р. Сарварова) 

Содержание

Введение………………………………………………….….………………..2

Анализ основ тестирования…………………………….……………….…5

Этапы геймификации

Обучающие игры……………………………………………………...14

Сюжет и создание изображений………………………………...........17

Реализация игры……………………………………………………….20

Вывод………………………………………..………………..........................30

Список использованной литературы…………………..…….…..............31

Введение

По сей день растет роль персональных компьютеров в жизни людей. Компьютер стал очень важным помощником не только в сфере экономических, финансовых, геологических, географических расчетов, но и является мощным центром развлечений. Сферы развития кино и литературы, театров ощущают очень серьезное давление со стороны интерактивных развлечений, устройств дополненной реальности и прочих, внедряемых средств развлечения. Благодаря развитию компьютерных технологий современный человек экономит очень большое количество времени в работе и в повседневной жизни. Мы иногда даже не задумываемся, что наш смартфон является аналогичным мобильным персональным компьютером. С тем как растет роль компьютеров в жизни человека, компьютерная аппаратура, различные девайсы существенно влияют и на образ жизни человека. По последним данным средний возраст игрока компьютерных игр составляет 10 лет и выше.
Компьютерные развлечения делают жизнь человека богаче, насыщеннее и отсюда следует что - это мощная экономическая сфера приносящая огромные доходы(источник[12]).
Поэтому не случайно, что особая роль в жизни современного человека отводится компьютерным играм, первые из которых существовали на самой заре компьютерной технике  и не только.
Можно сказать, что создание игры - это cвоеобразный вид искусства, схожий с другими не менее эффектными жанрами. Игры могут нести не только развлекательный характер, но и заставлять задуматься или научить чему-либо.

НЕ нашли? Не то? Что вы ищете?

Обучающая игра (образовательная игра) — программное обеспечение, тренирующее и обучающее человека в игровом режиме. Очень большой плюс обучающих игр заключается в том, что они могут обучить человека таким образом, что игрок не только будет весело проводить время за компьютером, но еще и с пользой. В категорию обучающая игра входят жанры — квест, аркада, 3D-шутер, симулятор, интерактивный курс, компьютерный тренажер по какому-либо предмету. Содержание игры делит на части учебный материал, распределяет по очереди его изучение и на основе этого строится игровой процесс. Усвоение материала проверяется тестом, предлагаемым в конце каждого этапа обучения либо по завершении игрового процесса(источник[19]).

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

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

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

Согласно ANSI/IEEE 1059 стандартам, тестирование может быть определено как - процесс анализа элемента программного обеспечения, чтобы обнаружить различия между существующими и требуемыми условиями (которые являются дефектами/ошибками/сбоями) и оценить функции элемента программного обеспечения(источник[4]).

Ручное тестирование — часть процесса тестирования на этапе контроля качества в процессе разработки программного обеспечения (источник[14]). Оно проводится тестировщиком исключительно как конечным пользователем, без каких-либо программных средств т. е тестировщик проверяет работоспособность всех компонентов программы, как если бы он был пользователем. Часто, для точности проверки и для того что бы не запутаться, тестировщик использует заранее заготовленный план тестирования, в котором отмечены наиболее важные шаги работы программы ведь функционал у всех программ разный. Составление тест плана явлется ключевым этапом тестирования программного обеспечения. Тестировщик может не придерживаться строго составленному плану тестирования, отклоняться от него для более полной проверки, приближенного к использованию программы обычным пользователем.

На сегодняшний день рынок развлечений является одним из самых прибыльных. Мир стремительно движется в будущее, с момента начала информационно-технической революции. Для того чтобы облегчить жизнь человека, а также занять его досуг создаются все более совершенные компьютерные системы. Сверхнадежное программное обеспечение — мечта любого программиста и пользователя. Без работы опытного специалиста по тестированию невозможен выпуск ни одного качественного программного продукта, а так как на сегодняшний день программных продуктов достаточно много, качество играет очень важную роль. От правильного функционирования ПО может зависеть успех компании, а так же работа промышленных или финансовых компаний (источник[10]).

Спрос на вакансию тестировщика растет довольно быстро и поэтому данная дипломная работа является актуальной так как, несмотря на то, что эта профессия стала востребована в России относительно недавно, к ней уже проявляется довольно большой интерес. Многие современные компании уже начали рассматривать QA-отдел не как равнение на западные компании, а как обязательный и необходимый элемент IT-системы. При этом может показаться, что обучение — это сложно или дорого. Но, рамках созданной мной игры пользователь научится разрабатывать тестовые примеры (TestCase), выполнять тестирование в соответствии с заранее подготовленным тестовым планом, обнаруживать ошибки при выполнении тестирования и документировать их, оценивать и тестировать программный продукт с точки зрения функциональности. И после прохождения будет иметь полное представление о том, что такое тестирование ПО и усваивать не вошедшую информацию гораздо легче и быстрее.

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

Задачи исследований:

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

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

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

Тестирование программного обеспечения (Software Testing) - проверка соответствия между реальным и ожидаемым поведением программы, осуществляемая на конечном наборе тестов, выбранном определенным образом. [IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004]. В более широком смысле, тестирование - это одна из техник контроля качества, включающая в себя активности по планированию работ (Test Management), проектированию тестов (Test Design), выполнению тестирования (Test Execution) и анализу полученных результатов (Test Analysis).

Главная деятельность тестировщиков заключается в том, что они предоставляют участникам проекта по разработке программного обеспечения отрицательную обратную связь о качестве программного продукта (рис. 1).

Рис.1 Тестирование


«Обратная связь» это некоторые данные, которые с выхода попадают обратно на вход, или какая-то часть данных, которые с выхода попадают обратно на вход. Эта обратная связь может быть положительной и отрицательной.
И та, и другая разновидности обратной связи равноценно важны.
В разработке программных систем положительной обратной связью, конечно же, является какая-то информация, которую мы получаем от конечных пользователей. Это запросы на какую-то новую функциональность, это увеличение объема продаж (если мы выпускаем качественный продукт).
Отрицательная обратная связь тоже может поступать от конечных пользователей в виде каких-то негативных отзывов. Либо она может поступать от тестировщиков(источник[8]).

Чем раньше предоставляется отрицательная обратная связь, тем меньше ресурсов и времени нужно для модификации этого сигнала. Именно поэтому тестировать необходимо начинать как можно раньше, на самых ранних стадиях проекта. Отсюда и произрастает понимание того, что тестировщики не отвечают за качество. Они помогают тем, кто за него отвечает.
Синонимы термина «тестирование»
Нельзя считать обеспечением качества простое предоставление отрицательной обратной связи, ведь Обеспечение — это некоторые позитивные меры. Подразумевается, что в этом случае мы именно обеспечиваем качество, своевременно предпринимаем какие-то меры для того, чтобы качество разработки ПО повысилось.
«Контроль качества» — Quality Control, можно считать в широком смысле синонимом для термина «тестирование», потому что контроль качества это и есть предоставление обратной связи в самых разных ее разновидностях, на самых разных этапах программного проекта (рис.2).

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4