Реферат: Практические навыки и дистанционное обучение
Наибольший интерес представляет способ проверки правильности решения упражнения. Поскольку пользователь может решить упражнение разными способами, то была реализована идея сравнения не самих запросов, а результирующих наборов данных [Моисеенко С.И., Майстренко А.В., 2002]. В результате чего существенную роль приобретает используемая СУБД. Теперь она используется не только для хранения служебной информации, но и фактически выполняет запросы пользователя. Алгоритм сравнения набора данных, возвращаемого запросом пользователя, с набором данных эталонного запроса базируется на одинаковом упорядочении столбцов и одинаковой сортировке строк в этих двух наборах данных. Результирующие наборы совпадают, еслисодержат, во-первых, одинаковое число столбцов и строк и, во-вторых, одинаковые значения в каждой соответствующей ячейке таблиц, т.е. задача сводится к сравнению на равенство двух двумерных массивов при очевидном преобразовании типов.
Как упоминалось выше, попытки "обмануть систему" простым перечислением данных из правильного результата блокируется сравнением запроса пользователя на независимых данных, недоступных для просмотра. Разумеется, все же остается вероятность того, что логически неправильный запрос вернет "правильные данные", однако, тестирование системы показало, что эта вероятность весьма мала и зависит от того, насколько тщательно подобраны данные в контрольной базе данных Alt_Exercises. Кстати говоря, эту вероятность можно еще уменьшить, используя несколько контрольных баз данных. Так или иначе, окончательный ответ сможет дать только эксплуатация системы, к чему мы и призываем всех интересующихся как дистанционным обучением, так и базами данных.
Следует сказать несколько слов об используемом диалекте SQL. Поскольку запрос пользователя выполняется применяемой в системе СУБД, исключительную важность приобретает то, насколько диалект SQL этой СУБД соответствует стандарту языка SQL. Дело в том, что мы ставили себе задачу обучения SQL как универсальному средству взаимодействия с базами данных, а не работе с конкретной СУБД. По этой причине мы отказались от использования свободно распространяемых СУБД типа MySQL, которая на момент реализации обучающей системы не поддерживала, например, подзапросов в операторе SELECT. Сейчас мы применяем MS SQL Server 2000, диалект языка SQL, которого весьма близок к стандарту SQL-92. Именно следование этому стандарту было выдержано при написании справки по использованию оператора SELECT, которой можно воспользоваться при решении упражнений на сайте.
Хотелось бы отметить высокую степень мотивации, обусловленную использованием рейтинговой системы представления показанных пользователями результатов (см. таблицу 1). Зарегистрированный в системе "Упражнения по SQL" пользователь автоматически участвует в рейтинге. В зависимости от сложности задания, посетитель получает от 1 до 3 баллов за правильное решение. На первом этапе тестирования посетителям сайта доступны 62 упражнения, которые можно решать в любом порядке. Здесь есть как простые упражнения, так и сложные. Более высокое место занимает тот, кто набрал большую сумму баллов, даваемых за правильное решение упражнений. При равенстве этих показателей выше будет тот, кто затратил меньше времени на решение, которое оценивается как интервал между временем решения первого и последнего упражнений.
Таблица 1. 20 лучших (текущих) результатов, показанных посетителями сайта.
No | Surname | Number of exercises | Scores | Days | Days_2 |
1 | Goloubev V.V. (VVG_) | 70 | 132 | 54.70 | .05 |
2 | Ларичев С.В.(dorin) | 70 | 132 | 2.14 | .85 |
3 | Якутин Н.В. (ZrenBy) | 70 | 132 | 2.03 | 1.03 |
4 | Krbashyan R. (ru_krb) | 70 | 132 | 5.15 | 2.90 |
5 | Gershovich (VIG) | 70 | 132 | 34.04 | 4.16 |
6 | hatylaev (hatylaev) | 70 | 132 | 42.10 | 5.94 |
7 | RT (RatTail) | 69 | 129 | 57.05 | .04 |
8 | Hkolodilin (holod) | 68 | 126 | 29.17 | 2.19 |
9 | akuz (akuz) | 66 | 121 | 53.01 | .05 |
10 | Афанасьев Д.В. (Somadhy) | 66 | 121 | 7.89 | 1.54 |
11 | spider (spider) | 65 | 118 | 51.32 | .10 |
12 | NetSerpent (NetSerpent) | 64 | 115 | 1.11 | .04 |
13 | R N. (nr) | 64 | 115 | 4.83 | 1.01 |
14 | Zorro (Zorro) | 62 | 110 | .01 | .00 |
15 | Botte C. (ChatBotte) | 62 | 110 | 1.10 | .00 |
16 | RiliR (RiliR) | 62 | 110 | 1.25 | .00 |
17 | Alseka (Alseka) | 62 | 110 | 6.72 | .00 |
18 | Rom (Rom) | 62 | 110 | 11.34 | .00 |
19 | marse (marse) | 62 | 110 | 11.98 | .00 |
20 | Говорухин А.В. (Speaker) | 57 | 96 | 1.08 | .00 |
Дискуссия посетителей нашего сайта на форуме SQL.RU выявила недостатки такой рейтинговой системы, что заставило нас изменить подсчет времени на втором этапе. К этому этапу допускаются только те посетители, которые решили все упражнения первого этапа. Упражнения второго этапа имеют более высокий уровень сложности и выдаются по одному, что позволяет зафиксировать время, потраченное на решение отдельного упражнения. Рейтинговое время представляет теперь сумму интервалов времени, затраченного на решение каждого из упражнений. Такая система уже не вызывала критики участников форума.
Упражнения первого этапа выполняются на трех учебных БД:
"Компьютерная фирма".
"Фирма вторсырья".
"Корабли".
Для второго этапа пока предложена одна схема базы данных "Аэропорт". Следует отметить еще одно достоинство рейтинговой системы второго этапа, заключающееся в том, что система позволяет добавлять новые упражнения по мере их разработки; при этом участники не теряют в рейтинге.
В заключение хотелось бы привести высказывание одного из посетителей нашего сайта: "Класс! Я за один день научился большему, чем за все то время, что я мучаю книжки по SQL. Книжки - книжками, а без практики никуда не уедешь. Спасибо." Эти слова говорят о том, что наши ожидания оправдались, и мы действительно, в какой-то мере, восполнили недостаток практической работы в области дистанционного обучения. Еще одним подтверждением сказанного является статистика посещения сайта (см. таблицу 2).
Таблица 2. Статистика посещений сайта за 30 дней на Rambler.ru.
Cтрана |
Уникальные адреса (хосты) | Посетители | Показы страниц (хиты) |
Россия | 607 (58,42%) | 646 (59,98%) | 15 451 (68,55%) |
Беларусь | 129 (12,42%) | 129 (11,98%) | 263 ( 1,17%) |
Украина | 85 ( 8,18%) | 89 ( 8,26%) | 2 229 ( 9,89%) |
США/Канада | 47 ( 4,52%) | 48 ( 4,46%) | 558 ( 2,48%) |
Израиль | 29 ( 2,79%) | 29 ( 2,69%) | 1 142 ( 5,07%) |
Объединенные Арабские Эмираты | 21 ( 2,02%) | 14 ( 1,30%) | 79 ( 0,35%) |
Великобритания | 18 ( 1,73%) | 18 ( 1,67%) | 417 ( 1,85%) |
Казахстан | 9 ( 0,87%) | 9 ( 0,84%) | 112 ( 0,50%) |
Молдова | 9 ( 0,87%) | 9 ( 0,84%) | 204 ( 0,91%) |
Франция | 7 ( 0,67%) | 8 ( 0,74%) | 720 ( 3,19%) |
Германия | 6 ( 0,58%) | 6 ( 0,56%) | 140 ( 0,62%) |
Австралия | 6 ( 0,58%) | 6 ( 0,56%) | 35 ( 0,16%) |
Латвия | 4 ( 0,38%) | 4 ( 0,37%) | 20 ( 0,09%) |
Бельгия | 4 ( 0,38%) | 4 ( 0,37%) | 70 ( 0,31%) |
Киргизстан | 4 ( 0,38%) | 4 ( 0,37%) | 105 ( 0,47%) |
Эстония | 3 ( 0,29%) | 3 ( 0,28%) | 5 ( 0,02%) |
Китай | 2 ( 0,19%) | 2 ( 0,19%) | 2 ( 0,01%) |
Сингапур | 2 ( 0,19%) | 2 ( 0,19%) | 460 ( 2,04%) |
Нидерланды | 2 ( 0,19%) | 2 ( 0,19%) | 12 ( 0,05%) |
Литва | 2 ( 0,19%) | 2 ( 0,19%) | 33 ( 0,15%) |
Болгария | 2 ( 0,19%) | 4 ( 0,02%) | 2 ( 0,19%) |
Чехия | 1 ( 0,10%) | 1 ( 0,09%) | 9 ( 0,04%) |
Дания | 1 ( 0,10%) | 1 ( 0,09%) | 3 ( 0,01%) |
Италия | 1 ( 0,10%) | 1 ( 0,09%) | 2 ( 0,01%) |
Азербайджан | 1 ( 0,10%) | 1 ( 0,09%) | 1 ( 0,00%) |
Узбекистан | 1 ( 0,10%) | 1 ( 0,09%) | 5 ( 0,02%) |
Греция | 1 ( 0,10%) | 1 ( 0,09%) | 7 ( 0,03%) |
Швеция | 1 ( 0,10%) | 1 ( 0,09%) | 7 ( 0,03%) |
Швейцария | 1 ( 0,10%) | 1 ( 0,09%) | 1 ( 0,00%) |
Тайвань | 1 ( 0,10%) | 1 ( 0,09%) | 1 ( 0,00%) |
Армения | 1 ( 0,10%) | 1 ( 0,09%) | 1 ( 0,00%) |
Расположение не определено. | 31 ( 2,98%) | 31 ( 2,88%) | 441 ( 1,96%) |
Список литературы
[Джеффри Д.Ульман, Дженнифер Уидом., 2000] Джеффри Д.Ульман, Дженнифер Уидом. Введение в системы баз данных. - М.: Изд-во Лори, 2000.
[Моисеенко С.И., Майстренко А.В., 2002] Моисеенко С.И., Майстренко А.В. Интерактивное дистанционное обучение: от тестов - к упражнениям. - Вестник ДГТУ, 2002, Т.2, №3(13), с.333-336.