Top Banner
Система проведения соревнований по спортивному программированию «S4RiS» (["sfO:ris], System for Right Solutions) Стрекаловский Олег Александрович Вологодский государственный педагогический университет Факультет прикладной математики и компьютерных технологий Научный руководитель: ст. преп. Меньшиков Ф.В. Рецензент: к.т.н., доц. Андрианов И.А. Вологда 2012 г. 1/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Защита моей ВКР.

Система проведения соревнований

по спортивному программированию «S4RiS»

(["sfO:ris], System for Right Solutions)

Стрекаловский Олег Александрович

Вологодский государственный педагогический университетФакультет прикладной математики

и компьютерных технологий

Научный руководитель: ст. преп. Меньшиков Ф.В.Рецензент: к.т.н., доц. Андрианов И.А.

Вологда

2012 г.

1/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 2: Защита моей ВКР.

Введение

Цели и задачи работы

Изучить, в том числе на практике, принципы разработкиweb-приложений на основе Java Platform, Enterpise Edition.

Разработать систему для проведения соревнований поспортивному программированию формата ACM ICPC.

2/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 3: Защита моей ВКР.

Введение

ACM-ICPC International Collegiate Programming Contest

3/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 4: Защита моей ВКР.

Введение

Анализ технического задания

Функциональные требования к системе

Предоставление возможности управления соревнованиемАдминистратором системы.

Удобный интерфейс участника для отправки своихрешений и просмотра результатов.

Возможность просмотра хода соревнования для зрителей.

Дополнительные требования

Безопасность.

Расширяемость.

4/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 5: Защита моей ВКР.

Введение Средства и инструменты разработки

Фреймворки разработки для JavaEE

JavaServer Faces (JSF)

JSF — это фреймворк для web-приложений, написанный наJava.Технология JavaServer Faces включает:

Набор API для представления компонентпользовательского интерфейса (UI) и управления ихсостоянием, обработкой событий и валидацией вводимойинформации, определения навигации, а также поддержкуинтернационализации (i18n).

Специальная библиотека JSP, JSF тегов для выраженияинтерфейса JSF.

Hibernate

Библиотека для отображения информации из реляционных базданных в Java-объекты (object-relational mapping — ORM).

5/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 6: Защита моей ВКР.

Введение Средства и инструменты разработки

Фреймворки разработки для JavaEE

JavaServer Faces (JSF)

JSF — это фреймворк для web-приложений, написанный наJava.Технология JavaServer Faces включает:

Набор API для представления компонентпользовательского интерфейса (UI) и управления ихсостоянием, обработкой событий и валидацией вводимойинформации, определения навигации, а также поддержкуинтернационализации (i18n).

Специальная библиотека JSP, JSF тегов для выраженияинтерфейса JSF.

Hibernate

Библиотека для отображения информации из реляционных базданных в Java-объекты (object-relational mapping — ORM).

5/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 7: Защита моей ВКР.

Введение Средства и инструменты разработки

Cерверное ПО

Apache Tomcat

Программа-контейнер приложений, написанная на языке Java.Tomcat позволяет запускать web-приложения, содержит рядпрограмм для самоконфигурирования и используется вкачестве самостоятельного web-сервера.

СУБД MySQL

Система управления базами данных. MySQL является местомхранения базы данных системы, а также предоставляетфункции взаимодействия базы данных с внешнимиприложениями.

6/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 8: Защита моей ВКР.

Введение Средства и инструменты разработки

Cерверное ПО

Apache Tomcat

Программа-контейнер приложений, написанная на языке Java.Tomcat позволяет запускать web-приложения, содержит рядпрограмм для самоконфигурирования и используется вкачестве самостоятельного web-сервера.

СУБД MySQL

Система управления базами данных. MySQL является местомхранения базы данных системы, а также предоставляетфункции взаимодействия базы данных с внешнимиприложениями.

6/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 9: Защита моей ВКР.

Проектирование и разработка системы

Структура системы

7/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 10: Защита моей ВКР.

Проектирование и разработка системы

Подсистемы S4RiS

S4RiS Accepter

Web-приложение для проведения соревнований.

Предоставляет web-интерфейс для взаимодействияпользователей с системой.

Взаимодействует с проверяющими системами.

S4RiS Standings Dancing (S4RiS StanD)

Web-страница для визуализации процесса «разморозки»результатов соревнования.

Получает протокол соревнования в формате JSON, строитпо ней модель и позволяет итеративно проводить«разморозку».

8/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 11: Защита моей ВКР.

Проектирование и разработка системы

Подсистемы S4RiS

S4RiS Accepter

Web-приложение для проведения соревнований.

Предоставляет web-интерфейс для взаимодействияпользователей с системой.

Взаимодействует с проверяющими системами.

S4RiS Standings Dancing (S4RiS StanD)

Web-страница для визуализации процесса «разморозки»результатов соревнования.

Получает протокол соревнования в формате JSON, строитпо ней модель и позволяет итеративно проводить«разморозку».

8/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 12: Защита моей ВКР.

Подсистема «S4RiS Accepter»

Страница входа в систему

9/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 13: Защита моей ВКР.

Подсистема «S4RiS Accepter» Интерфейс администратора

Добавление новой задачи

10/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 14: Защита моей ВКР.

Подсистема «S4RiS Accepter» Интерфейс администратора

Управление соревнованием.

Список участников соревнования.

11/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 15: Защита моей ВКР.

Подсистема «S4RiS Accepter» Интерфейс участника

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

12/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 16: Защита моей ВКР.

Подсистема «S4RiS Accepter» Интерфейс участника

Отправка решения

13/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 17: Защита моей ВКР.

Подсистема «S4RiS Accepter» Интерфейс участника

Просмотр персональных результатов

14/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 18: Защита моей ВКР.

Подсистема «S4RiS StanD»

Общие сведения

Получение протокола соревнованияв формате «S4RiS StanD JSON Log»

Протокол соревнования из тестирующей системы передаётся впрограмму-конвертор, которая преобразует его в формат JSONв соответствии со установленной спецификацией.

Построение модели соревнования

Полученные данные передаются в скрипт, который строит поним модель соревнования (связывается информация позадачам, участникам, отправкам решений).

Проведение «разморозки» результатов

Процесс «разморозки» происходит итерациями, каждая изкоторых инициируется нажатием клавиши ’N’ на клавиатуре.

15/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 19: Защита моей ВКР.

Подсистема «S4RiS StanD»

Общие сведения

Получение протокола соревнованияв формате «S4RiS StanD JSON Log»

Протокол соревнования из тестирующей системы передаётся впрограмму-конвертор, которая преобразует его в формат JSONв соответствии со установленной спецификацией.

Построение модели соревнования

Полученные данные передаются в скрипт, который строит поним модель соревнования (связывается информация позадачам, участникам, отправкам решений).

Проведение «разморозки» результатов

Процесс «разморозки» происходит итерациями, каждая изкоторых инициируется нажатием клавиши ’N’ на клавиатуре.

15/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 20: Защита моей ВКР.

Подсистема «S4RiS StanD»

Общие сведения

Получение протокола соревнованияв формате «S4RiS StanD JSON Log»

Протокол соревнования из тестирующей системы передаётся впрограмму-конвертор, которая преобразует его в формат JSONв соответствии со установленной спецификацией.

Построение модели соревнования

Полученные данные передаются в скрипт, который строит поним модель соревнования (связывается информация позадачам, участникам, отправкам решений).

Проведение «разморозки» результатов

Процесс «разморозки» происходит итерациями, каждая изкоторых инициируется нажатием клавиши ’N’ на клавиатуре.

15/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 21: Защита моей ВКР.

Подсистема «S4RiS StanD»

Принцип работы

[+ N] – участник сдал задачу с N-1 попытки до«заморозки».[+] – задача сдана с 1ой попытки.

[– N] – участник сделал N неудачных попыток сдачи и завремя «заморозки» попыток не было.

[? N] – участник сделал N попыток сдачи задачи засоревнование, некоторые были сделаны в «заморозке».

16/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 22: Защита моей ВКР.

Заключение

Результаты

В рамках выполнения выпускной квалификационнойработы была спроектирована и создана системапроведения соревнований по спортивномупрограммированию «S4RiS».

Реализованы подсистемы:

«S4RiS Accepter».

«S4RiS StanD».

Стал самостоятельным web-сервисом.

Был использован на церемонии закрытия

XV Межвузовской олимпиады по программированию

в г. Вологда. Его работа была положительно оценена

членами жюри и участниками.

17/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»

Page 23: Защита моей ВКР.

Заключение

Спасибо за внимание!

18/18 Стрекаловский Олег Александрович Система проведения соревнований «S4RiS»