Тип работы:
Предмет:
Язык работы:


Разработка системы автоматической проверки правильности кода

Работа №71553

Тип работы

Бакалаврская работа

Предмет

информатика

Объем работы48
Год сдачи2016
Стоимость4320 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
27
Не подходит работа?

Узнай цену на написание


Введение 4
Обзор литературы 5
Глава 1. Постановка задачи и обзор аналогов 7
1.1 Постановка задачи 7
1.2 Обзор аналогов 7
Глава 2. Описание разрабатываемой системы 9
2.1 Формат олимпиад 9
2.2 Общая концепция 10
2.3 Структура программного продукта 11
2.3.1 Клиент пользователя 11
2.3.2 Графическая оболочка сервера 12
2.3.3 Служба подключения клиентов 12
2.3.4 Служба тестирующих модулей 12
2.3.5 Тестирующий модуль 13
Глава 3. Практическая реализация 14
3.1 Средства разработки 14
3.2 Важные конструкции программирования 14
3.2.1 Обобщённые коллекции 14
3.2.2 Лямбда-выражения 15
3.2.3 Неявная типизация и анонимные типы 16
3.2.4 LINQ 17
3.3 Хранилище данных 18
3.3.1 Способы взаимодействия с базами данных 18
3.3.2 Теоретические аспекты работы с Entity Framework 20
3.3.3 Схема разработанной базы данных 21
3.3.4 Реализация взаимодействия с базой данных 23
3.4 Службы 25
3.4.1 Устройство службы WCF 25
3.4.2 Контракты служб 27
3.4.3 Управление экземплярами службы 29
3.4.4 Размещение службы 29
3.4.5 Служба подключения клиентов 31
3.4.6 Служба тестирующих компонентов 35
3.5 Модуль проверки правильности кода 36
3.5.1 Реализация компонента 37
3.5.2 Проблема безопасности 38
3.5.3 Процесс запуска 40
3.6 Редактор списка задач и тестов 41
3.7 Графическая оболочка сервера 42
3.8 Клиент пользователя 43
Заключение 47
Список литературы

Ежегодно проводятся олимпиады по программированию среди школьников и студентов. Организация такого мероприятия неизбежно связана с обработкой большого количества информации. Большая часть действий является общей для всех подобных олимпиад: регистрация участников, тестирование их программ и подведение итогов. Все это можно осуществлять вручную, однако, это требует больших временных затрат, а также не исключает ошибки, вызванные человеческим фактором.
Ввиду описанных трудностей предложено использовать систему автоматической проверки правильности кода, систему управления олимпиадой. Такая система должна существенно облегчить обеспечение ряда функциональных возможностей при проведении подобных мероприятий, а именно:
• хранить базу участников, информацию о ходе соревнования;
• автоматически проверять корректность исходных кодов решения на наборе тестов;
• информировать участника о результате проверки его работы;
• вычислять и сохранять статистику соревнования.
Целью данной работы является разработка системы автоматической проверки правильности кода на примере проведения олимпиад по программированию.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


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



1. Троелсен Э. Язык программирования С# 5.0 и платформа .NET 4.5. М.: Вильямс, 2013. 1312 с.
2. Установка .NET Framework // Microsoft Developer Network URL: https://msdn.microsoft.com/ru-ru/library/5a4x27ek(v=vs.110).aspx(дата обращения: 11.05.16).
3. Using IntelliSense // Microsoft Developer Network URL: https://msdn.microsoft.com/en-us/library/hcw1 s69b(VS.71).aspx (дата обращения: 11.05.16).
4. Lerman J. Programming Entity Framework. Second Edition. Sebastopol: O’Reilly Medias, 2010. 920 p.
5. Lowy J., Montgomery M. Programming WCF Services. 4th Edition. Sebastopol: O’Reilly Medias, 2015. 1018 p.
6. Windows Communication Foundation Services and WCF Data Services // Microsoft Developer Network URL: https://msdn.microsoft.com/ru- ru/library/bb907578.aspx(дата обращения: 11.05.16).
7. WSDL: взгляд изнутри // CIT forum URL:
http://citforum.ru/internet/webservice/wsdl_1/ (дата обращения:
11.05.16).
8. User Account Control // Microsoft TechNet URL:
https://technet.microsoft.com/en-us/library/cc731416.aspx (дата
обращения: 11.05.16).
9. Асинхронное программирование с использованием ключевых слов
Async и Await // Microsoft Developer Network URL: https://msdn.microsoft.com/ru-ru/library/hh191443.aspx (дата
обращения: 11.05.16).


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