Универсальная система дистанционного тестирования для школьников и студентов в сети

 

Содержание


Введение

Глава 1. Анализ предметной области и постановка задачи

1.1 Методология использования информационных образовательных технологий

1.2 Информационно-коммуникационная технология

1.3 Определение методики использования ИКТ

1.4 Цели использования ИКТ в образовании

1.5 Принципы использования ИКТ

1.6. Системы дистанционного тестирования и контроля знаний

1.7 Постановка целей и задач проекта

1.8 Технический проект универсальной системы тестирования

1.9 Концептуальная модель предметной области

1.10 Построение функциональной модели

1.11 Клиент-серверная архитектура системы

Глава 2. Логическая структура базы данных и информационно-поисковые функции

2.1 Общие понятия реляционных баз данных

2.2 Логическая структура базы данных

2.3 ER-модель базы данных

2.4 Нормализация базы данных

Глава 3. Программная реализация базы данных, представлений таблиц и информационно-поисковых функций

3.1 Принятая концепция архитектуры программного обеспечения

3.2 Используемые базовые программные средства

3.3 Реляционная база данных MySQL

3.4 Использование программы phpMyAdmin для создания и управления базой данных

3.5 Использование объектно-ориентированного подхода в приложении

3.6 Структура программных модулей и используемые свойства языка PHP

3.7 Состав программного обеспечения и функции модулей

3.8 Реализация функций администрирования базы данных

3.9 Реализация поисковых функций

3.10 Физическая структура базы данных

3.10.1 Имя базы данных control_tests

3.10.2 Структура таблицы Groups (Группы)

3.10.3 Структура таблицы Questions (Вопросы)

3.10.4 Структура таблицы Replies (Ответы)

3.10.5 Структура таблицы Students (Студенты)

3.10.6 Структура таблицы Subjects (Предметы)

3.10.7 Структура таблицы Teachers (Преподаватели)

3.10.8 Структура таблицы Tests (Тесты)

3.10.7 Изменение структуры таблиц БД и их представлений

3.10.8 Файл настройки Table_Headers. php

3.10.9 Файл настройки Table_Headers_DB. php

3.10.10 Создание новой таблицы БД и их представлений

Заключение

Литература

Введение


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

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

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

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

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

Для достижения этой цели работы поставлены и решены следующие задачи:

·Анализ программного обеспечения компьютерных обучающих систем, выработка основных требований к нему;

·Разработка основных компонентов программного обеспечения, их классификация и описание алгоритмов функционирования;

·Анализ состава базы данных и разработка моделей для их представления;

·Разработка модели предметной области;

·Программная реализация базы данных и прототипа системы тестирования;

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

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

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

На основе анализа предметной области, разработана структура базы данных и создана база данных, с использованием современной системы управления базами данных (СУБД MySQL). Были разработаны и созданы базовые компоненты программного обеспечения, реализующего среду управления базой данных и являющихся универсальной, гибкой основой для генерации актуальных поисковых запросов к базе данных и, в дальнейшем, для генерации стандартных печатных форм отчетов.

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

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

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


Рис.1. Вход в систему

Глава 1. Анализ предметной области и постановка задачи


1.1 Методология использования информационных образовательных технологий


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

Согласно Т.И. Шамовой и Т.М. Давыденко, образовательная технология (ОТ) - это процессная система совместной деятельности учащихся и учителя по проектированию (планированию), организации, ориентированию и корректированию образовательного процесса с целью достижения конкретного результата при обеспечении комфортных условий его участникам.

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

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

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

Сравнение данных определений позволяет сформулировать вывод о

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

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

)модели исходного состояния учащегося, заданной множеством свойств, наличие которых необходимо для осуществления технологического процесса;

2)некоторого диагностического и операционального представления планируемых результатов обучения (модель конечного состояния учащегося);

)средств диагностики текущего состояния и прогнозирования тенденций ближайшего развития (мониторинга) системы;

)набора моделей обучения;

)критериев выбора или построения оптимальной модели обучения для данных конкретных условий;

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

Не останавливаясь на анализе других определений, сформулируем существенные черты современной педагогической технологии (в терминологии [2, с.30]), подчеркиваемые авторами в различных исследованиях:

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

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

функционирование технологии предусматривает взаимную деятельность учителя и учащихся с учетом принципов индивидуализации;

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

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

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

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

Приводя указанное определение ТО, отметим позицию авторов, разделяющих точку зрения о том, что "технология обучения" уже и конкретнее понятия "образовательная (педагогическая) технология".

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

Наряду с рассмотренными понятиями специально выделим подходы к определению "информационной образовательной технологии" и "информационно-коммуникационной технологии". При этом отметим, что в педагогической литературе информационная образовательная технология часто обозначается термином "информационная технология", в силу того, что с позиций информационного подхода сущность процесса обучения оставляет движение и преобразование информации [4, с.80].

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

технология, связанная с получением, переработкой, анализом, организацией, передачей, хранением, представлением информации учебного характера;

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

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

технология машинной обработки, передачи, распространения информации, создания вычислительных и программных средств информатики;

создаваемая прикладной информатикой совокупность систематических и массовых способов и приёмов обработки информации во всех видах человеческой деятельности с использованием современных средств связи, полиграфии, вычислительной техники и программного обеспечения;

программное обеспечение база тестирование

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

При этом отметим, что в работах Б.Е. Стариченко [5, с.10] обращается

внимание на необходимость уточнения при использовании рассматриваемого термина в контексте области применения, а именно:

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

