Образовательная система. Описание и инструкция
Цель образовательной системы – упростить процесс публикации учебных материалов в сети Интернет, обеспечив автоматизированное структурирование и интуитивно понятный доступ к опубликованным материалам.
Разрабатывая систему, я исходил из следующих соображений:
- Интерфейс должен быть интуитивно понятным.
- Студент должен найти учебный материал, воспользовавшись лишь теми знаниями, которые у него должны быть априори (студент знает на каком курсе и на какой специальности он учится, а также знает ФИО своего преподавателя и название предмета).
- Система должна функционировать без необходимости постоянного вмешательства администратора.
Скачать образовательную систему (1.27 МБ, *.zip).
Внешний вид структуры опубликованных материалов
Главная страница образовательной системы отображает дерево категорий. В листьях дерева размещены ФИО преподавателей, опубликовавших в выбранном листе учебные материалы.

Клик по ФИО преподавателя открывает таблицу материалов, опубликованных выбранным преподавателем в данном листе дерева категорий.

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

На приведенном выше скриншоте страницы регистрации роль секретного поля выполняет номер зачетки студента.
Образовательная система работает по технологии клиент-сервер.
Серверная часть реализована на PHP (фреймворк Kohana 3) + MySQL. Для работы серверной части системы подойдет любой современный хостинг: Apache, PHP, MySQL.
О настройке локальной среды разработки Apache + PHP + MySQL можно прочитать здесь и здесь. Теме настройки хостинга на домашнем компьютере посвящен отдельный видеокурс.
Клиентский интерфейс отображается в любом современном браузере.
Установка
1. Скопировать содержимое архива на хостинг. В браузере набрать соответствующее доменное имя и следовать инструкциям.
2. На первом шаге установки система запросит имя и пароль для подключения к MySQL-базе данных. После нажатия на кнопку «Продолжить» система протестирует связь с базой данных и, в случае ошибки, сообщит о проблеме.

Рис. 1. Подключение к базе данных.
3. В качестве логина пользователя система использует адрес эл. почты. При регистрации нового пользователя пароль генерируется автоматически и отправляется на указанный при регистрации e-mail. В связи с чем системе необходимо иметь возможность отправлять сообщения на эл. почту. Для настройки данной функции используется второй шаг установки.
Самый простой способ – использовать SMTP-сервер популярных почтовиков (например, mail.ru).
В случае mail.ru настройки будут следующими:
- SMTP сервер – smtp.mail.ru
- Имя пользователя – vasha_pochta@mail.ru или vasha_pochta@inbox.ru
- Пароль – пароль к учетной записи vasha_pochta@mail.ru
- Порт и таймаут – задаются согласно требованиям почтового сервиса. В подавляющем большинстве случаев можно оставлять значения по умолчанию без изменений.
- Домен – некоторые почтовики требуют указать доменное имя, на котором запущена образовательная система. В случае mail.ru данное поле можно оставить пустым.
- Email администратора – vasha_pochta@mail.ru
Для проверки работоспособности указанных настроек введите проверочный адрес эл. почты в последнее поле ввода и нажмите кнопку «Проверить настройки». Если на проверочный адрес придет тестовое сообщение – значит все в порядке.
4. Процедура установки на этом закончена. Для доступа в админку необходимо использовать указанный на 3-м шаге e-mail администратора. Пароль по умолчанию – admin (его можно сменить в личном кабинете).
Вся настроечная информация храниться в текстовых файлах папки /application/config
В случае переезда на новый хостинг можно изменить содержимое настроечных файлов или просто их удалить. Если настроечных файлов в директории /application/config не найдено – запускается процесс установки, описанный выше.
Настройка
1. По завершению установки введите в браузере доменное имя образовательной системы и авторизуйтесь, используя ссылку «вход» в правом верхнем углу страницы.
- Логин: vasha_pochta@mail.ru
- Пароль: admin
2. После авторизации с правами администратора в правом верхнем углу появится ссылка «Админка».

Рис. 2. Переход в админку.
3. В админке необходимо сформировать дерево категорий.

Рис. 3. Переход в раздел управления категориями.
Процесс создания дерева категорий интуитивно понятен и не требует дополнительных пояснений. Хочу заметить, что уровень вложенности категорий неограничен, тем самым можно сформировать структуру любой сложности.
Материалы можно будет размещать только в конечную категорию (в лист дерева категорий).
4. Раздел Управление пользователями предназначен для создания и редактирования пользователей системы. Из данного раздела админки можно создать пользователя любой группы: администратора, преподавателя или студента.
Для удобства группировки введен параметр «Примечаение». Таким образом, одинаковый параметр можно задать, к примеру, для студентов одной группы (в качестве параметра можно указать шифр учебной группы или год поступления).

Рис. 4. Примечание в таблице пользователей.
Система разделяет активных и неактивных пользователей:
- Активный – это пользователь, зарегистрировавшийся по полученному секретному коду.
- Неактивный – пользователь, получивший секретный код, но так им и не воспользовавшийся.
Для активных пользователей в графе код/email таблицы отображается e-mail, указанный при регистрации. Для неактивных – отображается секретный код.

Рис. 5. Отображение кода или адреса эл. почты пользователя.
5. Раздел Загрузка пользователей предназначен для быстрой загрузки большого количества пользователей. Для этого используется csv-файл, указанного на странице формата.
Для подготовки csv-файл оптимально подходит бесплатное приложение Calc пакета OpenOffice.
Добавление учебного материала
Для добавления учебного материала используется раздел Учебные материалы личного кабинета.

Рис. 6. Просмотр всех учебных материалов, добавленных в систему.
Добавлять материалы в систему имеет право только пользователь, принадлежащий к группе Преподаватели и Администраторы.
Администратор видит все материалы, добавленные в систему преподавателями, преподаватель – только свои.
Администратор может добавить материалы от имени любого преподавателя.

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

Рис. 8. Переход в раздел статистики загрузок материала.
Скачать образовательную систему (1.27 МБ, *.zip).
С уважением, Андрей Морковин.
Похожие материалы:
Отзывов: 26 на «Образовательная система. Описание и инструкция»














