Autor:
(1) J. Walker Orr, elektrotehnika i računarstvo, George Fox University, Newberg, OR, 97132, SAD ([email protected]).
Tabela veza
3.1 Struktura problema i dinamička skela
3.2 Neformalna procjena i povratne informacije
3.3 Dijada za programiranje u paru
Abstract
Ova studija ispituje prilagođavanje studija za rješavanje problema obrazovanju informatike kombinirajući ga sa programiranjem u paru. Programiranje u paru je praksa softverskog inženjeringa u industriji, ali je doživjelo različite rezultate u učionici. Nedavna istraživanja sugeriraju da programiranje u paru obećava i ima potencijal da bude djelotvoran pedagoški alat, međutim nije jasno šta čini dobar dizajn instrukcija i implementaciju za programiranje u paru u učionici. Razvili smo okvir za nastavni dizajn za programiranje u paru prilagođavanjem studija za rješavanje problema (PSS), pedagogije koja potiče iz biomedicinskog inženjerstva. PSS uključuje timove učenika koji rješavaju otvorene probleme uz povratnu informaciju u realnom vremenu od strane instruktora. Posebno, PSS koristi probleme prilagodljive težine kako bi učenike svih nivoa zadržao uključenim i funkcionisanjem u zoni proksimalnog razvoja. Struktura kursa se sastoji od tri faze, prvo počevši od demonstracije, nakon čega slijedi PSS sesija, a zatim završava sa debriefom. Proučavali smo kombinaciju PSS-a i programiranja u paru na času CS1 tokom tri godine. Ankete učenika pokazuju visok nivo angažovanja, učenja i motivacije.
1 Uvod
Programiranje u paru je metodologija ekstremnog programiranja (XP) (Beck, 2000) koja je našla određenu primjenu u industriji (Hannay et al., 2009). Uključuje dva programera koji rade zajedno na jednom problemu i računaru, pri čemu jedan programer preuzima ulogu „vozača“, a drugi u ulozi „navigatora“. „Vozač“ upravlja tastaturom i direktno piše kod, dok „navigator“ posmatra i postavlja pitanja, kritikujući i usavršavajući kod i njegov dizajn. “Navigator” nije pasivan, oni prate greške i nedostatke, smišljaju alternativne dizajne i traže odgovarajuću dokumentaciju i resurse. Iako je efikasnost programiranja u paru različita (Hawlitschek et al., 2022; Hannay et al., 2009), u nekim slučajevima se pokazalo da proizvodi kvalitetniji kod brže od solo programiranja (Williams et al., 2000). Namjera je da programiranje u paru pomogne programerima koji rade zajedno da uhvate greške i nedostatke mnogo brže nego sami.
Za obrazovanje, programiranje u paru je uvjerljivo jer se uklapa u paradigmu šegrtovanja i distribuiranog učenja, ideju da je „Znanje obično društveno konstruirano, kroz zajedničke napore ka zajedničkim ciljevima ili dijalozima i izazovima do kojih dovode razlike u perspektivama osoba“ ( Salomon, 1997). Nadalje, pokazalo se da povećava zadovoljstvo učenika, smanjuje frustraciju učenika, poboljšava sklonost učenika da ustraju i daje studentima osjećaj samoefikasnosti (Williams i Upchurch, 2001). ICAP okvir opisuje četiri načina studentskog angažmana i ponašanja, identificirajući interaktivni način kao proizvod najvišeg nivoa kognitivnog angažmana učenika. Vjeruje se da interaktivni načini učenja proizvode duboko, prenosivo znanje (Chi i Wylie, 2014). Programiranje u paru se uklapa u ICAP-ovu definiciju interaktivnog učenja i stoga ima potencijal da proizvede robusno, prenosivo, konceptualno učenje. Nedavno su Hawlitschek et al. (2022) su izvršili pregled literature arXiv:2311.01693v1 [cs.CY] 3. novembra 2023. i meta-studija programiranja u paru u obrazovanju zaključila je da je programiranje u paru važno i efikasno za učenike, posebno početnike, ali je nedostajao efikasan dizajn nastave. Stoga se pokazalo da programiranje u paru ima veliki potencijal kao metodologija nastave, ali detalji o tome kako ga pravilno implementirati u učionici tek treba da se otkriju.
Predlažemo da se rješenje za efikasan nastavni dizajn za programiranje u paru u učionici nađe u okruženju za učenje Problem Solving Studio (PSS) (Le Doux i Waller, 2016). PSS je dizajniran da poduči studente biomedicinskog inženjerstva da rješavaju složene probleme bez pribjegavanja pamćenju procedura i algoritama. Učenici rade u timovima po dvoje kako bi riješili loše definirane probleme u javnom prostoru, omogućavajući instruktorima da daju povratne informacije u realnom vremenu kako napreduju. Ključna karakteristika PSS-a je dinamička skela, ciljano prilagođavanje težine problema kako bi učenici bili izazovni, ali ne i obeshrabreni. Povećanjem ili smanjenjem težine po timu u realnom vremenu, što više učenika se može zadržati u zoni bliskog razvoja. Kurs zasnovan na predavanjima će imati teškoće da uskladi različite nivoe na kojima se studenti nalaze jer se isti sadržaj predavanja i izvođenje komuniciraju svim studentima. Postoje dobri dokazi da PSS poboljšava konceptualno razumijevanje učenika (Le Doux i Waller, 2016).
PSS i programiranje u paru se prirodno uklapaju i kombinacija to dvoje odgovara ciljevima i pedagoškim potrebama CS1 kurseva. Iz tog razloga, ova studija se posebno bavi adaptacijom PSS-a u kombinaciji sa programiranjem u paru za CS1 pedagogiju. Dva ključna cilja CS1 kursa su podučavanje vještina algoritamskog rješavanja problema i specifičnog programskog jezika. Jedan od izazova za stručne instruktore je to što su i rješavanje problema i znanje jezika toliko duboko ukorijenjeni da su instruktorima druga priroda. Paradoksalno, ovaj visok nivo razumijevanja znači da instruktori često imaju poteškoća u prenošenju ovog znanja jer se ono uzima zdravo za gotovo (Le Doux i Waller, 2016). Nadalje, sposobnosti i iskustvo studenata značajno variraju na CS1 kursevima. Međutim, sinteza PSS-a i programiranja u paru direktno rješava ove izazove i ciljeve, dajući studentima praktičnu priliku da razviju vještine rješavanja problema i programskog jezika. PSS uz dodatak programiranja u paru, podučava algoritamsko rješavanje problema kroz kognitivno okruženje za šegrtovanje (Collins et al., 1987). Učenici uče jedni od drugih i takođe ih vodi instruktor ili drugi asistenti u nastavi. Vršnjačko učenje je korisno jer učenici koji imaju sličan nivo sposobnosti imaju nedavno iskustvo sa sličnim problemima. To znači da su često bolji u prenošenju tih rješenja jer se sjećaju detalja i posebnosti onoga što im je bilo izazovno i načina na koji su te prepreke prevazišli. Sposobnost programiranja u paru da daje brzu povratnu informaciju pomaže učenicima da nauče sintaksu i semantiku programskog jezika. Nadalje, promovira saradnju u parovima i rješavanje problema. Pokazalo se da programiranje u paru pomaže da se primijeti da programeri rješavaju probleme koje ne mogu sami riješiti (Hawlitschek et al., 2022). Kombinacija PSS-a i programiranja u paru stvara okruženje za naukovanje i vršnjačko učenje u kojem učenici razvijaju kako rješavanje problema tako i vještine programskog jezika.
Ovaj papir je