ИТ в образовании подразумевают компьютеризацию отдельной стороны системы управления образовательным процессом.

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

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


1.2 Информационно-коммуникационная технология


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

от позиции Г.К. Селевко [4], согласно которому ИКТ основываются на телекоммуникациях, или позиции И.Н. Семеновой, не выделяющей компьютер как основное средство сбора, хранения и обработки информации и осуществления коммуникации [7].

В рамках приведенного определения специальным образом выделим (согласно [8]) характеристики педагогической коммуникации при использовании ИКТ, совокупность которых позволит обосновать принадлежность некоторой технологии к классу ИКТ:

опосредованность - общение субъектов образовательного процесса происходит с помощью (посредством) компьютерных средств обучения и взаимодействия;

оперативность - своевременное получение ответа на поставленные вопросы, получение необходимого сообщения, передача выполненной работы (сетевые коммуникационные технологии именно в этом аспекте предоставляют субъектам образовательного процесса и всем другим участникам процесса общения сведения к минимуму потерь времени при общении, предоставляют возможности общения в on - и off-line режимах работы);

индивидуальность - выбор собственного собеседника и маршрута общения (обучения);

корпоративность - общение в группах по интересам;

массовость - подключение любого неограниченного количества обучающихся (собеседников);

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

независимость от времени и места;

распределенность - использование для общения собеседников, находящихся в любой точке страны, планеты через сеть Интернет;

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

эстетичность - формирование культуры общения, умение кратко, грамотно и корректно выразить свою мысль;

многоаспектность - разносторонность обсуждения проблем, с привлечением межпредметных связей, представления информации и собеседников из других областей знаний;

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

"интеркультурность" - возможность общения с собеседниками другой языковой среды и культуры, выход в другое культурное и национальное пространство;

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

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

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

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

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


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


1.3 Определение методики использования ИКТ


Методика использования (или применения) технологий в учебном процессе - это наука о закономерностях выбора и использования педагогических технологий в ИКТ, и их средств для достижения целей обучения на основе конкретного содержания учебной дисциплины в разных психолого-педагогических ситуациях.

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


1.4 Цели использования ИКТ в образовании


На основе анализа педагогической литературы выделим основные цели использования ИКТ:

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

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

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

)подготовка обучаемых средствами информационных технологий к самостоятельной учебно-познавательной деятельности;

)повышение качества овладения знаниями, умениями и навыками за счет реализации преимуществ ИКТ, использование стимулов активизации познавательной деятельности, углубление межпредметных связей путем использования современных средств обработки информации, и как следствие полное усвоение базовой учебной информации (когнитивной составляющей ГОС);

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

)систематическое управление учебно-познавательной деятельностью обучающихся за счет создания регулярного диагностического фона и оперативной обратной связи преподавателя и обучаемых;

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

)реализация социального заказа, обусловленного информатизацией современного общества, - подготовка специалистов в области информационных технологий.

1.5 Принципы использования ИКТ


Различают методы использования ИКТ в обучении, методы обучения использованию ИКТ и методы обучения с использованием ИКТ.

Метод обучения с использованием ИКТ - это совокупность действий преподавателя по передаче учебной информации органам чувств обучаемого

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

Предлагая формулировку определения понятия "метод использования ИКТ" выделим два направления: метод использования ИКТ преподавателем в обучении и метод использования ИКТ обучающимся в учении.

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

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

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

1.6. Системы дистанционного тестирования и контроля знаний


