Разработка инструментально-программной подсистемы дистанционного обучения ИрГУПС

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

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

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

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

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

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

Содержание

Введение

  • 1. Анализ предметной области и постановка задачи
    • 1.1 Общая модель дистанционного обучения
    • 1.2 Cуществующие аппаратно-программные средства дистанционного обучения. Сравнительный анализ
    • 1.3 Переход от существующей инструментально-программной подсистемы ИрГУПС «Стрела-1» к подсистеме «Стрела-2»
    • 1.4 Постановка задачи
  • 2. Проектирование системы
    • 2.1 Описание необходимых свойств и задач проектируемой инструментально-программной подсистемы ДО
    • 2.2 Выбор структуры подсистемы
    • 2.3 Требования к ядру системы. Проектирование и реализация
    • 2.5 Механизм взаимодействия модулей
    • 2.6 Разработка модели данных и реализация БД
  • 3. Программная реализация
    • 3.1 Выбор языка программирования и обоснование
    • 3.2 Стандарты оформления кода
    • 3.3 Обработчик шаблонов Smarty
    • 3.4 Алгоритмы работы. Модуль управления слушателями
  • 4. Интергация с существующими информационными системами
    • 4.1 Перенос данных из системы «Стрела-1»
    • 4.2 Перенос данных из единой БД ИрГУПС
  • 5. Экономическая часть
  • 6. Безопасность и экологичность проекта

Заключение

Список использованных сокращений

Список литературы

Приложение

Введение

программирование модуль дистанционный обучение

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

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

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

В последние годы университеты разных стран мира обратили внимание на возможности использования компьютерных телекоммуникационных технологий для организации дистанционного обучения. Компьютерные телекоммуникации обеспечивают эффективную обратную связь, которая предусматривается как в организации учебного материала, так и общением с преподавателем, ведущим данный курс. Такое обучение на расстоянии и получило в последние годы название "дистанционного обучения" в отличие от знакомого всем заочного обучения. Обучение на расстоянии особенно актуально для России с ее огромными территориями и сосредоточием научных центров в крупных городах.[16]

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

1.1 Общая модель дистанционного обучения

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

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

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

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

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

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

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

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

Методология обучения слушателей базируется на следующих принципах дистанционного обучения:

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

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

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

Основные цели любой системы обучения:

- сформировать у обучающегося желание учиться и достичь цели обучения;

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

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

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

- непрерывно оценивать результаты обучения.

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

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

«Несмотря на все явные преимущества, дистанционное обучение постоянно сталкивается с рядом проблем и противоречий как теоретического, так и практического характера. Осуществление оперативного контроля за учебной деятельностью слушателей дистанционных курсов является до сих пор одной из главных проблем дистанционного обучения.»[11]

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

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

Команда разработчиков курса может выбирать способ текущей оценки. К ним относятся:

- контрольная работа, проверяемая компьютером: объективные тесты с выбором ответа (т. е. вопросы, основанные на нескольких объективных утверждениях или суждениях), которые проверяются компьютером. Преимущества таких компьютерных работ в том, что они наименее дороги из контрольных работ и обеспечивают студентам быструю обратную связь [3].

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

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

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

Очень сложным вопросом является не только организация тестирования, но и сам процесс оценивания и подсчета результатов. При оценивании ответов слушателей привычными ступенями «отлично», «хорошо», «удовлетворительно» и «неудовлетворительно» не удается добиться объективности и достоверности. Ведь разные преподаватели в разных вузах, школах или учебных центрах один и тот же ответ могут оценить совершенно по-разному. В этом случае принято использовать методику рейтинговой оценки, при которой зачетный итоговый балл формируется чисто статистически.

Уже несколько лет существует Международный тестологический стандарт для проведения тестирования. Этот стандарт ориентирует на то, что при определении проходного балла при телетестинге важным становится не количество выполненных заданий, а процент испытуемых, набравших определенный тестовый балл [4].

- контрольная работа, проверяемая и рецензируемая тьютором (Tutor marked assignment - TMA): письменная работа, пометки, оценки и комментарии к которой делают тьюторы курса или тьюторы-консультанты на основных курсах [3].

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

