ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У
« Б е л Г У » )
ИНСТИТУТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И ЕСТЕСТВЕННЫХ
НАУК
Кафедра математического и программного обеспечения
информационных систем
РАЗРАБОТКА АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ
ОРГАНИЗАЦИИ И ПРОВЕДЕНИЯ ОЛИМПИАД В ВЫСШИХ
УЧЕБНЫХ ЗАВЕДЕНИЯХ
Выпускная квалификационная работа
обучающегося по направлению подготовки 02.03.01 Математика и
компьютерные науки, очной формы обучения, группы 07001403
Панова Романа Владимировича
Научный руководитель
к.т.н., доцент
Бурданова Е.В.
БЕЛГОРОД 2018
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ .............................................................................................................. 2
ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ОРГАНИЗАЦИИ И ПРОВЕДЕНИЯ
ОЛИМПИАД В ВЫСШИХ УЧЕБНЫХ ЗАВЕДЕНИЯХ .................................... 5
1.1. Олимпиада как форма активации учебной деятельности студентов ...... 5
1.2. Особенности организации и проведения олимпиад в высших учебных
заведениях .......................................................................................................... 12
1.3. Анализ информационных систем для проведения олимпиад ............... 21
ГЛАВА 2. ПРОЕКТИРОВАНИЕ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ
ОРГАНИЗАЦИИ И ПРОВЕДЕНИЯ ОЛИМПИАД В ВЫСШИХ УЧЕБНЫХ
ЗАВЕДЕНИЯХ ...................................................................................................... 30
2.1. Проектирование базы данных автоматизированной системы .............. 30
2.2. Разработка алгоритмов работы автоматизированной системы ............. 35
2.3. Выбор средств разработки автоматизированной системы организации
и проведения олимпиад .................................................................................... 36
ГЛАВА 3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АВТОМАТИЗИРОВАННОЙ
СИСТЕМЫ ОРГАНИЗАЦИИ И ПРОВЕДЕНИЯ ОЛИМПИАД...................... 38
3.1. Создание модулей автоматизированной системы .................................. 38
3.2. Организация внешнего вида страниц веб-приложения ......................... 40
3.3. Организация учета статистики тестирования пользователей ............... 41
3.4. Проверка функций веб-приложения ........................................................ 43
3.5. Проверка функций компьютерного приложения для администратора 48
ЗАКЛЮЧЕНИЕ ..................................................................................................... 50
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ ............................................. 51
ПРИЛОЖЕНИЕ 1 .................................................................................................. 55
ПРИЛОЖЕНИЕ 2 .................................................................................................. 51
3
ВВЕДЕНИЕ
Актуальность
политики
темы.
Необходимость
предопределяет
ключевое
реализации
требование
инновационной
работодателей
к
конкурентоспособному специалисту - готовность к творческой реализации
профессиональных знаний и умений. Ограниченность времени контактной
работы, необходимость ориентироваться на среднестатистического студента
и
затрудненность
актуализируют
реализации
поиск
принципа
способов
индивидуализации
интенсификации
обучения
самостоятельной
образовательной деятельности обучающихся. Одним из эффективных
способов развития творческих способностей студентов в соответствии с их
интеллектуальными возможностями и внутренней мотивацией является
олимпиадное движение, которое наряду с соревновательным блоком олимпиадами, включает и подготовительные этапы [1, 2]. С учетом
возрастающей роли информационных технологий актуализируется поиск
результативных
технологий
образовательный
процесс
включения
через
олимпиадного
деятельность
движения
обучающихся
в
в
информационной среде.
Процесс проведения олимпиады и конкурса состоит из ряда этапов, для
каждого из которых описаны соответствующие организационные требования
проведения
дистанционных
олимпиад
и
конкурсов.
Педагогические
требования предлагаются в зависимости от содержательного компонента
олимпиад и конкурсов и рассматриваются на примере таких форм
проведения, как тестирование, обучающие и эвристические олимпиады.
Также выделяются общие педагогические требования, которым должна
отвечать любая олимпиада и конкурс, проводимый в глобальной сети.
Цель работы: разработка авторизированной системы организации и
проведения олимпиад в высших учебных заведения.
Задачи работы:
4
-
раскрыть аспекты организации и проведения олимпиад в высших
учебных заведениях;
-
спроектировать автоматизированную систему организации и
проведения олимпиад в высших учебных заведениях;
-
создать автоматизированную систему организации и проведения
олимпиад;
-
проверить
работоспособность
разработанной
системы
организации и проведения олимпиад.
Объект исследования: олимпиады в высших учебных заведениях.
Предмет исследования: автоматизированная информационная система
организации и проведения олимпиад в высших учебных заведениях.
5
ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ОРГАНИЗАЦИИ И
ПРОВЕДЕНИЯ ОЛИМПИАД В ВЫСШИХ УЧЕБНЫХ
ЗАВЕДЕНИЯХ
1.1. Олимпиада как форма активации учебной деятельности студентов
В
современном
мире
стремительно
возрастает
потребность
в
нестандартно мыслящих творческих личностях, в творческой активности
специалиста
и
развитом
техническом
мышлении,
что
приводит
к
необходимости изменения технологий обучения.
Федеральный государственный образовательный стандарт высшего
образования ориентирован на реализацию компетентностного подхода в
образовании, учитывающего профессиональную направленность обучения;
на организацию учебного процесса, позволяющего студенту заниматься
самообразованием, раскрывать свои способности. Студент должен развивать
нетрадиционный взгляд на предмет, находить нестандартные подходы к
решению поставленных прикладных задач, активно выстраивать свой
учебный процесс. Компетентностный подход в образовании предъявляет не
только требования к формированию у будущих выпускников знаний, умений
и навыков, но и общекультурных, профессиональных и профильноспециализированных компетенций. Компетентностный подход — это
подход, акцентирующий внимание на результате образования, причем в
качестве результата рассматривается не сумма усвоенной информации, а
способность человека действовать в различных проблемных жизненных и
профессиональных ситуациях. Ключевым понятием выступает понятие
компетентности
интегративного
свойства
личности,
обусловленное
совокупностью качеств личности студента - знаний, умений, навыков, опыта,
способностей, ценностно-смысловых ориентаций, которые обеспечивают его
6
готовность к работе по специальности, характеристика ее видов и состава
[27].
Выдвигаемые требования к формированию компетенций у студентов,
перед университетами ставят задачу, которая заключается в организации
такого учебного процесса, в которой студент будет получать не только
профессиональную подготовку, а также заниматься саморазвитием, активной
учебно-познавательной деятельностью, раскрывать свои способности.
Важной проблемой в связи с требованиями компетентностного подхода
становится повышение активности студентов в учебно-познавательной
деятельности, студент должен активно строить свой учебный процесс, без
активизации невозможно получить формирование требуемых качеств,
компетенций.
В педагогике существует целый ряд активных форм и методов для
активизации учебно-познавательной деятельности студентов.
Активные методы обучения (АМО) — это методы, характеризующиеся
высокой степенью включенности обучающихся в учебный процесс,
активизирующие их познавательную и творческую деятельность при
решении поставленных задач.
Активными методами обучения считаются: олимпиады, учебные
деловые игры, семинары, метод анализа конкретных ситуаций, метод
проектов.
Следует отметить, что соревновательный дух присущ людям во все
времена, так как важно признание не только в ближайшем окружении, но и
среди конкурентов. Еще в древнем мире организовывались различные
интеллектуальные соревнования, как источник развития и самообразования,
повышения мыслительного уровня.
Олимпиада — состязание учащихся, требующее от участников
демонстрации знаний и навыков в области одной или нескольких изучаемых
дисциплин.
Она
выступает
как
активный
метод
обучения,
если
7
контролируется и гарантируется самостоятельность подготовки к ним
студентов, сама работа носит исследовательский характер [30].
Ценность олимпиадной формы заключается не только в результате, но
и в самом процессе, субъекты создают, творят, развивают воображение,
развивается духовная культура и интеллект. Отличительными особенностями
обучения олимпиадной формы являются: отсутствие жестких временных
рамок, которое позволяет студенту двигаться вперед в соответствии со
своими
способностями;
сочетание
направленного
обучения
и
самообразования [6].
В
последние
годы
все
больше
уделяется
внимания
научно-
исследовательской работе студентов (НИРС) как одной из форм повышения
активизации учебно-познавательной деятельности.
Участие в НИРС — это способ самовыражения и самореализации для
студентов, позволяющий значительно расширить свой кругозор, эрудицию и
логическое мышление в нестандартной ситуации. Еще следует указать на то,
что участие в НИРС стимулирует также совместное сотрудничество студента
и преподавателя, что способствует формированию позитивного отношения к
учебному процессу. Отметим, что НИРС, как одна из эффективных форм
формирования и развития профессиональной компетентности, позволяющей
использовать комплекс активных методов и технологий обучения, включает
участие в работе различного уровня конференций, олимпиад, тематических
кружков.
Началом
олимпиадного
движения
официально
считается
математическая олимпиада, проведенная Ленинградским университетом в
1934 году, затем в 1935 году в Московском университете. Существенный
вклад в развитие олимпиадного движения, как способа формирования
профессиональной компетентности, внесли ученые П. С. Александров, А. Н.
Колмогоров, А. И. Маркушевич, В. И. Смирнов, С. Л. Соболев и др.
Изначально особое внимание уделялось осмыслению сущности понятий
8
«олимпиада» и «олимпиадное движение», содержанию и методическому
обеспечению олимпиад.
В последние годы в России проводится много тематических олимпиад
разных
уровней:
внутривузовские,
областные,
всероссийские,
международные и с международным участием, интернет-олимпиады.
Понятие «олимпиада» часто трактуется неоднозначно. Обратившись к
следующим словарям: Ушакова Д. Н. [30], Ожегова С. И. [2], Большому
энциклопедическому словарю [2], видим общее - трактовка понятия
«олимпиада»
имеет
спортивную
направленность,
так
как
термин
рассматривается в общем виде. Не менее важным считаем определение
«профессионально-ориентированная
олимпиада»
и
«дистанционная
профессионально-ориентированная олимпиада» по Макаровой О. Н.:
«профессионально-ориентированная
организационная
форма
осуществления
олимпиада
краткосрочного
—
во
это
времени
состязания студентов, требующая от участников высокой степени отдачи
интеллектуальных сил, демонстрации знаний, умений, навыков в предметных
областях, личностных качеств...» [12];
«дистанционная профессионально-ориентированная олимпиада
— это организационная форма осуществления краткосрочного во времени
состязания
студентов,
проводимого
посредством информационных
и
коммуникационных технологий, требующая от участников высокой степени
отдачи интеллектуальных сил, демонстрации знаний, умений, навыков в
предметных областях» [12].
Наиболее предпочтительным в контексте данной работы является
понятие
«олимпиада»,
которое
приведено
в
педагогическом
энциклопедическом словаре Б. М. Бим-Бада: «Олимпиады предметные соревнования
учащихся
по
общеобразовательным
предметам,
способствующие выявлению талантливых учащихся» [16]. Из определения
следует, что олимпиады позволяют учащимся проверить и критически
оценить свои знания и способности.
9
Участие в олимпиадном движении позволяет студенту создать свой
круг общения с единомышленниками, развивать самостоятельность и
творческий подход к изучению предмета, формировать способность
логического мышления в нестандартных ситуациях, расширять и применять
свою эрудицию, знания, умения и сравнивать свои достижения с уровнем
подготовленности других учащихся. Также участие в олимпиадном
движении способствует совершенствованию профессионального мастерства,
позволяет оценивать свой творческий потенциал, обеспечивает более
высокий уровень освоения учебного материала. Нельзя не подчеркнуть, что
олимпиада — это средство развития не только студентов, но и
преподавателей, способствует самоутверждению личности.
Участие
в
предметных
олимпиадах
и
научно-практических
конференциях имеет большую ценность из-за отсутствия жестких временных
ограничений, что позволяет студенту сочетать направленность обучения с
самообразованием и со своими индивидуальными способностями. Реальная
ценность олимпиад, как участие в любой форме НИРС, способствует
улучшению организации учебного процесса, обмену опытом между
преподавателями, кафедрами, формированию обратной связи «студентпреподаватель».
Участие в олимпиадном движении, НИРС требует повышенного
внимания к самостоятельной работе наиболее успешных студентов,
способствует глубокому и системному освоению студентом конкретного
предмета, подводит итог значительной работы в формировании показателей
качества учебного процесса.
Олимпиады способствуют лучшей организации учебного процесса за
счет:
обмена опытом между кафедрами, отдельными преподавателями,
развития общения между ними;
повышения квалификации преподавателей;
усиления обратной связи между преподавателями и учащимися;
10
способствуют раскрытию способностей учащегося;
развивают стремление к обладанию знаниями.
Эксперты Н. П. Пучков и А. И Попов в качестве одной из основных
форм
организации
обучения
рассматривают
олимпиадное
движение,
предполагается, что самостоятельная работа студентов по решению
творческих задач проводится параллельно с аудиторными занятиями и
обеспечивается консультациями преподавателей.
По мнению авторов для формирования компетенций необходимо
создание
олимпиадной
креативной
среды.
Олимпиадная
креативная
образовательная среда (в вузе) - совокупность участников образовательного
процесса, строящих свою деятельность в условиях интеграции обучения в
команде и обучения в соревновании и нацеленности на достижение
творческих, созидательных результатов. Она предназначена для создания
условий, благоприятствующих как развитию креативности студентов, так и
профессиональных компетенций.
Олимпиадное движение (как форма организации обучения) - активная
творческая созидательная деятельность всех участников образовательного
процесса (преподавателей и студентов) на основе интеграции коллективной и
соревновательной
деятельности,
направленная
на
достижение
целей
обучения.
В основе олимпиадного движения лежит интеграция контекстного
обучения
и
личностно-ориентированного
обучения.
Использование
контекстного обучения позволяет воссоздать в олимпиадном движении
профессиональный контекст будущей профессиональной деятельности.
Реализация личностно-ориентированного обучения в олимпиадном движении
возможно через косвенное управление творческим процессом, прежде всего,в
олимпиадных группах, предполагающим опосредованное регулирование
деятельности обучающегося без жѐсткого регламентирующего воздействия
на личность.
11
Олимпиадное движение, включаемое в образовательный процесс вуза,
основывается на следующих принципах:
взаимного
увязывания
всех
компонентов
олимпиадного
движения с решением задач интеграции образования, науки и производства;
строгого следования научности при планировании работы в
олимпиадной микрогруппе и самостоятельно;
сочетания коллективных и индивидуальных форм воздействия и
выбор средств самообразования на основе учѐта креативных потребностей
человека;
ориентирования
на
развитие
самообразованию на основе внутренней
готовности
личности
мотивации и
к
осознанности
деятельности;
установления максимально рациональных соотношений между
компонентами системы на основе мотивационной готовности учеников.
Данная форма организации обучения предполагает, прежде всего,
повышенное внимание к самостоятельной работе студентов, успешно
справляющихся с программой дисциплины за более короткие сроки, чем это
предусмотрено рабочим учебным планом, и обеспечивается формированием
индивидуальной образовательной траектории каждого студента.
Наряду с традиционным компонентом олимпиадного движения олимпиадами, в данной модели присутствуют и другие компоненты,
обеспечивающие процесс непрерывного творческого саморазвития личности
студента:
олимпиадные
микрогруппы
-
наиболее
важная
часть
олимпиадной креативной среды, когда микросоциумы формируются по
инициативе студентов, преподаватель выступает в таких микрогруппах как
«старший среди равных»;
творческие
занятия
в
группах,
проводимые
на
правах
факультатива, в которых преподаватель определяет направления творческой
деятельности и ведѐт за собой коллектив студентов;
12
научные сообщества, наиболее характерные для студентов
старших курсов и создающиеся для решения обобщѐнных творческих
профессиональных задач научно-исследовательского характера;
единая информационная олимпиадная сеть, которая обеспечивает
возможность
образования
для
обучающихся
посредством
банка
олимпиадных заданий, вариантов их решений и возможности интерактивного
обсуждения творческих проблемных ситуаций.
1.2. Особенности организации и проведения олимпиад в высших
учебных заведениях
Реализация концептуальных положений олимпиадного движения в
информационной образовательной среде предполагает:
создание условий для выхода на эвристический или креативный
уровень интеллектуальной активности при исследовании профессиональной
проблемной ситуации;
индивидуализацию
обучения
посредством
адаптивного
управления самостоятельной деятельностью обучающихся;
развитие коммуникативных способностей и лидерских качеств
креативных обучающихся через организацию виртуальных коллективов и
сопровождение интерактивной познавательной деятельности [19];
формирование готовности к деятельности в условиях стресса и
психологического напряжения.
Эффективность выполнения сформулированных задач определяется
разработанностью инструментально-педагогических средств, мотивирующих
к творческому саморазвитию, основным из которых является комплекс
творческих олимпиадных задач. Данный комплекс должен включать задачи
различного уровня сложности, при этом обязательным условием для учебных
дисциплин,
определяющих
фундаментальную
подготовку,
является
13
отражение в задачах предметного и социального контекстов будущей
профессиональной
деятельности.
В
зависимости
от
роли
учебной
дисциплины в подготовке к выполнению трудовых функций можно выделить
задачи, мотивирующие к оптимизации профессиональной деятельности и
углубленного
исследования
проблемного
поля
конкретного
вида
деятельности, и задачи, способствующие общему интеллектуальному
развитию обучающихся.
Адаптивное управление творческой самостоятельной деятельностью
обучающихся предполагает прохождение следующих этапов в деятельности
преподавателя:
выявление обучающихся с высоким уровнем креативности и
инициирование их перехода на проявление более высокого уровня
интеллектуальной активности;
организация
мониторинга
как
общего
интеллектуального
развития и осознанности получения профессионального образования, так и
уровня
текущих
учебных
достижений
и
внутренней
готовности
к
познавательной деятельности;
их
выбор для обучающихся олимпиадных задач, обеспечивающих
развивающее
обучение;
сопровождение
самостоятельной
работы
студентов в информационной среде по решению данных задач;
организация групповой дискуссии одаренных обучающихся по
способам решения предложенных задач в информационной среде;
проведение творческих соревнований в информационной среде с
обязательным групповым этапом рефлексии;
организация взаимодействия творчески одаренных обучающихся
и бывших участников олимпиадного движения, в настоящее время
осуществляющих профессиональную деятельность, для мотивирования
студентов к переходу от решения поставленных извне творческих задач к
самостоятельному исследованию проблем, имеющих высокое прикладное
значение.
14
Вследствие высокой нагрузки на преподавателей и специфики
формирования в вузах научно-педагогических кадров, часть из которых не
имеет
педагогического
образования,
указанные
этапы
в
основном
реализуются на эмпирическом уровне понимания и в большинстве случаев
энтузиастами [21].
Организация творческой работы в информационном пространстве на
основе индивидуализации обучения позволяет компенсировать снижение
времени контактной работы и учесть запросы как обучающихся, так и
работодателей на подготовку к творческой инновационной деятельности в
реальном секторе экономики. Олимпиадное движение имеет большой опыт
применения в высшем образовании, но в основном акцент должен быть на
соревновательную составляющую. Усиление подготовительного этапа и
смещение деятельности по подготовке к олимпиадам в информационное
пространство
образовательного
индивидуализировать
учреждения
процесс обучения
стимульно-продуктивного
уровня
и
позволяет
максимально
обеспечивает
интеллектуальной
переход
от
активности
к
эвристическому или креативному.
В последние годы развитие конкурсов и олимпиад для обучающихся
связывается с информатизацией образования, которая произошла благодаря
быстрому
внедрению
информационных
технологии
во
все
сферы
человеческой жизни. Данный процесс подразумевает компьютеризацию
образовательных учреждений, подключение их к сети Интернет и, как
следствие, изменение методов, форм и средств обучения.
В результате информатизации появилось дистанционное обучение и
его различные формы. В указанном плане следует отметить одну из таких
форм — это дистанционные олимпиады и конкурсы, которые являются
одним из способов повышения эффективности и активности деятельности
учащихся, позволяют в значительной степени улучшить систему работы с
одаренными детьми [5].
15
Если сравнивать олимпиады и конкурсы, проводимые в сети Интернет
с традиционными формами их проведения, то они имеют ряд преимуществ:
нет территориальных ограничений, достаточно иметь компьютер
и выход в Интернет;
психологический комфорт за счет выполнения заданий в
привычной для ученика обстановке;
дополнительная мотивация, так как учащимся интереснее
выполнять задания с использованием информационных технологий;
возможность
объективного
оценивания
автоматизированной
системой проверки результатов;
активное развитие умения самостоятельного поиска информации
и ее анализа;
возможность привлечь к составлению заданий профессиональных
педагогов, которых может не оказаться в регионах [1, 18].
Несмотря на представленные преимущества, существуют и недостатки
дистанционного проведения олимпиад и конкурсов в сети Интернет. К таким
недостаткам можно отнести сложности идентификации личности участников
конкурсных состязаний, зачастую формальный характер предлагаемых
заданий, ориентированный на автоматизированную проверку, преобладание
контактов участников с организаторами мероприятий, но не участников
между собой.
Решением
данных
проблем
является
предъявление
особых
педагогических и организационных требований к сетевым конкурсам и
олимпиадам,
отражающих
специфику
того,
что
такие
мероприятия
проводятся дистанционно с помощью информационных технологий.
Так, анализируя работы А. В. Штырова, Д. В. Землякова [28] и других
авторов по проведению дистанционных конкурсов и олимпиад, а также
собственный опыт проведения таких мероприятий (олимпиада по математике
для младших классов в 2016 году), можно отметить, что обычно это
предполагает выполнение следующей последовательности этапов:
16
1.
Подготовительный этап. Организаторы конкурса продумывают
план проведения олимпиады, правила, требования и его сроки, формируют
жюри, готовят задания и т. д.
2.
Организационный этап. Анонсирование о проведении олимпиады
или конкурса и регистрация участников.
3.
Этап
проведения олимпиады
или конкурса. Со стороны
участников данный этап предполагает непосредственное выполнение
конкурсных заданий, а со стороны организаторов - наблюдение за
выполнением всех правил конкурса или олимпиады.
4.
Этап оценивания поступивших работ. Проверка всех работ,
подсчет правильно выполненных заданий и выстраивание рейтинговых
таблиц.
5.
Этап объявления результатов и награждение. До участников
доносят информацию о занятых ими местах и награждают грамотами или
благодарственными письмами.
Опираясь на представленные этапы, к числу организационных
требований к проведению конкурсов и олимпиад для обучающихся в сети
Интернет
можно
отнести
следующие
положения,
которые
должны
обеспечить организаторы мероприятия: Подготовительный этап:
разработка
формы
проведения
мероприятия,
подготовка
соответствующих средств информационных технологий;
разработка
конкурсных
заданий,
критериев
и
средств
оценивания;
формирование экспертной комиссии или жюри.
Организационный этап:
своевременное анонсирование сроков олимпиад и конкурсов;
понятный процесс регистрации, чтобы каждый учащийся смог
зарегистрироваться и поучаствовать, или дать возможность учителям
регистрировать всех своих учеников;
17
рассылка информационных сообщений об организационных
моментах планируемого мероприятия.
Этап проведения олимпиады или конкурса:
равные условия всех участников;
контроль за выполнением правил олимпиады.
Этап оценивания поступивших работ:
наличие системы оперативной проверки результатов работы
участников (автоматизированной, либо с привлечением экспертов).
Этап объявления результатов и награждение:
своевременную публикацию информации об итогах, занятых
местах;
награждение участников, рассылка благодарственных писем,
грамот.
Помимо
проведения
описанных
организационных
дистанционных
конкурсов
и
требований,
олимпиад
успешность
зависит
и
от
педагогических требований.
Так, необходимо учитывать, что в отличие от традиционных форм
проведения олимпиад и конкурсов, дистанционные образуют обратную связь
между
тремя
компонентами
учебного
взаимодействия:
обучающий,
обучаемый и средство информационных и коммуникационных технологий с
использованием Интернет-технологий. Данное отличие позволяет не просто
использовать известную им учебную информации, но и самостоятельно
добывать
ее
с
помощью
ИКТ
(информационно-коммуникационных
технологий). Такое взаимодействие ориентировано на развитие творческое
потенциала обучаемого, формирование системы знаний определенной
предметной
области,
формирование
комплекса
умений
и
навыков
осуществления учебной деятельности [8].
По содержательному компоненту олимпиад и конкурсов, проводимых в
сети Интернет, выделяют тестирование, обучающие и эвристические
18
олимпиады. К каждому виду предъявляют различные педагогические
требования, рассмотрим их.
Простой и быстрый дистанционный способ проверки знаний учащихся
— это тестирование. Предъявляемыми требованиями являются понятность
вопросов и однозначность ответов. Учащиеся уже давно привыкли к
тестовым заданиям и у них не возникнет затруднения в понимании того, что
требуется от них. Также решенные тесты из-за простоты ответов легко
проверить автоматизированной системой проверки результатов, а это
означает
быстрое
подведение
итогов.
Но
олимпиады
и
конкурсы
предполагают нестандартные задания, а значит вариант тестирования
неэффективен в данном случае. Закрытые тестовые задания с вариантами
ответов не подходят для олимпиадных заданий, так решение задания часто
сводится к поиску подходящего ответа. Единственный подходящий способ
тестирования — это открытые задания, в которых учащимся необходимо
выполнить и записать ответ в форму. Итак, если дистанционные олимпиады
и конкурсы проводятся в форме тестирования, то задания должны быть
открытыми.
Олимпиада и конкурс, ориентированные на формирование умений
самостоятельного поиска знаний, называются обучающими. Так как
Интернет используется как источник получения новых знаний, то обучающие
олимпиады активно проводятся в глобальной сети. Преимущество данных
олимпиад в том, что они сочетают олимпиадную работу и процесс обучения
на соревновательной основе, что дает хороший результат. Задания
представляют собой вопросы, на которые ученик заведомо не знает ответа и
ему необходимо воспользоваться сетью Интернет и найти ответ на данный
вопрос. Процесс обучения таким образом становится не пассивным
потреблением знаний, а активным поиском этих знаний. Педагогические
требования
заключаются
в
создании
качественных
предусматривающий выход за пределы знаний учеников [5].
вопросов,
19
Также сегодня популярны олимпиады и конкурсы в сети Интернет,
целью
которых
является
создание
собственного
результата
-
образовательного продукта. К такого рода олимпиадам можно отнести
известный проект А. В. Хуторского - дистанционную эвристическую
олимпиаду. Эвристичность означает то, что от участников требуется не
просто правильное решение сложных задач, а получение собственного
результата. Оценивается именно уникальность и качество разработанного
продукта.
Согласно А. В. Хуторскому, существуют требования к составлению
эвристических заданий:
задания должны быть открытые, без заранее известных ответов, а
содержание заданий должно включать метапредметный первосмысл, что
ориентирует участников на выявление смысла окружающих явлений и
самопознание.
выполнение
задания
должно
предусматривать
применение
некоторого метаспособа, то есть универсального эвристического метода
познания объекта или решения проблемы.
задание
должно
предполагать
один
из
ведущих
видов
деятельности: логический, образный, конструкторский и т.д. для обеспечения
возможности максимального проявления индивидуальных способностей
участников, желательно, чтобы вся совокупность олимпиадных заданий
охватывала основной набор видов деятельности.
заданиям,
на эвристической олимпиаде приоритет должен отдаваться таким
которые
предполагают
создание
учеником
личного
образовательного продукта, а не получение требуемого ответа или поиска
известного решения. Общими критериями оценки являются: оригинальность
предлагаемого ответа, непохожесть на остальные ответы и известные
сведения,
мировоззренческая
глубина
и
обоснованность
ответа,
нестандартность использованных способов решения, а также уровень
творческой самореализаций [1, 4].
20
Помимо требований, предъявляемых к конкретному виду олимпиад
или конкурсу, можно выделить общие педагогические требования, которым
должна отвечать любая олимпиада и конкурс, проводимый в глобальной
сети.
Организаторы часто сталкиваются с главным недостатком олимпиад и
конкурсов, проводимых в глобальной сети — это невозможность отследить,
была ли сторонняя помощь участникам. Существует несколько вариантов
решения данного вопроса. Во-первых, возможно проводить регистрацию,
отборочные туры дистанционно, а заключительные туры очно, таким
образом, не возникнет сомнений в победе того или иного участника. Вовторых, если рассматривать, что очное присутствие невозможно, то можно
организовать дистанционное прохождение олимпиады или конкурса в школе,
где будут присутствовать учителя, и чтобы совсем исключить вариант
помощи участникам можно осуществить прямую трансляции через камеры,
чтобы организаторы видели честное выполнение заданий участниками.
Также для решения данной проблемы можно организовать максимальную
вариативность заданий с сохранением уровня сложности для каждого
варианта и ограничить во времени выполнения [14].
В олимпиадной среде необходимо шире внедрять и самостоятельную
постановку
задачи
обучающимися,
и
использование
задач
с
неопределенностью в условии, которая делает невозможным получение
однозначного ответа и направляет активность обучающихся на исследование
проблемы. В процессе решения самостоятельно поставленных задач
обучающийся
многократно
переформулирует
задачу,
определяет
дополнительные цели и может выйти за рамки первоначально определенных
ориентиров.
Обучающий эффект соревнований значительно возрастет в случае,
когда каждый участник в итоге узнает не только количество набранных
баллов и занятое место, но и получит доступ к своей работе с отметками
21
верно или не верно выполнено задание, возможно даже более развернутый
ответ, выдача рекомендации и т.д. [26].
Таким образом, подводя итог проведенному исследованию, можно
отметить, что технологии дистанционных конкурсов и олимпиад в настоящее
время весьма востребованы и обладают рядом серьезных преимуществ. При
их организации, однако, требуется вести работу над организационными
моментами, стремиться к созданию автоматизированных систем регистрации
участников и проведения олимпиады, подведения итогов. При этом, по своей
сути, дистанционные конкурсы и олимпиады для учащихся в сети Интернет
должны быть открытыми, результаты выполнения заданий учащимися
должны предполагать подготовку своего образовательного продукта. В этом
случае конкурсы и олимпиады будут способствовать формированию новых
знаний и личностных качеств учащихся.
1.3. Анализ информационных систем для проведения олимпиад
Предметная олимпиада — состязание учащихся учреждений среднего
общего, высшего или профессионального образования, требующее от
участников демонстрации знаний и навыков в области одной или нескольких
изучаемых дисциплин.
Предметные олимпиады могут проводиться в различных форматах: в
очной форме, заочной, онлайн олимпиада. Зачастую организаторы олимпиад
создают
интернет-ресурс
информирования
участников
или
о
используют
различных
существующие,
событиях,
связанных
для
с
олимпиадой, публикаций необходимых материалов для подготовки или
проведения олимпиады. Организаторы небольших (региональных) олимпиад
не всегда могут выделить средства из бюджета на создание такого интернетресурса. В большинстве таких случаев организаторы пользуются услугами
сторонних ресурсов.
22
В свою очередь участникам сложно отслеживать информацию обо всех
интересующих олимпиадах, а также сложно найти информацию о
предстоящих олимпиадах. Сбор информации с различных сайтов может
занять много времени и не всегда удается достичь нужного результата.
Интернет-ресурсы,
объединяющие
информацию
о
различных
олимпиадах очень удобны как для организаторов, так и для участников.
Существующие интернет-ресурсы. с информацией об олимпиадах
можно классифицировать следующим образом:
1.
По типу ресурса:
-
информационные ресурсы;
-
системы проведения интернет-олимпиад.
2.
По профилю:
-
узконаправленные (профильные);
-
многопрофильные.
По
сравнению
с
традиционными
формами
контроля
автоматизированное тестирование требует меньших трудозатрат от учеников
и
преподавателей.
Поэтому
оно
может
использоваться
для
более
интенсивного контроля над качеством обучения, чем это возможно в рамках
традиционных форм. Оно удачно дополняет традиционные формы контроля
и способствует повышению качества образования при незначительном росте
его
себестоимости.
Также
автоматизированное
тестирование
может
использоваться учащимися для самостоятельного обучения и самоконтроля,
в том числе при дистанционном обучении.
Требования, предъявляемые к автоматической системе тестирования
знаний:
система
должна
обеспечивать
глубокое
и
адекватное
тестирование знаний и навыков.
система должна иметь эффективную защиту от мошенничества.
23
система, или ее периферийные узлы, устанавливаемые в
организациях, где проводится тестирование, должна быть проста в
эксплуатации для специалистов средней квалификации.
Все три проблемы необходимо решать на двух уровнях: при разработке
самой системы и при ее развертывании и эксплуатации.
Задача обеспечения глубины и адекватности тестирования должна
решаться на этапе наполнения системы во время разработки тестов.
Разработка новых заданий и их ввод в систему должны производиться на
протяжении
всего
времени
эксплуатации
системы.
Наличие
банка
опубликованных задач облегчает эту работу.
Задачи в банке должны быть проиндексированы по сложности и по
набору знаний и навыков, необходимых для их решения. Такой банк можно
использовать для создания наборов тестов заданного уровня сложности на
заданные темы.
Для
определения
реальной
сложности
задачи
ее
желательно
протестировать на практике. Одна из возможных форм жизненного цикла
задачи может выглядеть так: задача предварительно оценивается жюри,
используется при проведении олимпиады, включается в банк вместе с
наборами входных данных и решениями жюри, если они опубликованы.
Важным требованием является требование защиты системы от
мошенничества,
так
автоматизированного
как
при
использовании
тестирования
основной
традиционных
проблемой
форм
является
использование внешних источников информации, вплоть до списков
правильных ответов. Если во время прохождения теста доступен Интернет,
то информация, необходимая для ответов на большинство тестов вузовского
уровня, может быть легко найдена. При широком применении какой-то
определенной системы тестов можно ожидать, что в Интернет вскоре будет
выложен полный набор правильных ответов на все задачи. В сочетании с
современными средствами поиска решить эту проблему одним только
расширением банка задач невозможно.
24
Описанная
форма
мошенничества
может
быть
предотвращена
регламентом проведения тестов. Как и при традиционных формах
тестирования, доступ в Интернет и возможности использования внешних
источников информации должны быть исключены. Регламент прохождения
автоматического тестирования должен разрабатываться по аналогии с
регламентами традиционных тестов, как автоматизированных, так и
неавтоматизированных. В ситуациях, когда система используется для
самотестирования учащихся, это требование может быть ослаблено.
Рассмотрим примеры существующих информационных систем для
организации олимпиад.
Межрегиональная олимпиада «Будущие исследователи — будущее
науки» рис. 1.1. Ресурс предназначен для организации межрегиональной
олимпиады для школьников «Будущие исследователи — будущее науки». В
рамках данного ресурса, пользователи могут следить за объявлениями,
связанными с проведением олимпиады, ознакомиться с нормативными
документами, просмотреть календарь проведения олимпиад узнать сроки,
задания и результаты, получить материалы для подготовки.
Рис. 1.1. Главная страница сайта межрегиональной олимпиады для
школьников
25
Сайт Российского совета олимпиад школьников рис. 1.2. Этот ресурс
предназначен для организации всероссийских олимпиад. Сайт предоставляет
подробную информацию об олимпиадах, утвержденных Российским советом
олимпиад
школьников.
Здесь
можно
найти
всю
информацию
об
интересующей олимпиаде, задать вопросы, оценить прошедшую олимпиаду.
Рис. 1.2. Главная страница сайта совета олимпиад школьников
Для участника помимо получения информации об организации
олимпиады больше нет никаких возможностей.
Организатору, для включения его олимпиады в утвержденный советом
список олимпиад, необходимо пройти регистрацию на портале, отправить
необходимый пакет документов в электронном виде и оригиналы по почте. В
случае
правильного
оформления
документов,
совет
рассмотрит
представленную олимпиаду и вынесет решение о включении ее в список
утвержденных олимпиад.
26
Информационный
сайт
Olimpiada.ru
об
олимпиадах
и
других
мероприятиях для школьников. Здесь пользователь может найти объявления
о предстоящих мероприятиях, материалы прошедших олимпиад, выездных
школ и конференций (условия и решения задач, статистика, результаты).
Центр «Эрудит» рис. 1.3 предлагает тематические, творческие и
предметные конкурсы и олимпиады для дошкольников, учеников младшей,
средней и старшей школы, студентов, воспитателей и учителей по различным
направлениям и разной степени сложности. Задания разрабатываются
ведущими педагогами школ и преподавателями вузов.
Рис. 1.3. Главная страница сайта «Эрудит»
Интернет-ресурс «Эрудит» проводит заочные олимпиады. Участие в
олимпиадах является платным.
Пользователи ресурса
олимпиад.
По
данным,
могут
указанным
просмотреть
на
портале
рейтинги
участников
«Эрудит»,
рейтинг
рассчитывается следующим образом: за каждый предметный или творческий
конкурс участник получает определенное число баллов. Если участник занял
1-е место, то начисляется 10 баллов, если 2-е место - 9 баллов и т.д. Если
участник не занял призового места, то начисляется 1 балл.
27
Такой подход к построению рейтинга не позволяет просмотреть
лучших участников в рамках одного профиля, например, математики, физики
или химии. Также такой подход может не совсем верно оценивать любого из
участников. Например, если первый участник занял 1-е место на одной
олимпиаде из 10, и более не участвовал в конкурсах, а другой участник не
выиграл ни в одной из олимпиад, но был участником 10-ти олимпиад, в
таком случае оба этих участника займут одинаковое положение в рейтинге,
что не совсем верно с точки зрения оценки качества знаний участников.
Олимпиада НИУ ВШЭ для студентов и выпускников рис. 1.4.
Рис. 1.4. Главная страница сайта олимпиада НИУ ВШЭ для студентов и
выпускников
В Олимпиаде могут принять участие студенты всех образовательных
организаций
высшего
образования,
осваивающие
образовательные
программы бакалавриата или специалитета.
Победители и призеры по решению Ученого совета получают льготы
при зачислении в НИУ ВШЭ на образовательные программы магистратуры,
соответствующие профилю олимпиады. Участие в Олимпиаде является
свободным и бесплатным.
28
Еще одной популярной системой для онлайн-проверки заданий по
информатике и программированию удобно использовать автоматическую
тестовую систему на базе Яндекс.Контест рис. 1.5. Она предназначена для
проведения состязаний любого уровня — от школьных олимпиад до
соревнований международного класса, а также для подготовки к турнирам и
приѐма
экзаменов.
Яндекс.Контест
поддерживает
различные
языки
программирования и позволяет использовать разные схемы проведения
состязаний. Правила задают организаторы, а так же составляют и размещают
задания.
Решения проверяются автоматически — с помощью набора тестов,
составленных авторами. Участники отправляют решения в тестирующую
систему, а та выдает результат. Сервис способен одновременно обрабатывать
терабайты данных и легко выдержит нагрузку в тысячу участников.
Применение тестовых систем позволяет исключить субъективный
фактор в проверке, охватить более широкий спектр тестов, выявить
несоответствие предлагаемых участниками программ исключительным
ситуациям. Существует возможность ограничения по времени выполнения
программы, по количеству занимаемой памяти и т.д.
Рис. 1.5. Главная страница сервиса для онлайн-проверки заданий по
математике и программированию
29
Группы и отдельные пользователи определяются в соответствующем
разделе. Имеется возможность создания новых паролей.
Во время проведения соревнований администратор может следить за
ходом их проведения и вносить необходимые коррективы как в задания
(содержание, тесты) так и в настройки. Имеется возможность обратной связи
между участниками соревнований и администратором системы. После
окончания олимпиады администратор может сохранить турнирную таблицу в
виде файла Excel для дальнейшего рассмотрения, анализа или публикации
результатов. Существует возможно сохранить в архиве все решения,
посланные участниками во время проведения олимпиады.
Система Яндекс.Контест представляет собой удобную и мощную среду
для проведения олимпиад по математике, физике и другим предметам, по
которым задания и ответы можно сформулировать в виде тестов. Система не
привязана к серверу учебного заведения и олимпиады можно проводить в
любых местах, где есть доступ к сети Интернет.
Система показала себя с лучшей стороны в плане надежности, скорости
реагирования и удобства администрирования. В ней на высоком уровне
реализовано обеспечение информационной безопасности, что является очень
важным аспектом, так как персональные данные участников и сами задания
размещаются в сети Интернет и без должной защиты существуют риски их
утечки. Следует отметить, что система представляет для участников
соревнований по программированию более 20 различных компиляторов, их
количество постоянно увеличивается, происходит обновление версий.
30
ГЛАВА 2. ПРОЕКТИРОВАНИЕ АВТОМАТИЗИРОВАННОЙ
СИСТЕМЫ ОРГАНИЗАЦИИ И ПРОВЕДЕНИЯ ОЛИМПИАД
В ВЫСШИХ УЧЕБНЫХ ЗАВЕДЕНИЯХ
2.1. Проектирование базы данных автоматизированной системы
Проанализировав
информационные
предметную
область,
вводятся
следующие
объекты: объект олимпиады, объект список вопросов,
объект варианты ответов, объект ответы пользователей, объект пользователи,
объект
роли
пользователей,
объект
ответы
пользователей,
объект
университеты.
Далее необходимо наделить каждый информационный объект
характеристиками.
Объект олимпиады должен обладать следующими характеристиками:
код олимпиады, название олимпиады.
Объект вопросы должен обладать такими характеристиками, как код
вопроса, вопрос, код олимпиады.
Объект
роли
пользователей
должен
обладать
следующими
характеристиками: код роли, название роли.
Объект
университеты
должен
обладать
следующими
характеристиками: код университета, название университета.
Объект варианты ответов обладает следующими характеристиками:
код варианта ответов, ответ, правильный ответ, код вопроса.
Объект
пользователи
характеристиками:
код
пользователя,
университета,
код
должен
пользователя,
e-mail
обладать
имя
следующими
пользователя,
пользователя,
фамилия
пароль,
роль
пользователя, статус пользователя.
Объект олимпиады должен обладать следующими характеристиками:
код олимпиады, название олимпиады.
31
Далее следует определить связи между информационными объектами,
а также описание ограничений целостности, то есть требования к
допустимым значениям характеристик информационных объектов.
Сущность олимпиада связываем с сущностью вопросы при помощи
связи «один-ко-многим», т.к. в одной олимпиаде может быть множество
вопросов. Атрибут код олимпиады должен быть первичным ключом, а
название олимпиады должно быть уникальным.
Сущность вопросы связываем с сущностью варианты ответов при
помощи связи «один-ко-многим», т.к. в одном вопросе может быть несколько
вариантов ответов. Атрибут код вопроса должен быть первичным ключом, а
вопрос должно быть уникальным.
Сущность
варианты
ответов
связываем
с
сущностью
ответы
пользователей при помощи связи «один-ко-многим», т.к. один вариант ответа
может быть у многих пользователей Атрибут код варианта ответов должен
быть первичным ключом, а правильный ответ должно быть уникальным.
Сущность университеты связываем с сущностью пользователи при
помощи связи «один-ко-многим», т.к. в одном университете может учиться
множество студентов. Атрибут код университета должен быть первичным
ключом, а название университета должно быть уникальным.
Сущность роли пользователей связываем с сущностью пользователи
при помощи связи «один-ко-многим», т.к. одна роль может быть у многих
пользователей. Атрибут код роли должен быть первичным ключом, а
название роли должно быть уникальным.
Сущность пользователи связываем с сущностью ответы пользователей
при помощи связи «один-ко-многим», т.к. у одного пользователя множество
ответов. Атрибут код пользователя должен быть первичным ключом, имя
пользователя, фамилия , e-mail пользователя и пароль должно быть
уникальными.
На рис. 2.1 представлена логическая модель базы данных. Полученная
в ходе исследования предметной области.
32
Рис. 2.1. Логическая модель базы данных
На рис. 2.2 – 2.7 представлен процесс моделирования таблиц, которые
необходимы для функционирования приложения.
Таблица olympiads рис. 2.3) отвечает за сохранение списка вопросов.
Она содержит идентификатор вопроса (id_ olympiada) и его название (name_
olymp).
Рис. 2.2. Моделирование таблицы olympiads
Сам вопрос сохраняется в таблице question
рис. 2.4. Он включает
идентификатор вопроса (idquestion), вопрос (question) и ссылку на список
вопросов (olympiads_id_olympiada), который ссылается на таблицу olympiads.
33
Рис. 2.3. Моделирование таблицы question
Таблица user_anwers рис. 2.4 содержит ответы пользователей, здесь
хранится идентификатор ответа пользователя на определенный вопрос,
ссылка на пользователя (user_iduser), ссылка на идентификатор ответа
(answer_idanswer).
Рис. 2.4. Моделирование таблицы user_anwers
Таблица answers рис. 2.5 включает идентификатор, ответ (answer),
правильный ответ(answer_true) и ссылку на вопрос (question_idquestion).
Рис. 2.5. Моделирование таблицы answers
Таблица user рис. 2.6 сохраняет данные пользователей, которые
регистрируются в системе. Она представлена такими полями, как isuser,
email, username, usersecondname, password, role_idrole.
34
Рис. 2.6. Моделирование таблицы user
За сохранение ролей пользователей отвечает таблица role рис. 2.7.
Которая включает идентификатор роли (idrole) и ее название (role).
Рис. 2.7. Моделирование таблицы role
Физический уровень (представление администратора) проектирования
базы данных, это группирование данных, индексы, методы доступа.
Физическая модель данных должна соответствовать описанию конкретной
системы управления базами данных, то есть схеме данных.
Для создания физической модели на сервере MySQL необходимо
создать базу данных и выполнить SQL-запросы.
После выполнения запросов на сервере MySQL будет создана база
данных, модель которой представлена на рис. 2.8.
Как видим, все атрибуты и связи были созданы по нашим
исследованиям при моделирование логической базы данных.
35
Рис. 2.8. Физическая модель базы данных
На рис. 2.9 представлена структура созданной в базе данных таблицы
user_anwers. Для таблиц user, role, olimpiads, question, anwers и universities
см. приложение 2.
Рис. 2.9. Таблица user_anwers
2.2. Разработка алгоритмов работы автоматизированной системы
Основными алгоритмами разрабатываемой системы являются:
-
алгоритм регистрации;
-
алгоритм авторизации в системе;
-
алгоритм прохождения тестов.
На рис. 2.10 представлена схема прохождения теста.
36
Алгоритм регистрации и алгоритм прохождения тестов см. приложение
2.
Рис. 2.10. Алгоритм прохождения теста
2.2. Выбор средств разработки автоматизированной системы
организации и проведения олимпиад
Для работы над проектом нужна среда разработки и локальный вебсервера.
Существует
множество
сред
разработки,
которые
можно
37
использовать для разработки приложений. Одной из лучших сред является
PHPStorm, она позволяет разработчикам автоматизировать и упростить
процесс разработки. Ее недостатком является то, что она платна. Бесплатной
подобной системой является программа NetBeans, которая включает
множество инструментов для упрощения написания кода, и для разработки
веб-приложения выбрана эта среда.
NetBeans является интегрированной средой разработки (Integrated
Development Environment, IDE) и, в дополнение к этому, платформой.
Первоначально IDE NetBeans могла использоваться только для разработки
приложений на Java, начиная с версии 6, NetBeans поддерживает несколько
языков программирования. Это либо встроенная поддержка, либо поддержка,
осуществляемая путем установки дополнительных расширений. NetBeans
имеет встроенную поддержку следующих языков программирования: Java, C,
C++, PHP, HTML и JavaScript. Посредством расширений поддерживаются
также Groovy, Scala и другие языки.
Кроме среды разработки для работы с проектом необходим локальный
веб-сервер. В реализации проекта использована сборка OpenServer — это
бесплатный и быстроразвивающийся веб-сервер, идеально подходящий для
разработки веб-приложений в локальных условиях.
OpenServer содержит приложение phpMyAdmin - веб-приложение с
открытым кодом, написанное на языке PHP, представляющее собой вебинтерфейс для администрирования СУБД MySQL и позволяющее через
обозреватель интернет осуществлять администрирование сервера MySQL,
запускать команды SQL и просматривать содержимое таблиц и баз данных.
38
ГЛАВА 3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ И ТЕСТИРОВАНИЕ
АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ОРГАНИЗАЦИИ И
ПРОВЕДЕНИЯ ОЛИМПИАД
3.1. Создание модулей автоматизированной системы
Одним из главных модулей системы является модуль подключения к
базе данных. Для подключения к базе данных необходимы определенные
параметры, которые прописаны в файле конфигурации подключения –
config.php. Процесс работы над этим файлом показана на рис. 3.1.
Рис. 3.1. Работа над файлом config.php
Для взаимодействия с пользователями предназначена главная страница.
На этой странице размещена форма ввода имени пользователя и
выпадающий список с выбором раздела тестов для прохождения.
Главное окно программы обеспечивает процесс прохождения теста,
при этом осуществляется выбор вопросов и вариантов ответов из базы
данных, после ответа на вопросы теста, данные сохраняются в базу данных.
Записывает данные в базу данных файл - add-results.php. Выполнятся запись
за счет выполнения запроса:
INSERT
into
quizresults
set
name='$name'
,
cat_id='$catid'
,
correct_ans='$cans',wrong_ans='$wans',marks='$cans',datee='$cdate',examtime='$
etime'",$link); Где переменные представляют параметры пройденного теста.
39
Для управления системой тестирования предназначены файлы модуля
администрирования,
которые
отвечают
за
управление
системой
тестирования, а также за отображение результатов тестирования. Для входа в
панель администратора необходимо пройти авторизацию.
Для добавления категорий вопросов предназначена страница addcategory.php.
Вопросы для тестирования заполняются на странице add-question.php,
процесс работы над которой представлен на рис. 3.2.
Рис. 3.2. Процесс работы над страницей add-question.php
Для заполнения вопросов используется файл формата name.csv, для
этого автору надо ввести номер категории, сам вопрос, далее четыре
варианта ответа по порядку и номер правильного ответа. После этого
сохранить файл и передать администратору. Администратор с помощью
пакетной загрузки файлов внесет созданные вопросы в базу.
Создаваемая система предусматривает ограничение на количество
времени для прохождения теста, а также возможность настройки количества
40
отображаемых вопросов на странице. За это отвечает файл настроек settings.php.
После
организации
функционала
приложения
необходимо
организовать внешний вид приложения. Для этого предназначены язык
гипертекстовой разметки HTML и каскадные таблицы стилей – CSS. В
пункте 3.2 будет описана технология создания внешнего вида вебприложения.
3.2. Организация внешнего вида страниц веб-приложения
За внешний вид сайта для пользователя отвечают технологии HTML,
CSS. HTML создает блоки, CSS обеспечивает внешний вид этим блокам. На
рис. 3.3 показана строка подключения файла CSS.
Рис. 3.3. Строка подключения CSS-файла
В файлах с расширением .css содержатся инструкции на то, какой вид
будет у выбранного элемента рис. 3.4.
41
Рис. 3.4. Работа над файлом style.css
В HTML-коде элементам задаются селекторы, которые указывают на
то, какой стиль из таблицы стилей применить к данному блоку.
3.3. Организация учета статистики тестирования пользователей
Для
просмотра
результатов
тестирования
будет
использованы
возможности клиентского приложения, которое будет получать данные из
базы данных веб-приложения и отображать в своих окнах. На рис. 3.12 – 3.16
представлен процесс создания клиентского приложения.
После создания главной формы на нее необходимо разместить
компоненты, которые обеспечивают связь и взаимодействие с базой данных:
-
ADOConnection;
-
ADOQuery;
-
DataSource;
-
TDBGrid.
42
Далее необходимо настроить строку подключения к базе данных
MySQL. Для этого нужен коннектор для соединения с базой данных mysql.
Строка
подключения
Provider=MSDASQL;Driver={MySQL
к
ODBC
базе
5.3
данных:
Unicode
Driver};
Server=localhost;Database=olimpiadatest;User=root;Password=;Option=3;
Далее необходимо в свойствах ADOConnection включить соединение с
базой данных, удерживать соединение и отключить появление окна
авторизации.
После
этого
в
компоненте
ADOQuery
необходимо
выбрать
«Connection», задать запрос на выбор данных из базы данных рис. 3.5 и
активировать компонент.
Рис. 3.5. Определение запроса для выборки данных из базы данных
Окно настройки и активации ADOQuery нужно настроить DataSource.
Для этого в поле его свойств нужно выбрать созданный выше ADOQuery в
поле «DataSet».
После этого можно организовать отображение данных из базы данных
за счет настройки компонента DBGrid.
После редактирования полей таблицы, окно отображения статистики
тестирования пользователей приобретает вид, показанный на рис. 3.6.
43
Рис.3.6. Окно клиентской программы
Созданное оконное приложение позволяет просматривать результаты
тестирования по участникам, которые отображают имя участника, категорию
вопроса, количество правильных ответов, количество ошибочных ответов,
дату прохождения и потраченное на тест время.
3.4. Проверка функций веб-приложения
После
необходимо
создания
проверить
модулей
ее
и
элементов
работоспособность.
системы
тестирования
На
3.7
рис.
–
3.15
представлены изображения, которые показывают работоспособности и
функционал приложения.
Рис. 3.7. Главная страница сайта
44
На главное страницы предлагается пройти регистрацию либо зайти под
своей учетной записью, если вы уже зарегистрированы. Так же с главной
страницы выполняется вход для администратора.
Для регистрации пользователя нужно перейти по вкладке «Регистрация
пользователей» и ввести свои данные рис. 3.8.
Рис. 3.8. Форма регистрации пользователя
При вводе названия университета будет подсвечиваться подходящие
вузы. И можно будет выбрать из списка. Если вуз введен не правильно
регистрация не будет выполнена. Так же при регистрации надо вводить
действующей адрес электронной почты. После ввода данных нажимаем
кнопку
отправить.
Выведется
окно
подтверждающую
успешную
45
регистрацию. Далее пользователю можно авторизоваться на сайте и зайти в
личный кабинет.
При авторизации на сайте, пользователю будет предложено ввести
логин и пароль, которые он указывал при регистрации на сайте. Логином
будет считаться полное имя студента рис. 3.9.
Рис. 3.9. Форма авторизации
При входе в личный кабинет, студенту будет предложено выбрать
дисциплину, по которой он хочет пройти олимпиаду рис. 3.10.
46
Рис. 3.10. Форма выбора дисциплины
После выбор дисциплины начнется прохождение олимпиады. Студенту
будет предложен ряд вопросов с вариантами ответов. Так же стоит заметить,
что время прохождения теста ограничено и регулируется администратором
рис 3.11.
Рис. 3.11. Форма для прохождения тестирования
По завершению теста будет выведено окно с результатами теста рис.
3.12.
Рис. 3.12. Окно результатов теста
47
После этого студенту остается ожидать прохождение олимпиады
всеми участниками.
Далее рассмотрим функционал программы для администратора.
Ему, как и пользователям требуется авторизоваться на сайте. Но для
этого ему не требуется регистрации. При наделении полномочий, ему будет
выдан логин и пароль, которые
требуется ввести в административную
панель рис. 3.13.
Рис. 3.13. Страница авторизации в административной панели
При нажатии кнопки войти администратор попадает в меню
организации олимпиад. Где может выполнять функцию редактирования,
добавление
вопросов
настраивать
время
рис.
3.14-3.15,
прохождения
теста
а
так
и
добавлять
просматривать
участников см. приложение 2.
Рисунок 3.14. Страница редактирование вопросов
дисциплины,
результаты
48
В функционал редактирования входит удаление и присваивания
статуса не активный вопрос.
Для добавления вопросов администратору требуется зайти в пакетную
загрузку вопрос и нажать «загрузить CSV файл». После этого действия
откроется форма, где потребуется выбрать нужный файл с вопросами
рис.3.15.
Рис. 3.15. Страница загрузки вопросов
Файл загрузки вопросов будут присылать организаторы олимпиады,
которые должны вводить вопросы по определенным требованиям. Для
правильного оформления следует заполнить поля категория, вопрос,
варианты ответов и номер правильного ответа. Номер категории будет
заведомо
известен
организатором,
который
соответствует
номеру
дисциплины, по которой будет проходить олимпиада.
Рис. 3.16. Файл для загрузки вопросов
3.5. Проверка функций компьютерного приложения для администратора
Одной
из
составных
частей
разработанной
системы
является
компьютерное приложение, задачей которого является вывод на экран
49
компьютера данных из таблицы результатов пользователей. Это предоставит
возможность, не входя в браузер, просматривать результаты тестирования.
На рис. 3.17 показано окно с отображение результатов тестирования. Так же
показаны окна «Справка» и «О программе» см. приложение 2.
Рис. 3.17. Окно отображения результатов тестирования
Таким образом, в результате проверки работоспособности программы,
определено, что все необходимые функции работаю испрано.
50
ЗАКЛЮЧЕНИЕ
Технологии дистанционных конкурсов и олимпиад в настоящее время
весьма востребованы и обладают рядом серьезных преимуществ. При их
организации, однако, требуется вести работу над организационными
моментами, стремиться к созданию автоматизированных систем регистрации
участников и проведения олимпиады, подведения итогов. При этом, по своей
сути, дистанционные конкурсы и олимпиады для учащихся в сети Интернет
должны быть открытыми, результаты выполнения заданий учащимися
должны предполагать подготовку своего образовательного продукта. В этом
случае конкурсы и олимпиады способствуют формированию новых знаний и
личностных качеств учащихся.
В ходе выпускной квалификационной работы мной были выполнены
следующие задачи:
-
раскрыты аспекты организации и проведения олимпиад в высших
учебных заведениях;
-
спроектирована автоматизированная система организации и
проведения олимпиад в высших учебных заведениях;
-
создана автоматизированная система организации и проведения
олимпиад;
-
протестирована разработанная система организации и проведения
олимпиад.
В результате работы над проектом, была разработана информационная
система для тестирования, которая позволяет проводить тестирования и
записывать его результаты в базу данных, из которой отображать, как на
страницы веб-приложения, так и в окна компьютерного приложения.
51
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1.
Афанасьева Ю. Л. Дистанционная эвристическая олимпиада как
инновационная форма образовательного процесса [Электронный ресурс] / Ю.
Л. Афанасьева, А. Д. Афанасьев // Образование. Инновации. Качество:
Материалы IV международной научно-методической конференции. - Курск:
Курская образовательная сельскохозяйственная академия, 2010. - С. 177-182.
2.
Большой энциклопедический словарь [Электронный ресурс]. – Режим
доступа: http://dic.academic.ru/dic.nsf/enc3p/139698 (дата обращения 14.03.2018).
3.
Борисова Н. В. Технологизация проектирования и методического
обеспечения
компетентностно-ориентированных
учебных
программ
дисциплин/модулей, практик в составе ООП ВПО нового поколения:
Методические
рекомендации
для
организаторов
проектных
работ
и
профессорско-преподавательских коллективов вузов / В. Б. Кузов, Н. В.
Борисова. - М.: Исследовательский центр проблем качества подготовки
специалистов, 2010. - 52 с.
4.
Васильева Т. Н Дистанционные олимпиады и конкурсы в работе
педагога [Электронный ресурс] / Т. Н. Васильева // Интернет-технологии в
образовании: Материалы всероссийской с международным участием научнопрактической конференции. - Чебоксары: КЛИО, 2015. - С. 325-328.
5.
Ващенко Л. В. Образовательные конкурсы и олимпиады [Электронный
ресурс] / Л. В. Ващенко, А. А. Челак // Педагогическое обозрение. - 2011 (112). №4. - С. 2 - 4. – Режим доступа: http://gcro2. nios.ru/DswMedia/po_112.Pdf (дата
обращения: 03.09.2018).
6.
Вербицкий А. А. Активное обучение в высшей школе: контекстный
подход: Метод. Пособие / А. А. Вербицкий. - М.: Высш. шк., 1991. - 207 с.
7.
Дистанционный конкурс как возможность развития познавательной и
творческой
деятельности
обучающихся
//
Pandia
-
2017.
http://pandia.ru/text/79/148/71225.php (дата обращения: 03.09.2018).
-
URL:
52
8.
Ежова Г. Л. Информационное взаимодействие при организации
обучающих сетевых олимпиад [Электронный ресурс] / Г. Л. Ежова, О. А.
Мудракова, Д. А. Ростовых // Ученые записки Российского государственного
социального университета. - 2008. - №5. - С. 51-52.
9.
Иванов
С.
О.
Имитационное
моделирование
средств
защиты
информации, соответствующих общим критериям международного стандарта I
БОЛЕС 15408 / С. О. Иванов и др. // Вестник Чувашского университета. 2016.
№ 3. С. 194-200.
10. Иванов С. О. Методика анализа риска с использованием модели
последствий / С. О. Иванов, Д. В. Ильин, Л. А. Ильина // Вестник Чувашского
университета. 2015. №3. С. 149-153.
11. Ильин Д. В. Разработка аппаратного устройства шифрования / Д. В.
Ильин, В. Б. Антонов // Вопросы образования и науки: теоретический и
методический
аспекты
сборник
научных
трудов
по
материалам
Международной научно-практической конференции: в 11 частях. 2014. С. 7879.
12. Макарова
формирования
О.
Н.
Дистанционные
профессиональных
олимпиады
компетенций
как
будущих
средство
учителей
информатики [Электронный ресурс] / О. Н. Макарова // Научный электронный
архив.
Режим
доступа:
http://econf.rae.ru/article/4936
(дата
обращения:
03.09.2018).
13. Миндеева С. В. Олимпиадное движение как форма активизации
учебно-познавательной деятельности студентов / С. В. Миндеева, О. Д.
Толстых // Crede Experto: транспорт, общество, образование, язык. 2016. - №4.
Режим доступа: https://cyberleninka.ru/article/n/olimpiadnoe-dvizhenie-kak-formaaktivizatsii-uchebno-poznavatelnoy-deyatelnosti-studentov
(дата
обращения:
09.04.2018).
14. Монахов В. В. Интернет-олимпиады как способ развития творческих
способностей школьников / В. В. Монахов, Н. К. Ханнанов, А. В. Кожедуб, С.
В. Монахова // Физика в школе. - 2012. - №2. - С. 27 - 40.
53
15. Олимпиадное движение как форма организации обучения в вузе:
учебно-методическое пособие / Н. П. Пучков, А. И. Попов. - Тамбов: Изд-во
Тамб. гос. техн. ун-та, 2009. - 180 с.
16. Педагогический энциклопедический словарь / под ред. Б. М. Бим-Бад.
М.: Большая Российская Энциклопедия, 2009. 528 с.
17. Пиюкова Н. А. Организационные и педагогические требования к
проведению конкурсов и олимпиад для обучающихся в сети Интернет / Н. А.
Пиюкова // Международный студенческий научный вестник. – 2018. – № 1. Режим
доступа:
http://www.eduherald.ru/ru/article/view?id=18037
(дата
обращения: 09.04.2018).
18. Попов А. И. Дистанционные олимпиады по компьютерной физике
[Электронный ресурс] / А. И. Попов, А.И. Гончаров, Ю.А. Никулин // Открытое
образование. - 2006. - №2. - С. 17-23.
19. Попов А. И. Олимпиады как инструмент формирования творческих
общекультурных
компетенций
специалистов
и
оценивания
уровня
их
сформированности / А. И. Попов, Е. А. Ракитина // Alma mater: Вестник высшей
школы. - 2016 - №1. - С. 71-75.
20. Попов А. И. От студенческих олимпиад - к олимпиадному движению /
А. И. Попов // Alma mater: Вестник высшей школы. - 2012. - № 2. - С. 13-16.
21. Попов А. И. Включение олимпиадного движения в самостоятельную
работу студентов в естественнонаучной и математической предметных
областях / А. И. Попов, Н. П. Пучков // Научно-педагогическое обозрение. 2015. - № 4(10). - С. 69-74.
22. Попов А. И. Теоретическая механика. Сборник задач для творческого
саморазвития личности студента: учебное пособие / А.И. Попов. - Тамбов: Издво ГОУ ВПО ТГТУ, 2010. - 188 с.
23. Пчелов
А.
К.
Обеспечение
информационной
безопасности
в
организациях / А. К. Пчелов, Д. Я. Борисов, Л. А. Ильина // Информатика и
вычислительная техника сборник научных трудов. Чебоксары. 2016. С. 152-153.
54
24. Рукшин С. Е. Сравнительные достоинства и недостатки дистанционных
и традиционных олимпиад и их влияние на архитектуру автоматизированных
систем поддержки дистанционных научных соревнований [Электронный
ресурс] / С. Е. Рукшин // Образовательные технологии и общество. - 2010. - №3.
- С. 347-359.
25. Соснин Н. В. Геометрическая и графическая подготовка в структуре
содержания компетентностной модели высшего технического образования / Н.
В. Соснин // Проблемы качества графической подготовки студентов в
техническом вузе в условиях ФГОС ВПО. - 2012 - С. 47 - 60.
26. Сулейманов
В.
З.
Интернет-олимпиады
в
современном
информационно-образовательном пространстве / В.З. Сулейманов // Биология в
школе. - 2011. - №6. - С. 62-69.
27. Толковый словарь русского языка / Под ред. С. И. Ожегова. М.:
Азбуковник. 1997. - С. 288.
28. Толковый словарь русского языка Д. Н. Ушакова [Электронный ресурс]
/ Большой словарь русского языка. ЦБЬ: http://www.dict.t-mm.ru/ushakov. (дата
обращения: 07.07.2016).
29. Цыганкова А. В. Олимпиада как форма активизации учебнопознавательной деятельности студентов / А. В. Цыганкова // Молодежь и наука:
сборник материалов Х Юбилейной Всероссийской научно-технической
конференции студентов, аспирантов и молодых ученых с международным
участием,
посвященной
80-летию
образования
Красноярского
края
[Электронный ресурс]. — Красноярск: Сибирский федеральный ун-т, 2014. —
Режим
доступа:
http://conf.sfu-kras.ru/sites/mn2014/directions.html
(дата
обращения: 03.09.2018).
30. Чурина Т. Г. Требования к автоматической системе тестирования
знаний / Т. Г. Чурина, Д. В. Иртегов // Тр. VI Междунар. конф.
«Интеллектуальные технологии в образовании, экономике и управлении».
Воронеж, 2009.
55
ПРИЛОЖЕНИЕ 1
Листинг web-приложения
Index.php
<?php
// проверка на авторизация пользователя
session_start();
//$_SESSION['userid'] = "useruser";
if (empty($_SESSION['userid'])) {
header('location: userblock/userindex.php');
}
$email = $_SESSION['email'];
$user = $_SESSION["user"];
// завершение проверки на авторизация пользователя
?>
<html>
<head>
<title>Система тестирования</title>
</head>
</html>
<body class="container">
<?php
error_reporting(0);
//session_start();
if ($hm == "")
$hm = ".";
if ($hm2 == "")
$hm2 = ".";
require_once "$hm/admin/auth/config.php";
if (($hostname == "" || $dbname == "" || $username == "")) {
echo "<div align='center' style='margintop:20%;color:red;'><b>Процесс установки не завершен.
Ознакомьтесь с файлом помощи по установке</b></div>";
} else {
56
$link = mysql_connect("$hostname", "$username",
"$password");
if ($link) {
$dbcon = mysql_select_db("$dbname", $link);
}
$quiz_staus = 0;
$actual_link =
"http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
if (isset($_GET['logout'])) {
$_SESSION['catid'] = "";
$_SESSION['uname'] = "";
session_destroy();
$bname = basename($_SERVER['REQUEST_URI'], '?' .
$_SERVER['QUERY_STRING']);
echo "<script
type='text/javascript'>window.location.href='./$bname';</script>
";
}
if ((isset($_SESSION['catid'])) ||
(isset($_POST['catid']) && isset($_POST['uname']))) {
if ($_SESSION['catid'] == "")
$_SESSION['catid'] = $_POST['catid'];
if ($_SESSION['uname'] == "")
$_SESSION['uname'] = $_POST['uname'];
$catid = $_SESSION['catid'];
$uname = $_SESSION['uname'];
$settings_query = mysql_query("SELECT * FROM
settings WHERE id=1 ");
$settings_row = mysql_fetch_assoc($settings_query);
$limit = $settings_row['pagenum'];
$time = $settings_row['examtime'];
$quiz_staus = 1;
} else {
$uname = "<b>
}
?>
Система тестирования
</b>";
57
<div class="top">
<!-- top_con begins -->
<div class="top_con">
<ul class="top_con_ul_pos1">
<li><span class="admin_name"><?php echo
$uname; ?></span></li>
</ul>
<?php
if ($quiz_staus == 1) {
?>
<ul class="top_con_ul_pos2">
<li id='timee'>
<div id="hms"><?php echo $time; ?></div>
</li>
<li><a href="<?php echo $actual_link;
?>?logout=yes">Выход</a></li>
<?php
}
?>
</ul>
</div>
<!-- top_con ends -->
</div>
<?php
echo "<div id='maindiv' class='frms clearfix'>";
if ($quiz_staus == 1) {
echo "<div id='res_id' class='clearfix'><div
class='clearfix'>";
$limit_tag = "<br>";
$query = mysql_query("SELECT * FROM quiz WHERE
status='release' and catid=$catid");
$pcount = mysql_num_rows($query);
$pages = ceil($pcount / $limit);
58
echo "<input type='button' value='Предыдущий вопрос'
style='float:left;display:none;' id='top_prev'
onclick=prevnext(0)>";
echo "<input type='button' value='Следующий вопрос'
style='float:right;' id='top_next' onclick=prevnext(1)>";
echo "</div><div class='clear'></div>";
$lt = 1;
$pn = 0;
while ($row = mysql_fetch_array($query, MYSQL_ASSOC)) {
$id = $row['id'];
$qns = $row['question'];
$ans = $row['answer'];
$opt1 = $row['opt1'];
$opt2 = $row['opt2'];
$opt3 = $row['opt3'];
$opt4 = $row['opt4'];
if ($lt > $limit)
$disp = "style='display:none;'";
else
$disp = "";
echo "<div class='news_poling disp_$pn'
$disp >";
echo "<input type='hidden' id='ans_$id' value='$ans'>";
echo "<div
class='news_poling_top'><b>$lt</b>.$qns</div>";
echo "<div class='news_poling_sele-ct'><form
id='polingForm' method='post' action='survey-script/pollingresult.php'>";
echo "<div>
<input type='hidden' value='151'
name='Qid'>
<fieldset class='radios' id='$id'>
<input type='radio' value='opt1'
name='options_$id'
onclick=chkans(1,$id)>$opt1 $limit_tag
<input type='radio' value='opt2'
name='options_$id' onclick=chkans(2,$id)>$opt2 $limit_tag";
if ($opt3 != '') {
59
echo "<input type='radio' value='opt3'
name='options_$id' onclick=chkans(3,$id)>$opt3 $limit_tag ";
}
if ($opt4 != '') {
echo "<input type='radio' value='opt4'
name='options_$id' onclick=chkans(4,$id)>$opt4 $limit_tag ";
}
echo "</fieldset>
</div>";
echo "</div>";
echo "</div>";
if ($lt % $limit == 0)
$pn++;
$lt++;
}
echo "<input type='button' value='Получить результат'
onclick='results()' id='res_btn' style='display:none;'>";
echo "<input type='button' value='Предыдущий вопрос'
style='float:left;display:none;' id='prev'
onclick=prevnext(0)>";
echo "<input type='button' value='Следующий вопрос'
style='float:right;' id='next' onclick=prevnext(1)>";
echo "</div><div id='results' align='center'
style='display:none;'>
<div class='result' >
<div class='row'>
<div class='column'><b>Всего вопросов : </b></div>
<div class='column'>$pcount</div>
</div>
<div class='row'>
<div class='column'><b>Не правильных ответов :
</b></div>
<div class='column'><span id='wans'></span></div>
</div>
<div class='row'>
60
<div class='column'><b>Количество правильных ответов :
</b></div>
<div class='column'> <span id='marks'></span></div>
</div>
</div><div class='clear'></div>
<div class='btn_style'><a
href='$hm2/index.php?logout=yes'>Выход</a></div></div>
";
?>
<script type="text/javascript" src="<?php echo $hm2;
?>/admin/jquery.js"></script>
<script type="text/javascript">
var cresult = 0;
var wresult = 0;
var currpage = 0;
var time_out;
var prev = 0;
var cstatus = 0;
var uname = "<?php echo $uname; ?>";
var cat_id = "<?php echo $catid; ?>";
var total_pages = "<?php echo $pages; ?>";
var hm = "<?php echo $hm; ?>";
var hm2 = "<?php echo $hm2; ?>";
total_pages = total_pages - 1;
var total_ques = "<?php echo $pcount; ?>";
function chkans(opt, ansid) {
$ans = $('#ans_' + ansid).val()
if ($ans == opt) {
cresult = parseInt(cresult) + 1;
} else {
wresult = parseInt(wresult) + 1;
}
}
function prevnext(opt) {
$('.disp_' + currpage).css('display', 'none');
if (opt == "1") {
61
currpage = parseInt(currpage) + 1;
} else {
currpage = parseInt(currpage) - 1;
}
if (currpage >= total_pages) {
$('#next').css('display', 'none');
$('#top_next').css('display', 'none');
$('#res_btn').css('display', 'block');
cstatus = 1;
} else {
$('#next').css('display', 'block');
$('#top_next').css('display', 'block');
$('#res_btn').css('display', 'none');
}
if (currpage <= 0) {
$('#prev').css('display', 'none');
$('#top_prev').css('display', 'none');
} else {
$('#prev').css('display', 'block');
$('#top_prev').css('display', 'block');
}
if (cstatus == 1) {
$('#prev').css('display', 'none');
$('#top_prev').css('display', 'none');
}
$('.disp_' + currpage).css('display', 'block');
}
function results() {
$tcans = cresult;
$twans = wresult;
$examtime = $('#hms').html();
$('#cans').html($tcans);
$('#wans').html($twans);
$('#marks').html(cresult);
$('#res_id').css('display', 'none');
$('#results').css('display', 'block');
62
$.ajax({//Make the Ajax Request
type: "POST",
url: hm2 + "/add-results.php",
data: {name: uname, catid: cat_id, cans:
$tcans, wans: $twans, examtime: $examtime, hm: hm, hm2: hm2},
success: function (data) {
$('#error_msg').html("");
$('#msg').html(data);
}
});
}
function count() {
var startTime =
document.getElementById('hms').innerHTML;
var pieces = startTime.split(":");
var time = new Date();
time.setHours(pieces[0]);
time.setMinutes(pieces[1]);
time.setSeconds(pieces[2]);
var timedif = new Date(time.valueOf() - 1000);
var newtime = timedif.toTimeString().split("
")[0];
document.getElementById('hms').innerHTML =
newtime;
if (newtime == "00:00:00") {
clearTimeout(time_out);
$('#timee').css('display', 'none');
alert("Sorry!!your time is over..")
$('#next').css('display', 'none');
$('#top_next').css('display', 'none');
$('#res_btn').css('display', 'block');
cstatus = 1;
$('#prev').css('display', 'none');
$('#top_prev').css('display', 'none');
results();
}
63
time_out = setTimeout(count, 1000);
}
count();
</script>
<?php
} else {
echo "<div class='frms'>
<form name='quiz' action='' method='post'>
<label>Ваше имя : </label>
<input type='text' name='uname' value='$user'
maxlength='20'>
<label>Выберите категорию : </label>
<select name='catid'>";
$cquery = mysql_query("SELECT * FROM category WHERE
status='release'");
if ($cquery) {
while ($crow = mysql_fetch_array($cquery,
MYSQL_ASSOC)) {
$catid = $crow['id'];
$catname = $crow['category'];
echo "<option value='$catid'>$catname</option>";
}
}
echo "</select>
<input type='submit' value='Отправить'>
</form>
</div>";
}
?>
</body>
<link href="<?php echo $hm2; ?>/style.css"
rel="stylesheet" type="text/css">
<?php
}
?>
64
add-results.php
<?php
$hm=$_POST['hm'];
$hm2=$_POST['hm2'];
$name=$_POST['name'];
$wans=$_POST['wans'];
$cans=$_POST['cans'];
$catid=$_POST['catid'];
$etime=$_POST['examtime'];
$cdate=date("Y-m-d");
require_once "$hm/admin/auth/config.php";
if(($hostname == "" || $dbname == "" || $username == "") )
{
echo "<div align='center' style='margintop:20%;color:red;'><b>Installation process is not
completed.kindly follow the read me file
instruction.</b></div>";
}
else{
$link =
mysql_connect("$hostname","$username","$password");
if($link)
{
$dbcon = mysql_select_db("$dbname",$link);
}
if($catid!="" && $name!="" && $wans!="" && $cans!="")
{
$query =
mysql_query("INSERT into quizresults set
name='$name' , cat_id='$catid' ,
correct_ans='$cans',wrong_ans='$wans',marks='$cans',datee='$cdat
e',examtime='$etime'",$link);
}
}
65
db_connect.php
<?php
define ("DB_SERVER", "localhost");
define ("DB_USER", "root");
define ("DB_PASS", "");
define ("DB_NAME", "olimpiadanew");
$connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS,
DB_NAME);
mysqli_set_charset($connection, "utf8");
// Проверка соединения
if(mysqli_connect_errno()) {
die("Ошибка подключения к базе данных: " .
mysqli_connect_error() .
" (" . mysqli_connect_errno() . ")"
);
}
functions.php
<?php
function redirect_to($new_location)
{
header("Location: " . $new_location);
exit;
}
function confirm_query($result_set)
{
if (!$result_set) {
die("Database query failed. Ошибка отправки
запроса.");
}
}
function password_encrypt($password)
{
$hash_format = "$2y$10$";
$salt_length = 22;
66
$salt = generate_salt($salt_length);
$format_and_salt = $hash_format . $salt;
$hash = crypt($password, $format_and_salt);
return $hash;
}
function generate_salt($length)
{
$unique_random_string = md5(uniqid(mt_rand(), true));
$base64_string = base64_encode($unique_random_string);
$modified_base64_string = str_replace('+', '.',
$base64_string);
$salt = substr($modified_base64_string, 0, $length);
return $salt;
}
function password_check($password, $existing_hash)
{
$hash = crypt($password, $existing_hash);
if ($hash === $existing_hash) {
return true;
} else {
return false;
}
}
//cсопоставление логина и пароля user
function attempt_user_login($username, $password)
{
global $connection;
$safe_username = mysqli_real_escape_string($connection,
$username);
$query = "SELECT * ";
$query .= "FROM user ";
$query .= "WHERE username = '{$safe_username}' ";
$query .= "LIMIT 1";
$user_set = mysqli_query($connection, $query);
$user = mysqli_fetch_assoc($user_set);
if ($user) {
67
if (password_check($password, $user["password"])) {
return $user;
} else {
return false;
}
} else {
return false;
}
}
userindex.php
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,
initial-scale=1">
<link rel="stylesheet" href="css/theme.css"
type="text/css">
<title>Вход для пользователей</title>
<style>
body {
background: #c7b39b url(images/tgu.jpg);
background-size: cover; /* Масштабируем фон */
}
.col-md-12 {
background: #fffefa;
padding-bottom: 20px;
}
</style>
</head>
<body>
<nav class="navbar navbar-expand-md bg-primary navbar-dark">
<div class="container" >
<a class="navbar-brand" href="#">
<b> Вход для пользователей</b>
68
</a>
<button class="navbar-toggler navbar-toggler-right"
type="button" data-toggle="collapse"
data-target="#navbar2SupportedContent">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse text-center
justify-content-end" id="navbar2SupportedContent"></div>
</div>
</nav>
<div class="p-2">
<div class="container" >
<div class="row">
<div class="col-md-12">
<h5 class="text-center text-primary display4">Нужна регистрация и авторизация</h5>
<p class="lead">Чтобы пройти тестирование
необходима авторизация. Если у Вас нет логина,
зарегистрируйтесь в системе!</p>
<hr>
<div class="row">
<div class="col-md-6">
<h5>Войдите, чтобы пройти
тестирование</h5>
<a class="btn btn-primary"
href="userlogin.php">Авторизация </a>
</div>
<div class="col-md-6">
<h5>Зарегистрируйтесь, если Вы не
зарегистрированы</h5>
<a class="btn btn-primary"
href="userregister.php">Регистрация </a>
</div></div></div> </div>
<hr>
</div></div>
</html>
69
userlogin.php
<?php
session_start() ?>
<?php $title = "Вход на сайт" ?>
<?php include 'db_connect.php'; ?>
<?php require_once 'validation_functions.php'; ?>
<?php require_once 'functions.php'; ?>
<?php
require_once('usersession.php');
$username = "";
if ($_POST) {
$_SESSION["userid"] = $found_user["iduser"];
$_SESSION["user"] = $found_user["username"];
$_SESSION["email"] = $found_user["email"];
redirect_to("../index.php");
} else {
$_SESSION["message"] = "Пользователь/пароль не
найден";
}
}
?>
<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,
initial-scale=1">
<link rel="stylesheet" href="css/theme.css"
type="text/css">
<style>
body {
background: #c7b39b url(images/tgu.jpg);
background-size: cover; /* Масштабируем фон */
70
}
</style>
<title><?= $title ?></title>
</head>
<body>
<nav class="navbar navbar-expand-md bg-primary navbar-dark">
<div class="container">
<a class="navbar-brand" href="#">
<b> <?= $title ?></b>
</a>
<button class="navbar-toggler navbar-toggler-right"
type="button" data-toggle="collapse"
data-target="#navbar2SupportedContent">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse text-center
justify-content-end" id="navbar2SupportedContent"></div>
</div>
</nav>
<div class="p-2">
<div class="container">
<div class="row">
<div class="col-md-3"> </div>
<div class="col-md-6">
<div class="card text-white p-5 bg-primary">
<div class="card-body">
<h1 class="mb-4">Форма
авторизации</h1>
<form method="post">
<div class="form-group">
<label
for="InputEmail">Введите имя пользователя, использованное при
регистрации</label>
<input type="text"
class="form-control" id="InputEmail" placeholder="Ваш логин"
name="username"
71
value="">
</div>
<div class="form-group">
<label
for="InputPassword">Пароль</label>
<input type="password"
class="form-control" id="InputPassword" placeholder="Пароль"
name="password">
</div>
<button type="submit" class="btn
btn-primary">Войти</button>
<a href="userindex.php"
class="btn btn-primary">Отмена</a>
</form>
</div></div></div></div></div></div>
</html>
userlogout.php
<?php
require_once 'functions.php'; ?>
<?php
require_once('usersession.php');
$_SESSION["userid"] = null;
$_SESSION["user"] = null;
redirect_to("/");
userregister.php
<?php session_start() ?>
<?php $title = "Регистрация на сайте" ?>
<?php include 'db_connect.php'; ?>
<?php require_once 'validation_functions.php'; ?>
<?php require_once 'functions.php'; ?>
<?php
require_once('usersession.php');
72
//$hashed_password = password_encrypt($_POST["password"]);
if (!empty($_POST)) {
$username = $_POST["username"];
//$password = $_POST["password"];
$hashed_password = password_encrypt($_POST["password"]);
$email = $_POST["email"]
$query = "SELECT username FROM `user` WHERE username =
'{$username}' LIMIT 1";
$result = mysqli_query($connection, $query);
foreach ($result as $res) {
$isuser = $res["username"];
}
if ($username === $isuser) {
$_SESSION["message"] = "Пользователь с таким логином
уже существует!";
} else {
$query = "INSERT INTO user (";
$query .= "
username, password, email";
$query .= ") VALUES (";
$query .= "
'{$username}', '{$hashed_password}',
'{$email}'";
$query .= ")";
$result = mysqli_query($connection, $query);
if ($result) {
// Усшех
$_SESSION["message"] = "Регистрация успешна.
Можете войти на сайт!";
redirect_to("/userblock/userlogin.php");
} else {
// Не получилось
$_SESSION["message"] = "Ошибка регистрации";
}
}
}
?>
<!doctype html>
73
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,
initial-scale=1">
<link rel="stylesheet" href="css/theme.css"
type="text/css">
<style>
body {
background: #c7b39b url(images/tgu.jpg);
background-size: cover; /* Масштабируем фон */
}
</style>
<title><?= $title ?></title>
</head>
<body>
<nav class="navbar navbar-expand-md bg-primary navbar-dark">
<div class="container">
<a class="navbar-brand" href="#">
<b> <?= $title ?></b>
</a>
<button class="navbar-toggler navbar-toggler-right"
type="button" data-toggle="collapse"
data-target="#navbar2SupportedContent">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse text-center
justify-content-end" id="navbar2SupportedContent"></div>
</div>
</nav>
<div class="p-2">
<div class="container">
<div class="row">
<div class="col-md-3"></div>
<div class="col-md-6">
<div class="card text-white p-5 bg-primary">
74
<div class="card-body">
<h1 class="mb-4">Форма
регистрации</h1>
<b style="color: red;"><?php echo
message(); ?></b>
<form method="post">
<div class="form-group">
<label
for="InputEmail">Адрес электронной почты</label>
<input type="email"
class="form-control" id="InputEmail" placeholder="Ваш email"
name="email"
value="">
</div>
<div class="form-group">
<label
for="InputUsername">Имя пользователя</label>
<input type="text"
class="form-control" id="InputUsername"
placeholder="Ваше
Имя" name="username" value="">
</div>
<div class="form-group">
<label
for="InputPassword">Пароль</label>
<input type="password"
class="form-control" id="InputPassword" placeholder="Пароль"
name="password">
</div>
<!--
<div class="form-
group">-->
<!--
<label
for="InputPasswordConfirm">Проверка пароля</label>-->
<!--
<input
type="password" class="form-control" id="InputPasswordConfirm"
placeholder="Проверка пароля"-->
75
<!-name="passwordConfirm">-->
<!--
</div>-->
<button type="submit" class="btn
btn-primary">Отправить</button>
<a href="userindex.php"
class="btn btn-primary">Отмена</a>
</form>
</div></div></div></div></div></div>
</html>
usersession.php
<?php
session_start();
function message()
{
if (isset($_SESSION["message"])) {
$output = "<div class=\"message\">";
$output .= htmlentities($_SESSION["message"],
ENT_QUOTES, "UTF-8");
$output .= "</div>";
$_SESSION["message"] = null;
return $output;
}
}
76
ПРИЛОЖЕНИЕ 2
Скриншоты программ автоматизированной системы организации
и проведения олимпиад в высших учебных заведениях
Страница с результатами тестов в административной панели
Страница настроек
Страница редактирования категории
77
Окно «Справка»
Окно «О программе»
Таблица answers
78
Таблица question
Таблица olympiads
Таблица role
Таблица user
79
Алгоритм регистрации в системе
Алгоритм авторизации в системе
Отзывы:
Авторизуйтесь, чтобы оставить отзыв