По мере роста числа пользователей глобальной сети Интернет (пользователями является около 500 млн. человек, согласно данным Nua Internet Surveys, #"justify">СДО применяются для профессиональной подготовки и повышения квалификации во всех крупных компаниях мира (таких как Газпром, ЦБ РФ и IBM, Kodak, Motorola, т.д.), а также в военных ведомствах.

Общепринятые формы очного обучения в высших учебных заведениях, школах, учебных центрах и пр. уже не удовлетворяют запросов обучаемых. Кроме того, ВУЗам приходится искать новые рынки сбыта своих услуг, новых категорий учащихся. ДО для ВУЗов - это возможность гибко адаптироваться под изменения в образовании, к требованиям динамичности и многогранности общества. Например, в США 750 тыс. студентов прошли один или более курсов через СДО [12]. В нашей стране активно развиваются СДО, такие как ИДО СГУ, МИМ "Линк", МЭСИ, и т.д. В области ВУЗовского образования одно из лидирующих мест занимает компания #"justify">Как правило СДО базируются на применении клиент-серверных технологий, используют современные мощные СУБД, разрабатываются на основе использования современных технологий и языков программирования, обеспечивающих быструю адаптацию программной среды под динамически развивающиеся функции и требования к ним.

1.7 Постановка целей и задач проекта


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

Для достижения этой цели работы поставлены и решены следующие задачи:

·Анализ программного обеспечения компьютерных обучающих систем, выработка основных требований к нему;

·Разработка основных компонентов программного обеспечения, их классификация и описание алгоритмов функционирования;

·Анализ состава базы данных и разработка моделей для их представления;

·Разработка модели предметной области;

·Программная реализация базы данных и прототипа системы тестирования;

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


1.8 Технический проект универсальной системы тестирования


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

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

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

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

Преподаватель вводит в систему данные по своему предмету и

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

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

Регламент прохождения тестов. Предполагается "запрограммировать" определенный регламент прохождения тестов абитуриентами - ограничить время тестирования, количество попыток тестирования, продумать процедуру доступа абитуриентов к системе для прохождения тестов.

Накопление информации о тестировании. Данные по тестированию накапливаются в базе данных системы. Преподаватели и абитуриенты имеют доступ к результатам тестирования. Преподаватель имеет доступ ко всем результатам. Абитуриенты имеют доступ к своим результатам тестирования.

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

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

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

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

Для авторизации (аутентификации) пользователей предполагается использовать готовые пакеты программ или разработать свои программы.

Требования к программным и техническим средствам.

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

ПК с характеристиками,III - 700 MH или старше;10 Gb или больше;

Монитор 17 с разрешением 1024х768 или больше.- свободная система управления базами данных (СУБД)- свободный веб-сервер;- язык верстки- язык программирования, специально разработанный для написания web-приложений

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

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

üГруппы (классы)

(Идентификатор группы (класса), номер;

Наименование;

Факультет (для студентов);

Специальность (для студентов);

Руководитель группы (класса);

Примечания)

üВопросы

(Идентификатор вопроса;

Номер вопроса для данного предмета;

Текст вопроса;

Максимальное количество баллов;

Примечания)

üОтветы

(Идентификатор ответа;

Номер ответа;

Текст ответа;

Идентификатор вопроса;

Идентификатор предмета;

Идентификатор преподавателя;

Количество очков за ответ (0 - если не верный);

Примечания)

üСтуденты

(Идентификатор студента - (номера студенческого билета или зачетки);

ФИО;

Факультет;

Номер группы;

Год поступления;

Код (номер) специальности;

Наименование специальности;

Телефон;

Электронный адрес;

Примечания )

üПредметы

(Идентификатор предмета;

Номер предмета в институте (школе) или Гост;

Наименование;

Факультет;

Семестр;

Идентификатор преподавателя;

Количество часов;

Максимальное количество баллов;

Примечания)

üПреподаватели (Учителя)

(Идентификатор преподавателя (учителя);

ФИО;

Кафедра (для институтов);

Должность;

Ученая степень;

Телефон;

Эл. Почта;

Примечания)

üТесты (Результаты)

(Идентификатор теста;

Дата теста;

Идентификатор студента;

Идентификатор вопроса;

Идентификатор ответа;

Количество баллов;

Примечания)


1.9 Концептуальная модель предметной области


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

Гость, не авторизованный пользователь на сайте (рис.3). Он сможет только:

зарегистрироваться;

просматривать новости;

просматривать информацию о ресурсе;

просматривать списка курсов, и их краткое содержание;

контакты;


Рис.3. Диаграмма вариантов использования для пользователя "Гость".


Абитуриент (ученик, студент), авторизованный пользователь (рис.4). После прохождения авторизации, он попадет в личный кабинет:

просмотр своей успеваемости;

возможность сменить личную информацию (профиль);

посмотреть пройденные тесты;

пройти тесты;

обратная связь с преподавателем;

просмотр инструкций;

участие в обсуждениях на форуме;

информация о ресурсе;

контактная информация своего преподавателя;


Рис.4. Диаграмма вариантов использования для пользователя "Студент".


Преподаватель, авторизованный пользователь, имеющий право работать с курсами (рис.5). В своем личном кабинете преподаватель сможет:

изменять личную информацию

просмотр/проставление успеваемости абитуриентов (по группе, отдельного ученика)

формирование отчета по успеваемости группы и отдельного ученика по учебным модулям

создание/изменение/удаление лекций;

создание/редактирование/удаление теста;

просмотр списка учеников;

участие в обсуждениях на форуме;

контактная связь со студентом;


Рис.5. Диаграмма вариантов использования для пользователя "Преподаватель".


Администратор, авторизованный пользователь (рис.6). В своем личном кабинете администратор сможет:

редактирование информации о курсах;

просмотр личной информации ученика/преподавателя;

редактировать/добавлять/удалять тесты;

назначать права пользователей;


1.10 Построение функциональной модели


Для построения функциональной модели использовалась методология DFD (Data Flow Diagrams - диаграммы потоков данных). Для построения модели было выбрано CASE-средство BPwin.


Рис.6. Диаграмма вариантов использования для пользователя "Админ".


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


Рис.7. Контекстная диаграмма.


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

Любой пользователь попадает в открытую.

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

В случае успешной авторизации пользователь попадает в закрытую часть.


Рис.8. Диаграмма декомпозиции системы на открытую и закрытую часть.


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


Рис.9. Выбор личного кабинета пользователя.


Пользователь попадает свой личный кабинет, и выполняет функции, которые ему разрешены. Например, преподаватель хочет удалить вопросы из теста по своему предмету или новости (рис.10).


Рис.10. Диаграмма удаления вопросов и новостей


По полученному ID новости, происходит удаление из базы.


1.11 Клиент-серверная архитектура системы


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

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

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

Преимуществами клиент-серверной архитектуры являются:

·надежность, механизм транзакций, поддерживаемый сервером баз данных, намного более эффективен, чем механизм в настольных СУБД, сервер централизованно контролирует работу транзакций;

·масштабируемость - способность системы приспосабливаться к росту количества пользователей и объему баз, без замены программного обеспечения;

·безопасность - сервер баз данных предоставляет мощные средства защиты данных от несанкционированного доступа, права доступа распределяются очень гибко;

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

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


Рис.11. Трехуровневая клиент-серверное приложение


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

В настоящем проекте использовались следующие языки и технологии для реализации веб-приложения: HTML, CSS, PHP, SQL, СУБД MySQL. Основным является язык PHP. На нем написано 90% кода настоящего приложения.

HTML (от английского Hyper Text Markup Language - язык разметки гипертекста). Это базовый язык в области средств создания веб-страниц. Язык HTML предназначен для формирования и оформления веб-страниц, которые интерпретируется с помощью специальных клиентских программ - браузеров (Internet Explorer, Mozilla Farefox, и др.).

CSS (Каскадные таблицы стилей или Cascading Style Sheets) - набор параметров форматирования, который применяется к элементам веб-страницы для управления их видом.

PHP. Это скриптовый язык программирования, созданный для генерации HTML-страниц на web-сервере и работы с базами данных. На данный момент он поддерживается 60% - ми поставщиков хостинга, входит в "стандартный" набор для создания сайтов (LAMP - Linux, Apache, MySQL, PHP), работает на стороне сервера.

SQL (Structured Query Language). Создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять, управлять данными). MySQL - многопользовательский, многопоточный сервер базы данных SQL. Имеет хорошую скорость и гибкость, если использовать его для хранения изображений и файлов. MySQL соответствует спецификации ANSI 92 SQL [14,15,16].