Это так называемые проектно-коммуникативные методы оценки знаний и умений учащихся, которые широко используются в системе дистанционного образования. Они дают возможность преподавателям лучше узнать учащихся, детально проверить уровень их подготовки. Эти методы во многом субъективны, основаны на прямом личном контакте всех участников дистанционного обучения - преподавателей, учащихся, кураторов учебных групп. Именно в силу своей субъективности данная форма контроля практически не поддается автоматизации. И это является самым большим недостатком данных методов контроля знаний, т. К. один преподаватель (куратор) учебной группы не может за один цикл обучения дать регулярную оценку работы более чем 20-30 слушателей.[2]

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

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

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

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

Команда разработчиков курса может установить этапные контрольные работы: в некоторых курсах может оказаться полезным заменить обычный итоговый письменный экзамен другими способами аттестации, например, написанием итогового эссе, защитой тезисов, проекта. Но обычно каждый курс дистанционного обучения заканчивается проверкой - письменным экзаменом трехчасовой длительности [10].

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

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

1) Система дистанционного обучения СДТ REDCLASS

Области применения:

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

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

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

- использование в высших и средних учебных заведениях в процессе обучения и тестирования студентов.

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

- частота процессора - 300 МГц;

- оперативная память 128 Мбайт;

- монитор с разрешением экрана не ниже 800х600;

- интернет-браузер со встроенной поддержкой JavaScript и Cookies;

- JRE 1.4.2 и выше (для работы в Системе ВЛ и Среде эмуляции упражнений);

- подключение к сети Internet или Intranet.

Требования к коммуникациям:

- устойчивая связь через Internet или Intranet;

- скорость подключения от 28,8 Кб/сек (в зависимости от курса).

2) Система дистанционного обучения Прометей 4.0

Области применения:

- ВУЗы, колледжи и др. учебные заведения;

- корпорации, государственные организации и частные компании;

- средние школы.

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

Таблица 1.1 - Требования к рабочему месту пользователя для системы Прометей 4.0

Ресурс

Минимальные

Рекомендуется

1

2

3

Процессор

Pentium 100 МГц

Celeron 1800 МГц и выше

ОЗУ

16 МБ

64 МБ и выше

1

2

3

CD-ROM

4x

40x и выше

Веб-браузер

MS Internet Explorer 5.0

MS Internet Explorer 6.0 и выше

Канал Интернета, корпоративной или локальной сети

от 14400 бит/с

64 кбит/с и выше

3) Система дистанционного обучения "Инфотехно"

Области применения: образование в сети Интернет.

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

- система корректно отображается в различных браузерах (IE4 и Netscape Navigator 4.5) при основных разрешениях мониторов (800x600, 1024x768);

- операционная система пользователей - от windows 98/NT/2000/XP. Для корректной работы у браузеров должна быть включена поддержка javascript и cookies.

Минимальные требования:

- процессор Pentium или совместимый;

- оперативная память - не менее 16 Mb;

- свободное дисковое пространство - 500 Mb;

- видеокарта, поддерживающая разрешение 800х600, 256 цветов.

4) Система дистанционного обучения e-University

Области применения:

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

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

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

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

- процессор Intel 133Mhz и выше;

- оперативная память не менее 32Mb;

- операционная система Windows 95/98/NT/2000/XP;

- Microsoft Internet Explorer 5 и выше.

5) Система дистанционного обучения Competentum.Magister

Области применения:

- ВУЗы, колледжи и др. учебные заведения;

- средние школы.

Требования к рабочему месту пользователя в описании отсутствуют.

6) Система дистанционного обучения Гекадем

Области применения:

- для вузов, колледжей и других учебных заведений;

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

Требования к рабочему месту пользователя в описании отсутствуют.

7) Система дистанционного обучения i.Logos

Области применения системы - образование в сети Интернет. Требования к рабочему месту пользователя в описании отсутствуют.

8) Система дистанционного обучения «Стрела-1»

Области применения: система используется в ИрГУПС для обеспечения ДОТ любых групп пользователей и доступна для открытого использования.

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

