Identifikation af Computational Thinking kompetencer i fag

Et CT undervisningsforløb må som udgangspunkt arbejde med i hvert fald nogle af de mål, som fagets bekendtgørelse udstikker.

En pragmatisk tilgang til at udvikle et CT undervisningsforløb er derfor at identificere de CT kompetencer, som faget allerede indeholder eller kan understøtte [Barr2011, Perkovic2010]:

For at identificere fagets CT kompetencer (specifikt dekomposition, abstraktion og algoritme) kan underviseren spørge sig selv:

  • Dekomposition og abstraktion: Arbejder faget med ”nedbrydning til enkeltdele og opbygning til helhed” (f.eks. analyse/syntese eller mønstergenkendelse/generelle sammenhænge)?

  • Algoritme: Kan arbejdsgange, procedurer, metoder osv. i faget automatiseres vha. en algoritme?

For både at guide eleverne og sikre at de faktisk arbejder sig frem mod opfyldelsen af relevante faglige mål, kan underviseren med fordel formulere CT forløbets problemstilling(er).

Det kræver rammesætning, hvis et CT forløb skal understøtte evaluerings- og generaliseringskompetencerne. Her kan underviseren spørge sig selv:

  • Evaluering: Hvordan tilretteægges undervisningen, så eleverne ledes igennem en iterativ proces, hvor algoritmen evalueres ved afprøvning, fejlfinding og tilretning?

  • Generalisering: Hvordan tilrettelægges undervisningen, så eleverne tænker i at generalisere den fundne løsning til lignende problemer?

Evalueringskompetencen kan f.eks. understøttes ved, at eleverne tjekker hinandens algoritmer i en form for peer-review process. Hvis der anvendes et rigtigt programmeringssprog, kan evalueringen i nogen grad overlades til computeren, fordi den straks vil give et forkert output eller en fejlmeddelelse, hvis algoritmen er forkert.

Tilegnelsen af generalisationskompetencen kræver, at undervisningen rammesættes således, at eleven anspores til at tænke i at udvide den fundne løsnings anvendelsesområde til lignende problemer. Generaliserbarheden kan f.eks. sikres ved at vælge et tilstrækkeligt åbent problem (eller i hvert fald formulere det sådant) eventuelt med flere mulige delproblemer. Et åbent problem har i øvrigt den sidegevinst, at eleverne kan komme frem til flere forskellige løsninger, som så med fordel kan holdes op imod hinanden eller en kanonisk løsning.

Et CT forløb bør indeholde samtlige CT kompetencer, specielt algoritmisk tankegang og algoritmedesign. Hvis et fag ikke kan honorere alle kompetencerne, så kan man måske lade faget indgå i et tværfagligt forløb, hvor et eller flere andre fag kan varetage de resterende CT kompetencer.

I det tilfælde er det dog vigtigt, at undervisningsforløbet tilbyder en sammenhængende CT proces således, at f.eks. matematik ikke kører et særskilt forløb om algoritmer, der er afkoblet fra dansk fagets arbejde med dekomposition og abstraktion.

Når fagets CT kompetencer er identificeret, må underviseren mere nøje overveje, hvordan eleverne faktisk undervises i CT. Vi kigger på forskellige tilgange her.