, 03.01.2012 в 22:34
Впечатление от этой системы не однозначное, приходилось использовать нечто подобное, уточнять не буду, а то скажут , что я троль.
, 04.01.2012 в 10:00
Валерий, очень интересно Ваше мнение, особенно в сравнении с подобным аналогом.
, 04.01.2012 в 11:08
Системка неплохая вроде как… Но мне всё таки кажется, что лучше использовать свою систему. Своё всегда лучше, если времени и умений на её разработку хватает!
, 04.01.2012 в 11:31
Если готовое решение удовлетворяет потребности, то зачем изобретать велосипед?
, 06.01.2012 в 08:16
Новый велосипед можно оборудовать под свои нужды, а для разработки дополнительных функций уже готового велосипеда, то нужно сначала изучить его устройство, — а это уже время. Мне процесс разработки всегда доставлял удовольствие!
, 06.01.2012 в 19:15
Выдает ошибку при установике…раза три переустанавливал…
вот сам текст ошибки
http://i31.fastpic.ru/big/2012/0106/b2/0e096abf1365795dfaa4b7374b1907b2.png
, 06.01.2012 в 22:31
Похоже, что Ваша MySQL не поддерживает кодировку UTF8.
Какая у Вас версия MySQL ?
, 07.01.2012 в 13:31
как раз другой сайт на утф8…а какая версия не знаю…
, 07.01.2012 в 16:51
там как я Вам Дмитрий уже сказал, не корректно сделан дам sql и я его Вам подправлял уже.
, 07.01.2012 в 16:54
Максим, ответил в тикет
, 07.01.2012 в 17:47
Мне тоже интересно, в чем там некорректность ?
, 08.01.2012 в 00:41
завтра пере установлю и все ошибки покажу
, 06.01.2012 в 22:10
А moodle не пробовали использовать?
, 06.01.2012 в 23:27
Ну как же — как же, moodle даже очень пробовали. В результате решили отказаться от moodle и написать свою систему.
Теперь аргументирую решение
Moodle — отличная система, для организации дистанционного образования. Т.е. там реализована куча функционала, позволяющая создавать вполне достойные on-line курсы, структурируя по темам изучаемый материал. Кроме того, в Moodle реализованы возможности оценки знаний (тестирование, рефераты и т.д.). Но, как у многих продуктов, разрабатываемых свободным сообществом программистов, юзабилити Moodle ХРОМАЕТ (это если мягко выражаться).
Без пол литры и курения мануалей понять что к чему вообще не реально, особенно пользователю ПК с поверхностными знаниями.
В результате Moodle превращается в монстра, отпугивающего не только преподавателей (которые в Word-е с трудом ориентируются), но и студентов. Вот яркий тому пример: http://ds.pstu.edu/ (для того, чтобы понять, что именно нужно делать, придется прочитать толстенную инструкцию).
Или, в лучшем случае, получается аналог предлагаемой в данном посте образовательной системы: http://moodle.onma.edu.ua/ Но, приведенный пример изобилует лишним функционалом. Кроме того, имеет место быть серьезная проблема — преподаватель не сможет самостоятельно, посредством админки Moodle, добавить курс. Постоянно будет упираться либо в лишние заморочки, либо в отсутствие требуемого предмета, который не добавил администратор. Кроме того, админу нужно будет следить за актуальностью материалов, т.к. преподаватель дисциплины может смениться (а вместе с преподавателем поменяются и материалы).
Мы же постарались максимально упростить систему, откинули все лишнее и оставили лишь действительно востребованные функции.
На самом деле нет задачи организовать дистанционный курс. Перед нами стояла задача упростить публикацию материала, их структурирование, поиск и поддержание актуальности.
, 25.01.2012 в 16:38
У меня мать — преподаватель иностранного языка в ВУЗе. Не буду говорить, в каком. Но у них там тоже «мудл». Тому кто это придумал, надо в голову гвоздь забить! Естественно, задача «разобраться, куда тут нажимать» легла не меня. Как маме не помочь? Но я скажу так… что даже с моим опытом (я за компом с 1992 года) было не так уж просто понять логику тех, кто это писал.
Андрей, Вам скажу только то, что сразу бросилось в глаза. Если вы хотите, чтобы было «интуитивно понятно», то не надо выражаться в терминах сущностей системы. Нужно выражаться на языке пользователя.
Например, не «создать аккаунт пользователя», а
«зарегистрировать преподавателя» и (! да, да, для системы это одна и та же сущность — пользователь, но для пользователя — это очень разные вещи) — и «зарегистрировать студента»
Пусть Вас не испугает то, что придется вводить лишнюю переменную, которая может принимать значения «преподавателя», «студента», «ученика», «стажера». и т.д. и т.п. Ведь Вы как-то справляетесь с многоязычными интерфесами. Именование сущностей должно быть на языке пользователей, а не на языке системы.
Никаких «управление категориями» быть не должно. Это — абракадабра для преподавателя иностранных языков. Причем, абракадабра на совершенно непонятном языке (была б еще это «китайская грамота» — они б позвали переводчика с китайского).
Кнопок (ссылок) должно быть столько, сколько видов сущностей имеется. Если категория — это «дисциплина», «курс», «раздел» и т.д., то должно быть три кнопки. Пусть даже они ведут в одно и то же место. (впрочем, уверен им можно придать и дополнительную «полезность»)
В остальном, — согласен. Чем проще — тем лучше. Все лишнее должно быть убрано с глаз долой. Шрифты — покрупнее (многие преподы плохо видят).
(в очередной раз подчеркиваю — это мое ИМХО. задачи поучать кого-то не ставлю. являюсь новичком. поэтому могу где-то случайно попасть пальцем в небо. прошу за это не пинать)
, 10.01.2012 в 12:35
edu.tsu.ru
, 11.01.2012 в 16:36
Что это?
, 12.01.2012 в 14:01
В инструкции добавьте, что после копирования нужно установить права записи на файл bootstrap.php и каталоги cache, config и logs в каталоге application. А то пришлось методом тыка искать.
, 12.01.2012 в 14:35
При попытке добавить неактивного пользователя вывел ошибку:
«ErrorException [ Notice ]: Undefined index: email
APPPATH/classes/controller/admin/users.php [ 173 ]«
, 12.01.2012 в 19:20
Большое спасибо за комментарий.
Ошибку попроавили и перезалили отремонтированную систему, теперь неактивные пользователи будут создаваться.
, 15.01.2012 в 09:35
Систему обновил, немного по тестировал.
Замечания:
1. Неудобно, что подкатегории нельзя переносить из одной категории в другую. Если ошибся или что-то изменились придется удалять категорию и создавать её в новом месте.
2. Если удалить категорию в которой есть материалы, то при заходе в раздел «Учебные материалы» выдает ошибку «Exception [ 0 ]: Node id=7 does not exist.».
3. Я так понял, что если студент зарегистрирован, то он имеет доступ ко всем материалам, которые предназначены для зарегистрированных пользователей. Независимо от того, какой преподаватель выложил материал и в какой категории находится этот материал. Было бы неплохо, чтоб преподаватель имел возможность сам определять доступ к своим категориям. Так ценность всей системы регистрации снижается.
4. В процессе добавления материала выяснилось, что необходимо установить права на запись для каталога files. Тоже ругался.
5. И в данной инструкции нужно убрать ссылку на старую версию системы. В конце статьи дана обновленная версия, в начале — старая, от 3 января.
, 15.01.2012 в 09:42
И последнее.
6. Как можно добавить что-то на главную страницу? Хотя бы по минимуму, что-то вроде:
«Добрый день. Если хотите пользоваться системой, то перейдите на страницу по ссылке и прочитайте как связаться с администратором»
, 16.01.2012 в 12:08
Большое спасибо за интерес к системе и важные комментарии. Я поправил ссылку в начале статьи. В ближайшее время решим проблему по пункту 2.
3. Думаю, нет смысла ограничивать студента в скачивании материалов любого преподавателя. Имеет смысл запретить скачивать материалы гостям (дабы соблюдать авторское право преподавателей).
6. Пока текст можно изменить просто поправив файл вида. Для главной страницы (application/views/layouts/main.php). Все остальные виды лежат в папке application/views/layouts/
, 17.01.2012 в 18:14
Поменять текст на главной странице получилось. Спасибо.
Про ограничение на скачивание: если говорить об авторских правах, то как раз и нужно вводить ограничение по крайней мере по учителям. Обязательно кто-нибудь скажет — как это так, я делал, а скачать может кто угодно. Если же рассматривать это как идеологию (добавление функций системы это путь в сторону Moodle), то можно оставить и так.
По пункту 2: наверное проще сделать так — если есть материалы в категории, то её не удалять. Пусть администратор разберётся сначала с материалами. Ну или можно удалять всё сразу — и категорию и материалы, содержащиеся в ней.
Как простую, удобную систему распространения материалов её, как мне кажется, вполне может использовать. Спасибо за работу!
Покажу знакомым преподавателям — что они скажут.
, 16.01.2012 в 17:38
6. Текст главной страницы задается с помощью Вида (шаблона). Для главной страницы это ‘application/views/main.php’. Все остальные виды лежат в папке application/views/
Главный шаблон находится в файле ‘application/views/layouts/main.php’
, 22.01.2012 в 20:22
Андрей, а почему Вы не используете модуль ORM-MPTT вместо класса NsTree?