- система корректно отображается в различных браузерах (IE4 и Netscape Navigator 4.5) при основных разрешениях мониторов (800x600, 1024x768);

- операционная система пользователей - windows 98/NT/2000/XP. Для корректной работы у браузеров должна быть включена поддержка javascript и cookies;

Минимальные требования:

- процессор Pentium или совместимый;

- оперативная память - не менее 32 Mb;

- видеокарта, поддерживающая разрешение 800х600, 256 цветов.

Требования к коммуникациям:

- устойчивая связь через Internet или Intranet;

- скорость подключения от 28,8 Кб/сек (в зависимости от курса).

Представим результат сравнения приведенных систем в виде таблицы:

Таблица 1.2 - Сравнительный анализ систем дистанционного обучения

Название СДО

Цена

Использование стандартов представления материалов

Архитектура

Сложность освоения системы

Рабочая платформа

Защищенность

СДТ REDCLASS

В зависимости от требований к системе.

Управление каталогом курсов, версиями курсов, внешними ресурсами, режимами обучения и методиками создания курсов. Поддерживаются стандарты AICC и SCORM 1.2.

Клиент-сервер

Клиент - Internet Explorer, Mozilla

Сервер

(СУБД версии Oracle 8i/ 9i/ 10g, Java Development Kit (JDK) версии 1.4.2, сборки не менее 1.0.2-04, Xntpd или ntpd, Tomcat Apache)

-

Любая

Средний уровень web-приложения

Прометей 4.0

-

Используется внутренняя спецификация

Клиент-сервер

Клиент - Internet Explorer, Mozilla

Сервер (Microsoft SQL Server 2000)

Доступна документация по пользованию системой

Сервер - MS Windows 2000/2003 Server

Ниже среднего

"Инфотехно"

Разовая оплата системы - 4200 Евро

Используется внутренняя спецификация

Клиент - сервер

Клиент - Internet Explorer, Mozilla

Сервер (Язык программирования - С#.

База данных MS SQL Server 2000 SP3.

Сервер - Windows 2003 c Internet Information Server 6.0.

Система строится с использованием архитектуры thin client.)

Нет сведений

Сервер - Windows 2003 c Internet Information Server 6.0

Применение алгоритмов шифрования для хранения данных

e-University

-

Соответствует спецификациям по стандартизации образовательной деятельности международного образовательного консорциума (IMS, модель LTSA)

Клиент- сервер

Сервер (MySQL 2.23 и выше;

- Apache Jakarta Tomcat 4.1.18 и выше;

- JDK 1.3.1 и выше)

-

любая

Средний уровень web-приложения

Competentum.Magister

145 000 рублей

соответствующие международному стандарту SCORM

(построена на базе технологии J2EE (Java 2 Enterprise Edition))

Проста в освоении

любая

Средний уровень web-приложения

Гекадем

-

Используется внутренняя спецификация

Клиент- сервер

-

-

возможно сломать!

i.Logos

-

стандарт SCORM

Нет сведений

-

-

-

«Стрела-1»

-

-

Клиент-сервер