Глава 2. Логическая структура базы данных и информационно-поисковые функции


2.1 Общие понятия реляционных баз данных


Реляционная база данных состоит из таблиц с данными. Каждая таблица соответствует определенному типу объектов. Каждый столбец имеет уникальное имя и каждому столбцу соответствует определенный тип данных. Столбцы называют также атрибутами, характеризующими определенные свойства объектов. Каждая строка соответствует набору свойств конкретного объекта. Количество выбранных таблиц, атрибутов зависит от тех задач, функций, которые должны выполняться в рамках проекта [18,13,12].

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

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

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

Это и было сделано в настоящем проекте (см. далее реализация веб приложения). Кроме того схему можно представлять в виде диаграмм сущность-отношение или в форме текста. Часто эти методы представления дополняют друг друга [18, 19].

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


2.2 Логическая структура базы данных


При преобразовании объектов и атрибутов объекты переходят в таблицы Базы Данных, атрибуты объекта становятся атрибутами таблицы.


Таблица 1

Таблицы БД и атрибуты

ОбъектТаблица БДАтрибутыПервичный ключГруппы (классы) GroupsGroup_Id - Идентификатор группы (класса), номер Group_Name - наименование Faculty - Факультет (для студентов) Speciality - Специальность (для студентов) Chief_FIO - Руководитель группы (класса) Group_Com - ПримечанияGroup_Id ВопросыQuestionsQuest_Id - Идентификатор вопроса Quest_N - Номер вопроса для данного предмета Quest_Text - Текст вопроса Quest_Point - Максимальное количество баллов Quest_Com - Примечания Quest_Id ОтветыRepliesRepl_Id - Идентификатор ответа Repl_N - Номер ответа Repl_Text - Текст ответа Quest_Id - Идентификатор вопроса Subj_Id - Идентификатор предмета Teach_Id - Идентификатор преподавателя Repl_Point - Количество очков за ответ (0 - если не верный) Repl_Com - ПримечанияRepl_Id СтудентыStudentsStud_Id - Идентификатор студента (номера ст. билета или зачетки) Stud_FIO - ФИО Stud_Faculty - Факультет Stud_Group - Номер группы Stud_Year - Год поступления Stud_Spec_N - Код (номер) специальности Stud_Spec_Nm - Наименов. специальности Stud_Phone - Телефон Stud_Email - эл. Адрес Stud_Com - Примечания Stud_IdПредметыSubjectsSubj_Id - Идентификатор предмета Subj_N - Номер предмета в институте (школе) или Гост Subj_Name - Наименование Faculty - Факультет Semestr - Семестр Teach_Id - Идентификатор преподавателя Subj_Hours - Количество часов Subj_Points - Максимальное количество очков Subj_Com - ПримечанияSubj_IdПреподавателиTeachersTeach_Id - Идентификатор преподавателя (учителя) Teach_FIO - ФИО Teach_Chair - Кафедра (для институтов) Teach_Posit - Должность Teach_Degree - Ученая степень Teach_Phone - Телефон Teach_Email - Эл. Почта Teach_Com - ПримечанияTeach_IdТесты (Результаты) TestsTest_Id - Идентификатор теста Test_Date - Дата теста Stud_Id - Идентификатор студента Quest_Id - Идентификатор вопроса Repl_Id - Идентификатор ответа Stud_Points - Количество баллов Test_Com - ПримечанияTest_Id

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



Рис.12. Веб схема базы данных


На этой странице умышленно выведены на экран первые строки таблиц, чтобы на примерах можно было увидеть смысл и типовое содержание столбцов.


.3 ER-модель базы данных


Модель сущность-связь (англ. entity-relationship model, ERM, ER-модель) позволяет описывать концептуальные схемы предметной области.модель используется при высокоуровневом проектировании баз данных. С её помощью можно выделить ключевые сущности и обозначить связи, которые могут устанавливаться между этими сущностями. ER-модель это формальная конструкция, не определяющая графических средств её представления. В качестве стандартного графического представления ER-модели, была разработана диаграмма сущность-связь ER-диаграмма (Entity Relationship Diagram - ER - диаграмма). При проектирования баз данных происходит преобразование ER-модели в конкретную схему базы данных.

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

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

