Расчет учебной нагрузки

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

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

· формирование структуры планового контингента учащихся, т.е. распределение контингента студентов по потокам, группам, подгруппам и т.п. с указанием их численности в каждом из указанных случаев;

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

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

В данном разделе описаны три последние процедуры, причем, наиболее трудоемкой является привязка всех единиц (объектов) учебной работы к структурным единицам контингента. АРМ предусматривает целый ряд команд, позволяющих частично автоматизировать трудоемкие операции, а там, где это возможно, вообще обойтись без ручного ввода.

На следующем рисунке представлена упрощенная схема хранения в базе данных информации для расчета учебной нагрузки: структуры планового контингента и ее связей с учебной работой (в виде диаграммы классов UML). Основу структуры составляют объекты класса «Категории учащихся», атрибуты которых сохраняют специфические характеристики групп студентов. Эти объекты служат своего рода «комментариями» для связанных с ними объектов класса «Группы учащихся». Последние, как следует из схемы, могут быть только вполне определенного вида, например, поток, группа, подгруппа и т.п. Вид объекта «Группы учащихся» определяет набор объектов «Учебная работа», с которыми он может быть связан (класс «Учебная работа» изображен также на рис.1). Поскольку эти связи символизируют проведение определенной учебной работы в соответствующих группах, имеет смысл образовывать и хранить лишь те связи, которые предусмотрены нормативами учебной нагрузки. Так, «потоки» (вид группы учащихся) связываются с «лекционными курсами» (вид аудиторного занятия), «группы» – с «практическими занятиями», «подгруппы» – с «лабораторными занятиями». Особый вид группы учащихся, «категория» (см. схему), предусмотрен для связи с контрольными испытаниями. Имеется и еще некоторое количество пока не упомянутых видов «Групп учащихся». АРМ автоматизирует установку большинства связей, используя для этого информацию о нормативах учебной нагрузки, поэтому разработку планового контингента целесообразно начинать именно с ввода нормативов. Назовем эти связи, автоматически устанавливаемые специальными командами АРМ по нормативам учебной нагрузки, «стандартными связями» учебных работ с группами. К данному понятию мы еще неоднократно вернемся.

Рис. 22. Структура хранения планового контингента в БД

Обратим внимание на признаки множественности рассматриваемой связи классов «Группы учащихся» и «Учебная работа»: это связь «многие ко многим». Действительно, с одной стороны, группа студентов может работать на многих занятиях. С другой стороны, например, бюджетная и договорная группы могут объединяться для занятий одной учебной работой. Заметим также, что связь снабжена атрибутами (на языке UML это реализуется так называемым классом ассоциаций). Объекты соответствующего класса «Распределение учебных работ по группам и кафедрам» хранят информацию для корректировки при необходимости расчета нагрузки, а также связаны с объектом «Кафедры». Последняя связь в большинстве случаев дублирует значение атрибута «Обучающая кафедра» соответствующего объекта «Учебная работа». Тем не менее, необходимость в ней может возникнуть, если нагрузку по одной и той же единице учебной работы необходимо распределить по нескольким кафедрам (по-видимому, крайне редкая необходимость).

Рассмотрим связь классов «Категории учащихся» и «Группы учащихся», также по признакам множественности являющуюся связью «многие ко многим». Например, несколько объектов «Групп» различных видов («категория», «поток» и т.д.) может быть сформировано из студентов одной «Категории» (другими словами, сразу несколько групп могут быть снабжены одним и тем же «комментарием» в виде категории). И наоборот, можно объединять в одной «Группе» («потоке», «подгруппе» и т.д.) студентов сразу нескольких категорий. Например, образовать совмещенный лекционный поток, объединив учащихся на разных факультетах, специальностях или формах обучения. Соответствующий класс ассоциаций «Состав групп» в свою очередь обязательно связан с объектом «Учебный план» (титул учебного плана, как показано на рис.1). Это означает, что распределение планового контингента по группам учащихся необходимо рассматривать лишь в связи с конкретными учебными планами.