Сервер (MySQL 3.23 и выше;

- Apache

- PHP 4.0 и выше

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

Любая

Средний уровень

1.3 Переход от существующей инструментально-программной подсистемы ИрГУПС «Стрела-1» к подсистеме «Стрела-2»

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

Исходя из этого в конце 2002г. была разработана научно-методическая комплексная программа «Развитие корпоративной системы дистанционного обучения ИрГУПС на 2003-2007г.» а в 2003г. разработан проект внедрения системы дистанционного обучения кадров, который будет осуществляться ИрГУПС совместно с ВСЖД [1]. Целью проекта является создание условий, обеспечивающих становление, последующее развитие и функционирование единой региональной образовательной среды и интеграции ее в общеотраслевую систему подготовки кадров ОАО РЖД. Указанные условия могут быть реализованы в ходе создания системы дистанционного обучения ИрГУПС-ВСЖД на основе разработки нормативно-организационных, технологических, учебно-методических и педагогических основ и программного обеспечения дистанционного обучения.[7]

В настоящее время система дистанционного обучения ИрГУПС имеет вид (рис. 1.1) и содержит следующие компоненты:

- учебно-методическая подсистема;

- аппаратно-технологическая подсистема;

- нормативно-правовая подсистема;

- подсистема организационного обеспечения;

- подсистема контроля;

- требования по функционированию и эксплуатации.

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

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

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

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

В таблице 1.3 представлены различия модулей системы «Стрела-1» и проектируемой аппаратно-программной подсистемы ДО ИрГУПС. Необходимо заметить, что в существующей подсистеме невозможно отделить один модуль от другого, не нарушив целостности и работоспособности всей системы. Это неудобно, если требуется изменить функции подсистемы для адаптации к изменившимся условиям.

Таблица 1.3

Модуль

«Стрела-1»

«Стрела-2»

1

2

3

Управление пользователями

создание, редактирование, удаление, (де-)активация

создание, редактирование, удаление, (де-)активация, редактирование роли в системе

Управление группами слушателей

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

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

Управление ресурсами

-

создание, редактирование, удаление, (де-)активация, формирование структуры меню системы

Управление ролями

-

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

Заявки слушателей на обучение

просмотр, создание, редактирование, удаление

просмотр, создание, редактирование, удаление

Обучение

просмотр зачетной книжки, обучение на курсах, тестирование

просмотр зачетной книжки, обучение на курсах, тестирование

Статистика

-

список активных пользователей, находящихся в системе

Управление курсами

просмотр курса, набор учебных групп на курс.

просмотр, создание, удаление, редактирование, (де-)активация,

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

Система контроля знаний

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

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

проверка целостности теста

Отчетные ведомости

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

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

Система внутренних сообщений

список сообщений, отправка сообщений, уведомления о прочтении, удаление

список сообщений, отправка сообщений, уведомления о прочтении, удаление

Система форумов

создание форумов по группам/курсам, создание тем, модерирование сообщений

создание форумов по групппам/курсам, создание тем, модерирование сообщений

Система новостей

добавление, редактирование, удаление, лента

добавление, редактирование, удаление, лента

Регистрация слушателей

регистрация новых слушателей в системе

регистрация новых слушателей в системе

Система опросов

создание, проведение опросов, просмотр результатов

создание, проведение опросов, просмотр результатов

Календарные планы

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

управление событиями для группы, сообщения о наступающем событии

1.4 Постановка задачи

На основе анализа существующих инструментально-программных подсистемы для дистанционного обучения, а так же на базе разработанной и функционирующей инструментально-программной подсистемы ИрГУПС, спроектировать и разработать инструментально-программную подсистему дистанционного обучения ИрГУПС с гибкой структурой, позволяющей настраивать систему и управлять ее поведением в зависимости от предъявляемых требований. Разработанная система должна удовлетворять требованиям, предъявляемым к системам дистанционного обучения: многопользовательский режим, возможность организовать обучение слушателей, управления учебным контентом, ведение отчетности.

Разработанная система должна отвечать следующим требованиям:

1) Неизменность интерфейса для пользователей (сохранение основных пунктов меню системы «Стрела-1»);

2) Поддержка учебного процесса ИрГУПС (иерархия структур ВУЗа, учебные группы и специальности);

3) Возможность работы преподавателей offline (настольные дизайнер курсов и дизайнер тестов);

4) Интеграция с БД университета (получение необходимых справочных данных из БД ИрГУПС и аутентицикация через полученые данные из общей БД);

5) Улучшение системы дизайнера курсов;

6) Улучшение системы дизайнера тестов.

2. Проектирование системы

2.1 Описание необходимых свойств и задач проектируемой инструментально-программной подсистемы ДО

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

Система должна отвечать следующим требованиям:

- поддерживать клиент-серверную архитектуру;

- работать как в многопользовательском, там и однопользовательском режиме;

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

- работать на любой платформе;

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

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

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

- иметь интуитивно понятный интерфейс на каждом уровне доступа к системе;

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

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

- система поддержки контента;

- информационные сервисы;

- коммуникационные сервисы;

- персонификационные сервисы;

- навигационные сервисы;

- статистические сервисы;