Степень конца связи указывается графически, множественность связи изображается в виде "вилки" на конце связи. Модальность связи так же изображается графически - необязательность связи помечается кружком на конце связи. Именование связи выражается одним глаголом (рис.13).


<#"justify">·Первичный ключ должен быть подобран таким образом, чтобы по значениям атрибутов, в него включенных, можно было точно идентифицировать экземпляр сущности.

·Никакой из атрибутов первичного ключа не должен иметь нулевое значение.

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

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

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

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

Разработано множество инструментов визуального создания ER - диаграмм для различны платформ. В настоящем проекте использовалась разработка MySQL Workbench.

Этот инструмент упрощает проектирование баз данных и обслуживание, автоматизирует, отнимающие много времени и подверженные ошибкам задачи и улучшает связь среди команд разработчиков и архитекторами БД. Он позволяет архитекторам данных визуализировать требования, общаться с заинтересованными лицами по вопросам проектирования прежде, чем будут сделаны инвестиции в проект. Это обеспечивает управляемое моделью проектирование баз данных, которое является самой эффективной методологией для того, чтобы создать реальные и хорошо продуманные базы данных. ER - диаграмма базы данных системы дистанционного тестирования (control_tests) изображена на рисунке (рис.14). Две вертикальные черточки с одной стороны и "трезубец" с другой обозначают соответственно "связь один ко многим".


Рис. 14. ER - диаграмма базы данных control_test системы дистанционного тестирования


2.4 Нормализация базы данных


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

Тем не менее, некоторые каноны, правила все-таки существуют. К таким правилам относятся правила нормализации, т.е. приведения отношений к нормальной форме.

Глава 3. Программная реализация базы данных, представлений таблиц и информационно-поисковых функций


3.1 Принятая концепция архитектуры программного обеспечения


Программное обеспечение, реализующее управление базой данных и поисковые функции разработано как веб-приложение (будем называть, просто "приложение"). По определению, веб-приложение - это "клиент-серверное приложение, в котором клиентом выступает браузер, а сервером - веб-сервер. Логика веб-приложения распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен информацией происходит по сети [1,4].

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

Клиентская часть программного обеспечения реализует пользовательский интерфейс, формирует запросы к серверу и обрабатывает ответы от него. Серверная часть получает запрос от клиента, выполняет обработку, формирует веб-страницу и отправляет её клиенту по сети.


3.2 Используемые базовые программные средства


Для реализации клиент-серверной архитектуры выбрано трио базового программного обеспечения, базирующегося на Linux платформе - удаленный сервер со стандартным программным обеспечением Аpache, PHP, MySQL и широко распространенный пакет интерактивного удаленного управления базой данных phpMyAdmin. Эти программные средства являются той средой, на основе которой функционируют большинство веб-сайтов и веб-приложений. На текущий год на этой бесплатной платформе функционирует около 70% веб-сайтов.

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

Большинство веб-приложений базируется на веб-серверах общего пользования, так называемых разделяемых хостах (shared hostings), когда на одном или нескольких физических серверах располагается множество веб-сайтов, веб приложений.

Доступ к таким виртуальным хостам, находящимся в пользовании отдельных приложений осуществляется, как правило, посредством FTP - доступа. Для этого созданы специальные клиентские программы типа GuteFTP 8 Professional и множество других. С помощью FTP - клиентов можно легко администрировать веб-приложения на сервере.


3.3 Реляционная база данных MySQL


СУБД MySQL - это система управления реляционными базами данных, которая, в том числе, работает в связке бесплатных мощных продуктов, таких как Unix, Linux …, Apache, PHP, что обеспечивает мощные инструменты поддержки и быструю разработку веб-приложений.

MySQL является многопользовательским, "много потоковым" сервером и использует стандартный, принятый программистском мире структурированный язык запросов SQL (Structured Query Language) [4,9].

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

Кратко можно описать типовую упрощенную схему взаимодействия этих продуктов следующей схемой.

[Браузер] à [Web-сервер] à [PHP] à [Сервер MySQL]

[Браузер] ß [Web-сервер] ß [PHP] ß [Сервер MySQL]

.Браузер клиента отправляет HTTP запрос на загрузку веб-страниц веб-серверу. Веб-сервер принимает запрос, получает файл и передает его PHP, который сканирует и выполняет код PHP, встроенный или

2.динамически загружаемый в веб-страницу. Если в PHP коде присутствуют функции обращения к базе данных, то

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

.Сервер MySQL отправляет результаты PHP, который завершает выполнение сценария, формируя HTML код страницы. После этого результаты передаются в HTML формате Web-серверу. Сервер пересылает HTML файл браузеру, которые отображает страницу на экране.

В нашем проекте используются модифицированный под приложение класс PHP для работы с MySQL [4,21].


3.4 Использование программы phpMyAdmin для создания и управления базой данных


Для создания базы данных бюро control_tests был использован пакет phpMyAdmin, обеспечивающий веб-интерфейс для создания и администрирования базы данных веб-приложений. Этот пакет предоставляет возможность визуального создания базы данных, составляющих таблиц и генерацию SQL запросов к базе данных.

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

сервера. Для входа необходимо перейти по ссылке и ввести следующие данные: логин=alenkold, пароль=zao041, <#"center">3.5 Использование объектно-ориентированного подхода в приложении


Веб-приложение расположено в директории Control_Tests создано на языке PHP, с использованием объектно-ориентированного программирования (ООП). Модули PHP кода проекта представлен в Приложении 2. PHP код проекта.