Данное замечание относится и к атрибуту «Количество» рассматриваемого класса «Состав групп». Значение именно этого атрибута участвует в расчете нагрузки (поэтому должно быть зависимо от учебного плана), в то время как атрибут «Количество учащихся» класса «Категория учащихся» отражает независимое от учебных планов значение (см. схему). Первоначально при создании объекта класса «Категория учащихся» его атрибут «Количество учащихся» может быть заполнен по результатам соответствующего запроса о наличии реального контингента учащихся данной категории. Такие запросы генерируются АРМ и посылаются серверу автоматически, либо при помощи специальных команд. В дальнейшем значение атрибута можно изменить вручную для его использования, в свою очередь, в процедурах расчета атрибутов «Количество (для расчета нагрузки)». Такой двухступенчатый механизм необходим для формализации особых случаев расчета, например, вычисление доли нагрузки по конкретному учебному плану за совмещенный лекционный поток.

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

Рис. 23. Общий вид вкладки «Численность»

Формирование структуры планового контингента

Основным инструментом вкладки «Численность» является дерево контингента, отображающее формируемую структуру: состав категорий и групп учащихся, количество учащихся, а также значения атрибутов «Количество (для расчета нагрузки)». Важно помнить об общем принципе работы с вкладками (который применим и в данном случае): учебный план, данными которого манипулирует вкладка, задается при помощи дерева учебной работы способом, описанным выше (см. таблицу 2). Для исключения ошибок, обращайте внимание на заголовок инструментальной панели вкладки, состоящий из важнейших атрибутов соответствующего плана.

Содержимое дерева контингента можно ограничить лишь категориями учащихся, относящимися к выбранному при помощи дерева учебной работы учебному плану (для сокращения объема представляемой информации, как на рисунке). В противном случае можно построить дерево, содержащее категории и группы, имеющие связи со всеми планами текущего учебного года. Такой режим можно задать выбором «Категории года» в выпадающем списке панели, после чего станет возможным, например, объединение в лекционный поток учащихся по разным учебным планам (на разных факультетах, специальностях или формах обучения). Наконец, можно построить дерево, отображающее все категории и группы, выбором режима «Все категории». Заметим, что основным режимом отображения является режим «Категории плана» (как на рисунке). Расширение выборки для дерева требуется лишь на этапе формирования совмещенных потоков или групп, которые после завершения операции будут привязаны к текущему учебному плану и станут в дальнейшем доступными в обычном режиме «Категории плана».

В любом из режимов построение дерева производится с использованием атрибутов объектов «Категории учащихся» и «Группы учащихся» (рис. 22), причем объекты «Группы» образуют листовые узлы. Метки этих узлов составлены из сокращенных наименований групп с указанием значения соответствующего атрибута «Количество (для расчета нагрузки)» (рис.23) и снабжены иконками, символизирующими вид группы («категория», «поток», «группа», «подгруппа»…). В нашем примере имеются группы учащихся следующих видов: «Категория» со значением атрибута «Количество», равным 36, «Поток» с атрибутом 0.295, «Группа» в «Количестве» 1, «Подгруппа» в «Количестве» 3 и т.д. Таким образом, например, контрольные испытания, связанные с рассматриваемым узлом «Категория» по плану будут проводиться с участием 36 студентов.

Все остальные уровни дерева (кроме листовых) образованы атрибутами объектов «Категории учащихся», причем, алгоритм построения дерева оптимизирует их использование с целью минимизации общего количества уровней. Например, дерево на рис.23 не содержит уровней, соответствующих атрибутам «Место учебы», «Год набора», «Вид учебной деятельности» и др., поскольку заданный режим отображения «Категории плана» приводит к тому, что все отображаемые категории имеют совпадающие значения перечисленных атрибутов. Понятно, что отображение в виде дерева структуры категорий с использованием в качестве уровней всех без исключения атрибутов было бы громоздким для восприятия. Родительские узлы листьев дерева (уровнем выше листового) содержат в своей метке значение атрибута «Количество учащихся» соответствующего объекта «Категория учащихся» (пример такой метки на рисунке – «бюджет (36)»).

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

Таблица 5

Уровень узла дерева

Атрибуты единиц учебной работы

Аудиторные занятия Контрольные испытания Внеаудиторная учебная работа
1 специализация специализация обучающая кафедра
2 курс, семестр курс, семестр курс, семестр
3 блок и компонент дисциплин блок и компонент дисциплин вид работы
4 код и наименование дисциплины код и наименование дисциплины наименование работы
5 вид занятия вид испытания отчетность