- лингвистические сервисы;

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

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

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

- средства формирования и поддержки каталога ресурсов, включая внешние ресурсы;

- средства формирования и поддержки рубрикатора (по внутренним ресурсам);

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

- средства редактирования и публикации информации (личных страниц, УМК дисциплин и т. п.);

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

К информационным сервисам относятся:

- новостная лента, обеспечивающая накопление и публикацию новостей, хранение архивов новостей;

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

Коммуникационные сервисы включают:

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

- отзывы о сайте/гостевая книга;

- чат;

- опросы;

- обратную связь.

Персонификационные сервисы представляют:

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

- систему инициализации и настройки системы (темы и оформление).

К навигационным сервисам относятся:

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

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

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

- карта сайта.

К статистическим сервисам относятся:

- средства анализа нагрузки на аппаратные ресурсы портала;

- средства контроля нагрузки на аппаратные ресурсы портала;

- средства статистики обращений к различным разделам портала.

2.2 Выбор структуры подсистемы

Исходя из требования к системе, модель инструментально-программной подсистемы ИрГУПС будет иметь модульную структуру. Каждая функциональная составляющая будет представлена в виде модуля. Это позволит в дальнейшем разрабатывать дополнительные модули и легко расширять функции системы.

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

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

Таблица 2.1 - Список модулей проектируемой СДО ИрГУПС

Модуль

Описание

Статус

1

2

3

Управление пользователями

создание, редактирование, удаление, (де-)активация, редактирование роли в системе

ядро

Управление ресурсами

создание, редактирование, удаление, (де-)активация, формирование структуры меню системы

ядро

Управление ролями

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

ядро

Управление группами слушателей

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

базовый

Заявки слушателей на обучение

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

Базовый

Календарные планы

подсистема календарных планов

базовый

Регистрация слушателей

регистрация новых слушателей в системе

базовый

Управление курсами

просмотр, создание, удаление, редактирование, (де-)активация,

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

Базовый

Система контроля знаний

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

проверка целостности теста

базовый

Отчетные ведомости

результаты обучения слушателей в виде таблиц

базовый

Система внутренних сообщений

список сообщений, отправка сообщений, уведомления о прочтении, удаление

базовый

Система новостей

добавление, редактирование, удаление, лента

базовый

Система форумов

общение в системе, обсуждения проблем в обучении

дополнение

Система опросов

проведения опросов в системе

дополнение

Статистика

список активных пользователей

дополнение

2.3 Требования к ядру системы. Проектирование и реализация

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

- работа с сессией пользователя;

- работа с закладками модулей;

- управление отображением страниц;

- настройка темы оформления системы;

- логирование действий пользователя;

- управление установкой/удалением модулей;

- обработка запросов на предоставление интерфейсов модулей;

- управление доступом к страницам и ресурсам;

- формирование меню;

- аутентификация пользователя;

- обработка ошибок системы.

Принцип функционирования ядра приведен в приложении З.

Определив основные функции ядра и состав модулей, перейдем к проектированию.

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

- обучаемый;

- преподаватель;

- администратор.

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

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

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

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

Таким образом, чем дальше мы рассматриваем все аспекты работы инструментально-программной подсистемы ИрГУПС, тем яснее становится факт того, что механизм статичных ролей и прав в системе сдерживает ее развитие.

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

Основные концепции разработки:

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

2) Все скрипты системы внесены в базу данных. Это не позволяет запускать неучтенные скрипты, либо быстро отключать учтенные;

3) Все скрипты объединены в группы (модули);

4) Меню формируется динамически из списка ресурсов системы на основе уровня доступа пользователя к ним;

5) Для того чтобы пользователь смог запустить скрипт на выполнение, в его правах должно быть записано, что он имеет на это право.

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

Программный код ядра системы представлен в приложении Б.

2.5 Механизм взаимодействия модулей

Поскольку архитектура проектируемой системы является модульной, то ключевым составляющим, наряду с ядром, является модуль. Как уже упоминалось ранее модуль - это набор php-файлов, содержащих функции с определенными именами и ролями, которые устанавливаются в систему. Физически модуль представляет собой zip-архив. Структура архива представлена на рисунке 2.1:

