Автор:
(1) Дж. Уокър Ор, Електротехника и компютърни науки, Университет Джордж Фокс, Нюберг, Орегон, 97132, САЩ ([email protected]).
Таблица с връзки
3.1 Структура на проблема и динамично скеле
3.2 Неофициална оценка и обратна връзка
3.3 Диада за програмиране по двойки
Резюме
Това проучване разглежда адаптирането на студиото за решаване на проблеми към обучението по компютърни науки чрез комбинирането му с програмиране по двойки. Програмирането по двойки е практика на софтуерно инженерство в индустрията, но има смесени резултати в класната стая. Последните изследвания показват, че програмирането по двойки има обещание и потенциал да бъде ефективен педагогически инструмент, но не е ясно какво представлява добър дизайн на обучението и прилагането на програмирането по двойки в класната стая. Разработихме рамка за дизайн на инструкции за програмиране по двойки чрез адаптиране на студиото за решаване на проблеми (PSS), педагогика, първоначално от биомедицинското инженерство. PSS включва екипи от ученици, които решават отворени проблеми с обратна връзка в реално време, дадена от инструктора. По-специално, PSS използва проблеми с регулируема трудност, за да държи учениците от всички нива ангажирани и функциониращи в зоната на проксималното развитие. Структурата на курса има три етапа, като първият започва с демонстрация, последван от PSS сесия, след което завършва с разбор. Изучавахме комбинацията от PSS и програмиране по двойки в клас CS1 в продължение на три години. Проучванията сред студентите отчитат високо ниво на ангажираност, учене и мотивация.
1 Въведение
Програмирането по двойки е методология за екстремно програмиране (XP) (Beck, 2000), която се използва в индустрията (Hannay et al., 2009). Това включва двама програмисти, които работят заедно върху един проблем и компютър, като единият програмист играе ролята на „шофьор“, а другият в ролята на „навигатор“. „Шофьорът“ работи с клавиатурата и директно пише кода, докато „навигаторът“ наблюдава и задава въпроси, критикувайки и усъвършенствайки кода и неговия дизайн. „Навигаторът“ не е пасивен, те следят за грешки и дефекти, мислят за алтернативни дизайни и търсят свързана документация и ресурси. Въпреки че ефективността на програмирането по двойки е смесена (Hawlitschek et al., 2022; Hannay et al., 2009), в някои случаи е доказано, че произвежда код с по-високо качество по-бързо от соло програмирането (Williams et al., 2000). Намерението е програмирането по двойки да помогне на разработчиците, работещи заедно, да улавят грешки и дефекти много по-бързо, отколкото сами.
За образованието програмирането по двойки е завладяващо, защото се вписва в парадигмата на чиракуването и разпределеното учене, идеята, че „Знанието е обикновено социално конструирано чрез съвместни усилия за постигане на споделени цели или чрез диалози и предизвикателства, породени от различията в гледните точки на хората“ ( Саломон, 1997). Освен това е доказано, че повишава удовлетвореността на учениците, намалява разочарованието на учениците, подобрява склонността на учениците да упорстват и дава на учениците чувство за самоефективност (Williams and Upchurch, 2001). Рамката ICAP описва четири режима на ангажираност и поведение на учениците, идентифицирайки интерактивния режим като произвеждащ най-високо ниво на когнитивна ангажираност на учениците. Смята се, че интерактивните начини на обучение произвеждат задълбочени, преносими знания (Chi and Wylie, 2014). Програмирането по двойки се вписва в дефиницията на ICAP за интерактивно обучение и следователно има потенциала да създаде стабилно, преносимо, концептуално обучение. Наскоро Hawlitschek et al. (2022) направи преглед на литературата arXiv:2311.01693v1 [cs.CY] 3 ноември 2023 г. и мета-проучване на програмирането по двойки в образованието заключи, че програмирането по двойки е важно и ефективно за учениците, особено за начинаещи, но липсва ефективен дизайн на инструкциите. Следователно е доказано, че програмирането по двойки има голям потенциал като методология на обучение, но подробностите за това как да се прилага правилно в класната стая все още не са открити.
Ние предлагаме, че решението за ефективен дизайн на инструкции за програмиране по двойки в класната стая е намерено в учебната среда на Studio за решаване на проблеми (PSS) (Le Doux и Waller, 2016). PSS е предназначен да научи студентите по биомедицинско инженерство да решават сложни проблеми, без да се налага да прибягват до запаметяване на процедури и алгоритми. Студентите работят в екипи от двама, за да решават недобре дефинирани проблеми в обществено пространство, което позволява на инструкторите да предоставят обратна връзка в реално време, докато напредват. Ключова характеристика на PSS е динамичното скеле, целенасочено коригиране на трудността на проблема, за да държи учениците предизвикани, но не и обезсърчени. Чрез увеличаване или намаляване на трудността на базата на екип в реално време, възможно най-много ученици могат да бъдат задържани в зоната на проксимално развитие. Курсът, базиран на лекции, ще има трудности при съпоставянето на разнообразието от нива, на които се намират студентите, тъй като едно и също съдържание на лекция и доставка се съобщават на всички студенти. Има добри доказателства, че PSS подобрява концептуалното разбиране на учениците (Le Doux и Waller, 2016).
PSS и програмирането по двойки са естествено подходящи и комбинацията от двете отговаря на целите и педагогическите нужди на курсовете по CS1. Поради тази причина, това проучване специално се занимава с адаптирането на PSS във връзка с програмирането по двойки за CS1 педагогика. Две ключови цели на курса по CS1 са да научи умения за решаване на алгоритмични проблеми и специфичен език за програмиране. Едно от предизвикателствата за експертните инструктори е, че както решаването на проблеми, така и езиковите познания са толкова дълбоко вкоренени, че са втора природа за инструкторите. Парадоксално, това високо ниво на разбиране означава, че инструкторите често срещат трудности при предаването на това знание, тъй като то се приема за даденост (Le Doux и Waller, 2016). Освен това, способностите и подготовката на студентите варират значително в курсовете по CS1. Синтезът на PSS и програмирането по двойки обаче адресира тези предизвикателства и цели директно, като дава на учениците практическа възможност да развият езикови умения за решаване на проблеми и програмиране. PSS с добавяне на програмиране по двойки, преподава алгоритмично решаване на проблеми чрез когнитивна среда за чиракуване (Collins et al., 1987). Учениците се учат един от друг и също така се напътстват от инструктора или други асистенти в обучението. Обучението от връстници е полезно, тъй като учениците, които са на подобни нива на способности, имат скорошен опит с подобни проблеми. Това означава, че те често са по-добри в съобщаването на тези решения, тъй като помнят подробностите и особеностите както на това, което намират за предизвикателство, така и на това как са преодолели тези пречки. Способността на програмирането по двойки да дава бърза обратна връзка помага на учениците да научат синтаксиса и семантиката на езика за програмиране. Освен това насърчава сътрудничеството по двойки и решаването на проблеми. Доказано е, че програмирането по двойки помага да се забележи, че програмистите решават проблеми, с които не могат да се справят сами (Hawlitschek et al., 2022). Комбинацията от PSS и програмиране по двойки създава както среда за чиракуване, така и среда за партньорско обучение, в която учениците развиват както умения за решаване на проблеми, така и езикови умения за програмиране.
Тази хартия е