2. Проектирование и поддержание базы данных: модели данных (иерархическая, реляционная, сетевая), реляционная модель данных; база данных и система управления базами данных (СУБД); структура базы данных, описание структуры базы данных; заполнение и редактирование базы данных (исправление, удаление, добавление записей); модификация структуры базы данных; реализация запросов к базе данных в интерактивном режиме (поиск по ключу, сортировка, статобработка); основные стандартные функции (арифметические, строковые, обработки даты и др.); генератор отчетов СУБД; программный режим обработки запросов; использование СУБД при решении задач.
II. Итоговая проектная работа по теме
Предполагает разработку учащимися собственной базы данных. Учащиеся должны дать описание структуры базы данных, построить алгоритмы реляционных операций, заполнить базу данными, а также составить и реализовать серию запросов по созданной базе данных. При этом деятельность учащихся может быть организована как в форме индивидуальной работы учащегося с компьютером, так и в форме групповой работы. Завершающим этапом проекта становится его защита и публичное обсуждение всем классом.
В результате изучения предполагаемой темы по базам данных у учащихся должны сформироваться достаточно четкие представления об основных понятиях информационных систем и баз данных. В частности, учащиеся должны знать следующие теоретические вопросы:
· понятие информационной системы. Роль и место информационных систем в деятельности специалистов различных профилей. Классификация информационных систем;
· база данных как основной компонент информационной системы. Основные понятия баз данных. Назначение и функции СУБД;
· модель данных. Классификация модели данных;
· реляционные модели данных. Реляционные объекты данных (домены, отношения). Целостность реляционных данных;
· реляционная алгебра (основные операторы реляционной алгебры, дополнительные операторы реляционной алгебры, операции обновления);
· проектирование реляционных БД. Связь таблиц (функциональные зависимости), нормализация отношений (первая, вторая и третья нормальные формы). Схема процедуры нормализации.
Предлагаемая организация изучения СУБД, при которой освоение фундаментальных понятий происходит за счет специально разработанной системы задач, будет способствовать более эффективному овладению учащимися основными знаниями в области технологий хранения и поиска информации, а также необходимыми навыками работы в базах данных.
При таком обучении деятельность учащихся становится активной, меняется роль ученика: из пользователя он превращается в активного исследователя, думающего, планирующего, ищущего. По мере решения задач, сводящихся к программной реализации работы той или иной операции, у ученика появляется не только четкое представление о сути этой операции (что она делает), но и осознание того, как она работает, поэтому в дальнейшем при работе с конкретной программой СУБД (Microsoft: Access) ученик будет понимать принципы работы с базами данных.
И поскольку фундаментальные основы баз данных учащиеся осваивают на этапе решения задач в среде программирования, то они в состоянии самостоятельно изучить конкретные, пользовательские программы по организации и управлению базами данных. В частности, нами предполагается, что второй содержательный блок (Изучение СУБД MicrosoftAccess) школьники осваивают самостоятельно. В результате проведенной подготовительной работы по изучению основ баз данных средствами программирования учащимся потребуется меньше времени на изучение MicrosoftAccess. Кроме того, освоив фундаментальные принципы работы баз данных, ученики не будут зависеть от какой-либо определенной программы по СУБД и смогут свободно ориентироваться в рамках одной из наиболее востребованных на сегодняшнем рынке труда областей деятельности – работе с разнообразными базами данных.
2.2 Методические особенности преподавания темы «Базы данных» в профильном курсе информатики
Основная цель изучения темы – развитие познавательного интереса учащихся, а также формирование исследовательских умений, умений принимать оптимальные решения, умения работать с информацией, развитие коммуникативных способностей учащихся. Поэтому наряду с сообщением готовых знаний, обучением по образцу, в большинстве своем целесообразно использовать проблемное изложение материала, на основе подобранной системы заданий.
Использование компьютера в обучении позволяет усилить мотивацию учения, развить познавательный интерес и творческую активность; эффективно реализовать принципы индивидуализации и дифференциации обучения; увеличить долю самостоятельной работы учащихся; обеспечить контроль и самоконтроль усвоения знаний и т.д.
Поэтому в качестве приоритетной была выбрана методика, согласно которой компьютер используется как инструмент построения знаний и как инструмент создания проблемных ситуаций. Применение на занятиях среды программирования как инструмента познания способствует воспитанию у учащихся высокой мотивации к обучению, реализации практической направленности процесса обучения. При решении специально подобранных задач средствами программирования роль компьютера не сводится лишь к выполнению некоторой последовательности вычислительных процедур. Ученик на каждом этапе может увидеть последствия предпринимаемых им действий и внести в свое решение задачи необходимые поправки. Таким образом, персональный компьютер становится для него своего рода интеллектуальным партнером, или, по выражению разработчиков обогащающего обучения, интеллектуальным самоучителем, так как участвует в эвристическом этапе решения задачи.
Как отмечалось выше, в профильном курсе информатики изучение баз данных предполагается с помощью специально разработанной системы заданий. При такой организации обучения, решая многие задачи баз данных средствами программирования, с одной стороны, появляется возможность получить на первых порах неэффективное и нестрогое с точки зрения организации баз данных решение. С другой стороны, дальнейший анализ решаемых задач позволяет рассматривать вопросы построения более эффективного алгоритма, знакомить учащихся с проблемами анализа и оптимизации алгоритмов.
Здесь важным моментом является организация работы с задачей и построение серии задач. Вопросы и задачи выстраиваются в систему таким образом, что ответ на каждый следующий вопрос и решение каждой следующей задачи приводит к получению небольшого количества нового знания. Практика применения новых знаний происходит не только после их предъявления, но и распределяется по всей теме. Вопросы и задачи создают проблемные ситуации, порождая мотив к изучению того или иного факта или способа действия, позволяют сделать тот или иной вывод. Задания подбираются таким образом, чтобы мотивировать изучение материала и организовать его освоение и закрепление в виде программных реализаций алгоритмов. При этом задачи объединены общей идеей, каждая последующая задача либо обобщает ее, либо конкретизирует ее, либо является ее аналогом, либо использует результат предыдущей задачи.
Так, например, для раскрытия сути операций по обработке реляционных баз данных может быть предложена следующая серия задач.
1. Дан массив данных об абитуриентах факультета информатики, поступавших на определенную специальность (например, «Информатика и английский язык») в прошлом году. Массив содержит следующие данные: № личного дела, фамилия, имя, отчество, дата рождения, адрес, № школы, год окончания школы. Сформировать новый массив, содержащий информацию об абитуриентах:
· окончивших школу №14;
· проживающих в г. Москва;
· окончивших школу не позднее 2004 года…
Программная реализация прямого решения задачи не вызывает затруднений. Организовать данные можно, по крайней мере, двумя способами: с помощью двумерного массива строкового типа или с помощью одномерного массива из данных комбинированного типа (записи). Затем идет проверка строк исходного массива на удовлетворение условию задачи и запись подходящий строк в новый массив. В Приложении 1 приведена возможная реализация такого алгоритма на языке Паскаль. Однако если исходный массив данных об абитуриентах содержит достаточно большое количество записей (как это обычно и бывает в реальной базе данных), то при решении задачи возникают проблемы, связанные со временем выполнения алгоритма (временной сложностью). Таким образом, появляется необходимость оптимизации алгоритма с использованием известных методов сокращения перебора (бинарный поиск, хеширование и т.д.), что делает реализацию алгоритма достаточно интересным и продуктивным занятием.
Так, если использовать, например, бинарный поиск данных, то предварительно нужно отсортировать исходный массив, а следовательно, учащимся нужно будет вспомнить известные им методы сортировки данных в массиве, применить их, не забывая об эффективности алгоритма. В Приложении 2 приведено решение задачи с использованием алгоритма быстрой сортировки (сортировка Хоара) и бинарного поиска. Приведем лишь основную логику построения программы. Результат работы этой программы аналогичен предыдущему.
Кроме того, если данные представлены в виде двумерного массива строкового типа, то при решении заданий под буквами б) или в) возникают новые задачи: нахождение подстроки в строке, перевод строки (с датой) в число и т.д., что еще раз послужит закреплению соответствующих навыков.
Задачи сами по себе не сложные, однако, на их примере ученики на самом деле изучают не что иное, как операцию выборки записей из реляционной таблицы. После рассмотрения нескольких таких примеров можно предложить учащимся создать универсальную программу для всех трех задач (для этого проверку условия для строк исходного массива можно оформить в виде функции, а формирование нового массива – в виде соответствующей процедуры под названием «Выборка»).