Рисунок 2.1 - Структура архива

Требования к модулю:

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

- все модули в системе должны находиться в папке modules.

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

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

Схема взаимодейсвия всех модулей в системе представлена в приложении И.

2.6 Разработка модели данных и реализация БД

База данных является важнейшим составляющим подсистемы «Стрела-2». Именно в ней хранятся все данные системы за исключение учебных материалов, которые представлены в виде отдельный файлов.

«Под моделью данных понимают описание предметной области с точки зрения информационных аспектов. Моделирование данных - процесс перехода к абстракциям более высокого уровня. Различают инфологические и даталогические модели данных.»[24]

Инфологическая модель ориентирована на пользователя и не зависит от типа СУБД. Даталогические модели в соответствии с трехуровневой организацией архитектуры систем баз данных делятся на внутреннюю, концептуальную и внешнюю модели, а в зависимости от типа СУБД - на иерархические, сетевые, реляционные и объектные модели данных. Описание модели данных в терминах СУБД называют схемой данных [24].

Трехуровневая организация архитектуры систем баз данных включает:

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

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

- внешний уровень, связанный со способами представления данных с точки зрения пользователей [24].

Проектирование базы данных основано на моделировании данных и включает создание инфологической модели предметной области и разработку концептуальной, внешней и внутренней моделей базы данных (рис. 2.3) [24].

«При построении инфологической модели выделяются основные информационные объекты предметной области, их атрибуты (свойства, или характеристики) и связи между объектами.» [24]

Инфологическая модель предметной области может быть описана моделью Чена - "сущность-связь" (entity - relationship), предложен в 1976 г.. Ее также называют ER-моделью. Эта модель позволяет описать в графическом виде объекты предметной области и связи, существующие между ними. В нотации Чена объекты изображаются в виде прямоугольников, свойства или атрибуты - эллипсами, связи между объектами - в виде ромбов. Различают связи типа один-к-одному (1:1), один-ко-многим (1:М), многие-к-одному (М:1), многие-ко-многим (М:М) [24].

Для проектирования БД подсистемы «Стрела-2» были выполнены следующие этапы:

1) Анализ предметной области:

- определение основных объектов (сущностей) предметной области, выявление их атрибутов и взаимосвязей между объектами (рис. 2.4);

- определение типовых запросов пользователей к данным;

- определение примерного состава информационного фонда.

Основным типом запросов в БД будет являться запрос на выборку данных (select), часть запросов придется на вставку и обновление (insert, update) и небольшая доля на удаление записей (delete).

Состав информационного фонда формируется из данных существующей системы «Стрела-1».

2) Информационный анализ класса задач:

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

- перечень потенциально возможных прикладных программ;

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

- анализ источников и возможностей для формирования информационного фонда.

На этапе проектирования прикладных программ, которые необходимо конвертировать в БД, не выявлено.

Возможен перенос данных о пользователях из единой БД ИрГУПС.

3) Построение инфологической модели предметной области:

- анализ и использование результатов этапов 1 и 2;

- выбор наиболее адекватной модели для описания предметной области;

- графическое изображение модели (рис. 2.5);

- формирование требований к СУБД и ограничений.

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

4) Выбор конкретной СУБД:

Выбор базы данных сделан в пользу бесплатной, свободно распространяемой СУБД MySQL.

Основные стороны пакета MySQL - многопоточность, поддержка нескольких одновременных запросов, оптимизация связей с присоединением многих данных за один проход, записи фиксированной и переменной длины, ODBC драйвер в комплекте с исходником, гибкая система привилегий и паролей, до 16 ключей в таблице, каждый ключ может иметь до 15 полей. Также есть поддержка ключевых полей и специальных полей в операторе CREATE, поддержка чисел длинной от 1 до 4, строк переменной длины и меток времени, интерфейс с языками C и perl. Основанная на потоках, быстрая система памяти, утилита проверки и ремонта таблицы, все данные хранятся в формате ISO8859_1. Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках, псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице, все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей. Легкость управления таблицей, включая добавление и удаление ключей и полей.[21]

Также доступен 32-битный ODBC драйвер для MySQL. Он позволяет запрашивать и получать данные из других источников с поддержкой ODBC.

Кроме технических подробностей можно добавить, что MySQL работает как на Unix, так и на платформе Windows 95/98, он очень прост и удобен в работе [21].

5) Построение концептуальной модели:

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

- отображение инфологической модели в СУБД-ориентированную концептуальную модель;

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

6) Реализация базы данных:

- выбор параметров внутренней схемы, предлагаемой СУБД (таблица 2.2);

- загрузка БД в соответствии с концептуальной и внутренней схемами (приложение Е).

Таблица 2.2 - Внутренняя схема БД

Имя таблицы

Описание

Поле

Тип

Размер

Ключ

1

2

3

4

5

6

_menu

меню системы

id

integer

10

П

name

varchar

250

position

integer

5

_modules

список модулей, установленных в системе

id

integer

10

П

name

varchar

250

description

text

menu_id

integer

10

да

folder

varchar

250

version

varchar

250

autor

varchar

250

position

integer

5

system

integer

1

_resourses

список ресурсов системы

id

integer

10

П

name

varchar

250

description

text

url

varchar

250

u_access

integer

1

position

integer

5

visible

integer

1

modul_id

integer

10

да

_rol_rights

права роли

id

integer

10

П

res_id

integer

10

да

rol_id

integer

5

да

u_access

integer

1

param_id

integer

10

да

ip

varchar

30

_userrights

права пользователя

id

integer

10

П

res_id

integer

10

да

user_id

integer

10

да

u_access

integer

1

param_id

integer

10

да

ip

varchar

30

_rols

список ролей в системе

id

integer

10

П

name

varchar

250

_script_param

параметры доступа к ресурсам системы

id

integer

10

П

name

varchar

250

description

text

_users

список пользователей

id

integer

10

П

f_name

varchar

250

s_name

varchar

250

l_name

varchar

250

nds_login

varchar

250

rol_id

integer

10

да

password

varchar

250

3. Программная реализация

3.1 Выбор языка программирования и обоснование

На сегодняшний день существуют множество языков программирования для сети Интернет. Вот некоторые из них:

1) ASP (Active Server Pages) - это мощная технология от Microsoft, позволяющая легко разрабатывать приложения для WWW. ASP работает на платформе Windows NT и IIS (Internet Information Server), начиная с версии 3. ASP - это не язык программирования, это внутренняя технология, позволяющая подключать программы к Web-страницам. Основа успеха ASP - простой скриптовый язык (Visual Basic Script или Java Script) и возможность использования внешних COM-компонент. [18]

2) Perl - интерпретируемый язык, созданным программистом Лари Уоллом (Larry Wall) для обработки больших текстов и файлов и расшифровывается, как Practical Extraction and Report Language (язык для практического извлечения данных и составления отчетов). С помощью Perl можно создать скрипт, который открывает один или несколько файлов, обрабатывает информацию и записывает результаты.

С изобретением World Wide Web, Perl оказался прекрасным средством для взаимодействия с web-серверами через Common Gateway Interface (CGI) - общий интерфейс взаимодействия. Команды Perl могут легко получить данные из формы HTML или другого источника и что-нибудь с ними сделать.[19]

3) PHP - это язык программирования для динамической генерации Web-страниц с помощью скриптов, запускаемых на Web-сервере. Страница создается с помощью PHP и HTML. Когда посетитель сайта открывает страницу, сервер выполняет включенные в html-код операторы PHP и посылает результат браузеру посетителя, точно так же, как это делается с помощью ASP или ColdFusion. Однако, в отличие от ASP или ColdFusion, PHP является продуктом с открытым исходным кодом (Open Source) и платформенно-независим. PHP работает на Windows NT и многих версиях Unix. Он может быть запущен как модуль сервера Apache или как исполняемая программа через CGI. В случае запуска в виде модуля Apache, PHP работает особенно легко и быстро. В этом случае отсутствуют накладные расходы, связанные с созданием процессов, поэтому результат выдается быстро. [20]

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

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


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

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