Рис. 32. Совмещенный поток в разных учебных планах
Точно так же дублируются и объекты «Группы учащихся»: «Поток (физики + лирики)» включается в структуру контингента по «Плану физиков» и связывается с объектом «Лекции по плану физиков». Аналогично «Поток (лирики + физики)» используется в структуре «Плана лириков». В свою очередь каждый из объектов «Групп» связывается с двумя «Категориями учащихся», включая тем самым их в структуру контингента соответствующего плана.
Заметим, как и в предыдущем примере, что здесь показано удвоенное количество объектов «Категорий» и «Групп учащихся», соответствующих в отдельности бюджетным и договорным студентам. Это иллюстрирует соответствующую особенность процедуры расчета учебной нагрузки (для бюджетных и договорных студентов отдельно). Кроме того, на схеме в виде объектов класса «Состав групп» показаны значения соответствующих атрибутов «Количество (для расчета нагрузки)». Для простоты предполагается равное количество учащихся всех использованных категорий. Можно обратить внимание на то, что половина из приведенных значений – нулевые, поскольку соответствующие связи не участвуют в процедуре расчета нагрузки. Действительно, например, «Поток бюджет (физики + лирики)» состоит из двух категорий учащихся («Физики бюджет» и «Лирики бюджет»), но лишь одна из них («Физики») должна вносить вклад в общую нагрузку для «Лекций по плану физиков». Вторая («Лирики») будет учтена в нагрузке для дублирующего объекта «Лекции по плану лириков». Значения атрибутов, равные 1/2, полученные из упомянутого предположения о равном количестве учащихся всех категорий, иллюстрируют долю, вносимую в общую нагрузку соответствующим объектом «Группа учащихся». Например, при расчете нагрузки для «Лекций по плану физиков» должна учитываться лишь половина «Потока бюджет (физики + лирики)», поскольку оставшаяся часть нагрузки будет учтена объектом «Лекции по плану лириков» за счет «Потока бюджет (лирики + физики)».
Ниже показан вид дерева контингента с двумя узлами «1 бюджет (ИнС+Мат)», соответствующими потоку из двух категорий, каждая из которых учится по собственному плану (для направления обучения 010300 и для специальности 230201). Вместе этим студентам предстоит прослушать лекционный курс «Отечественная история»:
Рис. 33. Команда «Рассчитать количество» для совмещенного потока
В данном случае производится редактирование учебного плана по специальности 230201, поэтому как дерево контингента, так и дерево единиц учебной работы показывают объекты, относящиеся лишь к данному учебному плану. В частности, не виден дублирующий объект «Лекционный курс» из другого учебного плана (для направления обучения 010300). Оба одноименных узла дерева контингента, как и в предыдущем случае, показывают один объект «Группа учащихся», связанный с двумя «Категориями». Дублирующая «Группа» из структуры контингента другого плана здесь также не видна. Обратите внимание на результат выполнения команды «Рассчитать количество» для рассматриваемых узлов: связь с «чужой» для данного плана категорией 010300 снабжена нулевым атрибутом, в то время как значение для связи со «своей» категорией предполагает учет соответствующей доли учебной нагрузки. Специфика расчета учтена хранимой процедурой на сервере базы данных. В данном примере она уменьшает долю учебной нагрузки пропорционально количеству в смешанном потоке студентов соответствующей категории (36/43).
Как было сказано в начале раздела, дерево контингента может находиться в одном из трех режимов отображения структуры. Основной режим «Категории плана» (как на рисунке выше) представляет лишь «Категории» и «Группы», связанные с выбранным заранее учебным планом (при помощи основного дерева учебной работы). Два других режима, «Категории года» и «Все категории», соответствующим образом расширяют представление объектов деревом. Такое расширение выборки для дерева требуется лишь на этапе формирования совмещенных потоков или групп из контингента, обучаемого по разным учебным планам. После завершения операции, сформированные потоки будут привязаны к текущему учебному плану и станут в дальнейшем доступными в обычном режиме «Категории плана». Для дерева, изображенного ниже, включен режим «Категории года» (в иллюстративных целях показаны лишь ветви, соответствующие объединяемым в совмещенный поток категориям):
Рис. 34. Визуализация совмещенного потока в режиме «Категории года»
Теперь количество узлов, отображающих совмещенный поток, удвоилось, поскольку стали видны все объекты, показанные на схеме рис.32. Цвет (яркость) иконок позволяет легко ориентироваться в связях объектов: узлы «Групп учащихся», привязанные к текущему учебному плану, отмечены яркими иконками; все остальные узлы – темными. В нашем примере, согласно описанному выше способу, совмещенный поток представлен двумя объектами: «1 бюджет (ИнС+Мат)» и «1 бюджет (Мат+ИнС)». Первый из них привязан к структуре учебного плана по специальности 230201. А поскольку именно этот план в данном случае является текущим (выбран на основном дереве учебной работы), отображающие объект два узла отмечены подсвеченными иконками (узлов два, поскольку, как и раньше, каждый из них показывает связь объекта с соответствующей «Категорией учащихся»). Второй из «дублирующих» друг друга объектов «1 бюджет (Мат+ИнС)», наоборот, привязан к плану по направлению обучения 010300, и иконки соответствующих узлов темные.
Замечание. Узлы с темными иконками в целях безопасности закрыты для редактирования. В частности, при выборе такого узла, соответствующие объекты не загружаются, как обычно, в поля ленточной формы «Группа учащихся», а также становится недоступной команда «Рассчитать количество». Данные работы необходимо производить в режиме отображения структуры соответствующего учебного плана (предварительно выбрав этот план при помощи основного дерева учебной работы).
Порядок формирования совмещенных потоков из контингента, обучаемого по разным учебным планам, может быть следующим.
· Задать для дерева контингента режим отображения структуры, позволяющий видеть оба объекта «Категория учащихся», из которых предстоит сформировать совмещенный поток.
· Создать новый объект «Группа учащихся» при помощи ленточной формы. Вновь напомним о целесообразности предварительно загрузить в верхнюю ленточную форму один из объектов «Категория учащихся», связь с которым требует вновь создаваемый объект (в нашем примере это произвольный из двух объектов: «специальность 230201», либо «направление обучения 010300»).
· Связать новую «Группу учащихся» с оставшимся объектом «Категорией». Для этого сначала определить объект «Категория учащихся» выбором соответствующего узла дерева контингента, после чего при помощи команды «Соединить группу с категорией» инструментальной панели сохранить новую связь.
· Для удобства можно возвратиться в обычный режим «Категории плана» дерева контингента, поскольку оба используемых объекта «Категорий учащихся» теперь привязаны к текущему учебному плану и будут отображаться в любом режиме.
· Пересчитать атрибуты «Количество (для расчета нагрузки)» вновь созданных связей, применяя команду «Рассчитать количество» для каждого из двух новых узлов. Заметьте при этом, что атрибут узла, соответствующего связи с «Категорией», обучаемой не по текущему плану, обнулится.
· Связать объект «Группу» с объектами «Учебная работа». Вновь заметим, что для указания соединяемого объекта «Группы» достаточно выбрать любой из двух узлов, отображающих его на дереве контингента.
Замечание. Перечисленные действия образуют лишь один из «дублирующих» друг друга объектов «Групп»: по сути, это лишь четвертая часть схемы рис.32, относящаяся, например, к объекту «Поток бюджет (физики + лирики)». Этого достаточно для расчета нагрузки по текущему учебному плану: будет учитываться доля нагрузки, приходящаяся на «Лекции по плану физиков». Следует, однако, помнить о том, что суммарная нагрузка для соответствующей учебной работы может быть корректно рассчитана лишь после того, как будут образованы все объекты, формализующие совмещенный поток. Например, для расчета кафедральной нагрузки необходимо учесть также вклад «Лекций по плану лириков», что в свою очередь требует создания объекта «Поток бюджет (лирики + физики)». Понятно, что нижняя часть схемы рис.32 образуется аналогичными действиями на этапе разработки структуры контингента соответствующего учебного плана («План лириков»).
2.3. Просмотр результатов расчета
После того как разработана структура планового контингента и осуществлена ее привязка к учебной работе, расчет учебной нагрузки будет производиться «на лету» серверными процедурами (хранилища результатов расчета в базе данных не предусмотрено). Запуск процедур производится автоматически всякий раз при инициализации вкладок «Аудиторная» и «Внеаудиторная». Напомним, что инструменты обеих вкладок позволяют достаточно гибко настраивать отображение числовых данных в соответствии с потребностью. В частности, можно выбирать произвольную комбинацию параметров для отображения их в столбцах таблиц (кнопка
инструментальной панели). Для целей просмотра результатов расчета нагрузки предусмотрены три таких параметра с заголовками соответствующих столбцов «бюджет», «договор» и «коррект(ировка)» (табл. 3 и 4). Таким образом, вкладки представляют результаты расчета аудиторной и внеаудиторной нагрузки соответственно, причем, отдельно для бюджетных и договорных студентов. Вспомогательный столбец «корректировка» отображает разницу в расчетах нагрузки относительно нормативной, являющуюся результатом введения корректирующих атрибутов «Множитель» и «Слагаемое корректировки нагрузки» (рис.29). Информация позволит на этапе отладки расчета не забыть о «ручной» коррекции результатов. Еще раз напоминаем о том, что расчет задействует, помимо атрибутов учебной работы и распределения планового контингента, также нормативы учебной нагрузки и параметры графиков учебного процесса.