Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_2012.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
922.77 Кб
Скачать
      1. Реализация компоненты Конструктор

Смысл данной компоненты, как было описано в предыдущем разделе, заключается в создании и редактировании заданий на основе схем и таблиц и их объединение в уроки. Реализация компоненты началась с анализа html кода задания, его структуры – как программно верстать такую структуру, при этом учитывая такие параметры, как шрифт, цвет, размер шрифта и само значение ячейки. Так же просматривалась возможность для запоминания параметров каждой ячейки. Было решено использовать стандартную компоненту StringGrid. С помощью, которой достаточно нажать на нужную ячейку и задать параметры. Параметры задаются на той же форме, где и находится сама таблица, компонент StringGrid. При этом параметры сохраняются для каждой ячейки в специальный массив, который потом используется при вёрстке задания. Помимо параметров ячейки задаются параметры самой таблицы или схемы, такие, как количество строк, столбцов, количество объединённых строк или столбцов, цвет. Для запоминания параметров каждой ячейки была реализована процедура table_create(), которая считывает все параметры с формы и заносит в потоковый массив. В этой процедуре учитываются так же параметры самой таблицы или схемы. После создания таблицы, схемы, задание сохраняется в текстовом формате в указанную директорию. Кроме как создания схем, таблиц в конструкторе есть возможность редактирования уже как существующих, так и только что созданных. Редактирование осуществляется путём парсинга структуры задания, то есть считываются все параметры, ранее заданные при создании таблицы, схемы и показывается структура задания в компоненте StringGrid. Под парсингом понимается синтаксический анализ структуры задания, а именно html кода. При создании или редактировании задания, учителем вводится условие задачи, ответы, пояснение, в случае ошибки учащегося. Всё это сохраняется в определённую директорию и потом используется тестировщиком. Созданная или редактируемая таблица, схема отображается на другой форме, то есть таким образом учитель может увидеть результат своих действий.

      1. Реализация компоненты Администрирование

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

Таким образом, концептуальная схема БД имеет следующий вид:

Рис.2.2.3.1.

Подробней о каждой таблице:

Таблица admin. В данной таблице хранятся администраторы ПС, которые могут регистрировать самих учителей и вести работу с БД, а именно удалять, редактировать список учителей.

Таблица 2.2.3.1.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

name_

VARCHAR (30)

Имя администратора

Famili

VARCHAR (35)

Фамилия администратора

otch_a

VARCHAR (35)

Отчество администратора

Login

VARCHAR (90)

Логин

1

2

3

password

VARCHAR (100)

Пароль

Таблица Users. В таблице хранятся данные об учащихся: ФИО, дата рождения, пароль, класс, если необходимо.

Таблица 2.2.3.2.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

name_us

VARCHAR (30)

Имя ученика

Famili

VARCHAR (35)

Фамилия ученика

Otchestvo

VARCHAR (35)

Отчество ученика

Birthday

DATETIME

Дата рождения

class_gr

VARCHAR (30)

Класса либо группа. Внешний ключ к таблице class_

Password

VARCHAR (100)

Пароль ученика

type_user

VARCHAR (30)

Тип пользователя. Школьник либо дошкольник

nz_kyrsa

VARCHAR (30)

Название курса. Внешний ключ к таблице kyrs

Таблица Kyrs.

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

Таблица 2.2.3.3.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

nazv_kyrsa

VARCHAR (30)

Название курса

Opisanie

VARCHAR (30)

Описание курса

Slojnost

VARCHAR (30)

Сложность курса

Таблица Yroks.

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

Таблица 2.2.3.4.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

nazv_yroka

VARCHAR (30)

Название урока

Opisanie

VARCHAR (30)

Описание урока

nazv_kyrs

VARCHAR (30)

Названия курса. Внешний ключ к таблице kyrs

Таблица teachers.

В данной таблице хранятся данные об учителях ПС.

Таблица 2.2.3.5.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

name_t

VARCHAR (30)

Имя учителя

fam_t

VARCHAR (35)

Фамилия учителя

otch_t

VARCHAR (35)

Отчество учителя

birthday

DATETIME

Дата рождения

class_groups

VARCHAR (30)

Класс либо группа. Внешний ключ к таблице class_

Login

VARCHAR (90)

Логин

password

VARCHAR (100)

Пароль

Таблица stat.

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

Таблица 2.2.3.6.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

id_user

Int

Id ученика. Внешний ключ к таблице users

n_zadanie

Int

Номер задания

Time

Int

Время затраченное на курс. В секундах.

sloj_kyrsa

VARCHAR (35)

Сложность курса

type_zadanie

VARCHAR (35)

Тип задания

Result

VARCHAR (35)

Результат тестирования

date_test

DATETIME

Дата проведения тестирования

1

2

3

Razm

VARCHAR (35)

Размерность таблицы либо схемы

Rejim

VARCHAR (35)

Режим тестирования

Таблица zadanie.

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

Таблица 2.2.3.7.

Имя поля

Тип

Описание

Id

SmallInt

Первичный ключ

type_zadanie

VARCHAR (35)

Тип задания

id_yrok

VARCHAR (30)

Урок для задания. Внешний ключ к таблице yroks

nomer_zadanie

Int

Номер задания

razm_zad

VARCHAR (35)

Размерность задания.

Pyt_zadanie

VARCHAR (85)

Пути к файлам задания