Для удобства поиска объектов учебной работы свертывание и развертывание узлов дерева единиц учебной работы синхронизировано с выбором узлов основного дерева учебной работы. Алгоритм синхронизации следующий:

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

· если основное дерево построено с использованием всех атрибутов, необходимых для определения конкретного объекта «Учебная работа» (см. таблицу 2), и, кроме того, во время предыдущего спуска все эти атрибуты получили фиксированные значения, производится поиск листа дерева единиц учебной работы, отображающего данный объект;

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

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

· Свертывание/развертывание узлов дерева единиц учебной работы синхронизировано с выбором узлов дерева контингента: при выборе конкретного объекта «Группа учащихся» (листового узла на дереве контингента), дерево учебной работы разворачивает лишь те ветви, которые содержат связанные с выбранной группой объекты учебной работы. Сами эти связанные объекты, кроме того, отмечаются подсвеченными иконками. Например, выбор потока студентов 1 курса «1 бюджет» (рис.23) привел к показу всех связанных узлов «Лекционный курс» дисциплин, изучаемых по плану на первом курсе.

· Связи становятся доступными для просмотра с помощью техники перетаскивания (drag-and-drop) листовых узлов дерева единиц учебной работы. После начала перетаскивания какого-либо из объектов учебной работы дерево контингента отобразит подсветкой соответствующих иконок группы, связанные с перетаскиваемым объектом. На рисунке ниже изображен вид деревьев в момент начала перетаскивания узла «Лекционный курс»: подсвеченными иконками отмечены связанные группы «1 бюджет», «1 бюджет (для коллоквиумов)», «1 бюджет (для консультаций)».

Рис. 24. Перетаскивание узла дерева учебной работы

Нижняя часть вкладки «Численность» (рис.23) занята ленточными формами, обеспечивающими ввод и редактирование параметров формируемой структуры планового контингента. Основные приемы работы с этими формами аналогичны описанным выше при рассмотрении вкладки «Редактирование». Тем не менее, существуют особенности их использования, о которых говорится далее.

Данные, представляемые формами, синхронизированы с выбором узла на дереве структуры контингента, что облегчает их поиск. Точнее, выбор листового узла влечет за собой загрузку атрибутов соответствующего объекта «Группа учащихся» в поля одноименной формы (нижней на вкладке). При этом текущий объект для формы «Категория учащихся» не меняется. И наоборот, выбор нелистового узла приводит к загрузке соответствующего объекта «Категория учащихся» в поля верхней формы без смены объекта «Группа учащихся».

Напомним, что для ввода нового объекта с помощью ленточной формы, необходимо перевести ее в режим добавления объектов нажатием кнопки навигатора «Новая запись Ins» (или клавиши «Ins»). Обозначением режима вставки нового объекта служит значок  в левом верхнем углу формы. После заполнения полей формы необходимо сохранить новый объект в базе данных, либо отказаться от сохранения. В обоих случаях форма вернется в обычный режим редактирования имеющихся объектов, который обозначается значком . Особенности добавления новых объектов с помощью формы «Группа учащихся» заключается в следующем.

· При переходе в режим вставки форма помещает в поле «Количество» строку «Если не менять, заполнится автоматически». Это значит, что данное поле можно оставить незаполненным, тогда при сохранении нового объекта атрибут «Количество (для расчета нагрузки)» примет значение результата расчета по специальному алгоритму. Описание этого алгоритма следует далее (см. команду «Рассчитать количество»).

· Связь нового объекта в момент его сохранения образуется с тем объектом «Категория учащихся», который в данный момент является текущим для верхней ленточной формы (его атрибуты должны быть загружены в поля формы «Категория учащихся»). Важно поэтому соблюдать определенный порядок работы: перед вводом полей нового объекта «Группа учащихся» необходимо в верхней форме получить доступ к соответствующему объекту «Категория учащихся», что можно сделать выбором определенного узла дерева контингента (как описано выше), либо при помощи кнопок навигатора панели (менее удобный способ).

Замечание. Ошибочно образованные связи можно исправить командами инструментальной панели (см. далее).

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

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