Объектно-ориентированное программирование является модерном современных технологий программирования, это направление, которое невозможно полностью описать даже в рамках одной книги. Необходимо только отметить, что разработка современных приложений практически невозможна без ООП.

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

Класс - это синтаксическая конструкция языка программирования с закрытым набором переменных и функция, используемых в программах по определенным соглашениям, с целью сокращения времени разработки и построению структурированного, легко изменяемого программного кода. Класс - это шаблон объектов определенного типа, на основе которого можно создать и использовать в программах множество объектов этого типа. Созданный однажды класс, можно использовать во многих приложениях без изменений внутренней структуры класса, а лишь, при необходимости, добавляя новые функции и переменные. Класс и создается для того, чтобы программист не разбирался во внутренней структуре кода, а брал и использовал готовый код по соглашениям, изложенным в описании классах [4,13].

Код используемых классов и его назначение изложен в Приложение 2. Классы PHP, использованные в приложении.


3.6 Структура программных модулей и используемые свойства языка PHP


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

Разработка программных модулей не велась с нуля, а были существенно модифицированы необходимые программные модули, функции и классы PHP, взятые из сети. Несмотря на это процент новых доработок адаптированных под настоящее приложение составляет около 90%.

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

Еще одной важной базовой компонентой программного обеспечения является модифицированный класс таблиц [13], измененный и дополненный новыми методами и функциями. Данный класс использовался как базовый для создания представлений всех таблиц в едином виде, независимо от содержания таблиц.

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

3.7 Состав программного обеспечения и функции модулей


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

Control_Tests Главная папка, содержащая все модули

All_Tables_short. php Главная страница с таблицами БД

Any_Table_HTML_New. php <#"13" src="doc_zip18.jpg" /> DB_Class. php <#"13" src="doc_zip19.jpg" /> DB_Coding. php <#"13" src="doc_zip20.jpg" /> DB_data. php <#"13" src="doc_zip21.jpg" /> Depart_Handler. php Обработчик "Подразделения"

Device_Handler. php <#"13" src="doc_zip23.jpg" /> Form_Buttons. php <#"13" src="doc_zip24.jpg" /> Form_Buttons_Staff. php <#"13" src="doc_zip25.jpg" /> FormMsgs. php <#"13" src="doc_zip26.jpg" /> Forms_Main. php <#"13" src="doc_zip27.jpg" /> Header. php <#"13" src="doc_zip28.jpg" /> Prod_Handler. php <#"13" src="doc_zip29.jpg" /> Staff_Handler. php <#"13" src="doc_zip30.jpg" /> Staff_Search. php <#"13" src="doc_zip31.jpg" /> Table_Headers. php <#"13" src="doc_zip32.jpg" /> Table_Headers_DB. php <#"13" src="doc_zip33.jpg" /> Universal_Forms_Builder. php <#"center">3.8 Реализация функций администрирования базы данных


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

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

Управление данными осуществляется посредством браузера через веб-интерфейс - специально разработанными представлениями таблиц, форм, последовательностей команд.

Работа администратора начинается с главной страницы, на которой отображаются в "усеченном виде" все таблицы базы данных (Приложение 1).

Перейдя по ссылкам на требуемую таблицу, можно осуществлять все доступные операции с данными этой таблицы.

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

"Добавить студента".

Появиться форма для заполнения данных вида (рис.15).


Рис.15. Форма для добавления данных в таблицы.


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

Ниже приводится часть этой таблицы с полями меню управлении.

Введите Id код для удаления, поиска или обновления.



Введите Id код Введите Id код Введите Id код



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

Если вводится Id и нажимается кнопка "Обновить", то появляется форма для обновления со всеми данными сотрудника (Рис.16)


Рис.16. Форма для обновления данных таблицы "Студента".


После добавления данных и нажатия кнопки "обновить", данные будут занесены в таблицу, появиться список всех сотрудников с сопутствующими

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

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

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

В Приложении 2 представлен программный код на PHP, HTML и дано краткое описание используемых средств этих языков.


3.9 Реализация поисковых функций


Для реализации поисковых функций используется класс DB_Class работы с базой данных MySQL и стандартный язык запросов SQL. Программное обеспечение устроено таким образом, чтобы предусмотреть возможность изменения структуры полей БД. Для этого, во-первых, используются файлы настройки Table_Heades. php и Table_Headers_DB. php, а также локализация поисковых запросов. Так как структура таблиц БД, представлений таблиц может в определенной степени меняться при развитии функций приложения, то такой подход обеспечит гибкость, надежность, возможность быстрой адаптации под новые функции или при модификации поисковых запросов. При изменении наименования, полей таблиц БД, структуры таблиц, наименований полей (шапок полей) табличных представлений необходимо соответствующим образом изменить файлы настройки и наименования полей, атрибуты поиска в поисковых запросах.

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

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

Введите Id код для удаления, поска или обновления.


Начало формы

Введите Id код Введите Id код Введите Id код

Конец формы


Просмотр структуры всех таблиц <#"justify">Id Факультета Должность Работающих сейчас



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

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

Если же будет добавлено значение поля Id Кафедры, то соответственно будет выведена таблица всех доцентов в этом подразделении.

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

Примеры поиска по нескольким ключам приведены в Приложении 1, программный код SQL запросов в Приложении 2.


3.10 Физическая структура базы данных


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

