Оболочка для тестирования java

Автор работы: Пользователь скрыл имя, 22 Мая 2016 в 19:12, курсовая работа

Описание работы

Задачей данной курсовой работы по курсу «Сетевое программирование» являются проектирование и разработка информационной системы, представляющей собой оболочку для проведения тестирования. Целью выполнения данной курсовой работы является получение практических навыков в области сетевого программирования и методов разработки клиент-серверных приложений, создания качественного пользовательского интерфейса, а также генерации и написания кодов клиентского и серверного приложений.

Файлы: 1 файл

ВВЕДЕНИ1.docx

— 344.69 Кб (Скачать файл)

Со́кеты (англ. socket — разъём) — название программного интерфейса для обеспечения обмена данными между процессами. Процессы при таком обмене могут исполняться как на одной ЭВМ, так и на различных ЭВМ, связанных между собой сетью. Сокет — абстрактный объект, представляющий конечную точку соединения. [1]

Главный сокет разворачиваем на сервере, он работает в режиме ожидания. Как только сокет на клиенте соединяется к сокету сервера, запускаем отдельный поток для обработки запросов клиента. Связь между ними по протоколу TCP/IP.

TCP/IP - это два основных сетевых пpотокола Internet. Часто это название используют и для обозначения сетей, pаботающих на их основе. Пpотокол IP (Internet Protocol - IP v4) обеспечивает маpшpутизацию (доставку по адpесу) сетевых пакетов. Пpотокол TCP (Transfer Control Protocol) обеспечивает установление надежного соединения между двумя машинами и собственно пеpедачу данных, контpолиpуя оптимальный pазмеp пакета пеpедаваемых данных и осуществляя пеpепосылку в случае сбоя. Число одновpеменно устанавливаемых соединений между абонентами сети не огpаничивается, т. е. любая машина может в некоторый промежуток времени обмениваться данными с любым количеством дpугих машин по одной физической линии. [2]

Теперь расскажу о самом взаимодействии.

Взаимодействие заключается в передаче клиентами кода операции.  Код операции, операционный код, опкод — часть машинного языка, называемая инструкцией и определяющая операцию, которая должна быть выполнена.

Определение и формат кодов инструкций зависит от системы команд данного процессора (который может быть как главным процессором, так и более специализированным для работы в какой-либо конкретной области). В отличие от самого опкода, инструкция обычно имеет одно или больше определений для операндов (то есть данных) над которыми должна выполняться операция, хотя некоторые операции могут иметь явные операнды или совсем их не иметь. [1]

Клиент передает некое именованное число серверу (передача осуществляется через потоки). Сервер распознает это число и выполняет операцию. В зависимости от кода операции, клиент может передавать дополнительные данные серверу. Например, для аутентификации администратора помимо кода необходимо передать логин и пароль.

Сервер, в свою очередь, работает с базой данных. В качестве бд выбрана SQLite.

SQLite — компактная встраиваемая реляционная база данных. SQLite поддерживает динамическое типизирование данных. [1]

Она является встраиваемой, то есть работа осуществляется не по парадигме "клиент-сервер". База расположена локально рядом с программой.

Теперь расскажу о самом тестировании.

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

 

 

 

 

    1. Входные и выходные данные

 

В данном разделе представлено описание входных и выходных данных программы.

Входными данными для тестирования необходимо ввести ФИО и тему. ФИО является строковым типом в кодировке UTF-8. Список тем загружается с сервера при подключении.

Выходные данные - это статистика (число правильных ответов), дата начала, дата завершения тестирования. Эти данные пишем на сервер.

Для клиентского приложения в основе формы лежат библиотеки swing. Swing — библиотека для создания графического интерфейса для программ на языке Java. Swing был разработан компанией Sun Microsystems. Он содержит ряд графических компонентов (англ. Swing widgets), таких как кнопки, поля ввода, таблицы и т. д.

Swing относится к библиотеке классов JFC, которая представляет собой набор библиотек для разработки графических оболочек. [1]

 

 

 

 

 

 

 

 

 

 

  1. Инструкция пользователю

 

Для работы с оболочкой для тестирования требуется запустить клиентское приложение. Далее спрашиваем у администратора требуемый IP адрес и порт. Нажимаем  «меню – конфигурация», где прописываем требуемые настройки и нажимаем клавишу «ОК». Работа с меню конфигурации представлена на рисунке 1а и 1 б.

Рисунок 1а – Выбор в меню вкладки «конфигурация»

Рисунок 1б – Работа с меню конфигурации

Теперь требуется установить соединение с сервером. Для этого выбираем пункты «меню – подключиться» (рисунок 2а). Если появляется сообщение об установлении соединения, значит, подключение к серверу прошло успешно. Сообщение с успешным подключением к серверу представлено на рисунке 2б.

Рисунок 2а  - Выбор пункта в меню «подключение»

Рисунок 2б – Установление успешного соединения с сервером

Если же соединение не установлено - то свяжитесь с администратором для решения проблем подключения.

Далее выбираем пункты «меню – войти» (рисунок 3а). Вводим свои ФИО и тему для тестирования. Нажимаем на клавишу «Войти» для подтверждения. На рисунке 3б изображена заполненная форма пользователя, желающего пройти тестирование.

Рисунок 3а – Выбор в меню пункта «подключение»

Рисунок 3б – Форма с введенными данными для прохождения тестирования

Далее проходим тестирование, выбирая вариант ответа нажатием на один из предложенных. На рисунке 4 показана форма с выполняемым пользователем тестированием.

Рисунок 4 – Прохождение тестирования

По окончании тестирования пользователь получает сообщение о том, что тестирование окончено. Окно с завершением тестирования представлено на рисунке 5.

Рисунок 5 – Окно с завершением тестирования

  1. Тестовый пример

 

В тестовом примере представлен запуск программы, реализованной в рамках данной курсовой работы, от имени администратора.

Основные настройки для запуска тестировщика от имени администратора являются аналогичными настройкам пользователя, проходящего тест. Они описаны ранее.

Различие заключается в том, что администратор имеет возможность новые темы и  добавлять новые вопросы к этим темам.

На рисунке 6 представлено окно редактирования вопросов в тесте.

Рисунок 6 – Окно редактирования вопросов

 

 

 

Заключение

 

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

В данном проекте предоставлена реализация организации тестирования знаний студентов с возможностью оценки их знаний по количеству верных ответов.

Тестирования направлено на проверку уровня знаний любого количества студентов с дифференциацией по тематике тестирования, при этом имеется пересдачи любого теста, что было реализовано соответственно системой просмотра результатов в профиле администратора и возможностью выбора любой темы теста студентом.

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

Благодаря компьютерному тестированию можно повысить информационную безопасность и предотвратить рассекречивание теста за счет высокой скорости передачи информации и специальной защиты электронных файлов.

Систематический контроль знаний большого числа проверяемых приводит к необходимости автоматизации контроля, использованию при его проведения компьютерной техники и соответствующего программного обеспечения.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список использованных источников

 

  1. Википедия – свободная энциклопедия. [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/ (дата обращения 05.05.2016).
  2. Федотов А.М. Введение в Internet. Документация по Интернет технологиям - Новосибирск , Институт вычислительных технологий СО РАН, 1996 - 2003
  3. Аванесов В.С. Композиция тестовых заданий. – М., Центр тестирования, 2002.
  4. Габова О.В., Русаков А.А. Тестирование - одна из форм диагностики и проверки успешности обучения. Педагогическая информатика, № 3, 2005, - с.13-17
  5. Охотина Л.Н. Компьютерное тестирование знаний студентов по математики. Педагогическая информатика, № 3, 2007, - с.46-51
  1. Автоматизированное рабочее место для статистической обработки данных/В.В. Шураков, Д.М. Дайитбегов, С.В. Мизрохи, С.В. Ясеновский. – М.: Финансы и статистика, 1990. – 190 с.

  1. Бекаревич Ю. Б., Пушкина Н. В., Смирнова Е. Ю. Управление базами данных. СПб.: Изд. СПбГУ, 1999. – 530 с.

  1. Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных: Учебник для высших учебных заведений / Под ред. проф. А. Д. Хомоненко. — СПб: Корона принт, 2000. — 416 с.

 

 

 

 

 

 

 


Информация о работе Оболочка для тестирования java