· Добавление нового объекта «Категория учащихся» сопровождается автоматическим формированием набора объектов «Группа учащихся» с образованием стандартных связей последних с единицами учебной работы (понятие «стандартных связей» мы ввели ранее при описании схемы хранения структуры объектов).

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

Рис. 25. Добавление категории учащихся с набором групп

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

Перейдем к рассмотрению команд, доступных при помощи инструментальной панели вкладки. Наиболее емкой в смысле количества автоматизируемых действий является команда «Создать стандартные категории» , которая предназначена для первоначального, чернового, формирования структуры планового контингента. Команда создает весь набор категорий и групп для указанного учебного плана по результатам анализа учебной работы и нормативов учебной нагрузки. Одновременно образуются стандартные связи всех созданных объектов «Групп» с объектами «Учебная работа» (вновь отсылаем выше к определению понятия «стандартные связи»). Принцип генерации набора объектов «Групп» для каждой из вновь создаваемых категорий остается тем же, что и при добавлении категорий при помощи ленточной формы (см. выше). Что же касается собственно набора «Категорий», то он образуется путем перебора значений атрибутов способом, проиллюстрированным следующей таблицей.

Таблица 6

Атрибут Присваиваемое значение
Место учебы

одно значение, определяемое параметрами титула учебного плана

Год набора
Образовательная программа
Форма обучения
Специализация

перебор всех значений соответствующих атрибутов учебной работы по плану

Текущий курс
Вид учебной деятельности одно значение «студент»
Финансирование два значения: «бюджет», «договор»
Целевой набор

атрибуты не используются: значения не присваиваются

Иностранный язык
Пол

 

Еще раз обратим внимание на особенность автоматизации формирования структуры: все алгоритмы основаны на анализе учебной работы по плану и нормативов учебной нагрузки. В данном случае это касается набора перебираемых значений атрибутов «Специализация» и «Текущий курс». Например, если учебный план не предусматривает чтение дисциплин специализаций на 1 курсе, категория с такими параметрами не будет образована. Заметим также другую особенность алгоритма: все категории образуются «парами» из-за перебора значений атрибута «Финансирование». Данная необходимость связана с особенностями процедур расчета нагрузки в отдельности для бюджетных и договорных студентов.

Замечание. Изложенная логика реализации команды «Создать стандартные категории» подразумевает наиболее эффективное ее использование после завершения разработки структуры учебных работ по плану, а также при наличии в базе данных нормативов учебной нагрузки. Важным, кроме того, является выбор наиболее удобного момента для начала формирования планового контингента с учетом особенностей процессов в информационной системе (например, завершение массовых операций по обработке переводных приказов, приказов о зачислении и т.п.), поскольку это позволит воспользоваться преимуществами автоматического определения количественного состава категорий учащихся.

Команда «Удалить категории или группы»  предназначена для удаления указанного набора объектов структуры планового контингента с разрывом соответствующих связей с объектами учебной работы. Как уже говорилось при описании вкладки «Редактирование», данная версия АРМ в целях безопасности не реализует команды удаления объектов с помощью ленточных форм (кнопки навигаторов «Удалить запись Del» не действуют). Корректное выполнение операции группового удаления объектов обеспечивает описываемая команда. Перед ее запуском необходимо выбором определенного узла дерева контингента зафиксировать искомый набор объектов: удалены будут объекты, которым соответствуют текущий и все нижележащие узлы. Например, выбор листового узла (как на предыдущем рисунке 25) приведет к удалению одного объекта «Группа учащихся» («1 бюджет Без изучения»). Подъем вверх на один уровень предпишет удаление конкретной категории вместе со всеми связанными с ней объектами «Групп». Дальнейший подъем еще более расширит набор удаляемых объектов. Наконец, можно удалить целиком всю структуру планового контингента, выбрав корень дерева.