<#"justify">Ниже представлена структура базы данных в представлении интерактивного пакета phpMyAdmin. Дается название полей (колонок) в СУБД MySQL, описание полей, типы данных и краткая характеристика и назначение, соответствие табличному представлению полей, изложенному в предыдущих разделах.

Обращение к базе данных из PHP приложения осуществляется по следующим параметрам:


<? php

define ("DB_HOST", "localhost"); // адрес сервера баз данных #("DB_USER", "alenkold"); // имя пользователя #("DB_PWD", "zao041"); // пароль к бд #("DB_NAME", "control_tests"); // имя базы данных #("DB_MODE",

); // 0 - в ручную откр/закр, #

? >


3.10.1 Имя базы данных control_tests

Имя базы даны - это уникальное имя, по которому приложения обращаются к базе данных или администратор базы данных обращается к базе данных через интерактивные пакеты управления данными типа phpMyAdmin, HS (HeidiSQL) и пр. с целью изменения или дополнения таблиц и полей базы данных. Далее будет описано, каким образом можно изменить структуру таблиц и что для этого необходимо сделать для корректной работы настоящего веб приложения.


3.10.2 Структура таблицы Groups (Группы)


Таблица

Структура таблицы БД "Группы"

Наименование Тип данныхНе определенКомментарииGroup_Idchar (6) NoИдентификатор Group_Namechar (40) NoИмя Facultychar (6) NoФакультетSpecialitychar (10) NoСпециальностьChief_FIOchar (60) NoРуководительGroup_Comchar (80) NoПримечания

3.10.3 Структура таблицы Questions (Вопросы)


Таблица 2

Структура таблицы БД "Вопросы"

НаименованиеТип данныхНе определенКомментарииQuest_Idchar (20) NoИдентификатор вопросаQuest_Nchar (3) NoНомер вопросаSubj_Idchar (20) NoИдентификатор предметаQuest_Textchar (250) NoТекст вопросаQuest_Pointint (3) NoМаксимальный баллQuest_Comchar (80) YesКомментарии

3.10.4 Структура таблицы Replies (Ответы)


Таблица 3

Структура таблицы БД "Ответы"

Наименование Тип ДанныхНе определеноКомментарии Repl_Idchar (20) NoИдентификатор ответаRepl_Nint (3) NoНомер ответаRepl_Textchar (10) NoТекст ответаQuest_Idchar (10) NoИдентификатор вопросаSubj_Idchar (10) NoИдентификатор предметаTeach_Idchar (10) NoИдентификатор преподавателяRepl_Pointint (3) NoБаллы за ответ (0 - для неверного) Repl_Comchar (80) NoКомментарии

3.10.5 Структура таблицы Students (Студенты)


Таблица 4

Структура таблицы БД "Студенты"

Наименование Тип данныхНе определеноКомментарииStud_Idchar (10) NoИдентификатор студентаStud_FIOchar (60) NoФИОStud_Facultychar (2) NoФакультетStud_Groupchar (6) NoГруппаStud_YeardateNoГод поступленияStud_Spec_Nchar (10) NoНомер (Код) специальностиStud_Spec_Nmchar (80) NoНаименование специальностиStud_Phonechar (20) YesТелефонStud_Emailchar (80) NoЭл. адресStud_Comchar (80) NoКомментарии

3.10.6 Структура таблицы Subjects (Предметы)


Таблица 5

Структура таблицы БД "Предметы"

Наименование Тип данныхНе определеноКомментарии Subj_Idchar (20) NoИдентификатор предметаSubj_Nint (2) NoНомер предметаFacultychar (6) NoФакультетSemestrchar (2) NoСеместрTeach_Idchar (10) NoИдентификатор ПреподавателяSubj_Namechar (80) NoНаименование предметаSubj_Hoursint (3) NoКоличество часовSubj_Pointsint (3) NoМаксимальный баллSubj_Comchar (120) YesКомментарии

3.10.7 Структура таблицы Teachers (Преподаватели)


Таблица 6

Структура таблицы БД "Преподаватели"

Наименование Тип ДанныхНе определеноКомментарииTeach_Idchar (10) NoИдентификатор преподавателяTeach_FIOchar (80) NoФИОTeach_Chairchar (80) YesКафедра (ВУЗ) Teach_Positchar (80) YesДолжностьTeach_Degreechar (80) YesУченая СтепеньTeach_Phonechar (20) YesТелефонTeach_Emailchar (80) NoЭл. АдресTeach_Commchar (80) NoКомментарий

3.10.8 Структура таблицы Tests (Тесты)


Таблица 7

Структура таблицы БД "Тесты"

НаименованиеТип ДанныхНе определеноКомментарииTest_Idchar (20) NoИдентификатор тестаTest_DatedateNoДата тестаStud_Idchar (10) NoИдентификатор СтудентаQuest_Idchar (10) NoИдентификатор ВопросаRepl_Idchar (10) NoИдентификатор ОтветаStud_Pointsint (5) NoБаллыTest_Comchar (80) YesКомментарии

3.10.7 Изменение структуры таблиц БД и их представлений

Для изменения структуры таблиц необходимо зайти в панель управления phpMyAdmin по адресу

<#"center">3.10.8 Файл настройки Table_Headers. php


<? php

#

# Заголовки таблицы 'Groups' (Группы) базы данных 'conrol_tests.

#

$groups_headers = array;

#

# Заголовки таблицы 'Qustions' (Вопросы) базы данных 'conrol_tests.

#

$questions_headers = array;

#

# Заголовки таблицы 'Replies' (Ответы) базы данных 'conrol_tests.

#

$replies_headers = array;

#

# Заголовки таблицы 'Subjects' (Предметы) базы данных 'conrol_tests.

#

$subjects_headers = array;

….

Аналогично для других массивов.


3.10.9 Файл настройки Table_Headers_DB. php

В настоящей версии эти управляющие массивы формируются автоматически "на лету", путем сканирования базы данных.


3.10.10 Создание новой таблицы БД и их представлений

Для создания новой таблицы БД необходимо использовать phpMyAdmin или другой пакет удаленного администрирования базы данных.

Имена полей внести в файл настройки Table_Headers_DB. php, добавив новый массив в соответствии со структурой файла, например, $new_headers_DB. php:

$new_headers_DB = array (

'Id_new', 'Clmn1',…ClmnN

);

Добавить элемент с именем таблицы New в ассоциированный массив $Table_Headers_DB:

$Table_Headers_DB = array (…, 'New' =>$new_headers_DB

);

Имена полей представлений таблиц кириллицей внести в файл настройки Table_Headers. php, добавив новый массив в соответствии со структурой файла, например, $new_headers. php:

$new_headers = array (

'Id_сотрудника', 'Имя',…Фамилия

);

Добавить элемент с именем таблицы New в ассоциированный массив

$Table_Headers:

$Table_Headers = array (…, 'New' =>$new_headers

);

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

Заключение


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

Для достижения этой цели работы поставлены и решены следующие задачи:

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

разработаны основные компоненты программного обеспечения, проведена их классификация и описание алгоритмов функционирования;

проведен анализ состава базы данных и разработана модель для их представления;

разработана модель предметной области;

созданы программные компоненты реализации базы данных и прототипа системы тестирования;

Разработано программное обеспечение универсальной системы удаленного тестирования, базирующихся на современных программных платформах, современных концепциях в области систем управления базами данных (СУБД), современных концепциях прикладного программирования, интернет технологий.

Программное обеспечение базируется на клиент-серверной архитектуре, а в качестве фундаментальной платформы для программной реализации такой архитектуры использовалась платформа семейства Unix-Linux.

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

Литература


1.Гузеев, В.В. Методы и организационные формы обучения [Текст] / В.В. Гузеев. - М., 2001. - 128 с.

2.Ксензова, Г.Ю. Инновационные технологии обучения и воспитания школьников: учеб. пособие [Текст] / Г.Ю. Ксензова // Педагогическое общество России. - 2008. - 128 с.

.Игошев, Б.М. Повышение эффективности подготовки учителей физики и информатики в современных условиях: Материалы межд. научно-практ. конференции [Текст] / Б.М. Игошев, Т.Н. Шамало. - Екатеринбург, 2004.

.Селевко, Г.К. Энциклопедия образовательных технологий: в 2 т. [Текст] / Г.К. Селевко. - М.: НИИ школьных технологий, 2006. - 816 с.

.Стариченко, Б.Е. Теория и практика оптимизации школьного образовательного процесса средствами информационных технологий: дис. … д-ра пед. наук [Текст]. - Екатеринбург, 1999. - 353 с.

6.Концепция профильного обучения Концепция профильного обучения на старшей ступени общего образования (Министерство образования Российской Федерации Российская академия образования) [Электронный ресурс]. - Режим доступа: http://do. gendocs.ru/docs/index-199237.html <http://do.gendocs.ru/docs/index-199237.html>.

.Семенова, И.Н. Развитие системы методов обучения студентов педвузов в условиях использования информационно-коммуникационных технологий [Текст]: монография / ГОУ ВПО "Урал. гос. пед. ун-т". - Екатеринбург, 2010. - 192 с.

.Красильникова, В.А. Информационные и коммуникационные технологии в образовании: учебное пособие [Текст] / В.А. Красильникова. - Оренбург: ГОУ ОГУ, 2006. - 235 с.

.СДО МЭСИ: fhttp://web. ido.ru1

.Система WebCT: http://www.Webct. eom/1 <http://www.Webct.eom/1>

.Lotus LearningSpace: http://www.lotus. eom/l <http://www.lotus.eom/l>

.WebCT: http://www.Webct. eom/1 <http://www.Webct.eom/1>

.Фролов А.В., Фролов Г.В. Создание Web-приложений: Практическое руководство. М.: Издательско-торговый дом "Русская редакция", 2001.

.Томсон Л., Веллинг Л. Разработка Web-приложений на PHP и MySQL. М.: Издательство DiaSoft, 2001.

.Карпова Т. Базы данных. Модели, разработка, реализация.;

.Коннолли Т., Бегг К., Страчан А. Базы данных. Проектирование, реализация, сопровождение. Теория и практика.;

.Мартин Д. Базы данных. Практические методы.;

.Мейер Д. Теория реляционных баз данных.;

.Олле Т. Предложения КОДАСИЛ по управлению базами данных.;

.Потоцкий В.К. Технология создания и управления работой реляционной базы данных на персональной ЭВМ.;

.Зандстра М. PHP4 за 24 часа. Издательский дом "Вильямс", 2001.

.Дрибас В.П. Реляционные модели баз данных;

.Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. - М: МЦНМО, 2001;

.Чудинов И.Л. Системы управления базами данных.


Содержание Введение Глава 1. Анализ предметной области и постановка задачи 1.1 Методология использования информационных образовательных технологий

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