
- •Міністерство освіти і науки України
- •Введение
- •1 Анализ предметной области
- •1.1 Индустрия компьютерных игр
- •1.2 Жанры компьютерных игр
- •1.3 Анализ аналогов
- •1.4 Постановка задачи
- •2 Анализ моделей
- •2.1 Выбор среды проектирования и языка разработки. Доступные языки и технологии разработки ил
- •2.1.1 Adrift (Adventure Developer & Runner — Interactive Fiction Toolkit)
- •2.1.2 Hugo
- •2.1.3. Inform
- •2.1.4. Hydra
- •2.1.5. Tads (Text Adventure Development System)
- •2.1.6. Urq(UniversalRipSoftQuest)
- •2.1.7. Qsp(QuestSoftPlayer)
- •2.1.8 Tkr2 (текстовоквестовый редактор 2)
- •2.1.9 Gti– графическо-текстовый интерпретатор
- •2.1.10 «6 Дней»
- •2.1.11 Выбор технологии разработки
- •2.2 Uml-моделирование
- •3 Разработка
- •3.1 Ознакомление с платформой разработки и реализация игры
- •3.4 Отрисовка графики
- •4 Тестирование
- •4.1 Интерфейсное тестирование
- •4.2 Функциональное тестирование
- •5 Внедрение
- •Список источников
- •Приложение а – Охрана труда а.1. Анализ условий труда на рабочем месте программиста
- •А.2 Промышленная безопасность в компьютерной лаборатории.
- •А.3 Производственная санитария и гигиена труда в компьютерной лаборатории
- •А.4 Пожарная профилактика производственного помещения
- •Приложение б – Слайды презентации
- •Приложение в – Программный код в.1 Разговор в первом квесте
- •В.2 Конец первого квеста
3.4 Отрисовка графики
Для придания игре атмосферности, запоминаемости и понятливости локации и объекты были снабжены изображениями, отображающими их внешний вид. Также был нарисован портрет главной героини для легкости погружения в происходящее с ней. Все изображения нарисованы лично разработчиком специально для этой игры!
Примером изображения локации служит вид избушки с севера на рисунке 3.2.
Рисунок 3.2 – Избушка с севера
Поскольку игровой процесс включает обход избушки со всех сторон с уникальными действиями доступными в каждой локации, всего были нарисованы четыре изображения избушки с разных сторон – к примеру, рисунок 3.3 изображает запад избушки, дверь, которую нужно открыть – или найти другой способ попасть внутрь. Открыть дверь возможно либо уговорив хозяйку, постучавшись в окно с севера избушки, либо при помощи ключа под окном с востока избушки. С юга избушки можно забраться по приставной лестнице на крышу и, если повезет, перебраться к трубе и залезть внутрь. Все варианты равноправны и сходятся в одной точке.
Рисунок 3.3 – Избушка с запада
Были нарисованы предметы, используемые в игре. К примеру, используется два изображения ключа – большое при его находке и маленькое для отображения в инвентаре, как видно на рисунке 3.4.
Рисунок 3..4
Также был нарисован портрет главной героини – Луны. В программе используется лишь маленькая его часть, отображающаяся в разделе интерфейса, традиционно предназначенном для вывода статуса – рисунок 3.5.
Рисунок 3.5 – Портрет главной героини
Итоговый внешний вид игры в процессе прохождения изображен на рисунке 3.6.
Рисунок 3.6 – Интерфейс игры
Благодаря графике игра представляет собой интересное и атмосферное приключение в стиле русских народных сказок.
4 Тестирование
4.1 Интерфейсное тестирование
Часть программной системы, обеспечивающая работу интерфейса с пользователем - один из наиболее нетривиальных объектов для верификации. Нетривиальность заключается в двояком восприятии термина "пользовательский интерфейс". [11]
С одной стороны, пользовательский интерфейс - часть программной системы. Соответственно, на пользовательский интерфейс пишутся функциональные и низкоуровневые требования, по которым затем составляются тест-требования и тест-планы. При этом, как правило, требования определяют реакцию системы на каждый ввод пользователя (при помощи клавиатуры, мыши или иного устройства ввода) и вид информационных сообщений системы, выводимых на экран, печатающее устройство или иное устройство вывода. При верификации таких требований речь идет о проверке функциональной полноты пользовательского интерфейса - насколько реализованные функции соответствуют требованиям, корректно ли выводится информация на экран.
С другой стороны, пользовательский интерфейс - "лицо" системы, и от его продуманности зависит эффективность работы пользователя с системой. Факторы, влияющие на эффективность работы, слабо поддаются формализации в виде конкретных требований к отдельным элементам, однако должны быть учтены в виде общих рекомендаций и принципов построения пользовательского интерфейса программной системы. Проверка интерфейса на эффективность человеко-машинного взаимодействия получила название проверки удобства использования (usability verification; в русскоязычной литературе в качестве перевода термина usability часто используют слово "практичность" [12]).
Функциональное тестирование пользовательского интерфейса состоит из пяти фаз:
анализ требований к пользовательскому интерфейсу;
разработка тест-требований и тест-планов для проверки пользовательского интерфейса;
выполнение тестовых примеров и сбор информации о выполнении тестов;
определение полноты покрытия пользовательского интерфейса требованиями;
составление отчетов о проблемах в случае несовпадения поведения системы и требований либо в случае отсутствия требований на отдельные интерфейсные элементы.
Все эти фазы точно такие же, как и в случае тестирования любого другого компонента программной системы. Отличия заключаются в трактовке некоторых терминов в применении к пользовательскому интерфейсу и в особенностях автоматизированного сбора информации на каждой фазе.
Так, тест-планы для проверки пользовательского интерфейса, как правило, представляют собой сценарии, описывающие действия пользователя при работе с системой. Сценарии могут быть записаны либо на естественном языке, либо на формальном языке какой-либо системы автоматизации пользовательского интерфейса. Выполнение тестов при этом производится либо оператором в ручном режиме, либо системой, которая эмулирует поведение оператора.
При сборе информации о выполнении тестовых примеров обычно применяются технологии анализа выводимых на экран форм и их элементов (в случае графического интерфейса) или выводимого на экран текста (в случае текстового), а не проверка значений тех или иных переменных, устанавливаемых программной системой.
Под полнотой покрытия пользовательского интерфейса понимается то, что в результате выполнения всех тестовых примеров каждый интерфейсный элемент был использован хотя бы один раз во всех доступных режимах.
Отчеты о проблемах в пользовательском интерфейсе могут включать в себя как описания несоответствий требований и реального поведения системы, так и описания проблем в требованиях к пользовательскому интерфейсу. Основной источник проблем в этих требованиях - их тестонепригодность, вызванная расплывчатостью формулировок и неконкретностью.
Особенностью текстовых квестовых игр на платформе QSP является то, что большая часть интерфейса предоставляется самим проигрывателем / интерпретатором QuestSoftPlayer, и задача разработчика состоит лишь в красивом оформлении и в проверке того, что все действия выполняют именно то, что должны. Стоит заметить, что в большой игре потенциал ошибок в этой области огромен, и пропускать это тестирование все равно нельзя.