Редактирование связей между объектами «Категорий учащихся» и «Групп учащихся» позволяют команды «Соединить группу с категорией»  и «Разорвать связь группы с категорией» . Обе команды требуют предварительного указания соответствующей пары объектов. При этом «Категория учащихся» в обоих случаях определяется одинаково: выбором соответствующего узла дерева контингента. Если текущий узел однозначно категорию не определяет, производится спуск или подъем по ветвям до тех пор, пока конкретный объект «Категория учащихся» не будет определен. В отличие от категории, объект «Группа учащихся» этими командами определяется разными способами. Команда удаления связи работает наиболее естественным образом: группа, как и категория, определяется выбранным узлом дерева контингента. В данном случае, так же как и в предыдущем, если текущий узел не является листовым, для определения конкретного объекта «Группа учащихся» производится спуск по ветвям до ближайшего листа. Команда «Соединить группу с категорией» подчиняется более сложной логике при определении группы. (Смысл этой логики будет понятен из последующего рассмотрения действий по формированию совмещенных потоков и групп). В качестве рабочего используется текущий объект ленточной формы «Группа учащихся». Таким образом, наиболее естественным представляется следующий порядок выполнения команды соединения:

· щелчком на листовом узле дерева контингента загрузить объект в форму «Группа учащихся»;

· выбором соответствующего узла определить объект «Категория учащихся»;

· нажать кнопку инструментальной панели.

Для выполнения команды «Разорвать связь группы с категорией» в простейшем случае достаточно щелкнуть по листу дерева, соответствующему «Группе учащихся». При этом лишь нужно проследить за тем, чтобы вышележащие узлы отображали атрибуты требующегося объекта «Категория учащихся». Необходимо также знать о том, что АРМ запрещает удаление связи, если эта связь единственная для данного объекта «Группы». Тем самым предотвращается появление «зависших» «Групп», не связанных с «Категориями».

Команда «Стандартные связи групп с дисциплинами»  автоматизирует создание стандартных связей для указанного набора объектов «Учебная работа» со всеми группами заданной «Категории учащихся» (вновь напомним о том, что «стандартные связи» образуются в результате совместного анализа объектов «Учебной работы» и нормативов учебной нагрузки). Перед выполнением операции необходимо определить категорию выбором соответствующего узла дерева контингента. В данном случае действует то же правило, что и для всех описанных выше команд: если текущий узел однозначно категорию не определяет, производится спуск или подъем по ветвям до тех пор, пока конкретный объект «Категория учащихся» не будет определен. В любом случае действие команды распространится на все объекты «Группы учащихся», связанные с заданной категорией.

Для задания набора объектов «Учебная работа» можно выбрать произвольный узел дерева единиц учебной работы. Командой будут охвачены объекты, отображаемые всеми нижележащими узлами дерева. Например, выбор узла «ГСЭ.Ф» (как на следующем рисунке) определяет набор из 7 объектов (7 листовых узлов):

Рис. 26. Набор объектов «Учебная работа» для соединения

Имеются два ограничения описываемой процедуры указания набора объектов.

· Операция не реализована для работы с набором объектов, включающим как аудиторную, так и внеаудиторную учебную работу одновременно. При попытке выполнения такой команды АРМ выдаст рекомендацию ограничить размер набора объектов спуском по ветвям дерева вниз.

· С другой стороны операция рассчитана на групповое применение к объектам аудиторной учебной работы: в наборе необходимо иметь как минимум один объект «Аудиторное занятие» и одно «Контрольное испытание» дисциплины учебного плана. Действительно, логика анализа нормативов учебной нагрузки требует одновременной работы с этими объектами. Например, нагрузка за проведение консультаций начисляется при наличии экзамена по лекционному курсу. При попытке выполнения команды над единственным объектом (выбран листовой узел дерева), АРМ попросит расширить набор, поднявшись по ветвям дерева. Для объектов внеаудиторной учебной работы данного ограничения не существует.

Выполнение команды «Стандартные связи групп с дисциплинами» начинается с просмотра объектов «Групп» заданной категории с целью выяснения, все ли необходимые группы уже созданы. Другими словами, достаточно ли имеющегося набора групп для создания всех стандартных связей с заданным набором объектов «Учебной работы». Принцип определения необходимого набора объектов «Групп» остается тем же, что и при добавлении категорий при помощи ленточной формы или при выполнении команды «Создать стандартные категории» (см. выше). Если в результате анализа выяснится нехватка каких-либо групп (определенных видов: «потоков», «групп», «подгрупп», «категорий» и т.п.), АРМ предложит предварительно создать недостающие объекты:

