Содействие декомпозиции в классе

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

Что такое разложение?

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

Почему разложение важно?

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

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

Процесс декомпозиции также дает учащимся систематический подход к построению проекта, устраняя искушение угадать и проверить путь к решению. Угадывание и проверка — неэффективный способ решения проблемы, и он становится неэффективным по мере того, как учащиеся начинают решать все более сложные задачи по программированию.

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

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

Содействие разложению

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

Предоставьте учащимся эту простую трехэтапную схему подхода к декомпозиции:

  1. Определите основную цель проекта , указав результат, который робот продемонстрирует в случае успеха проекта. Запишите эту цель в инженерную тетрадь.
  2. Определите основные шаги, которые должен совершить робот для достижения цели. Продумайте и запишите основные или общие шаги, которые роботу необходимо будет выполнить для достижения цели. Запишите эти общие шаги в инженерную тетрадь.
  3. Разбейте основные шаги на минимально возможные этапы поведения робота. Разбейте каждый из основных шагов на наименьшие действия, которые может выполнить робот. Запишите эти разложенные шаги в инженерную тетрадь.
    • Каждое поведение робота должно быть сопоставлено с одним соответствующим блоком или командой. Если нет, шаги можно разложить дальше.

 

Иллюстрация учебного класса с робототехническим оборудованием VEX, демонстрирующая участие учащихся в практических занятиях, с упором на сотрудничество и STEM-образование.

В этом примере учащиеся разбирают проект для завершения лабиринта в VEXcode VR Wall Maze + Playground.

 

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

Шаг 1: Определите основную цель проекта. Запишите цель в инженерную тетрадь.

 

Классная обстановка, в которой учащиеся занимаются практическим обучением с использованием наборов робототехники VEX, демонстрируя сотрудничество и инновации в образовании.

Шаг 2: Определите основные шаги, которые должен совершить робот для достижения цели. 

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

 

Иллюстрация робототехнического оборудования VEX и учащихся, занятых в классе, демонстрирующая практическое обучение и сотрудничество в области STEM-образования.

Шаг 3. Разбейте основные шаги на мельчайшие этапы поведения робота. 

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

После того как учащиеся разложили свой проект на уровень отдельных блоков или команд, они могут перейти от этапа планирования проекта к этапу реализации. Им следует перенести основные шаги, определенные на шаге 2, в комментарии, а затем добавить соответствующие блоки или команды для каждого полностью декомпозированного поведения из шага 3 в каждый из этих комментариев, чтобы построить свои проекты. 

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

Учащиеся должны строить свои проекты шаг за шагом, проверяя каждое поведение (или логически сгруппированный набор действий), прежде чем переходить к следующему. Именно на этом этапе учащимся необходимо будет использовать имеющиеся у них ресурсы для определения правильных значений параметров. Например, в приведенном выше примере VEXcode VR значения расстояния были определены с учетом того, что каждый квадрат лабиринта имеет ширину 300 мм. Метод определения значений будет варьироваться в зависимости от обстоятельств, но всегда будет необходимо проверять и корректировать значения в процессе создания проекта кодирования.

Поддержка студентов в процессе изучения декомпозиции

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

  • Если учащимся трудно представить основные или общие шаги, которые робот должен предпринять для достижения цели проекта, предложите им:
    • Нарисуйте путь, который должен пройти робот, чтобы достичь цели.
    • Разыграйте шаги, которые роботу необходимо предпринять для достижения цели.
    • Обсудите шаги, которые робот должен предпринять для достижения цели.
  • Если учащиеся не могут определить, были ли их шаги декомпозированы до уровня отдельных блоков или команд, спросите их:
    • Сколько блоков или команд потребуется роботу, чтобы выполнить такое поведение?
    • Может ли робот выполнить этот шаг, используя всего один блок или команду?
    • Как можно разложить это поведение на еще более мелкие действия робота?

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

Есть ли у вас еще вопросы о том, как помочь учащимся изучить декомпозицию в вашем классе? Попросите их в сообществе PD+или запланировать сеанс 1 на чтобы поговорить с экспертом VEX.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: