Программа тестирования знаний

Разработка клиент-серверного приложения под управлением Windows на языке программирования Delphi, реализующего функции дистанционного обучения (тесты). Основная форма программы, которая состоит из меню, панели активации пользователя и панели чата.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 15.04.2019
Размер файла 4,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru//

Размещено на http://www.allbest.ru//

Введение

Данный курсовой проект был разработан в среде Delphi. Среди множества языков, является наиболее универсальным и легко изучаемым языком. При этом его удобно использовать для создания сложных приложений, базами данных, приложения масштаба предприятия. Delphi позволяет использовать все современные возможности объектно-ориентированного программирования. -- это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi - строго типизированный объектно-ориентированный язык, прост и логичен. Основные конструкции языка четко выделяются в программе, что способствует хорошему восприятию написанного кода. Графический интерфейс Delphi отлично продуман, среда разработки предоставляет доступ только к тем участкам кода, с которыми необходимо работать, скрывая основную часть программы, которая создается автоматически самой разработкой.

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

Цель работы: разработать клиент-серверное приложение под управлением Windows на произвольном языке программирования, реализующее функции дистанционного обучения.

Теоретическая часть

Согласно заданию необходимо разработать программу Клиента с функциями:

Регистрация и авторизация студента (ФИО, номер группы, пароль);

Система обмена сообщениями и файлами;

Система прохождения тестов;

Система чтения лекций.

и программу Сервер с функциями:

Регистрация и авторизация преподавателя (ФИО, кафедра, пароль);

Система обмена сообщениями и файлами;

Система создания и проверки тестов;

Система загрузки лекционного материала.

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

Объект исследования

Проверка приобретённых знаний и умений является сложным процессом и охарактеризовать это достаточно точно и полно одной лишь оценкой за выполненную работу (оцениваемую лишь по конечному результату), вряд ли может служить объективной оценкой достижения учащегося к этому моменту времени. Для разрешения этой проблемы я предлагаю ввести оценку достижений учащегося при помощи тестового контроля знаний.

Тест (от английского слова test - проверка, задание) - это система заданий, позволяющая измерить уровень усвоения знаний, степень развития определенных психологических качеств, способностей, особенностей личности.

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

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

Функциональность

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

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

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

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

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

Актуальность

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

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

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

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

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

В результате проведенного анализа существующих инструментальных средств разработки приложений был выбран продукт фирмы Embarcadero RAD Studio 10.1 Berlin, что обусловлено очень богатыми возможности среды программирования (работа с файлами, графикой, различными СУБД и т.д.) и простотой в использовании. Использование среды разработки Delphi при программной реализации, позволило создать качественное современное программное обеспечение, обладающее высокой скоростью работы, удовлетворяющее всем уровням требований предъявляемых к интерфейсу пользователя, обеспечивающее эффективность и гибкость работы с данными.

Практическая часть

Блок-схемы

unit UTest;

procedure TFTest.BitBtnO1Click(Sender: TObject);

procedure TFTest.SpeedButton1Click(Sender: TObject);

procedure TFTest.SpeedButton2Click(Sender: TObject);

procedure TFTest.TimerTestTimer(Sender: TObject);

unit UNewVopros;

procedure TFNewVopros.SpeedButton1Click(Sender: TObject);

Модули программы

unit UTest;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Buttons, Vcl.StdCtrls, Vcl.ExtCtrls;

type

TFTest = class(TForm)

ComboBox1: TComboBox;

Label1: TLabel;

SpeedButton1: TSpeedButton;

SpeedButton2: TSpeedButton;

Panel1: TPanel;

Label2: TLabel;

Label3: TLabel;

LabelVopros: TLabel;

BitBtnO1: TBitBtn;

BitBtnO2: TBitBtn;

BitBtnO3: TBitBtn;

BitBtnO4: TBitBtn;

BitBtnO5: TBitBtn;

TimerTest: TTimer;

procedure SpeedButton1Click(Sender: TObject);

procedure SpeedButton2Click(Sender: TObject);

procedure BitBtnO1Click(Sender: TObject);

procedure TimerTestTimer(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FTest: TFTest;

k:integer;

implementation

{$R *.dfm}

uses UMain;

procedure TFTest.BitBtnO1Click(Sender: TObject);

var BitBtnO: String;

begin

with Sender as TComponent do BitBtnO:=Name;

if FMain.ADOQVopros.FieldByName('PrO').AsInteger=(FindComponent(BitBtnO) as TBitBtn).Tag then begin

(FindComponent(BitBtnO) as TBitBtn).Font.Color:=clGreen;

inc(k);

end else (FindComponent(BitBtnO) as TBitBtn).Font.Color:=clRed;

FMain.ADOQVopros.Next;

if not FMain.ADOQVopros.Eof then TimerTest.Enabled:=true else begin

ShowMessage('Тестокончен! Результат: '+IntToStr(k)+' из '+IntToStr(FMain.ADOQVopros.RecordCount));

SpeedButton2.Click;

end;

end;

procedure TFTest.SpeedButton1Click(Sender: TObject);

var i:integer;

begin

if not FMain.ADOQTems.Locate('TemsName',ComboBox1.Text,[]) then ShowMessage('Выбиритетему!') else begin

ComboBox1.Enabled:=false;

SpeedButton1.Enabled:=false;

SpeedButton2.Enabled:=true;

Panel1.Visible:=true;

FMain.ADOQVopros.Close;

FMain.ADOQVopros.SQL.Clear;

FMain.ADOQVopros.SQL.Add('Select * From Vopros');

FMain.ADOQVopros.SQL.Add('Where TemsN='+FMain.ADOQTems.FieldByName('N').AsString);

FMain.ADOQVopros.Open;

FMain.ADOQVopros.First;

k:=0;

TimerTest.Enabled:=true;

end;

end;

procedure TFTest.SpeedButton2Click(Sender: TObject);

var i:integer;

begin

ComboBox1.Enabled:=true;

SpeedButton2.Enabled:=false;

SpeedButton1.Enabled:=true;

Panel1.Visible:=false;

LabelVopros.Caption:='';

for i := 1 to 5 do begin

(FindComponent('BitBtnO'+IntToStr(i)) as TBitBtn).Font.Color:=clWindowText;

(FindComponent('BitBtnO'+IntToStr(i)) as TBitBtn).Caption:='';

end;

end;

procedure TFTest.TimerTestTimer(Sender: TObject);

var i:integer;

begin

LabelVopros.Caption:=FMain.ADOQVopros.FieldByName('Vopros').AsString;

for i := 1 to 5 do begin

(FindComponent('BitBtnO'+IntToStr(i)) as TBitBtn).Font.Color:=clWindowText;

(FindComponent('BitBtnO'+IntToStr(i)) as TBitBtn).Caption:=FMain.ADOQVopros.FieldByName('O'+IntToStr(i)).AsString;

end;

TimerTest.Enabled:=false;

end;

end.

unit UNewVopros;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Buttons, Vcl.StdCtrls;

type

TFNewVopros = class(TForm)

MemoVopros: TMemo;

EditO1: TEdit;

EditO2: TEdit;

EditO3: TEdit;

EditO4: TEdit;

EditO5: TEdit;

RadioButton1: TRadioButton;

Label1: TLabel;

Label2: TLabel;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

RadioButton4: TRadioButton;

RadioButton5: TRadioButton;

SpeedButton1: TSpeedButton;

EditTems: TEdit;

procedure SpeedButton1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FNewVopros: TFNewVopros;

implementation

{$R *.dfm}

uses UMain;

procedure TFNewVopros.SpeedButton1Click(Sender: TObject);

var i: integer;

begin

FMain.ADOQVopros.Insert;

FMain.ADOQVopros.FieldByName('TemsN').AsInteger:=FNewVopros.EditTems.Tag;

FMain.ADOQVopros.FieldByName('Vopros').AsString:=MemoVopros.Text

for i := 1 to 5 do begin

FMain.ADOQVopros.FieldByName('O'+IntToStr(i)).AsString:=(FindComponent('EditO'+IntToStr(i)) as TEdit).Text;

if (FindComponent('RadioButton'+IntToStr(i)) as TRadioButton).Checked=true then FMain.ADOQVopros.FieldByName('PrO').AsInteger:=i;

end;

FMain.ADOQVopros.Post;

Close;

end;

end.

Установка программы

Для установка программы требуется:

Скопировать папку \Test на диск С:\.

В папке C:\Test\Win32\Debug открываем файл Options.txt.

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

Открываем общий доступ к папке C:\Test\

Запускаем файл C:\Test\Win32\Debug\PTest.exe.

Инструкция программы

Основная форма программы состоит из меню, панели активации пользователя и панели чата.

Авторизация и регистрация пользователя.

Для выбора пользователя в правом верхним углу нажимаем кнопку «…»

Откроется окно Авторизация пользователя, где надо ввести пользователя и пароль и нажать кнопку «Да».

Если пользователь не зарегистрирован нажмите кнопку «Регистрация».

Для регистрации студента достаточно заполнить Фамилию, Имя, Отчество, Группу и Пароль, и нажать кнопку «Добавить».

Для регистрации преподавателя заполнить Фамилию, Имя, Отчество, Кафедру, Пароль, и знать Ключ администратора. Без Ключа администратора пользователь не пройдет регистрацию.

После того как авторизуете пользователя в зависимости от статуса пользователя вам будут разные функции. Для пользователя «Преподаватель» будут доступны все функции программы, а для пользователя «Студент» функции Чата, Тестирования и Чтения лекций.

Система обмена сообщениями и файлами.

Чат состоит из трех рабочих зон: окно сообщений, окно пользователей и окно ввода сообщений.

Все входящие и исходящие сообщения отображаются в окне сообщений построчно и отсортировано по дате. Если сообщение содержит прикрепленный файл в левой стороне от текста сообщения отображается иконка в виде книжек.

Окно пользователей сдержит данные в виде дерево в иерархической последовательности. Кнопка «Обновить» освежает дерево пользователей.

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

Для отправки сообщения требуется выбрать кому, написать сообщение и если требуется прикрепить файл и нажать кнопку «Отправить».

Для сохранения файла присланного вам вместе с сообщение на до нажать левой кнопкой мышки по сообщению и откроется диалоговое окно «Сохранить как», где можете выбрать путь и новое имя для отправленного вам файла.

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

Для открытия формы тестирования в меню Основной формы выберите пункт «Тестирование».

Выберите Тему и нажмите кнопку «Начать».

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

По окончанию теста выводится окно с количеством правильных ответов в пропорции с количеством заданных вопросов.

Система чтения лекций.

Для открытия формы Лекций в меню Основной формы выберите пункт «Лекции».

При выборе в левом окне тему лекций в правом открывается текст лекции.

Система создания и проверки тестов.

Для доступа к Базам требуется авторизоваться по пользователю Преподаватель.

Выбрать в База ->Вопросов для тестов.

В открывшейся форме имеются две панели с лева Темы, с права Вопросы.

Выбирая в панели ту или иную тему с права будут появляется вопросы к этой теме.

Для добавления вопроса нажимаем кнопку «Добавить»

Откроется форма «Новый Вопрос», где для добавления вопроса требуется заполнить все поля и отметить точкой тот ответ, который является правильный и нажать кнопку «Добавить».

Система загрузки лекционного материала.

Выбрать в База ->Лекционного материала.

В открывшейся форме имеется список лекций и путь к файлу.

Для добавления новой лекции нажимаем кнопку «Новый».

Вводим поля и нажимаем кнопку «Сохранить».

Заключение

Данная курсовая работа была выполнена в полном соответствии поставленному заданию и отлажена в среде Embarcadero RAD Studio 10.1 Berlin. В ходе выполнения курсовой работы была разработана программа для тестирования студентов по программированию с графическим интерфейсом. Базу вопросов можно увеличивать до невозможности. Программа может быть использована в образовательных целях.

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

В результате выполнения данной курсовой работы, я убедился в широких возможностях языка программирования Embarcadero RAD Studio 10.1. 

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

Арсеновски Даниэль Рефакторинг в C# и ASP.NET для профессионалов / Даниэль Арсеновски. - М.: Вильямс, 2015. - 528 c.

Гаряка А. А. Основы ASP.NET 2.0 / А.А. Гаряка. - М.: Национальный Открытый Университет "ИНТУИТ", 2016- 344 c. (Основы информационных технологий), ISBN 978-5-94774-627-3. Источник ЭБС "Лань", ссылка: https://e.lanbook.com/reader/book/100290/#2

Мак-Дональд Мэтью MicrosoftASP.NET 2.0 с примерами на C# 2010 для профессионалов / Мэтью Мак-Дональд , Марио Шпушта. - М.: Вильямс, 2012. - 855 c.

Снетков В.М. Программирование на ASP.NET/ В.М.Снетков - М.: Национальный Открытый Университет "ИНТУИТ", 2016 - 901 с. Источник ЭБС "Лань", ссылка: https://e.lanbook.com/reader/book/100402/#3

Столбовский Д. Н. Основы разработки Web-приложений на ASP.NET / Д.Н. Столбовский. - М.: Бином. Лаборатория знаний, Интернет-университет информационных технологий, 2014. - 304 c.

Столбовский Д.Н. Разработка Web-приложений ASP .NET с использованием Visual Studio .NET / Столбовский Д.Н. - М.: Национальный Открытый Университет "ИНТУИТ", 2016 - 375 с. (Основы информационных технологий), ISBN 978-5-94774-991-5. Источник ЭБС "Лань", ссылка: https://e.lanbook.com/reader/book/100474/#2

Тузовский А.Ф. Проектирование и разработка web-приложений: учеб.пособие для академического бакалавариата/ А.Ф.Тузовский. - М.: Издательство Юрайт, 2018. - 218 с. - Серия: Университеты России. ISBN 978-5-534-00515-8. Источник ЭБС Юрайт, ссылка https://biblio-online.ru/viewer/proektirovanie-i-razrabotka-web-prilozheniy-413954#page/2

Чедвик Джесс ASP.NET MVC 4. Разработка реальных веб-приложений с помощью ASP.NET MVC / Джесс Чедвик , Тодд Снайдер , Хришикеш Панда. - М.: Вильямс, 2013. - 432 c. серверный приложение тестирование

Шапошников И. Самоучитель ASP.NET / И. Шапошников. - М.: БХВ-Петербург, 2012. - 368 c.

Размещено на Allbest.ru


Подобные документы

  • Изучение истории достижений корпорации Oracle. Разработка клиент-серверного приложения на языке Delphi XE, реализующего возможность управления персоналом на предприятии. Основные структуры данных. Создание инструкции работы с приложением "Отдел кадров".

    дипломная работа [974,7 K], добавлен 08.06.2013

  • Разработка программы проверки знаний для тестирования студентов по программированию с кодом на языке Delphi. Проектирование визуального интерфейса и словесный алгоритм работы программы. Алгоритмы разработанных процедур и функций, инструкция пользователя.

    курсовая работа [506,5 K], добавлен 21.02.2011

  • Контроль знаний как форма педагогической деятельности. Особенности и классификация тестовых заданий. Разработка обучающе-контролирующей программы для контроля знаний обучающихся в среде программирования Borland Delphi 7.0 под управлением Windows XP.

    курсовая работа [172,5 K], добавлен 24.08.2016

  • Клиент-серверная архитектура проектируемой программы по проверке знаний студентов, структура базы данных. Разработка ее программно-интерфейсной реализации в среде Delphi. Установка и запуск приложения, информация для пользователя, листинг программы.

    дипломная работа [2,1 M], добавлен 20.06.2011

  • Сетевое программное обеспечение: общее понятие, содержание, функции. Этапы развития теории компьютерных сетей. Проектирование в среде программирования Borland Builder C++ клиент серверного приложения с использованием сокетов, листинг данной программы.

    курсовая работа [191,5 K], добавлен 07.01.2015

  • Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.

    курсовая работа [365,0 K], добавлен 18.05.2013

  • Создание Windows-приложения для проведения обучения и тестирования студентов по информационной безопасности. Алгоритм решения задачи, блок-схема работы программы, выбор языка программирования Delphi. Охрана труда программиста, обязанности пользователя.

    дипломная работа [4,8 M], добавлен 04.06.2013

  • Ознакомление с историей изобретение языка программирования C. Рассмотрение компонентов программы Блокнот. Проектирование основных кнопок окна, строки заголовка, меню верхнего уровня, панели инструментов для меню второго уровня и статусной панели.

    курсовая работа [198,0 K], добавлен 19.07.2014

  • Задачи, выполняемые главным меню оперативной системы. Разделы меню "пуск". Запуск программ компьютера. Использование поля поиска. Ссылки правой панели на часто используемые компоненты. Кнопка "Завершение работы". Настройка отображения элементов на панели.

    презентация [1,2 M], добавлен 21.03.2015

  • Правила создания и особенности работы с приложением Windows Application. Рассмотрение структуры панели Properties и ее функционального назначения. Возможности пункта меню "View". Практическая разработка приложения - калькулятора для сложения двух чисел.

    лабораторная работа [99,1 K], добавлен 01.12.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.