Программно-инструментальные средсва автоматизиции разработки многоролевых компьютерных тренажеров в системе переподготовки персонала промышленных предприятий (25.05.2009)
Автор: Лукащук Руслан Петрович
Варианты организации ДИ Процесс создания новой ДИ Каркас состоит из следующих четырех фрагментов: инициализирующая часть: . F1 — создание нового экземпляра ДИ (новой игровой группы) или выбор одного из уже существующих (выбор группы); . F2 — выбор роли из числа предусмотренных в ДИ, создание ее экземпляра (присоединение к группе в качестве, определяемом выбранной ролью); . F3 — ожидание выбора обязательных, но еще не занятых ролей в предусмотренном количестве экземпляров оставшимися игроками и инициация начала игры. Возможность инициировать начало игры предоставляется каждому игроку, прошедшему регистрацию в экземпляре ДИ (игровой группе) в том случае, если выполняются следующие условия: в ДИ есть роли, предусматривающие произвольное количество экземпляров; все обязательные роли в предусмотренном количестве экземпляров заняты во всех созданных на текущий момент экземплярах ДИ. При выполнении этих условий возможность инициации начала игры может быть временно недоступна, если хотя бы в одном экземпляре ДИ начал регистрацию новый участник, но еще ее не закончил. Когда все желающие принять участие в игре зарегистрировались, инициировать начало игры может любой из игроков. Этот фрагмент является синхронизующим. деинициализирующая часть: . F4 — завершение экземпляра роли. Если это был последний незавершенный экземпляр роли из всех экземпляров ролей, относящихся к данному экземпляру ДИ, то происходит завершение этого экземпляра ДИ. Этот фрагмент невизуальный. Основная смысловая часть ДИ образует ее тело и содержит имитационные модели внешней среды, виртуальных участников игры и алгоритмы взаимодействия между этими моделями и реальными обучаемыми. Тело ДИ представляет собой параллельные нити любой алгоритмической сложности, по одной на каждую предусмотренную в ДИ роль. Разделение данных, описывающих текущее состояние каждого экземпляра роли пределах этой роли, осуществляется средствами фрагмента, а не на уровне сборки сценария ДИ в Конструкторе структурных элементов. ). Для обеспечения синхронизации процессов в локальной сети в качестве блокирующей переменной используется файл нулевого размера. Наличие файла сигнализирует о том, что ресурс занят, отсутствие – что свободен. Схема сценария каркаса ДИ и механизм критических секций на основе блокирующих переменных приняты следующие обозначения: rij – фрагменты, реализующие сценарий i-й роли; try … finally … end – обработка исключений на уровне сценария ДИ. Она обеспечивает гарантированное выполнение деинициализирующего фрагмента каркаса. Часть фрагментов, составляющих каркас, являются визуальными и предназначены для организации пользовательского интерфейса в процессе регистрации игрока в ДИ. Другие фрагменты являются невизуальными и предназначены для выполнения вспомогательных действий, обеспечивающих функционирование каркаса ДИ. Для сокращения временных задержек, связанных с (нахождением в состоянии ожидания) выполнением длительных операций, возможна организация параллельного выполнения процессов в пределах одного экземпляра проигрывателя. При этом невизуальный (вспомогательный) процесс будет выполняться в фоновом режиме. Между основной нитью сценария и вспомогательными процессами возможно взаимодействие (обмен данными) и синхронизация. Фоновые процессы также могут взаимодействовать между собой. Программная реализация конструктора многоролевых тренажеров В четвертой главе диссертации приведено описание программно-инструментальной среды конструирования многоролевых компьютерных тренажеров. Разработанный механизм позволяет организовать упрощенное взаимодействие фрагмента с Проигрывателем и фрагментов между собой. Взаимодействие реализовано на основе технологии COM (Automation). Организация монопольного доступа к общему ресурсу При реализации сценария ДИ каждый фрагмент взаимодействует только с тем экземпляром Проигрывателя, который его создал. Таким образом, обеспечивается корректное одновременное выполнение нескольких сценариев или экземпляров одного и того же сценария на одном компьютере. Взаимодействие между фрагментами возможно только для фрагментов в пределах одного экземпляра сценария и заключается в использовании общей памяти, менеджером которой выступает создавший их экземпляр Проигрывателя. Например, некоторый фрагмент может создать в Проигрывателе поименованную область памяти (переменную) произвольного размера и задать ей значение, а следующий фрагмент может запросить у Проигрывателя ее значение и удалить переменную. Число переменных и размер памяти, занимаемой каждой из них, не ограничен. Взаимодействие фрагмента с Проигрывателем носит двунаправленный характер. Фрагмент может запрашивать и изменять свойства экземпляра Проигрывателя и вызывать его методы. В свою очередь, экземпляр Проигрывателя может генерировать события, которые будут обрабатываться фрагментом. Для поддержки функции упрощенного взаимодействия фрагмента с Проигрывателем и фрагментов между собой разработана пара программных модулей (один для Проигрывателя и один для фрагмента). Разработанный механизм взаимодействия позволяет значительно упростить разработку исполняемых фрагментов для интерактивных практикумов и деловых игр. Для поддержки функций взаимодействия фрагмента с Проигрывателем в приложение исполняемого фрагмента подключается модуль PCIPCChldSpt.pas. Модуль содержит 2 интерфейсные функции. Первый вариант функции создает экземпляр интерфейсного объекта, не поддерживающего обработку события от Проигрывателя. Этот вариант функции не имеет параметров и возвращает Variant, содержащий указатель на диспинтерфейс созданного объекта. Второй вариант создает экземпляр класса-оболочки интерфейсного объекта, который поддерживает обработку события от Проигрывателя. Разработано программное приложение задания параметров организационно-структурной среды многоролевой ДИ, в соответствии с которыми будет функционировать каркас разрабатываемой ДИ. Редактор позволяет задать ограничения на количество игровых групп, которые должны/могут быть созданы, указать взаимодействуют они или нет, задать названия, описания и ограничения на количество экземпляров для ролей, предусмотренных в ДИ, а также указать, могут ли они моделироваться, и может ли игрок, занявший определенную роль, инициировать начало игры. Над ролями предусмотрен ряд действий, таких как добавление, удаление, применение изменений, перемещение вверх и вниз по списку ролей. В заключении представлены основные результаты работы. Приложение содержит документы об использовании результатов работы. Публикации. По результатам выполненных исследований опубликовано 10 печатных работ, которые приведены в списке публикаций. Основные выводы и результаты работы Проведен системный анализ методов и форм организации обучения и тестового контроля персонала промышленных предприятий и определен круг методов и моделей формализованного представления компонент системы конструирования многоролевых деловых игр. Разработана формальная схема процессного описания пользовательского интерактива в сетевой модели сценария деловой игры. Разработаны модели описания процессов конструирования типовых фрагментов деловой игры, а также их расширенний на комбинированные формы интерактивного взаимодействия. На основе теории конечных автоматов и сетей Петри построена формализованная модель реализации сценария деловой игры. Разработаны механизмы конструирования и проигрывания сценария, а также требования к инструментальной среде формирования деловой игры. Разработана программно-инструментальная среда конструирования интерактивных многоролевых компьютерных тренажеров. Разработанный программный комплекс, методы и алгоритмы прошли апробацию и внедрены для практического применения в ряде промышленных предприятий, а также используются в учебном процессе МАДИ(ГТУ). |