Рис. 27. Этого объекта не хватает для стандартного соединения

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

Замечание. Последняя операция сохранения связей может потерпеть неудачу в случае, если какая-либо из них уже имеется. Дублирование связей объектов запрещено на уровне схемы базы данных (рис.22). АРМ предложит удалить имеющиеся связи учебной работы перед повторным применением операции. Удобнее всего с этой целью использовать рассматриваемую далее команду «Разорвать все связи дисциплин с группами», после чего повторить попытку сохранения стандартных связей.

Две команды производят групповое удаление связей объектов «Учебной работы» с объектами «Групп учащихся». Команда «Разорвать все связи группы с дисциплинами»  удалит все связи указанного объекта «Группы» (сам объект определяется выбором соответствующего листового узла дерева контингента). Команда «Разорвать все связи дисциплин с группами»  наоборот, требует определения объектов учебной работы для удаления всех их связей с плановым контингентом. Задать набор объектов «Учебная работа» можно выбором произвольного узла дерева единиц учебной работы. При этом действует правило, описанное выше для команды «Стандартные связи групп с дисциплинами»: охвачены будут объекты, отображаемые всеми нижележащими узлами дерева. Причем в отличие от упомянутой команды, в данном случае ограничений при указании набора объектов нет.

Индивидуальное редактирование связей между объектами «Учебной работы» и «Групп учащихся» позволяют команды «Соединить дисциплину с группой»  и «Разорвать связь дисциплины с группой» . Обе команды требуют предварительного указания соответствующей пары объектов выбором листовых узлов на деревьях контингента и учебной работы. Команда соединения может отказаться выполнять операцию, если связь указанных объектов уже имеется (см. предыдущее замечание).

Замечание. Возможности данных команд перекрывает описываемая ниже техника «перетаскивания» (drag-and-drop) узлов дерева единиц учебной работы.

Команда «Рассчитать количество»  автоматизирует получение значений атрибутов «Количество учащихся» и «Количество (для расчета нагрузки)» объектов «Категория учащихся» и «Состав групп», соответственно (рис.22). В обоих случаях указанные атрибуты получают в результате новые значения. Способ указания атрибута, а также алгоритм получения значения, зависят от вида атрибута.

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

Обновление атрибута «Количество (для расчета нагрузки)» требует предварительного указания объекта «Группа учащихся» выбором соответствующего листового узла на дереве контингента. Алгоритм расчета значения в данном случае зависит от вида объекта: принимается в расчет атрибут «Вид группы» (категория, поток, группа, подгруппа и т.д.).

· Для объекта вида «категория» атрибуту присваивается значение, равное текущему значению атрибута «Количество учащихся» связанного объекта «Категория учащихся». Напомним, что объекты вида «категория» предназначены для расчета нагрузки за контрольные испытания, что в свою очередь диктует необходимость хранения количества экзаменуемых.

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

· Особую нагрузку несет команда при расчете атрибута «Количество» для «потока». В этом случае используется специфическая для учебного заведения процедура, регламентированная соответствующими нормативными документами и реализованная на сервере базы данных.

Упомянутая процедура может учитывать значение не одного, а сразу нескольких атрибутов «Количество учащихся». Например, атрибуты объектов «Категорий» договорных и бюджетных студентов, как правило, анализируются одновременно. Специфику конкретных расчетов АРМ комментирует поясняющими диалогами. Например, ниже показан результат расчета для потока «4 бюджет», учитывающий количества студентов двух категорий: «4 курс, бюджет» и «4 курс, договор»:

Рис. 28. Расчет атрибута «Количество» для потока

Расчет «Количества» для совмещенных потоков потребует анализа еще большего числа объектов «Категория учащихся» (см. ниже соответствующий раздел).

Замечание. Вычисление атрибута «Количество (для расчета нагрузки)» в любом случае использует в качестве исходных данных значения атрибутов связанных объектов «Категорий учащихся». При этом запросы к базе данных о фактическом количестве учащихся не производятся. Поэтому редактирование атрибутов «Количество учащихся» целесообразно произвести на более ранних этапах формирования структуры планового контингента: до начала расчета атрибутов объектов «Групп учащихся».


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: