Участник:Васин Юрий/Исследования
Исследовательская работа
правитьВведение (задачи и цели)
правитьПри написании дипломной работы мы преследуем следующие цели.
- Научиться:
- работать в сообществе разработчиков и самостоятельной работе;
- правильно составлять техническое задание;
- производить системный анализ и комплексное исследование проектов;
- писать документацию с использованием различных инструментов (wiki-engine, phpdocumentor, Javadoc).
- Закрепить и показать навыки:
- программирования с использованием объектно-ориентированных языков высокого уровня;
- работы с СУБД.
Анализ поставленной задачи
правитьСистемы управления обучением относятся к автоматизированным системам управления. Автоматизированная система управления или АСУ — комплекс аппаратных и программных средств, предназначенный для управления различными процессами в рамках технологического процесса, производства, предприятия. АСУ применяются в различных отраслях промышленности, энергетике, транспорте и т. п. Термин автоматизированная, в отличие от термина автоматическая подчеркивает сохранение за человеком-оператором некоторых функций, либо наиболее общего, целеполагающего характера, либо не поддающихся автоматизации.
Обзор и анализ существующих систем управления обучением (LMS, LAMS)
правитьСистемы управления обучением можно отнести к автоматизированным системам управления предприятием (АСУП).
Автоматизированная система управления предприятием (АСУП) — комплекс программных, технических, информационных, лингвистических, организационно-технологических средств и действий квалифицированного персонала, предназначенный для решения задач планирования и управления различными видами деятельности предприятия, частный случай автоматизированной системы управления (АСУ).
Система управления обучением — основа системы управления учебной деятельностью (англ. Learning Managment System) используется для разработки, управления и распространения учебных онлайн-материалов с обеспечением совместного доступа. Создаются данные материалы в визуальной учебной среде с заданием последовательности изучения. В состав системы входят различного рода индивидуальные задания, проекты для работы в малых группах и учебные элементы для всех студентов, основанные как на содержательной компоненте, так и на коммуникативной.
Среди всех систем провести качественный анализ возможно только для тех, у которых существует русскоязычная документация. На сегодняшний день таких систем фактически две Moodle и ILIAS. Но к сожалению их документация настолько скудна, что процесс анализа приобретает форму исследования, для которого необходим перевод большого объема информации с английского языка. Анализ системы ILIAS еще более затрудняется в связи с тем, что эта система изначально немецкого происхождения и большая часть документации написана на немецком языке.
Обе системы работают на веб-серверах, написаны на PHP, используют SQL-базу данных (MySQL, PostgreSQL, Microsoft SQL Server и др. БД — используется ADOdb XML). Также обе отвечают стандарту SCORM.
(SCORM) Sharable Content Object Reference Model — стандарт, разработанный для систем дистанционного обучения. Данный стандарт содержит требования к организации учебного материала и всей системы дистанционного обучения. SCORM позволяет обеспечить совместимость компонентов и возможность их многократного использования: учебный материал представлен отдельными небольшими блоками, которые могут включаться в разные учебные курсы и использоваться системой дистанционного обучения независимо от того, кем, где и с помощью каких средств были созданы. SCORM основан на стандарте XML.
Анализ системы Moodle
правитьПроще всего произвести анализ системы Moodle, рассматривая ее упрощенную модель. Давайте рассмотрим свойства и характеристики этой модели. Данная мадель будет статической, хотя реальный объек является динамическим. На данном этапе нас не интересует изменение модели с течением времени.
Данная система является стационарной на неком участке наблюдаемого времени Δt1, но может быть динамической на больших интервалах времени Δt2, где Δt1 < Δt2. При отсутствии внешних воздействий система в пределах наблюдаемого времени является стойко стационарной. Данная система является искусственной, автоматизированной системой с некой степенью виртуализации. Данная система оперирует и построена на строго дискретных данных детерминированного характера. На первый взгляд система может оперировать непрерывными или качественными переменными, но внутри системы они преобразуются во внутреннее дискретное представление. Данная система построена по типу белого ящика, так как и входные и выходные данные и сама функция (оператор связи) обработки хорошо известна. Но из-за большой сложности системы, ее удобно представлять в виде совокупности более простых систем (модулей, блоков и т.д.) Данная система является автоматизированной системой с комбинированным управлением. Траектория и характер управляющих воздействий точно известны. Данная система является также энергозависимой. Система имеет не одну а несколько целей. Как субъективная цель может приводиться – обеспечение взаимодействия между всеми компонентими системы. Как обобщенную объективную цель можно привести – обработка информации.
Техническое задание
правитьПредварительная подготовка
правитьШаблон:Рамка Работа производилась в операционной системе GNU Fedora Linux с предустановленным веб-сервером Apache, СУБД MySQL.
Перед началом проекта был произведен поиск аналогичных существующих модулей Moodle. Модули не обнаружены [1],[2] Шаблон:/рамка
- Регестрируемся на сайте http://moodle.org/ и скачиваем moodle
- Настраиваем Apache, MySQL и PHPMyAdmin
- Меняем runlevel для httpd и mysqld[1]
- Устанавливаем PHPMyAdmin
yum install phpmyadmin
Проверяем работоспособность в браузере http://localhost/phpMyAdmin
Прописываем пользователя в etc/phpMyAdmin/config.inc.php
- Устанавливаем moodle
Шаблон:Рамка Установка задания в Трекере Как только спецификации укоренилась, время начать работать. Создайте новое задание для себя в Moodle Трекере, и добавьте под-задания в нестрогом хронологическом порядке для разных частей работы. Это не только поможет вам проследить, где Вы сейчас, но также позволит сообществу «следить за тобой», развивать и помогать по возможности. Если над разными частями работают разные люди, Вы можете назначить для каждого под-задания разных людей. Этим действительно очень удобно пользоваться, как только Вы поймете, в чем суть.
Регистрация в CVS(Система Конкурирующих Версий) и подключите фиксацию к Трекеру Если это возможно, программируйте в хранилище для открытого кода (и предпочтительно использовать Moodle CVS!). Если вам нужно CVS право на запись в код ядра или доступ в contrib (общедоступное) хранилище пакетов, используйте колонку "Apply for CVS Access" на http://moodle.org/cvs. Получить доступ к главному коду ядра достаточно трудно, но мы обычно даем свободный доступ к contrib каталогу. Всегда, при сохранении, вставляйте подробное сообщение о новом коде и всегда проставляйте номер ошибки на Moodle Трекере (напр. MDL-7777). Тогда Moodle Трекер точно будет готов сохранить ваши изменения и присоединит их к прикрепленному (связанному) отчету об ошибках. Шаблон:/рамка
Порядок выполнения работы
правитьВ cbcntvt Moodle есть возможность включить отображение контактной информации всем пользователям, но при этом нет возможности выбрать поля для отображения. Таким образом становится доступна абсолютно вся информация, а это не соответствует общей концепции безопасности.
moodle ► Управление ► Пользователи ► Права ► Определить роли ► View hidden details of users
Гораздо разумнее и безопаснее дать возможность пользователям выбирать публиковать контактную информацию или нет.
У каждого пользователя Moodle в описании профиля есть поля "телефон", "мобильный телефон". Для того чтобы каждый мог указать нужно ли публиковать его номера телефонов и другую информацию в справочнике контактов, необходимо создать новое поле "публиковать мои контактные данные в глобальном справочнике". Это можно сделать в ручную:
moodle ► Управление ► Пользователи ► Учетные записи ► Дополнительные поля в профиле
Также можно создать новый тип пользователей, которые не активны в системе Moodle, а нужны лишь для внесения справочной информации о неком объекте. Это тоже можно сделать в ручную:
moodle ► Управление ► Пользователи ► Права ► Определить роли ► Добавить роль
Структура кода
правитьБиблиотеки ядра:
- moodlelib.php – хранилище все возможных полезных функций и констант
- datalib.php – все функции, которые вам могут понадобиться для взаимодействия с базой данных
- weblib.php – все функции, которые вам могут понадобиться для создания и вывода XHTML
Установка новых блоков выполняется через административную часть /moodle/admin/index.php Для этого из отдельной библиотеки /lib/blocklib.php вызывается метод upgrade_blocks_db и upgrade_blocks_plugins.
Ошибки
править- В коде блока quickfindlist обнаружены дескрипторы html, при том что moodle использует стандарт -//W3C//DTD XHTML 1.0 Strict//EN
- Используются глобальные переменные
Видео
правитьmencoder -idx input.ogv -ovc lavc -oac mp3lame -o output.avi
mencoder input.ogv -ovc xvid -oac mp3lame -xvidencopts pass=1 -o output.avi
$ffmpeg -i out.ogv out.mp4 -vcodec libx264 -acodec libfaac -f mp4
Список программного обеспечения использованного в проекте
править- ОС — GNU Linux, Fedora 12
- Web-сервер Apache
- СУБД MySQL
- АСУ Moodle
- веб-интерфейс для администрирования СУБД MySQL — phpMyAdmin
- Интегрированная среда разработки Anjuta
- Интегрированная среда разработки NetBeans
- phpDocumentor
- RecordMyDesktop
Список модулей Moodle
правитьПримеры программ на Java
правитьСписок обновленных статей и файлов
правитьСписок статей в которые была добавлена информация в процессе написания дипломной работы.
- Википедия
- Moodle wiki
- http://docs.moodle.org/ru/Заглавная_страница
- http://docs.moodle.org/ru/Capabilities/moodle/site:viewparticipants
- http://docs.moodle.org/ru/Development
- http://docs.moodle.org/ru/Development:Blocks
- http://docs.moodle.org/ru/Development:Developer_FAQ
- http://docs.moodle.org/ru/Development:API_Аутентификации
Примечания
правитьЛитература
править- Словарь по кибернетике /Под редакцией В. С. Михалевича. — 2-е издание — К.: 1989. — 751 с., ISBN 5-88500-008-5
- Бендел, Д. Н. (2002). Использование Linux. (изд. 6-е специальное). Москва: Издательский дом "Вильямс", ISBN 5845902347, 9785845902344
Ссылки
править- Украинизация Moodle
- http://tdocs.su Техническая документация - разработка технической документации на заказ
- ЕСПД ТЕХНИЧЕСКОЕ ЗАДАНИЕ. ТРЕБОВАНИЯ К СОДЕРЖАНИЮ И ОФОРМЛЕНИЮ ГОСТ 19.201-78
- ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА СОЗДАНИЕ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ГОСТ 34.602-89
- http://www.flmnh.ufl.edu/linux/install_apache.htm
- Российская ассоциация пользователей Moodle
- Moodle Dev Courses
- Introduction to Moodle Programming (Moodle Dev Course)
- http://manual.phpdoc.org(англ.) — Документация phpDocumentum
- Java (JDBC)
- Dowload JDBC
- Примеры программ на java
- GLC
- Linux Screencasting
- moodle-vs-drupal(англ.)
- AutoDia(англ.)
- UML tools
- XHProf download doc
- php-pecl-xdebug
- Мультимедиа в OO Impress
- Оценка затрат на разработку ПО
- PEAR - PHP_CodeSniffer
- REAR - PHP_UML