Originated from FrBrGeorge/AlsoSprachZaratustra
Проблемы и методы командной разработки свободных учебных материалов
Ключевые слова: ПСПО, СПО, документация, командная разработка, учебный материал, wiki
Приведена история создания рабочей группы по документированию ПСПО, организация процесса создания учебного материала, структура получившегося продукта и поддерживающей его технологии. Делается попытка истолкования положительных и отрицательных результатов работы и обобщения полученного опыта.
Тезисный план
Постановка частной задачи
- Немного истории пилотного внедрения ПСПО в российских школах.
- Одна из задач: обучение взрослых (учителей, в т. ч. предметников, администраторов, директоров и пр.).
- Непосредственная задача: 10 отчуждаемых курсов.
Организация рабочего процесса
Курсы были представлены в виде наборов модулей (частей), в результате чего оказалось, что имеется ненулевое их (модулей) пересечение. В итоге, для уменьшения количества работ кажды курс был представлен как набор модулей, и дальше работа происходила уже над ними (и не подразумевала написание цельных независимых курсов).
Рабочий процесс был разбит на следуюшие части:
- Подготовка новых материалов (Also Sprach Zaratustra)
- Подготовка модулей
- Подготовка имеющихся материалов
- Наполнение модулей
Далее, организация процесса работ включала в себя следующее:
Формирование полиси (http://uneex.ru/PSPO/Policy)
Подготовка технической базы (использование wiki (MoinMoin) с дополнительным программированием и установленной дисциплиной работы.)
- Распределение работ по участникам
- Отслеживание состояния работ
Подготовка новых материалов (Also Sprach Zaratustra)
- "Лекции" (16 ак. ч. в неделю)
- Конспектирование online
- критерий качества: не упускать ключевых моментов лекции
- Генерирование демонстрационных материалов (скриншоты, скрипты, логи). В последствии эти материалы интегрировались в текст фрагмента на этапе расшифровки
- "Расшифровка": воссоздание структуры лекции
- условие: расшифровщик присутствует на лекции
- критерий качества: "переводчику" должно быть понятно, даже если он не был на лекции
- "Перевод на русский"
- критерий качества: не потерять в процессе литредактуры значимых утверждений и формулировок
- "Научное редактирование"
- критерий качества: связность конечного текста
За каждый фрагмент отвечает конкретный исполнитель каждого этапа (http://uneex.ru/PspoClasses/Status).
Каждый из участников имел свою специализацию в силу собственных качеств и занимался только определённым видом работ (http://uneex.ru/PspoTasks).
Содержательное редактирование сведено к минимуму (иногда с небольшой потерей качества), организаторская работа и т .п.
- Содержательное редактирование проводилось того, когда было решено, что тот или иной фрагмент лекции стоит дополнить или изменить (достаточно редкая ситуаця, обычно — оба раза — возникавшая из-за недостатка времени на демострацию примеров)
Организация процесса сводилась к своевремменому размещению материалов и назначению ответственных согластно их текущей загруженности (как внутри проекта, так и вне его), а также к отслеживанию задержек по выполнению тех или иных этапов работ (эта работа в последствии была частично автоматизирована, http://uneex.ru/PspoClasses/Status?action=AttachFile&do=view&target=status.sh)
Наполнение курсов материалами (подготовка модулей)
Каждый модуль состоит из лекционного минимума -- развёрнутого тематического плана будущего фрагмента курса (модуля) и итогового текста, представляющего из себя лекционный минимум, дополненный ссылками на материалы, и, при необходимости, комментариями.
- Архитектор составляет "Лекционный минимум"
- За каждый модуль отвечает конкретный исполнитель
- Критерий выбора исполнителя: тема, освещаемая в модуле, ему отностильено близка
- Исполнитель из команды подбирает ссылки на материалы, содержащие информацию по каждой теме
Критерий качества: покрытие материалами всего лекционного минимума, желательно, из разнородных источников (например, лекции и документация ALT Linux) (http://uneex.ru/PSPO/Policy/Modules)
- Все использованные внешние материалы импортируются (см. далее)
Подготовка имеющихся материалов
- Материал, некий документ, несущий некую информацию в рамках курсов
- Материалы могут быть из различных источников и иметь различный формат. Т. о., материалом являются, например, описанные выше лекции. Также, среди материалов присутствуют нектороая часть документации ALT Linux, книги, howto, rfc, иллюстрация, статья в википедии и прочее. Среди основных видов материалов можно выделить:
- Текст в wiki-разметке (обрабатываемый собственно wiki-движком), просматриваемый в браузере
- HTML-дерево, которое также просматривается в браузере
- Файлы различных форматов, просматриваемые сторонними программами, внешними по отношение к браузеру
В виду необходимости отчуждаемости итоговой работы все материалы должны быть проимпортированы (положены в рабочее дерево материалов) и снабжены идентификационной и описательной информацией — паспортом (список всех материалов: http://uneex.ru/PspoMaterials). В паспорт включаются следующие аспекты материала:
- Его название, авторство и источник
Формат материала (wiki, HTML, ODT, PDF, ...) (http://uneex.ru/PspoMaterials/FormatInfo)
Лицензия, под которой распространяется материал. В рамках проекта использовались материалы только под свободными лицензиями. (http://uneex.ru/PspoMaterials/LicenseInfo)
- Аннотация (если есть)
- Материалы добавляют (и оформлояют паспорт) ответственные за работу над модулем в случае необходимости (на последнем этапе для наполнения модулей в основном использовались уже имеющиеся материалы, так как накопленный их корпус покрывал курсы чуть менее, чем полностью)
Наполнение модулей
Ответственный, назначенный исполниетелем по данному модулю, подбирает набор материалов, покрывающих лекционный минимум, после чего формирует итоговый текст, используя собранные материалы, и, при необходимости, комментируя их (см., например, http://uneex.ru/PspoModules/FreeLicense — в виду специфики предмета потребовались обширные комментарии. Другой пример: http://uneex.ru/PspoModules/MigrationUser — содержание модуля компактно покрыто материалами лекций)
Использование MoinMoin
В качестве технологической базы для совместной подготовки использовался wiki-движок MoinMoin, написанный на языке Python
- Для поддержки различных организационных аспектов в ряде случаев потребовалось незначительное расширение его функциональности.
- Организация процесса обработки фрагментов лекций
- Хранение иерархии файлов, связанной с определённой страницей
- Создание ссылок на сущности различного вида, и формирование текста ссылки в зависимости от содержимого сущности
Результат: продукт
Структура получившегося корпуса материалов:
- Материал = Паспорт + Файлы; внутренний и внешние материалы
- Модуль = Лекционный Минимум * Материалы + Комментарии
- Курс = сумма Модулей
Побочный объект: Книга = самодостаточная сумма Материалов (http://uneex.ru/Books , «Пользовательские и технические аспекты ПСПО (цикл лекций)»)
Результат: технология
Использование Wiki MoinMoin
Доработка MoinMoin
- Дисциплина работы: инварианты во внутренних материалах, правила импорта внешних и т. п.
Приятная неожиданность: отчуждаемость контента, в т. ч. в виде автономного www-сервера на CD.
Задние мысли
- От каждого — по способностям:
- Только один род задач на каждого исполнителя
- Разумная нагрузка
- Высокая роль внутренней мотивации
- Необходимость автоматического разделения "готовой" и "разрабатываемой" частей при отчуждении
- Необходимость отслеживать устаревание
Можно ли таким способом написать книгу? Сделать многокомпонентную документацию?