60
ÖREBRO UNIVERSITET Ämneslärarprogrammet Matematik Självständigt arbete Avancerad nivå, 15p HT 2019 Programmering i matematikundervisningen En kvalitativ studie om hur programmering kan användas för att utveckla gymnasieelevers resonemangsförmåga Amanda Scherdin Handledare: Andreas Eckert

Programmering i matematikundervisningen

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programmering i matematikundervisningen

ÖREBROUNIVERSITETÄmneslärarprogrammetMatematikSjälvständigtarbeteAvanceradnivå,15pHT2019

Programmeringimatematikundervisningen

Enkvalitativstudieomhurprogrammeringkananvändasförattutvecklagymnasieeleversresonemangsförmåga

AmandaScherdin

Handledare:AndreasEckert

Page 2: Programmering i matematikundervisningen

1

Abstract In the Swedish curriculum for primary and secondary school, programming is described

as a useful tool for developing student learning in mathematics. The purpose of this study

is to investigate how digital learning environment in programming can develop students'

ability to reason in algebra. For this study two research questions have been designed: 1)

What are the key aspects of a process of learning of high school students´ creative

reasoning in mathematics, based on an assignment about arithmetic sequence in a

programming environment? and 2) What phases in the student's programming process is

allowing creative mathematical reasoning? The theoretical framework of this study is

based on a qualitative research method, computational thinking and creative

mathematical reasoning. The result has identified design principles and the key aspects in

the process of learning mathematics in and by programming. The students developed

creative mathematical reasoning in three phases of the programming process, abstracting,

sub-solving and testing. With this study I want to contribute with a result that teachers of

mathematics can find useful and implement when teaching.

Title in English Programming in mathematics education. A qualitative study about how programming can

be used to develop students' reasoning ability.

Page 3: Programmering i matematikundervisningen

2

Sammanfattning I svenska läroplanen för grundskolan och gymnasieskolan beskrivs programmering som

ett användbart verktyg för att utveckla elevers lärande i matematik. Syftet med den här

studien är att undersöka hur digitala lärmiljöer i programmering kan skapa möjligheter att

utveckla elevers förmåga att föra resonemang i algebra. Två forskningsfrågor har

utformats: 1) Vad utgör nyckelaspekter i en hypotetisk lärandebana över gymnasieelevers

kreativa resonemang i matematik, baserat på en uppgift om aritmetisk talföljd i en

programmeringsmiljö? och 2) I vilka faser av elevens programmeringsprocess möjliggör

matematikuppgiften kreativa matematiska resonemang? Studien tar sin utgångspunkt i en

kvalitativ forskningsmetod med datalogiskt tänkande och kreativa matematiska

resonemang som teoretiskt ramverk. Resultatet har identifierat designprinciper och

nyckelaspekter i hypotetiska lärandebanan som bidrar till lärande i matematik med hjälp

av ett programmeringsverktyg. I programmeringsprocessens tre faser, abstrahera,

dellösning och testa utvecklade eleverna sitt kreativa matematiska resonemang. Studien

bidrar med ett resultat som matematiklärare kan använda i sin undervisning.

Nyckelord Matematikundervisning, programmering, design research, kreativa matematiska

resonemang.

Page 4: Programmering i matematikundervisningen

3

Innehållsförteckning 1.1 SYFTE OCH FORSKNINGSFRÅGOR ................................................................................................................... 5

2. BAKGRUND .............................................................................................................................................. 5 2.1 PROGRAMMERING I SKOLAN .......................................................................................................................... 5 2.2 PROGRAMMERINGSDIDAKTIK ........................................................................................................................ 7 2.3 PROGRAMMERINGSPROCESSEN ...................................................................................................................... 9 2.4 SAMMANFATTNING BAKGRUND ................................................................................................................... 11

3. TEORI ..................................................................................................................................................... 11 3.1 DATALOGISKT TÄNKANDE ........................................................................................................................... 11

3.1.1 Datalogiskt tänkande och programmering .......................................................................................... 12 3.2 KREATIVA MATEMATISKA RESONEMANG ..................................................................................................... 13

4. METOD ................................................................................................................................................... 14 4.1 VAL AV FORSKNINGSANSATS ....................................................................................................................... 14

4.1.1 Utbildningsvetenskaplig designforskning ............................................................................................ 15 4.2 DELTAGARE I STUDIEN ................................................................................................................................. 16 4.3 PLANERAD LEKTION .................................................................................................................................... 17 4.4 DATAANALYS .............................................................................................................................................. 18 4.5 TILLFÖRLITLIGHET ...................................................................................................................................... 20 4.6 ETISKA ASPEKTER ........................................................................................................................................ 21

5. RESULTAT ............................................................................................................................................. 22 5.1 FORSKNINGSFRÅGA 1: MATEMATIKUPPGIFTENS DESIGN ............................................................................. 22

5.1.1 Hypotetiska lärandebanan .................................................................................................................. 22 5.1.2 Matematikuppgiftens utformning ........................................................................................................ 24 5.1.3 Utvärdering och revidering av första lektionen .................................................................................. 25 5.1.4 Utvärdering och revidering av andra lektionen .................................................................................. 27 5.1.5 Nyckelaspekter i hypotetiska lärandebanan ........................................................................................ 29 5.1.6 Sammanfattning design ....................................................................................................................... 32

5.2 FORSKNINGSFRÅGA 2: ANALYS AV PROGRAMMERINGSPROCESSEN AV ASPEKTER AV KREATIVA RESONEMANG .................................................................................................................................................... 32

5.2.1 Abstrahera ........................................................................................................................................... 33 5.2.2 Delproblem ......................................................................................................................................... 34 5.2.3 Testa .................................................................................................................................................... 36 5.2.4 Sammanfattning programmeringsprocessen ....................................................................................... 37

6. DISKUSSION .......................................................................................................................................... 38 6.1 RESULTATDISKUSSION ................................................................................................................................. 38

6.1.1 Matematikuppgiftens design ................................................................................................................ 38 6.1.2 Analys av programmeringsprocessen av aspekter av kreativa resonemang ....................................... 42

6.2 METODDISKUSSION ...................................................................................................................................... 44 6.3 STUDIENS KUNSKAPSBIDRAG ....................................................................................................................... 45

7. REFERENSER ........................................................................................................................................ 48 8. BILAGOR ................................................................................................................................................ 51

8.1 BILAGA A: MISSIVBREV .............................................................................................................................. 51 8.2 BILAGA B: INLEDNING OCH INSTRUKTIONER INFÖR GENOMFÖRANDE AV STUDIE ........................................ 52 8.3 BILAGA C: INSTRUKTIONER TILL ATT ANVÄNDA FSCAPTURE (DATAINSAMLING) ........................................ 53 8.4 BILAGA D: MATEMATIKUPPGIFT – ARITMETISK TALFÖLJD .......................................................................... 54 8.5 BILAGA E: MATEMATIKUPPGIFT – ARITMETISK TALFÖLJD (REVIDERING) ................................................... 59

Page 5: Programmering i matematikundervisningen

4

1. Inledning Under hösten 2018 omarbetades styrdokumenten för matematikämnet och programmering

infördes som ett centralt innehåll i både grundskolan och gymnasieskolan (Skolverket, 2011).

Matematik och programmering går hand i hand och matematikämnets teoretiska delar kan

tränas praktiskt i programmering och därmed betraktas som ett undervisningsverktyg (Lovric,

2018). Programmering innebär att arbeta i en programmeringsprocess med utgångspunkt att

lösa diverse uppdrag och problem. Programmeringsprocessen innefattar ett flertal olika faser

som kräver att eleverna har ett problembaserat förhållningssätt med ett analytiskt och logiskt

tänkande samt en förmåga att utforma egna strategier (Mannila, 2018).

Det har visat sig att matematikundervisningen i skolan begränsar elevers lärande i matematik.

Studier indikerar att majoriteten av de matematikuppgifter som eleverna ges möjlighet att arbeta

med är procedurella och endast var tionde matematikuppgift kräver att eleverna resonerar

kreativt i matematik. Det har även visat sig svårt för lärare att få elever att utveckla sin

resonemangsförmåga, då de matematikuppgifter som innehåller delar av resonemang anses som

utmanande och är ofta frivilliga för eleverna att arbeta med (Jäder, 2015; Lithner, 2008).

Ett sätt att bygga ny kunskap och skapa förståelse i matematikämnet är att använda sig av

kreativa matematiska resonemang. Kreativa matematiska resonemang innebär att eleverna

argumenterar för sina strategival utifrån matematikens grund med relevanta begrepp.

Resonemanget ska anses nytt för eleverna, slutligen leda till en lösning på problemet samt att

eleverna motiverar relevansen av problemets lösning (Jäder, 2015; Lithner, 2008). Vi behöver

därför veta mer om undervisningsmetoder för att stödja och utveckla denna förmåga hos

eleverna. Min hypotes är att programmering skulle kunna vara ett hjälpmedel för att skapa

ytterligare möjligheter till elevers utveckling av resonemangsförmågan. Av den anledningen

kommer jag att studera hur en matematikuppgift kan utformas med hjälp av ett

programmeringsverktyg, med syfte att utveckla elevers kreativa matematiska resonemang. Jag

vill även undersöka i vilka faser av elevernas programmeringsprocess som utvecklar kreativa

matematiska resonemang.

Studien är en intervention och för att uppfylla studiens syfte och forskningsfrågor har

utbildningsvetenskaplig designforskning valts som metodansats. Metoden möjliggör ett

forskningsresultat som kan användas av matematiklärare och direkt appliceras in i

matematikundervisningen (Bakker, 2018). Matematikuppgiften som använts i studien har

Page 6: Programmering i matematikundervisningen

5

arbetats fram via metodansatsens cykliska process för att systematisera studiens

tillvägagångssätt. För att studera elevernas kreativa matematiska resonemang har en

matematikuppgift utformats på temat aritmetisk talföljd. En aritmetisk talföljd är en speciell

talföljd med en bestämd struktur där differensen mellan varje efterföljande tal är lika (Kiselman

& Mouwitz, 2008).

Även om programmering nyligen införts i matematikämnets styrdokument har det tidigare

forskats inom området digitala verktyg och elevers resonemangsförmåga. Dock är forskningen

både nationellt och internationellt till stor del förankrad i grundskolan, vilket skapar en

nyfikenhet att studera gymnasieelever och dess förmåga att lösa problem. Tidigare forskning

visar att lärare själva upplever okunskap inom området som bidrar till obekväma

undervisningssituationer (Drijvers, Doorman, Boon, Reed & Gravemeijer, 2010). Denna studie

vill därför bidra med ny applicerbar kunskap som matematiklärare kan använda sig av för att

planera och genomföra undervisning med programmering som ett verktyg.

1.1 Syfte och forskningsfrågor Syftet med den här forskningsstudien är att undersöka hur digitala lärmiljöer i programmering

kan utveckla elevers förmåga att föra resonemang i algebra.

Mina specifika forskningsfrågor är:

1) Vad utgör nyckelaspekter i en hypotetisk lärandebana över gymnasieelevers

kreativa resonemang i matematik, baserat på en uppgift om aritmetisk talföljd i

en programmeringsmiljö?

2) I vilka faser av elevens programmeringsprocess möjliggör uppgiften kreativa

matematiska resonemang i undervisningen.

2. Bakgrund Bakgrunden inleds med en beskrivning av de centrala begrepp inom programmering som anses

relevanta för studien. Efter detta beskrivs programmeringsdidaktiska förhållningssätt samt en

modell för elevernas programmeringsprocess. Avsnittet avslutas med en kort sammanfattning.

2.1 Programmering i skolan Programmering är en arbetsprocess som syftar till att eleverna ska lösa diverse problem. För att

komma till rätta med ett specifikt problem krävs en programkod som verkställs med hjälp av

ett programmeringsverktyg. Det finns en uppsjö av olika programmeringsverktyg med

Page 7: Programmering i matematikundervisningen

6

skiftande utformning och programspråk beroende på syfte och vilka som är

programmeringsverktygets tänkta användare. Programspråket som används är exakt utan

nyanser och är avgörande för hur datorn tolkar programkoden. Programspråken delas in i

blockbaserat eller textbaserat språk. Ett blockbaserat programspråk är visuellt och innehåller

block som liknas vid pusselbitar. Blocken har olika färg och form för att visa vilka som passar

ihop. Ett blockbaserat programspråk är relativt enkelt och används i synnerhet till yngre elever

och elever som anses nybörjare inom programmering. I ett textbaserat programspråk skriver

eleverna själva sin programkod och det betraktas som mer utmanande då det inte finns färdiga

block att använda (Mannila, 2018).

Dock handlar programmering om mycket mer än att endast utforma en programkod i ett

programmeringsverktyg. Programmering är ett processarbete som har sin utgångspunkt i ett

problem som eleverna vill lösa. Själva programmeringsprocessen består i hög grad av att

eleverna utformar programkoder som till sist resulterar i en lösningsmetod på det givna

problemet. Innan eleverna konstruerat en lösningsmetod arbetar de via

programmeringsprocessen med ett flertal olika faser som i synnerhet omfattar problemlösning

(Mannila, 2018; Åkerfeldt, Kjällander & Selander, 2018).

Programmering och matematik går hand i hand. Det krävs matematikkunskaper för att förstå

och tolka programmering och matematikämnets teoretiska delar kan tränas praktiskt i

programmeringsprocessen (Lovric, 2018; Marshall & Buteau, 2013). Studier gör anspråk på att

programmering bidrar till en ökad matematikinlärning och att eleverna framförallt får utveckla

sin problemlösningsförmåga under programmeringsprocessen (Benton et al., 2017; Drijvers et

al., 2010). Majoriteten av de matematikuppgifter som eleverna idag arbetar med i

undervisningen är procedurella och anses därför begränsa elevernas lärande i matematik. Det

har visat sig svårt för lärare att motivera elever till att utveckla sin resonemangsförmåga, då

dessa matematikuppgifter ofta anses som utmanande och därmed frivilliga för eleverna att

arbeta med (Jäder, 2015; Lithner, 2008). Programmering kan därför användas som ett verktyg

för att motivera elevers lärande i matematik men även skapa en matematikundervisning som är

mer i linje med skolverkets styrdokument. Det har visat sig att matematikundervisning som

innehåller programmering stödjer även elevernas inlärning av matematiska begrepp och

matematiska beräkningar när de får möjlighet att konstruera egna problem (Benton et al., 2017;

Drijvers et al., 2010; Lovric, 2018; Marshall & Buteau, 2013; Moreno-León, Robles & Román-

González, 2016).

Page 8: Programmering i matematikundervisningen

7

2.2 Programmeringsdidaktik Programmering är ett nytt område i matematikämnet och har ännu inte utvecklat egna

ämnestraditioner. Det medför att lärare endast kan förlita sig på den forskning som genomförts

och som då får en avgörande roll för matematiklärares planering och undervisning. Fler studier

gör anspråk på att lärare i matematik erfarar de nya styrdokumenten som utmanande då de själva

inte anses inneha tillräckligt med kunskaper inom datorvetenskap och programmering (Benton,

Holyes, Kalas & Noss, 2017; Drijvers et al., 2010). En förklaring till detta är att lärarna upplever

svårigheter att integrera teknik in i matematikundervisningen och därmed behöver lärarnas

didaktiska förhållningssätt revideras och utgå från ett helt nytt perspektiv. En helt ny repertoar

av undervisningstekniker och didaktiska förhållningssätt bör utvecklas för att skapa en

undervisning som är i linje med de nya styrdokumenten. Även om tidigare forskning ger

undervisande lärare vägledning krävs det utrymme för läraren själv att vara kreativ och våga

experimentera med diverse didaktiska förhållningssätt för att rama in fungerande

undervisningsstrategier (Drijvers et al., 2010; Åkerfeldt et al., 2018).

Ett didaktiskt förhållningssätt som skiljer sig mellan att undervisa i programmering och

ordinarie undervisning är att förstå innebörden av att misslyckas (Åkerfeldt et al., 2018).

Grunden för att lyckas med programmering är att först misslyckas och därefter felsöka det som

inte blev helt korrekt. Vid ett misslyckande ges alltid möjlighet att lära, läsa av och revidera

programkodens fel för att närma sig korrekta lösningsmetoden. Detta utmanar elevernas

tankebana då ett misslyckande ofta är betingat med någonting dåligt och anses inte ingå i

elevernas lärprocess. Av denna anledning är det viktigt att kommunicera hur ett misslyckande

kan skapa förutsättningar för att lyckas och att avdramatisera misslyckanden i programmering

då det är en del av elevernas inlärningsprocess (Åkerfeldt et al., 2018).

Ett annat didaktiskt förhållningssätt som berör undervisningens innehåll är att läraren bemöter

eleverna utifrån deras tidigare erfarenheter (Åkerfeldt et al., 2018). Läraren kan genomföra

detta med hjälp av exempeluppgifter i rätt kontext samt låta eleverna arbeta i grupp och

tillsammans diskutera möjliga lösningar på problem (Åkerfeldt et al., 2018). Eleverna bör

uppleva undervisningens innehåll relevant och igenkännande för att motivera och bygga på

elevernas tidigare kunskaper. Dock har det visat sig att lärare upplever utmaningar med att

anpassa undervisningens innehåll i de fall de själva har låga kunskaper i och är obekväma med

innehållet (Drijvers et al., 2010).

Page 9: Programmering i matematikundervisningen

8

Det har visat sig finnas skillnader mellan att lösa matematiska problem med penna och papper

eller med hjälp av ett programmeringsverktyg. Lösningen med penna och papper bidrar till

försök, diskussioner och reflektioner utan att eleverna får feedback på om lösningen är korrekt.

Programmeringsverktyget ger istället direkt feedback på om eleverna är på väg mot en korrekt

lösning av problemet. Det medför att eleverna själva kan söka fel och forma om en lösning för

att därefter återigen värdera lösningens kvalité. Detta kan betraktas som ytterligare ett didaktiskt

förhållningssätt för lärare att ta hänsyn till vid undervisning med ett programmeringsverktyg

(Lovric, 2018; Marshall & Buteau, 2013).

Ett exempel som är vanligt i programmeringsvärlden är fibonaccis talföljd (Ulin, 2008).

Eleverna kan lösa problemet med penna och papper men får ingen direkt feedback på om deras

lösning är korrekt för antal 𝑛. Med hjälp av ett programmeringsverktyg kan eleverna enkelt

skriva en programkod som kan räkna ut vilket tal 𝑛 som helst i fibonaccis talföljd. Eleverna får

snabbt feedback på om programkoden fungerar för alla𝑛 i fibonaccis talföljd (Marshall &

Buteau, 2013). En del av programmeringsprocessen är att eleverna arbetar för att optimera sin

lösning så att programkoden endast innehåller relevanta delar för att minska belastningen på

programmeringsverktyget men även underlätta för andra som ska läsa och förstå programkoden

(Lovric, 2018).

Även om majoriteten av forskningen inom programmeringsdidaktik visar på positiva

inlärningseffekter och att programmering är ett fördelaktigt verktyg, finns det forskning som

gör anspråk på att programmering inte alls har en effekt på elevers inlärningsförmåga.

Kalelioglu och Gülbahar (2014) studie har framförallt forskat i huruvida programmering

främjar elevernas inlärning eller inte. Studien visar inte några skillnader mellan att undervisa

elever med eller utan programmering. Elevernas inlärning förbättrades inte efter att eleverna

arbetat med ett programmeringsverktyg. Dock visade studiens resultat att eleverna möjligtvis

fick en ökad självkänsla och ett större självförtroende att ta sig ann diverse problem. Det har

även framkommit att matematikundervisning som endast innehåller programmering skapar ett

ineffektivt lärande i matematik och att det krävs flera inlärningsmetoder för att främja elevers

matematikkunskaper (Dalton & Goodrum, 1991).

Forskarna uttrycker ett dilemma då det finns ett flertal positiva effekter för elevers inlärning att

använda sig av programmering, däremot upplevs lärares kunskaper låga inom området och

forskarna uttrycker att lärare behöver en omfattande utbildning för att ges förutsättningar att

applicera programmering i sin undervisning (Drijvers et al., 2010; Moreno-León et al., 2016;

Page 10: Programmering i matematikundervisningen

9

Åkerfeldt et al., 2018). Den här studien vill därför bidra med att utveckla en matematikuppgift

med hjälp av ett programmeringsverktyg som direkt kan användas av lärare i

matematikundervisningen. Matematikuppgiften kan också användas som hjälp när lärare själva

ska utveckla egna uppgifter i programmering.

2.3 Programmeringsprocessen Programmeringsprocessen kan liknas vid en problemlösningsprocess då det finns flera

gemensamma utgångspunkter. Problemlösning ska upplevas som en utmaning och eleverna ska

arbeta med problemet under en tid för att finna lösningen. Ett problem ska väcka elevernas

nyfikenhet och starta igång uppfinningsförmågan. Elevernas problemlösningsprocess beskrivs

utifrån ett antal olika faser för att synliggöra elevernas arbete (Hagland, Hedrén & Taflin, 2005;

Polya, 2003).

På liknande sätt kan programmeringsprocessen delas in i ett flertal olika faser. Detta för att

synliggöra de steg som eleverna är i behov av att arbeta med vid konstruerandet av en

lösningsmetod i ett programmeringsverktyg. Sammanlagt innehåller programmeringsprocessen

fem faser som syftar till att utveckla ett användbart redskap för att synliggöra elevernas

inlärningsprocess. Faserna utgör ett underlag för att kunna belysa elevernas egen progression

och för att lärare ska kunna ge fortsatt vägledning till ytterligare lärande och nya utmaningar

(McCracken et al., 2001; Åkerfeldt et al., 2018). Programmeringsprocessen i fem olika faser: 1. Abstrahera utifrån en beskrivning av problemet 2. Generera delproblem som måste lösas 3. Transformera dess delproblem till dellösningar 4. Foga samman de olika lösningarna till en helhet 5. Testa/utvärdera och pröva (om och om igen) (Åkerfeldt et al., 2018, s. 79)

I första fasen behöver eleverna identifiera den information som anses mest relevant i problemet.

Därefter bör eleverna skapa en modell utifrån identifierade information, vilket kan likas vid en

ram som ofta är förutbestämt av läraren. I andra fasen utformar eleverna diverse delproblem av

informationen som tidigare identifierats och dessa problem behöver lösas var för sig

(McCracken et al., 2001).

Efter att delproblemen är skapade kan eleverna påbörja tredje fasen vilket är att omvandla

delproblemen till dellösningar. Eleverna måste under denna fas besluta om vilka strategier som

är lämpliga att implementera i lösningsmetoden. Tredje fasen är avgörande för att lyckas med

en korrekt lösning till problemet. Det bör ske ett test av de olika dellösningarna som måste visa

Page 11: Programmering i matematikundervisningen

10

sig korrekta och uttryckta i rätt form för att datorn ska ha möjlighet att läsa av programkoderna

(McCracken et al., 2001).

I fjärde och näst sista fasen ska eleverna sätta samman de olika dellösningarna till en

helhetslösning. Fjärde fasen innebär ofta att eleverna får skapa en algoritm (McCracken et al.,

2001). En algoritm liknas vid ett recept där eleverna steg för steg ger en beskrivning av hur

problemet kan lösas (Mannila, 2018). I femte och sista fasen måste eleverna avgöra om de

tidigare faserna genererat i en bra lösningsmetod på problemet. Lösningsmetoden måste testas

och de tidigare faserna kan arbetas igenom ytterligare om det anses nödvändigt. Efter att

lösningsmetoden är testad behöver det även ske en felsökning för att optimera programkodens

körtid och eventuella fel. Dock kan testfasen med fördel användas genom hela

programmeringsprocessen för att undgå eventuella fel i slutet av arbetet (McCracken et al.,

2001).

Ett exempel på ett matematikproblem som kan lösas med hjälp av programmering och

textspråket Python. ”Skriv ett program som låter användaren mata in ett heltal. Programmet ska

testa om talet är delbart med 3 eller inte. Skriv ut delbarhet eller ej delbarhet beroende på vad

det är” (Trangius & Hall, 2018, s. 58). Figur ett visar hur matematikproblemet kan lösas i ett

programmeringsprogram.

(Figur 1: exempel på matematikuppgift, från repl.it)

För att lösa matematikproblemet måste eleverna i ett första steg förstå och rama in problemet.

Eleverna behöver känna till diverse matematiska begrepp såsom heltal och delbarhet. När

problemet identifierats kan eleverna påbörja en lösningsmetod i flera steg. Matematikuppgiften

har i detta fall sex steg som till sist sätts samman till en enda lösningsmetod (se figur 1). Näst

sista steget som eleverna arbetar med är att testa sin lösningsmetod, vilket innebär att sätta in

ett heltal i programmet för att se om resultatet är korrekt. Är lösningen inte korrekt återgår

eleverna till att korrigera de olika stegen i lösningsmetoden för att därefter återigen testa

programkoden. Om lösningen är korrekt återstår det sista utvärderande steget för eleverna.

Page 12: Programmering i matematikundervisningen

11

2.4 Sammanfattning bakgrund Sammanfattningsvis är programmering en arbetsprocess som framförallt behandlar

problemlösning och kodning. Programmering innefattar även olika programspråk, så som ett

blockbaserat eller textbaserat språk. Undervisningen i programmering skiljer sig till viss del

från ordinarie undervisning. Lärare upplever utmaningar att undervisa i programmering då de

själva anses besitta låga kunskaper inom området. Flera programmeringsdidaktiska

förhållningssätt har därför presenterats för att synliggöra dessa skillnader.

Programmeringsprocessen innehåller fem faser som eleverna arbetar med systematiskt för att

komma fram till en lösningsmetod. I första fasen analyserar eleverna problemet och skapar en

strategi. Problemet delas in i flera delproblem för att minska dess komplexitet, det är andra

fasen. Tredje fasen innebär att eleverna arbetar med att lösa delproblemen var för sig till olika

dellösningar. För att sedan sätta ihop alla dellösningar till en helhetslösning i fjärde fasen. Femte

fasen är testfasen. Eleverna testar sin lösningsmetod och får feedback på om programkoden är

korrekt eller ej.

3. Teori Nedan följer en redogörelse för studiens teoretiska ramverk som innehåller två delar. Första

delen är datalogiskt tänkande och används för att beskriva hur elever kan lösa problem med

hjälp av en dator och specifikt programmering. Andra delen innefattar kreativa matematiska

resonemang, vilket används som ett verktyg vid analys av studiens insamlade data.

3.1 Datalogiskt tänkande Datorn har under en längre tid ansetts vara en del av matematikundervisningen. Eleverna

använder räknemaskiner för att beräkna utmanande uppgifter som bedöms besvärliga att

beräkna i huvudet. Dock kan datorer bidra med flera positiva aspekter i undervisningen än att

endast hanteras som räknemaskiner. Datorer anses vara en viktig del i barnens lärande,

kreativitet och uttrycksförmåga. Programmering kan bidra till att utveckla lärares undervisning

i skolan och utgångspunkten är att eleverna istället för att endast konsumera datorprogram även

själva bör bygga dem (Papert, 1980). Under de senaste åren har begreppet datalogiskt tänkande

(eng. Computational thinking) blivit alltmer känt. Grunden i datalogiskt tänkande är

problemlösning. Problemlösning är en process som eleverna arbetar med utan givna metoder

(Hagland et al., 2005). Det främsta syftet med att använda datalogiskt tänkande är att främja

elevernas kreativitet och att de ska lära sig att utveckla olika programkoder på datorn (Wing,

2010).

Page 13: Programmering i matematikundervisningen

12

Datalogiskt tänkande kan definieras som en metod för att lösa problem, utforma system och

förstå människors beteenden med hjälp av grundläggande datorvetenskap (Wing, 2008). En

vanlig tolkning av datalogiskt tänkande är att endast datorns teknologi står i fokus vilket inte

överensstämmer med definitionen. Det innebär således att bryta ned svåra problem till mindre

bekanta problem som är enklare att lösa. För att hitta lösningen används olika algoritmer som

kan liknas med ett recept som senare automatiseras och implementeras i ett datorverktyg

(Yadav, Stephenson & Hong, 2017). Datalogiskt tänkande är ett förhållningssätt för hur elever

kan analysera problem och sedan utnyttja en dator för att lösa problemet. Datalogiskt tänkande

är något som vi människor ägnar oss åt för att kunna dra så stor nytta som möjligt av datorer.

Det är alltså inte någonting som datorerna gör, utan något som vi människor gör (Wing, 2006).

3.1.1 Datalogiskt tänkande och programmering En modell har tagits fram i syfte att synliggöra relationen mellan datalogiskt tänkande och

programmering. Modellen anses innehålla attityder och förmågor vilka kan tränas via

programmering. Denna modell består av sex koncept och fem tillvägagångssätt (Barefoot

Computing, 2014).

Första konceptet uppmärksammar att en dator är förutsägbar och gör exakt det den blivit tillsagd

att göra. Dessutom att vi människor är logiska och kan resonera oss fram till vad ett program

kommer att göra. Detta koncept benämns logiskt tänkande. Nästa koncept är algoritm som

tidigare nämnts är ett recept på hur programkoderna ska se ut och hur de ska struktureras. För

att kunna strukturera upp algoritmer behöver problemet brytas ned i mindre delar och på så sätt

kan komplexa situationer hanteras. Det tredje konceptet är därför nedbrytning i mindre delar

och detta möjliggör att arbetet kan fördelas på flera personer (Barefoot Computing, 2014).

Fjärde konceptet är mönsterigenkänning och innebär att hitta likheter och mönster som skapar

förutsättningar att lösa problemet. Det här konceptet infattar även att kunna generalisera ett

program för att kunna användas på flera olika sätt. Ett exempel på ett program som ritar

månghörningar med olika många sidor. Det innebär att även om en triangel och en sexhörning

inte har lika många sidor delar de några egenskaper. Ytterligare ett sätt att minska problemets

komplexitet är att endast fokusera på de relevanta detaljerna och minimera de detaljer som är

mindre viktiga. Det kallas abstraktion och är det femte konceptet. Det avslutande konceptet

innebär att kunna utvärdera lösningen och de olika lösningsmodellerna. Detta anses avgörande

för att kunna välja den lösningsmetod som är bäst lämpad för att få en effektiv och korrekt

lösning (Barefoot Computing, 2014).

Page 14: Programmering i matematikundervisningen

13

De fem tillvägagångssätten eller även kallade arbetssätten är själva skapandet av lösningen. För

att lösa ett problem med programmering krävs det möjlighet att utforska och experimentera sig

fram med olika lösningsmetoder. Det första tillvägagångssättet är därför den utforskande delen

av arbetet. Det andra tillvägagångssättet innebär att programmering är problemlösning och en

kreativ process som också är skapande. Genom programmering finns det möjligheter att skapa

nya idéer, dock krävs det en viss förkunskap och det är en fördel att starta med de små slutna

problemen. Det tredje tillvägagångsättet är den delen som programkoderna ska testas,

felsökning. Detta är en mycket viktig process som syftar till att hitta vad som orsakat önskad

lösning (Barefoot Computing, 2014). Avslutningsvis krävs uthållighet och samarbete. Att skapa

ett program är inte en enkel uppgift och det finns många aspekter som måste beaktas, bland

annat är samarbete en viktig aspekt för att skapa ett team och utnyttja varje individs

kompetenser (Barefoot Computing, 2014).

3.2 Kreativa matematiska resonemang Utvecklingen av elevers kunskaper i matematik kräver både procedurella och konceptuella

kunskaper (Jäder, 2015). Studier indikerar att majoriteten av matematikuppgifterna som

eleverna ges möjlighet att arbeta med är procedurella och att endast var tionde

matematikuppgift kräver att eleverna resonerar kreativ och matematiskt. De

matematikuppgifter som innehåller delar av resonemang anses som utmanande och är ofta

frivilliga för eleverna att arbeta med. Det medför att elever ges begränsade möjligheter till att

utveckla sitt kreativa matematiska resonemang och istället fokuserar eleverna främst på att

komma fram till ett svar som stämmer överens med facit (Jäder, 2015; Lithner, 2008; Sidenvall,

Lithner & Jäder, 2015).

Matematikuppgifter som är utformade för att främja elevers resonemang har positiv inverkan

på elevernas inlärningsförmåga. Kreativa matematikuppgifter främjar elevernas minne,

rekonstruktion och tränar eleverna i att skapa egna lösningsmetoder. Eleverna kan även skapa

en djupare förståelse för matematik då flera viktiga matematiska egenskaper sätts i fokus under

tiden eleverna resonerar kreativt och matematiskt (Nordqvist, 2016).

Kreativa matematiska resonemang är ett mål och ett hjälpmedel för att nå förståelse i

matematikämnet. Resonemang kan användas för att bygga ny kunskap och skapa förståelse för

nya begrepp som därefter kan implementeras in i en arbetsprocess. Lithner (2008) har

kategoriserat olika typer av resonemang som tar hänsyn till om eleverna arbetar med andra

beräkningar än bara procedurberäkningar. En kategorisering benämns kreativa matematiska

Page 15: Programmering i matematikundervisningen

14

resonemang. För att ett resonemang ska kunna kategoriseras som kreativt och matematiskt ställs

det tre krav:

1) Eleverna ska argumentera för sitt strategival samt motivera varför svaret på problemet är rimligt

eller inte.

2) Eleverna argumenterar utifrån matematikens grund och använder sig av relevanta begrepp.

3) Resonemanget ska vara nytt för eleverna och slutligen leda till en lösning på problemet.

(Lithner, 2008)

Studier gör anspråk på att elever som får möjlighet att resonera kreativt under

matematiklektionerna har förbättrat sina matematikkunskaper. Det har visats att elever vars

resonemang fått utrymme i matematikundervisningen presterat bättre på matematikprov än de

elever som resonerat algebraiskt (Jonsson, Nordqvist, Liljekvist & Lithner, 2014).

4. Metod Syftet med forskningsstudien är att undersöka hur digitala lärmiljöer i programmering kan

utveckla elevers förmåga att föra resonemang i algebra. I detta avsnitt presenteras studiens

tillvägagångssätt. Första delen av avsnittet redogör för val av studiens forskningsansats samt

presenterar studiens utbildningsvetenskapliga designforskning. Därefter följer ett avsnitt om

studiens deltagare, planerade lektionen och bearbetning av data. Slutligen diskuteras studiens

tillvägagångssätt och etiska överväganden.

4.1 Val av forskningsansats Med utgångspunkt från studiens syfte och forskningsfrågor har en kvalitativ forskningsansats

valts. Huvudsyftet med en kvalitativ forskningsansats är att analysera data som fokuserar på

ord, handling och tolkning (Bryman, 2018). Studien har undersökt hur en matematikuppgift i

algebra kan utformas med hjälp av ett programmeringsverktyg för att utveckla elevers kreativa

matematiska resonemang, samt i vilka faser i programmeringsprocessen som eleverna resonerar

kreativt och matematiskt. Data som ansågs relevant för att besvara studiens forskningsfrågor

var elevernas resonemang gällande matematikuppgiften i algebra, elevernas förmåga att ta sig

an problemet samt elevernas handlingar när de arbetade med uppgiften i

programmeringsverktyget.

Page 16: Programmering i matematikundervisningen

15

4.1.1 Utbildningsvetenskaplig designforskning För att uppnå studiens syfte används utbildningsvetenskaplig designforskning1 som

metodansats. Begreppet utbildningsvetenskaplig designforskning har förkortats och benämns i

texten som UDF. Syftet med UDF är att undersöka hur undervisningens praktik skulle kunna

se ut eller till och med hur undervisningen ska bedrivas. UDF är en intervention som vill lösa

ett problem och skapa ett användbart resultat. Metoden skapar potential för att studera ny

teknologi och skapa ny kompetens som lärare kan använda sig av i sin undervisning.

Exempelvis kan UDF bidra till nytt undervisningsmaterial och ny kunskap om datorverktyg och

lärandeaktiviteter (Bakker, 2018). Metoden kan tolkas som framåtsyftande då den skapar nya

vägar och idéer kring lärares undervisning i jämförelse med andra metoder som endast studerar

den för närvarande befintliga undervisningen. Bakkers (2018) resonemang kring användandet

av metoden är relevant för denna studie, för att kunna bidra till ett användbart resultat samt

studera ny teknologi.

UDF är en metodansats som är relevant för utbildningens praktik eftersom syftet är att utveckla

forskningsbaserade lösningar för komplexa problem på ett systematiskt sätt. Oavsett syftet med

att använda UDF som metodansats innehåller alltid forskningsprocessen en systematisk

pedagogisk designprocess (Plomp & Nieveen, 2013). Systematiska designprocessen

förekommer i form av diverse olika modeller, dock har de en gemensam utgångspunkt vilket

betonar cykliska processer och interaktioner. Modellerna har växlande utformning då en cyklisk

process kan innefatta olika delar styrd utifrån forskningsstudiens syfte. Dock förekommer tre

komponenter frekvent, vilka anses relativt generella och oberoende av UDF-modell. Bakkers

(2018) tre faser och Plomp och Nieveens (2013) systematiska designprocess kan sammanställas

i en figur.

(Figur 3: Utformning av en cyklisk process.)

1 Utbildningsvetenskaplig designforskning benämns internationellt Educational design research (Bakker, 2018).

Page 17: Programmering i matematikundervisningen

16

Första fasen, analys och design är starten på forskningsstudien där problemet identifieras och

exakta problemet bestäms. När problemet är fastställt påbörjas ett arbete med att bland annat

bestämma de första designprinciperna och de teoretiska delarna i forskningsstudien. I denna fas

är det viktigt att skapa ett ramverk för forskningsstudien (Bakker, 2018). Problemet behöver

analyseras för att forskaren ska kunna utforma en design och en prototyp som ska testas (Plomp

& Nieveen, 2013). I andra fasen, implementation sker det faktiska genomförandet av studien.

Studien kan exempelvis genomföras som en intervention eller som ett experiment. Data som är

relevant för studiens resultat samlas in och de vanligaste datainsamlingsmetoderna är elevers

arbeten, fältanteckningar, ljud- eller videoinspelningar (Bakkar, 2018; Plomp & Nieveen,

2013). Tredje fasen, retrospektiv analys innebär att forskaren tittar tillbaka på studiens

genomförande samt påbörjar en bearbetning av det insamlade datamaterialet. Forskaren

utvärdera och fastställer om designen och prototypen behöver revideras för att sedan återigen

påbörja designprocessen. Revideringen fortskrider till dess att det uppstått en balans mellan det

som avsetts och det som uppnåtts (Plomp & Nieveen, 2013).

Den här forskningsstudien har sin utgångspunkt i UDF, vars syfte är att skapa ett användbart

resultat för lärare i matematikundervisningen och att genomföra en intervention som undersöker

hur undervisningspraktiken skulle kunna bedrivas. Forskningsstudien genomförs med hjälp av

den cykliska processen som beskrivits ovan, detta för att systematisera studiens

tillvägagångssätt.

4.2 Deltagare i studien Studien genomfördes på en kommunal gymnasieskola i centrala delar av Sverige. Deltagarna i

studien valdes utifrån kunskapsnivå både i matematik och programmering. Detta för att

programmeringsverktyget som används i studien är enkelt och riktar sig till en elevgrupp som

tidigare inte arbetat med programmering. Deltagarna valdes utefter kunskapsnivå i matematik

eftersom programmeringsverktyget ansågs som okomplicerat fanns det begräsningar i

programmet som medförde att vissa mer komplicerade matematikuppgifter inte gick att

genomföra i verktyget. Sista och avgörande faktorn för valet av deltagare var självklart vilka

lärare och elever som kunde tänka sig att delta. Lärare upplever ofta tidsnöd under terminerna

och ett flertal lärare tackade nej på grund av detta.

Elevgruppen som tackade ja var en förstaårsklass på teknikprogrammet på en gymnasieskola.

Elevgruppen bestod av 32 stycken elever som delades in i två mindre grupper. Innan studien

kunde genomföras skickades ett missivbrev (se bilaga A) ut till alla deltagare och respektive

Page 18: Programmering i matematikundervisningen

17

vårdnadshavare. Av totalt 32 stycken elever var det 31 stycken som samtyckte och godkände

medverkan i studien. Elevgruppens undervisande lärare deltog inte i studien och valde att inte

närvara under studiens genomförande. Lektionssekvenserna med respektive halvklass

genomfördes vid olika tidpunkter för att där emellan arbeta med den cykliska processen som

har sin utgångspunkt i UDF. Matematikuppgiften som eleverna arbetade med utformades av

forskaren själv och syftade till att skapa förutsättningar att utveckla elevernas

resonemangsförmåga.

4.3 Planerad lektion Lektionen inleddes med att presentera studiens syfte, forskningsfrågor och ansvariga forskare.

Därefter kontrollerades att alla deltagare lämnat in missivbrevet (se bilaga A) och fått godkänt

att få delta i studien. Eleverna informerades om studiens och datainsamlingens

tillvägagångssätt. Innan eleverna började följde en kort introduktion till

programmeringsverktyget Blockly, verktygets utseende och funktioner (se bilaga B). För att

alla elever skulle få samma utgångspunkt visades verktygets funktioner med två olika exempel.

Första exemplet visade hur eleverna skapade variabler och utformade ett algebraiskt uttryck.

Andra exemplet var något mer avancerat och visade hur loop-funktionen skulle kunna användas

för att utforma ett algebraiskt uttryck (Alfredsson et al., 2011). Se bilaga B för detaljerade

exempelbeskrivningar.

Lektionerna dokumenterades med hjälp av ett program som spelade in elevernas röster och

datorskärmar. Örebro Universitet lånade ut dokumentationsprogrammet via USB-stickor som

hette FScapture. Syftet med att spela in elevernas röster och datorskärmar var att dokumentera

elevernas programmeringsprocess och att vid ett senare tillfälle analysera elevernas

tillvägagångssätt.

Efter introduktionen delades gruppen in i par och datainsamlingsverktyget delades ut och

kontrollerades att det fungerade på respektive dator (se bilaga C). Först då fick eleverna tillgång

till matematikuppgiften och började arbeta. Matematikuppgiften var en aritmetisk talföljd som

eleverna skulle arbeta med i programmeringsverktyget Blockly. Första versionen av

matematikuppgiften visas i figur 4 och andra, reviderade versionen visas i figur 5.

Page 19: Programmering i matematikundervisningen

18

(Figur 4: Första versionen av (Figur 5: Reviderade versionen av

matematikuppgiften, Se bilaga D) matematikuppgiften, Se bilaga E)

Den cykliska designprocessen som innefattar matematikuppgiftens utformning, utvärdering och

revidering kommer att behandlas nedan som resultatet på första forskningsfrågan.

4.4 Dataanalys Vid avslutad datainsamling påbörjades analysen av det insamlade materialet och det första

steget var att strukturera och sammanställa materialet (Bryman, 2018). Varje videofilm sågs

igenom ett flertal gånger från början till slut. Detta för att bli bekant med materialet men också

för att utskilja vilka delar av videofilmerna som var relevanta för studiens resultat. De relevanta

delarna innefattande elevers resonemang kring matematikuppgiftens utformning,

programmeringsverktyget och elevernas programmeringsprocess. Anteckningar skrevs i detalj

på vilka delar av videofilmerna som var relevanta och i sista steget transkriberades dessa

samtliga delar (Eriksson Barajas et al., 2018).

Analysen av det insamlade datamaterialet genomfördes med hjälp av analysverktyg från

grundad teori. För att förtydliga innebörden av grundad teori kan redskap och resultat urskiljas.

Redskap är ett teoretiskt urval, vilket betyder att urvalet väljs ut för att passa in i studien och

det är en kontinuerlig process. Inom begreppet redskap ingår även kodning, vilket är den

process i grundad teori som den insamlade data bryts ned till mindre delar. Processen medför

att forskaren sätter koder på de delar som anses relevant för studiens resultat (Bryman, 2018;

(Strauss & Corbin, 1990).

Page 20: Programmering i matematikundervisningen

19

I den aktuella studien baserades den grundade analysen på studiens två teoretiska ramverk:

datalogiskt tänkande och kreativa matematiska resonemang. Datalogiskt tänkande är en metod

för att lösa diverse problem med hjälp av grundläggande datorvetenskap. Eleverna ska

analysera ett problem och därefter med hjälp av en dator lösa problemet, vilket den här studien

fokuserar på. Studien väljer även att fokusera på datalogiskt tänkande i relation till

programmering. Detta för att synliggöra på vilket sätt datalogiskt tänkande tolkar och förstår

programmering som ett verktyg vid problemlösning. Studiens två forskningsfrågor behandlar

på olika sätt kreativa matematiska resonemang, utformningen av en specifik matematikuppgift

och via elevernas programmeringsprocess. Lithners (2008) tre krav används som analysverktyg

och ligger till grund för vad som anses relevant för studiens resultat. Det medför att

dataanalysen inte helt följer principen för kodning inom grundad teori då kategorierna var

förutbestämda med stöd i studiens teoretiska ramverk.

Analysen av datamaterialet påbörjades genom en första kodning. Analysen genomfördes på två

olika sätt då det krävs två olika analysprocesser i arbetet för att besvara studiens två

forskningsfrågor. Första forskningsfrågan utgick ifrån en cyklisk designprocess i UDF för att

systematisera och utveckla matematikuppgiften under studiens gång. Analysen av första

forskningsfrågan påbörjades med en kodning utifrån två kategorier: uppgiftens utformning och

elevernas lärande. Matematikuppgiftens utformning var en del av den cykliska

designprocessen i UDF, detta för att finna luckor i utformningen, reflektera och utvärdera

lektionssekvenserna. Cykliska designprocessen medförde ett flertal revideringar av

matematikuppgiften. Elevernas lärande, den andra kategorin innebar att synliggöra vilket

lärande som förekom eller uteblev under lektionssekvenserna med utgångspunkt från studiens

hypotetiska lärandebanan.

Analysen av andra forskningsfrågan påbörjades även den med en kodning utifrån tre kategorier:

strategi, argument och lösning. De tre kategorierna symboliserar de tre krav i ett kreativt

matematiskt resonemang. Elevernas resonemang skulle innehålla argument för strategival

utifrån matematikens grund med relevanta begrepp. Resonemanget skulle anses nytt för

eleverna, slutligen leda till en lösning på problemet samt eleverna skulle motivera relevansen

på problemets svar (Lithner, 2008).

I en andra kodning jämfördes datamaterialet i respektive forskningsfråga för att finna likheter

och skillnader som till sist resulterade i ett antal huvudkategorier. Resultat för första

forskningsfrågan redovisas utifrån fem identifierade huvudkategorier: 1) hypotetiska

Page 21: Programmering i matematikundervisningen

20

lärandebanan 2) matematikuppgiftens design 3) utvärdering och revidering av första lektionen

4) utvärdering och revidering av andra lektionen och 5) nyckelaspekter i hypotetiska

lärandebanan. En grundidé i denna typ av analys var att jämföra den hypotetiska lärandebanan

med den faktiska lärandebanan, dvs. den lärandebana som visade sig i undervisningen. Utifrån

den faktiska lärandebanan kunde matematikuppgiftens design utvärderas som resulterade i ett

flertal revideringar, sammanställda i en ny, förfinad hypotetisk lärandebana med ett flertal

nyckelaspekter.

Vid analys och kodning av andra forskningsfrågan användes tre kategorier: strategi, argument

och lösning med utgångspunkt från Lithners (2008) ramverk. Kodningen, baserat på Lithners

(2008) ramverk resulterade i huvudkategorier som visade på vilka delar i

programmeringsprocessen som utvecklade elevernas kreativa matematiska resonemang. De tre

huvudkategorierna var: 1) abstrahera 2) delproblem och 3) testa.

4.5 Tillförlitlighet Kvalitativ forskning kan kvalitetssäkras med hjälp av begreppen trovärdighet, överförbarhet,

pålitlighet och en möjlighet att styrka och konfirmera (Bryman, 2018).

Trovärdighet innebär att forskarna kommer överens om hur det insamlade datamaterialet ska

tolkas och förstås (Bryman, 2018). Denna studie genomförs endast av en forskare vilket medför

att tolkningen av datamaterialet kommer genomföras på ett sätt. Dataanalysen genomfördes i

två olika cykliska processer och därmed vid olika tidpunkter. Detta innebar att forskaren

behövde inneha samma utgångspunkt vid varje tillfälle som datamaterialet skulle analyseras för

att inte tolka de olika cykliska processerna på olika sätt.

Det andra kriteriet, överförbarhet är i hur stor utsträckning som studien skulle kunna överföras

till en annan miljö (Bryman, 2018). Studien kan genomföras i andra miljöer då forskaren

beskrivit studiens tillvägagångssätt samt matematikuppgiftens utformning. Dock krävs det att

eleverna går på gymnasiet för att inneha tillräckligt med matematikkunskaper samt att eleverna

anses nybörjare inom programmering.

Pålitlighet som är det tredje kriteriet innebär att forskaren tar ett granskande synsätt och

säkerställer att studiens forskningsprocess har en fullständig redogörelse (Bryman, 2018). För

att denna studie ska anses pålitlig har forskaren i varje steg av arbetsprocessen antecknat och

vid ett senare tillfälle redogjort för varje del i arbetsprocessen.

Page 22: Programmering i matematikundervisningen

21

Till sist det fjärde kriteriet, möjlighet att styrka och konfirmera. Forskaren ska kunna styrka och

konfirmera att studien är genomförd av goda skäl samt att forskaren själv agerat i god tro

(Bryman, 2018). Vid genomförandet av studien fick båda grupperna samma information innan

studiens start. Elevgrupperna fick även se två olika exempeluppgifter för att få en inblick i hur

programmeringsverktyget fungerade. Forskaren befann sig i bakgrunden under studiens

genomförande och observerade elevernas programmeringsprocess. Vid frågor från eleverna

hade forskaren som avsikt att bolla tillbaka frågan till eleverna eller ställa en ny fråga för att

inte påverka deras programmeringsprocess och resonemang.

4.6 Etiska aspekter Forskningsetiska aspekter är när det ställs etiska krav på forskaren, forskarens inriktning samt

hur forskningen har genomförts. Det finns framförallt fyra etiska förhållningssätt som en

forskare måste ha i åtanke under studiens genomförande. Majoriteten av de forskningsetiska

aspekterna berör de individer som väljer att medverka i forskningsstudien (Vetenskapsrådet,

2017).

Informations- och samtyckeskravet innebär att deltagarna måste ge sitt samtycke innan studien

kan genomföras och att forskaren informerar deltagarna om vilken roll de kommer få under

studien. Deltagarna måste även få information om att deltagande är frivilligt och att de alltid

kan välja att avstå. I denna studie är deltagarna under arton år och därmed inte myndiga. Detta

medför att deltagarnas vårdnadshavare måste informeras om studiens syfte, tillvägagångssätt

samt det krävs ett godkännande från vårdnadshavare för att individen ska få delta i studien. För

att informera deltagarnas vårdnadshavare skapades ett missivbrev (se bilaga A) som skickades

ut med ett svarskrav. Efter att vårdnadshavare läst igenom missivbrevet och diskuterat

tillsammans med sitt barn skriver de tillsammans under, antingen ett godkännande eller ett icke

godkännande och därefter skickas brevet tillbaka till matematikläraren på skolan

(Vetenskapsrådet, 2017). Detta kan dock upplevas som utmanande då forskaren inte vill

påverka deltagarna och deras handlingar under studiens gång. Därför kan forskaren noggrant

bestämma hur studien ska presenteras för deltagarna för att inte inverka på studiens resultat

(Vetenskapsrådet, 2017). Resultatet i denna studie visar att deltagarna inte diskuterade studien

i sig eller dess syfte under genomförandet av lektionerna, utan eleverna hade full fokus på

matematikuppgiften och att finna en lösning på problemet.

Konfidentialitetskravet och nyttjandekravet berör studiens insamlade data.

Konfidentialitetskravet innebär att det insamlade datamaterialet inte är åtkomlig för andra utan

Page 23: Programmering i matematikundervisningen

22

endast kan ses och användas av forskaren själv. Forskaren får varken sprida information

muntligt eller skriftligt om deltagarna i studien (Vetenskapsrådet, 2017). I denna studie har

datainsamlingen genomförts på USB-stickor som sedan förts över till en låst dator. Deltagarna

ska vara anonyma genom hela studien (Vetenskapsrådet, 2017). För att skydda deltagarnas

anonymitet och integritet har skolan ej definierats samt fiktiva namn har använts under hela

studien. Det avslutande kravet, nyttjandekravet betyder att den data som samlats in endast

används inom ramarna för studiens syfte och till det som deltagarna fått information om. I denna

studie används det insamlande datamaterialet endast för att studera studiens syfte. Efter att

studien genomförts raderas det insamlade datamaterialet.

5. Resultat I detta avsnitt presenteras forskningsstudiens resultat. Första delen behandlar studiens första

forskningsfråga och i andra delen redovisas resultatet för studiens andra forskningsfråga. De

två forskningsfrågorna avslutas med en kort sammanfattande text.

5.1 Forskningsfråga 1: Matematikuppgiftens design Resultatet för studiens första forskningsfråga redovisas utifrån fem identifierade

huvudkategorier: 1) hypotetiska lärandebanan 2) matematikuppgiftens design 3) utvärdering

och revidering av första lektionen 4) utvärdering och revidering av andra lektionen och 5)

nyckelaspekter i hypotetiska lärandebanan.

5.1.1 Hypotetiska lärandebanan Matematikuppgiftens huvudsakliga mål är att ge eleverna möjlighet att utveckla två förmågor

som ingår i styrdokumenten för ämnet matematik i gymnasieskolan. Första förmågan beskriver

att eleverna i matematikundervisningen ska ges möjlighet att utveckla kunskaper i att lösa

problem. Ytterligare ska eleverna ges möjlighet att formulera, analysera, värdera olika metoder

samt resonera över sitt resultat. Den andra förmågan som är aktuell för matematikuppgiften är

att eleverna ska kunna följa och föra ett matematiskt resonemang (Skolverket, 2011).

Vidare i ämnesplanen för matematik i gymnasieskolan beskrivs kursens centrala innehåll. Det

finns framförallt två centrala innehåll som anses aktuella för den specifika matematikuppgiften.

Det första är att eleverna ska ges möjlighet att utveckla strategier för matematiska problem i

olika situationer med hjälp av digitala verktyg och specifikt programmering. Det andra är att

eleverna ska få kunskaper om algebraiska uttryck (Skolverket, 2011). Styrdokumenten kan

upplevas abstrakta och svåråtkomliga, därför har lärandemålen för den utformade

Page 24: Programmering i matematikundervisningen

23

matematikuppgiften konkretiserats. Lärandemålen har delats upp följande: 1) algebraiska

generaliseringar av mönster 2) variabler och 3) resonemang.

Algebraiska generaliseringar av mönster är elevernas första lärandemål. Lärandemålet ska ge

eleverna kunskaper i diverse algebraiska uttryck samt tolka och förstå olika mönster.

Matematikuppgiften är en aritmetisk talföljd som eleverna ska tolka och resonera fram ett

algebraiskt uttryck som stämmer överens med talföljden. Eleverna har tidigare arbetat med

algebraiska uttryck och bör inneha kunskaper om hur ett uttryck utformas.

Andra lärandemålet är variabler som ska ge eleverna möjlighet att utveckla förståelse för

begreppet variabler, i egenskap av att förstå variabelns funktion och ramverk. För att koppla

tillbaka till styrdokumentets centrala innehåll ska eleverna ges möjlighet att utveckla förståelse

för algebraiska uttryck, vilket i detta fall innebar en förståelse för variablers innebörd. Eleverna

har tidigare haft möjlighet att erövra kunskap om att en variabel kan anta vilket värde som helst.

I matematikuppgiften får eleverna möjlighet att fördjupa sin förståelse för variabler. Variabelns

funktion innefattar en förståelse för att en variabel behöver definieras för att kunna användas

samt att variabelns placering har betydelse för programkodens resultat. Ramverket innebär att

variabeln inte kan sättas till vilket värde som helst. I detta fall finns det inte något negativt värde

då en figur inte kan inneha ett minusantal stickor.

Tredje och sista konkretiserade lärandemålet är resonemang. Detta lärandemål är speciellt

eftersom elevernas hela programmeringsprocess präglas av diskussioner, reflektioner och

resonemang. Det medför att resonemang kan vävas in i de två tidigare lärandemålen,

algebraiska generaliseringar av mönster och variabler. För att tydligt konkretisera lärandemålet

kan programmeringsprocessen beskrivas utifrån en ytterligare lärandeprogression med

utgångspunkt i lärandemålen. Första delen i progressionen och elevernas

programmeringsprocess innebär att eleverna ska tolka och förstå den specifika

matematikuppgiften. Nästa del i programmeringsprocessen ger en progression då eleverna

själva utformar ett algebraiskt uttryck med hjälp av programmeringsverktyget. Sista och

avslutande delen i lärandemålet resonemang är att eleverna med hjälp av

programmeringsverktyget testar sin lösningsmetod och utefter resultatet felsöker

programkoden.

Page 25: Programmering i matematikundervisningen

24

5.1.2 Matematikuppgiftens utformning Matematikuppgiftens utformning innehåller flera deluppgifter som eleverna ska lösa (Figur D).

Matematikuppgiften är en aritmetisk talföljd som eleverna ska arbeta med på olika sätt. En

talföljd är en bestämd sekvens och struktur sådan att ”differensen mellan ett godtyckligt element

(utom det första) och närmast föregående alltid är lika stor” (Kiselman & Mouwitz, 2008, s.

109). En talföljd kan nästan se ut hur som helst där talen förhåller sig till de givna kriterierna.

Kiselman och Mouwitz (2008) ger ett exempel på en aritmetisk talföljd (2, 6, 10, 14, 18, 22…).

Denna talföljd har differensen 4 mellan varje tal. En allmän aritmetisk talföljd kan skrivas

𝑎$, 𝑎$ + 𝑑, 𝑎$ + 2𝑑, 𝑎$ + 3𝑑,… (Alfredsson et al., 2011).

Eleverna arbetar i första deluppgiften med att utforma ett algebraiskt uttryck för den specifika

talföljden med hjälp av programmeringsverktyget. Uppgiftsbeskrivningen presenterar de första

fyra figurerna i aritmetiska talföljden (se bilaga D). I andra deluppgiften arbetar eleverna med

att bestämma hur många stickor som fanns i figur sju respektive figur ett hundra. Eleverna testar

lösningsmetoden i första deluppgiften och bör få rätt antal stickor för respektive figur. Tredje

deluppgiften behandlar återigen det algebraiska uttrycket för aritmetiska talföljden. Eleverna

ska arbeta med att utforma ytterligare en programkod.

Elevernas programmeringsprocess genomförs med hjälp av ett programmeringsverktyg som

heter Blockly. Blockly är ett enkelt programmeringsprogram som innehåller ett blockbaserat

programspråk. Det innebär att eleverna använder sig av pusselbitar för att skapa en programkod

och en lösningsmetod (Manilla, 2018). Blockly är ett verktyg som med fördel kan användas för

att både introducera programmering för elever samt användas av elever med begränsade

programmeringskunskaper. Ett programmeringsverktyg utformat som Blockly benämns ofta

som en visuell programmeringsmiljö eftersom pusselbitarna skapar en bild av programkoderna.

Det är också ett bra programmeringsintroducerande verktyg eftersom det finns en funktion i

programmet där eleverna kan välja ett textbaserat programspråk som pusselbitarna kan

översättas till.

(Figur 4: programmeringsverktyget Blockly)

Page 26: Programmering i matematikundervisningen

25

Figur fyra visar hur programmeringsverktyget som använts under lektionssekvenserna ser ut. I

den vänstra delen av fönstret finns det block som liknar pusselbitar. Blocken är av olika färger

och former beroende på vilken kategori de befinner sig i. För att arbeta i programmet drar

eleverna in blocken i den mittersta delen av fönstret och sätts ihop till en programkod. För att

köra programkoden används play-knappen längst ned till höger. Längst till höger i fönstret visas

ett textbaserat programspråk som har översatt blocken till ett textspråk. Textbaserade

programspråket är valbart.

5.1.3 Utvärdering och revidering av första lektionen Analysen av första lektionen visar att majoriteten av eleverna lyckades lösa

matematikuppgiften, vilket kan tolkas som att den hade en passande svårighetsgrad. Eleverna

påbörjade programmeringsprocessen med första deluppgiften och det insamlande

datamaterialet visar att de flesta elevgrupperna arbetade med uppgiftsbeskrivningen. Följande

sekvens visar hur en elevgrupp arbetade med algebraiska uttrycket för aritmetiska talföljden. Elin: Jag tror att det är, typ här fyra gånger fyra minus ett, kanske… En, två, tre, fyra, fem, sex, sju, åtta, nio, tio, elva, tolv, tretton. Nej. Paus 60sek… Max: Yes, jag tror jag har löst det. Elin: Tror du? Max: Yes! Elin: Ok, hur tror du formeln är då? Max: Det kan vara tre n plus ett. ett gånger tre plus ett. Två gånger tre plus ett. Elin: Jättebra ok! Max: nu ska vi bara få in det i det här.

Sekvensen visar att eleverna använde sig av en strategi för att hitta det algebraiska uttrycket.

När Elin räknade en, två, tre… använde hon sig av uppgiftsbeskrivningen och figurerna som

visar stickorna i aritmetiska talföljden. Eleverna använde sig inte av programmeringsverktyget

när de arbetade med matematikuppgiftens första deluppgift. Istället använde eleverna

programmeringsverktyget efter att de bestämt det algebraiska uttrycket. Detta medför att

eleverna inte utnyttjade programmeringsverktyget från start, utan blev snarare ett hjälpmedel

senare i programmeringsprocessen. Programmeringsverktyget fick en passiv roll, eleverna

varken använde eller resonerade kring programmeringsverktygets funktioner. Utvärderingen av

lektionen visar alltså att den första deluppgiften bör revideras för att skapa ytterligare

möjligheter för eleverna att nå lärandemålen med hjälp av programmeringsverktyget.

Ytterligare en aspekt som behandlar matematikuppgiftens utformning var att elevgrupperna

redan i första deluppgiften testade sin lösningsmetod och programkod. Eftersom testa är en del

av programmeringsprocessen, blev det naturligt för eleverna att vilja testa sin lösningsmetod

Page 27: Programmering i matematikundervisningen

26

innan de tog sig an en ny deluppgift. Följande sekvens visar hur elevgruppen testade sin

programkod. Elias: Set n to. Sätt en variabel. Samir: Vi har S, då ska vi sätta det till Elias: n, då blir det tre n plus ett. Samir: vi måste sätta in en till Elias: Ja, exakt. Sätt den på den där. Samir: Ett, så lägger vi till en till mattegrej. Vi måste flytta n in i parentesen annars blir det fel. (läser av python). Tre n plus ett. Elias: Japp. Klar med första uppgiften. Ta nu och sätt n. Den måste sitta före S. Samir: ja, sådär. Vad ska vi sätta n som Elias: 1,2,3,4,5,6,7 Samir: Vi sätter n till ett. Sen måste vi lägga på en print, S. (testar). Oj, den ska inte printa S. Vi måste lägga till variabeln S. (testar) ja, nu fyra. Elias: Jo, det stämmer. Elias: Vi ändrar n till sju. 22

Sekvensen visar hur eleverna började med att skapa variabler som ansågs relevanta för

matematikuppgiften. Samir läste uppgiftsbeskrivningen och uttryckte att en variabel bör

benämnas med 𝑠, troligtvis för att uppgiftsbeskrivningen frågade efter antal stickor 𝑠. Därefter

skapade Elias en variabel 𝑛 efter uppgiftsbeskrivningens benämning på figurerna i aritmetiska

talföljden. Eleverna resonerade kring hur de skulle placera matematikblocken under tiden som

de byggde sin programkod. Detta för att datorn skulle tolka programkoden korrekt. Samir

uttryckte att variabeln 𝑛 måste flyttas in i en parantes för att datorn skall läsa av programkoden

korrekt. Här synliggörs det att eleverna tidigare arbetat med programmering då de läser av

textspråket som finns på sidan av blocken. Eleverna testade sin programkod och fick datorn att

printa 𝑠, vilket inte var korrekt. Eleverna placerade ytterligare ett block i programkoden och

skapade en ny variabel som de ville att datorn skulle printa. Eleverna testade programkoden

och fick svaret fyra. Eleverna har alltså testkört sin programkod innan de började arbeta med

andra deluppgiften.

Andra deluppgiften arbetade eleverna med i sista delen av sekvensen. Deluppgiften bidrog inte

med någon ny kunskap då eleverna redan testat sin programkod och var medvetna om att

lösningen var korrekt. Det resulterade i att andra deluppgiften inte uppfyllde sitt syfte då

elevgrupperna redan innan testat sin lösningsmetod och var medvetna om att den fungerade.

Analysen av den andra deluppgiften är därför inte till någon nytta. Eleverna fick inte möjlighet

att utveckla sin resonemangförmåga och deluppgiften bör revideras för att uppfylla

matematikuppgiftens lärandemål.

Utvärderingen av lektionen visade att lärandemålet för den tredje och sista deluppgiften

uppfyllts. Av de tre deluppgifterna var det denna uppgift som upplevdes svårast för eleverna att

Page 28: Programmering i matematikundervisningen

27

lösa. Eleverna blev tvingade att föra kreativa matematiska resonemang och arbetade flitigt med

de olika faserna i omgångar. Analysen av tredje deluppgiften visade att eleverna fick arbeta

problemlösande utan en given lösningsmetod och eftersom eleverna innan löst

matematikuppgiften med en annan lösningsmetod, hade alla elever möjlighet att förstå och

lyckas med den tredje deluppgiften. Analysen visar även att eleverna resonerade med hjälp av

matematiska begrepp som var relevanta för matematikuppgiften, motiverade strategier för

varandra samt påbörjade nya matematiska resonemang efter ett misslyckat test.

Utifrån utvärderingen ovan har matematikuppgiften reviderats med syfte att skapa ytterligare

möjligheter för eleverna att utveckla sin resonemangsförmåga med hjälp av ett

programmeringsverktyg. Första revideringen innebar att eleverna inte fick tillgång till penna

och papper i samma utsträckning. Vid lektionens start fick eleverna information om att de

redovisade sin programmeringsprocess och sitt svar i programmeringsverktyget. Syftet med

revideringen var att försöka få eleverna att redan i första fasen arbeta i

programmeringsverktyget. Andra revideringen medförde en omformulering av första och andra

deluppgiften till endast en deluppgift. Utvärderingen visar att elevgruppernas

programmeringsprocess bestod av att testa sin lösningsmetod i första deluppgiften, vilket

betyder att andra deluppgiften inte uppfyllde sitt syfte. Ytterligare en anledning till att slå ihop

första och andra deluppgift var att skapa mer utrymme för tredje och sista deluppgiften.

Utvärderingens resultat visar att tredje deluppgiften var den uppgift som eleverna gavs störst

möjlighet att utveckla sitt kreativa matematiska resonemang.

5.1.4 Utvärdering och revidering av andra lektionen Andra lektionen visar att eleverna upplevde matematikuppgiften utmanande och att de arbetade

med första deluppgiften under en lång tid. Flertalet grupper var i behov av ytterligare stöttning

under programmeringsprocessen. Detta resulterade i ett stort engagemang, diskussioner och

nyfikenhet. Eleverna utvecklade sin resonemangsförmåga kreativt och matematiska. I första

deluppgiften som reviderats (se bilaga E) visar analysen att eleverna snabbt fokuserade på figur

sju och inte på det algebraiska uttryckets utformning. Första deluppgiften blev därför en

programmeringsprocess där eleverna fokuserade på resultatet. Följande sekvens visar hur

programmeringsprocessen hos en elevgrupp fokuserar på att hitta svaret till figur sju. Johan: Sedan om vi gör såhär. Vi sätter en loop. Och så… Axel: repeterar vi den sju gånger, eftersom vi ska ha figur sju. Eftersom den ska repetera sju. Johan: Mm, vet du vad vi skulle kunna göra? Axel: Nej, Johan: Vi sätter att vi repeterar loopen n gånger. Såhär. Sen har vi en set n to, då kan vi välja vilket n vi ska ha.

Page 29: Programmering i matematikundervisningen

28

Axel: Ja, men det är bra. Johan: Precis, och då kan vi sätta n till sju. Axel: Ja, Johan: Ok, och n gånger ska vi addera tre till x to eller hur? Axel: Ja just det, stämmer. Johan: Precis, då ska vi alltså ha en som heter. Sätt x to… Axel: Vi hade x till figur n. X är antal stickor. Då blir det tre n plus ett, där tre n är inom parantes Johan: Sen ska vi ha en print Axel: x Johan: Print x. Nu borde den funka. Axel: Testa. 22. Rätt.

Vid sekvensens start resonerade eleverna om att repetera en loop sju gånger för att beräkna

figur sju. Elevgruppen testade sin programkod snabbt och fick rätt svar. Elevernas

programmeringsprocess bestod till viss del av att gissa för att komma fram till det rätta svaret

för figur sju. Det resulterade i att eleverna inte reflekterade över programkodens funktion, utan

fokuserade istället på att finna det korrekta svaret. Lärandemålet för första deluppgiften var att

eleverna skulle utveckla sin resonemangsförmåga samt få kunskaper i att förstå och skapa ett

algebraiskt uttryck. Analysen visar att eleverna till viss del uppnådde lärandemålet dock med

för lite fokus på det algebraiska uttrycket.

Ett syfte med första revideringen var att elevgrupperna skulle få mer tid att utveckla sista

deluppgiften (se bilaga E). Analysen av lektionen visar dock att flera elevgrupper uttryckte att

första deluppgiften var svår och initierade att de inte skulle klara av andra deluppgiften.

Analysen visade även på bristande motivation under andra deluppgiften, vilket skulle kunna

förklaras med att eleverna upplevde matematikuppgiften omöjlig att lösa.

Matematikuppgiftens andra revidering genomfördes efter avslutad lektion och utvärderingen

ovan. Första revideringen innebär att omformulera första deluppgiften för att ändra elevernas

fokus. Under lektionstillfällena har en deluppgift syftat till att eleverna ska ta reda på hur många

stickor en viss figur har. Analysen av första utvärderingen visade att denna typ av deluppgift

inte utvecklade elevers resonemangsförmåga som önskat. Även i andra utvärderingen visar

resultatet att denna typ uppgift inte möjliggör det lärandemål som var tänkt för elevernas

resonemangsförmåga. Analysen har istället visat att eleverna själva testar sin programkod och

lösningsmetod genom att välja en valfri figur i aritmetiska talföljden. Första revideringen

innebär därför att utesluta deluppgiften som ber eleverna att ta reda på antal stickor för en viss

figur samt förtydliga syftet för att få eleverna att fokusera på de delar som anses viktigast. Första

deluppgiften får därför ett nytt fokus som syftar till utformningen av algebraiska uttrycket.

Page 30: Programmering i matematikundervisningen

29

Analysen visar att ytterligare en revidering med syfte att stötta elevernas resonemang behöver

genomföras. Eleverna upplevde andra deluppgiften som utmanande och eventuellt omöjlig att

lösa. Revideringen innebär att skapa en matematikuppgift där eleverna kan använda sig av

lösningsmetoden i första deluppgiften och arbeta med att förenkla den för närvarande befintliga

lösningsmetoden. Revideringen medför att omformulera uppgiftsbeskrivningen till en

deluppgift som initierar ytterligare diskussion eleverna emellan.

Utifrån andra lektionen, utvärdering och revidering kan tredje och sista versionen av

matematikuppgiften specificeras. Första deluppgiften revideras för att förtydliga syftet med

uppgiften. Eleverna ska i sin programmeringsprocess skapa ett fungerande algebraiskt uttryck

för aritmetiska talföljden i programmeringsverktyget. Andra deluppgiften var väl fungerande

under första lektionen men ansågs utmanande under andra lektionen. Detta innebär att andra

deluppgiften eventuellt behöver revideras efter deltagarnas kunskaper och tidigare erfarenheter.

Dock kan andra deluppgiften utifrån andra lektionen revideras till en reflekterande uppgift med

utgångspunkt från första deluppgiften. Det skulle kunna betyda att andra deluppgiften

behandlar en optimering av första deluppgiften.

5.1.5 Nyckelaspekter i hypotetiska lärandebanan En inledande hypotetisk lärandebana har tidigare redovisats för att synliggöra en idé om vilket

lärande matematikuppgiften skulle kunna bidra med. I den inledande utformningen av den

hypotetiska lärandebanan konkretiserades lärandemålen i tre delar: 1) algebraiska

generaliseringar av mönster 2) variabler och 3) resonemang. Lektionssekvenserna har via den

cykliska processen i UDF synliggjort vilket lärande som matematikuppgiften faktiskt bidrog

med och vilka delar av den hypotetiska lärandebanan som uteblev. De delar i

matematikuppgiften som inte bidrog till elevers lärande resulterade i ett antal revideringar för

att sträva mot en större måluppfyllelse (se 5.1.3 och 5.1.4). De delar i matematikuppgiften som

gav goda förutsättningar för elever att utveckla sitt kreativa matematiska resonemang

resulterade i en ny, förfinad hypotetisk lärandebana som redovisas nedan och sammanställs i

ett flertal nyckelaspekter.

I hypotetiska lärandebanans första lärandemål, algebraiska generaliseringar av mönster har flera

nyckelaspekter identifierats. Första nyckelaspekten innebar att eleverna i starten på sin

programmeringsprocess arbetade med att tolka och förstå aritmetiska talföljden. Till sin hjälp

fick eleverna en uppgiftsbeskrivning (se bilaga D) med de fyra första figurerna i aritmetiska

talföljden. Eleverna arbetade med att beräkna antalet stickor i figur ett till fyra och letade efter

Page 31: Programmering i matematikundervisningen

30

likheter och skillnader. I denna del av programmeringsprocessen fick eleverna träna på att

analysera matematikuppgiften genom att hitta likheter och skillnader figurerna emellan.

Likheten som eleverna fann var att differensen mellan varje efterföljande figur var konstant.

Eleverna uppmärksammade även att figur ett skiljde sig från de övriga figurerna. I

styrdokumenten för ämnet matematik ska eleverna ges möjlighet att utveckla sin analytiska

förmåga och det fick eleverna träna på i början av programmeringsprocessen.

Efter att eleverna analyserat och tolkat aritmetiska talföljden identifierades ytterligare en

nyckelaspekt. Eleverna arbetade med att formulera ett algebraiskt uttryck för vilket 𝑛 som helst

med hjälp av programmeringsverktyget. Eleverna var i behov av att kunna använda

informationen från tidigare analys och formulera ett algebraiskt uttryck. Eleverna fick kunskap

om hur differensen mellan figurerna kunde skrivas i ett algebraiskt uttryck. I detta fall ökade

varje figur med tre stickor som kan skrivas 3𝑛. Elevernas analys gav även information om att

det måste finnas en figur noll som endast hade en sticka för att kunna utforma ett korrekt

algebraiskt uttryck.

Tredje nyckelaspekten innebar att eleverna fullföljde sin strategi och utformade det algebraiska

uttrycket i programmeringsverktyget som senare testades. Programmeringsverktyget gav

eleverna kunskap om hur datorn läste av algebraiska uttrycket och de blev medvetna om vad

ett uttryck behövde innehålla för att betraktas som läsbart av datorn. Under denna del av

programmeringsprocessen fick eleverna vetskap om att prioriteringsreglerna var av relevans för

att datorn skulle läsa av algebraiska uttrycket korrekt. Ytterligare en nyckelaspekt har

identifierats då programmeringsverktyget blev till en ram för det algebraiska uttrycket.

Fjärde nyckelaspekten identifierades då sista delen av programmeringsprocessen liknades vid

ett detektivarbete och eleverna tränade på att utveckla olika strategier med hjälp av

programmeringsverktyget för att finna lösningen på matematikuppgiften. Elevernas

programmeringsprocess kan ses som en lärande progression, från att eleverna tolkar aritmetiska

talföljden, till att eleverna skapar ett algebraiskt uttryck, till sist förstår hur

programmeringsverktyget läser av det algebraiska uttrycket och kan hitta nya strategier utefter

detta.

Variabler är det andra lärandemålet som synliggjorts i den hypotetiska lärandebanan. När

eleverna började arbeta med matematikuppgiften fick eleverna själva skapa de variabler som

ansågs relevanta för uppgiften. Nästa steg för eleverna var att själva sätta ett värde på de

Page 32: Programmering i matematikundervisningen

31

variabler som valts och därmed innebörden för respektive variabel. En nyckelaspekt

identifierades när eleverna i sin programmeringsprocessen arbetade med att bygga en

programkod i programmeringsverktyget, de fick då kunskaper om variabelns ramar.

Programmeringsverktyget gav eleverna kunskap om vad som behövde göras för att datorn

skulle kunna läsa av variabeln och vilka möjligheter som fanns för eleverna att arbeta med

variabler. För att datorn skulle kunna läsa av programkoden måste variablerna definieras och

sättas till ett startvärde. För att därefter byggas ihop med ett algebraiskt uttryck.

Programmeringsverktyget gav även eleverna kunskap om vad som inte går att göra med en

variabel, variabelns begräsningar.

Lärandemålet resonemang har identifierat en sista nyckelaspekt som kan konkretiserats likt en

progression. Första delen i progressionen och elevernas programmeringsprocess innebar att

eleverna tolkade och förstod den specifika matematikuppgiften. Uppgiftsbeskrivningen var

utformad med text och bild för att förtydliga elevernas uppgift. I den inledande delen av

programmeringsprocessen följde eleverna ett resonemang som redan fanns, vilket var en av de

aktuella matematikförmågorna i styrdokumentet. Nästa del i programmeringsprocessen

skapade en progression då eleverna själva utformade ett algebraiskt uttryck med hjälp av

programmeringsverktyget. Eleverna bestämde själva innehållet i resonemanget och styrde

diskussionen mot den strategi som valts.

Sista och avslutande delen i lärandemålet resonemang var att eleverna med hjälp av

programmeringsverktyget testade sin lösningsmetod och utefter resultatet felsökte

programkoden. Eleverna resonerade om nya matematiska begrepp och fick en förståelse för

varför datorn läste av lösningsmetoden på ett visst sätt. Lärandeprogressionen var att eleverna

måste resonera fram nya strategier som tidigare inte diskuterats och vidga sitt perspektiv utan

styrning. De identifierade nyckelaspekterna i hypotetiska lärandebanan som nämnts ovan har

sammanställts i en punktlista.

Nyckelaspekter

• Eleverna förstod och analyserade aritmetiska talföljden genom att resonera om likheter och skillnader mellan figurerna på uppgiftsbeskrivningen.

• Eleverna resonerade fram en strategi med målet att skapa ett korrekt algebraiskt uttryck i programmeringsverktyget.

• Eleverna arbetade med att fullfölja sin strategi och utformade ett algebraiskt uttryck i programmeringsverktyget.

Page 33: Programmering i matematikundervisningen

32

• Programmeringsverktyget skapade en ram för variabler och algebraiska uttrycket, vilket bidrog till att eleverna utvecklade fördjupade kunskaper och resonemang om variablernas funktion, placering samt algebraiska uttryckets utformning.

• Programmeringsverktyget gav eleverna direkt feedback på lösningsmetoden. Eleverna felsökte och resonerade fram nya strategier för att finna den korrekta lösningsmetoden.

• Programmeringsprocess synliggjorde en progression i elevernas resonemangsförmåga: förstå och analysera problemet, skapa ett algebraiskt uttryck med hjälp av programmeringsverktyget som ram, felsöka eventuella fel och skapa nya strategier för att revidera felen i algebraiska uttrycket.

5.1.6 Sammanfattning design Syftet med matematikuppgiften var att utveckla elevers kreativa matematiska resonemang med

hjälp av ett programmeringsverktyg. Matematikuppgiften är en aritmetisk talföljd och

innehåller tre deluppgifter som eleverna skulle lösa. Studien genomfördes via en cyklisk

process i UDF för att synliggöra och systematisera lektionssekvensernas genomförande,

utvärdering och revidering av matematikuppgiften. En inledande, första utformning av

hypotetiska lärandebanan arbetades fram för att synliggöra en idé om vilket lärande

matematikuppgiften skulle kunna bidra med. Lärandemålen konkretiserades utifrån

matematikämnets styrdokument och delats in på följande sätt: 1) algebraiska generaliseringar

av mönster 2) variabler och 3) resonemang. Hypotetiska lärandebanan låg till grund för

matematikuppgiftens utvärdering och de revideringar som valdes att genomföras. Detta för att

skapa en matematikuppgift som bidrog till en ny, förfinad hypotetisk lärandebana med ett flertal

nyckelaspekter. Matematikuppgiften bidrog till att eleverna fick möjlighet att utveckla sin

analytiska förmåga för att tolka och förstå matematikuppgiften med hjälp av ett

programmeringsverktyg. Programmeringsverktyget skapade en faktisk progression som

utvecklade elevernas resonemangförmåga genom att ge feedback och synliggöra fel som

eleverna behövde åtgärda för att finna en korrekt lösning. Eleverna utvecklade en djupare

förståelse för variabler och algebraiska uttryck med hjälp av programmeringsverktyget som

ram. Till sist konstateras att matematikuppgiftens design är användbar för lärare och kan

appliceras i matematikundervisningen för att ge mer utrymme för problemlösning och kreativa

matematiska resonemang.

5.2 Forskningsfråga 2: Analys av programmeringsprocessen av aspekter av kreativa resonemang Resultatet för studiens andra forskningsfråga redogör för i vilka faser i elevernas

programmeringsprocess som stödjer ett kreativt matematiskt resonemang, detta utifrån Lithners

(2008) tre krav. Tre huvudkategorier har identifierats: 1) abstrahera 2) delproblem och 3) testa.

Page 34: Programmering i matematikundervisningen

33

5.2.1 Abstrahera Analysen visar att fasen abstrahera uppmuntrar till kreativa matematiska resonemang när

eleverna arbetade med att skapa en modell och en plan för hur de skulle gå tillväga. Eleverna

påbörjade ett nytt resonemang kring de olika figurerna som tillhörde aritmetiska talföljden i

uppgiftsbeskrivningen. Efter att eleverna tolkat och förstått matematikuppgiften inledde

majoriteten av elevgrupperna programmeringsprocessen med att räkna antalet stickor i varje

figur. Därefter skapades ett resonemang kring hur många stickor som fanns i varje figur, vilken

skillnad det var figurerna emellan samt hur det algebraiska uttrycket för talföljden skulle kunna

se ut. I följande sekvens, från första lektionssekvensen förtydligas hur en elevgrupp påbörjade

sitt resonemang med syfte att identifiera det mest relevanta problemet och skapa ett algebraiskt

uttryck. Moa: Man lägger till tre hela tiden, så n… Jesper: Det är n gånger tre plus ett. Moa: Ja! Jesper: Två gånger tre plus ett. Tre gånger tre plus ett. Moa: ja exakt! Jesper: Alltså det är n, N bokstaven N gånger tre plus ett. Moa: Ja, då måste vi lägga in här [drar muspekaren runt i verktygets fönster]. Ok då kör vi.

Eleverna använde sig av uppgiftsbeskrivningen och tolkade de första fyra figurerna i aritmetiska

talföljden. De kommer fram till att för varje figur ökar antalet stickor med tre. Sista delen i

sekvensen visar att eleverna hittat en strategi och är redo att börja arbeta med nästa fas som är

delproblem. Den ovannämnda sekvensen uppmuntrar eleverna till kreativa matematiska

resonemang då eleverna för ett nytt resonemang med hjälp av relevanta matematiska begrepp.

Dock visar analysen av första fasen att eleverna ännu inte börjat arbeta i

programmeringsverktyget, vilket medför att eleverna planerade sin strategi utan att reflektera

över programmet som de skulle arbeta i. Programmeringsverktygets roll blir därför passivt och

varken elevernas programmeringsprocess eller resonemang behandlade

programmeringsverktygets roll eller funktion.

I andra lektionssekvensen påbörjade en elevgrupp sin programmeringsprocess direkt i

programmeringsverktyget. Eleverna inledde med att mata in all information som de tagit del av

via uppgiftsbeskrivningen och skrev in respektive figur som ett block. Karl: Ok, så vi ska skriva upp det först. Ola: Mm, figur ett måste vi skriva upp först. Karl: Figur ett, ska man bara skriva upp här? [Rör med muspekaren i programmeringsverktyget] Ola: Mm, ja lägg upp figur ett. Hur många stickor har den? Ett, två, tre, fyra. Så vi kan hitta ett mönster. Karl: Var finns…variabler [letar i verktyget], här. S, set S to. [drar in de block som ska användas]. Sedan så... ska vi sätta den till noll först? Ola: Ja.

Page 35: Programmering i matematikundervisningen

34

Karl: En variabel till [skapar en ny variabel], n. Set n to. Ska den också vara noll? Men ska det inte vara att S är lika med n. Ola: S är lika med n. Nej vänta vad säger jag. n upphöjt i två plus ett, eller plus två. Karl: Vänta, n är. Jag får tre nya vid varje så annars skulle det vara minus två. Det måste vara plus två. n är två n. Nej. Ola: Kan vi inte bara göra såhär istället. Tre n plus ett. Eller? Karl: Jo, det är det. Vänta, tre gånger ett plus ett är fyra. Ola: För det här är sju. Karl: Två n plus ett. Ett, två, tre. Ne, tre n plus ett. Ja det är tre n plus ett.

Sekvensen synliggör att fasen uppmuntrar till kreativa matematiska resonemang då eleverna

förde ett nytt resonemang och påbörjade sin lösningsmetod via figurerna som utformats på

uppgiftsbeskrivningen. Eleverna har under sekvensen identifierat det relevanta problemet,

vilket var att finna ett algebraiskt uttryck, en formel för aritmetiska talföljden. Lithners (2008)

första och andra krav för ett kreativt matematiskt resonemang återspeglar delen i sekvensen då

eleverna ska bestämma 𝑛 och kommer tillsammans fram till att stickorna ökar med tre vid varje

figur. Programmeringsverktygets roll blir därför ett sätt för eleverna att sammanställa de

befintliga figurerna som finns i uppgiftsbeskrivningen. För att sedan arbeta med de olika

blocken för att komma fram till en lösningsmetod.

5.2.2 Delproblem I andra fasen har elevgrupperna valt ett flertal olika strategier för att finna lösningen på

matematikuppgiften. Analysen visar att eleverna arbetade med den redan valda strategin och

delade in problemet i mindre delar. Eleverna arbetade därefter med en del i taget. Ett flertal

elevgrupper arbetade på liknande sätt i båda lektionssekvenserna. Följande sekvens visar hur

en av elevgrupperna resonerade och arbetade med sin lösning. Simon: Då kan vi börja med att skapa en variabel [skapar variabel n]. Liam: Ok. Simon: Då var det n, math. [sveper förbi matematikblocken] Liam: Vi måste lägga ut variabeln. vi vill ju ha den [Initierar att Simon ska välja blocket set n.]. Set n. Simon: [tar ut variabeln set n] Liam: Så bra, sen kan vi ta en mattedel. Simon: En vad? Liam: n ska ju vara... Simon: [sätter n till 0] Liam: n är inte noll. n är figurens nummer. Simon: n är numret, nej det ska vara såhär. N ska sitta till noll. Liam: nej, för n är inte noll. Nu kommer n alltid vara noll. Simon: Jo, men vi kommer välja sen. Vi kommer välja vilka nummer vi ska ha sen. Då byter vi ut noll. Liam: Ja ok, ok. Ja Exakt.

Eleverna inleder arbetet i andra fasen med att skapa de variabler i programmeringsverktyget

som ansågs relevanta för problemet. Sekvensen visar hur programmeringsverktyget styr

elevernas förståelse för variabler. Programmeringsverktyget fungerade som en ram för hur

eleverna fick och kunde tänka vid användandet av variabler. Därefter arbetade eleverna med att

lösa första delproblemet, vilket var att definiera 𝑛. Här skapades en diskussion kring 𝑛 och om

Page 36: Programmering i matematikundervisningen

35

𝑛 var noll eller figurens nummer. Elevernas arbete i andra fasen uppmuntrar till kreativa

matematiska resonemang då de argumenterade för sin åsikt med hjälp av matematiska begrepp

och som avslutades med att eleverna kom överens om att till en början definiera 𝑛 som noll.

För att senare i lösningen byta ut noll mot den aktuella figurens nummer. Elevernas kreativa

matematiska resonemang får även utrymme när de använder programmeringsverktygets

funktioner för att stärka sina argument samt resonerar kring variabelns betydelse.

Eleverna arbetade vidare med nästa delproblem och de utformade ett algebraiskt utryck som

såg ut på följande sätt, 𝑆 = 𝑛 ∗ 3 + 1. Programmeringsverktyget fick återigen en roll som ram

men i detta fall för det algebraiska uttrycket. Andra fasen uppmuntrar till kreativa matematiska

resonemang då eleverna för nya resonemang om algebraiska uttryckets utformning, både

uttryckets möjligheter och begränsningar. Elevernas resonemang innehöll argument för vilka

delar som behövde finnas med i algebraiska uttrycket men även hur de olika delarna i uttrycket

skulle placeras i programmeringsverktyget.

Ytterligare en strategi som flera elevgrupper, i första lektionssekvensen valde att använda var

att repetera delar av det algebraiska uttrycket med hjälp av en loop. David: Men kanske om du tar det här på repeat och sen... jag vet vad formeln är men jag vet inte hur jag får in den i Blockly. För jag har aldrig använt Blockly. Emil: Vår kod kan jag ju rätt. n… David: Vi ska lista ut vad n är, även om vi redan vet formeln för allt det här. Emil: Det vi har här är n eller? David: Ok, vi vet vad formeln är. Men borde vi inte kunna ha att den har det där mönstret och sedan typ upprepar den sig. Då kan vi skriva typ vad S är. Emil: Jaha då vet jag. Då gör vi så här då. Frågan är om vi kan lägga in en mattegrej i en loop. Nej, det kan vi inte. Då får vi gör så här då. [tar fram ett block som ser ut som en ekvation]. Ett plus ett och sedan tar vi X, plus X säger vi. Vi sätter vad X är. X är då tre. Då blir det här då. Beroende på. David: Borde vi inte kunna sätta in den där delen i loopen? Emil: Jo men nu så kommer det bli konstigt.

Sekvensen påvisar att eleverna var medvetna om att det algebraiska uttrycket skulle kunna

skrivas som en repetition. Elevernas resonemang ledde till att hela uttrycket skulle skrivas på

så vis att det repeterades ett visst antal gånger. Analysen visar att elevgruppen använde kreativa

matematiska resonemang då de argumenterade för aritmetiska talföljdens uppbyggnad med

hjälp av matematiska begrepp. Dock visar sekvensen att eleverna inte lyckades identifiera vad

i uttrycket som skulle repeteras för att få en fungerande programkod. Istället visar analysens

resultat att eleverna argumenterade för att datorn själv skulle kunna se och uppfatta det mönster

som utformats till en programkod. Programmeringsverktygets roll skiljer sig i denna sekvens

då elevgruppen var övertygade om att datorn själv kunde urskilja algebraiska uttrycket, förstå

och tolka programkoden. Om eleverna förstått innebörden av programmeringsverktyget hade

Page 37: Programmering i matematikundervisningen

36

de troligtvis arbetat mot att själva lösa delproblemet för vilken del i algebraiska uttrycket som

behövde repeteras. Det hade utvecklat elevernas kunskaper om algebraiska uttryck och

programmeringsverktygets funktion. Programmeringsverktyget hade då fått en ny roll som givit

eleverna kunskaper om hur en loop fungerade samt i vilken del i det algebraiska uttrycket som

var i behov av att repeteras.

5.2.3 Testa Analysen av fasen redovisar att eleverna testade sina lösningsmetoder direkt efter att

programkoden utformats eller reviderats. Efter att eleverna testat sin programkod skapades ett

kreativt matematiskt resonemang kring testets resultat och en felsökning genomfördes om

resultatet inte blev som väntat. Vidare i analysen urskiljs denna del markant gentemot de andra

faserna då elevernas uppgift var att resonera om lösningsmetodens resultat. Eleverna utvecklade

ett kreativt resonemang om lösningsmetodens utfall samt nya resonemang skapades kring vilka

block i programkoden som krävde revidering. Det innebar att elevernas resonemang var under

ständig förändring utifrån programkodens resultat och nya idéer skapas utifrån lösningens

felsökning. Följande sekvens visar hur en elevgrupp i andra lektionssekvensen arbetade och

felsökte utifrån testresultatet. Moa: Kan vi inte fortsätta på det vi har [pekar med datormusen på koden] Jesper: Det går ju tydligen inte. Eller så gör man såhär. Vi kan stoppa in fler mattegrejer i den där [initierar att de ska sätta in ytterligare ett block som en ekvation]. Moa: Vi testar att stoppa in en likadan. Vi säger såhär, Sätt n to. Vi provar att sätta n till ett. Jesper: Vi provar nu Moa: Ne, vänta. Vi måste ha en print först. Jesper: just ja. [testar] Moa: Ne vänta vi måste ändra vad den ska printa. S ska den printa. [tar fram variabeln S] Jesper: funkar det? Moa: Varför är den delen av print ljus? Oj, nu tog jag bort print. Jesper: Vad gör du? Lägg till en print igen, en text. Moa: Så Jesper: Lägg till n sen Moa: Ne, vi ska väl printa S? Jesper: Ja printa S. Prova sen. Nej Moa: Nej, Nan. Vaddå Nan? [resultatet är ej definierat]

Eleverna i sekvensen insåg att deras programkod var oanvändbar och reviderade en av

dellösningarna. Eleverna testade på nytt sin programkod men insåg att det saknas ett textblock.

Därefter testade eleverna återigen programkoden och fick fel svar. En felsökning påbörjades

som uppmuntrar till aspekter av kreativa matematiska resonemang då eleverna behövde skapa

en ny idé och argumenterade för sin nya strategi med hjälp av matematiska begrepp.

Programmeringsverktyget fick här en avgörande roll genom att ge eleverna feedback och

vägleda mot en korrekt lösningsmetod. Eleverna arbetade fram en lösning, vilket var att texten

måste sitta ihop med en variabel för att programmet ska förstå vilken text som ska skrivas ut.

Page 38: Programmering i matematikundervisningen

37

Eleverna testade programkoden igen och fick svaret Nan, programkoden var inte definierad.

Elevernas kreativa matematiska resonemang fick nu återigen utrymme för att felsöka

programkoden, finna en ny strategi och argumenterade gentemot varandra den nya strategins

innebörd för programkoden. I denna del av programmeringsprocessen utmanades eleverna i att

lösa delproblem, resonera nytt och kreativ, använda matematiska begrepp och lösa hela

matematikuppgiften.

Analysen i tredje fasen visar att majoriteten av elevgrupperna tillslut utformade en programkod

som fungerade och stämde överens med aritmetiska talföljden i matematikuppgiften. Sekvensen

nedan är från första lektionssekvensen och visar hur en elevgrupp testade, felsökte och till sist

kom fram till en fungerande programkod. Karl: Lägger den där så sätter vi istället för n där så har vi bara hur många gånger det händer [placerar formeln i en loop]. Nu så, [testar]. Nej fel. Karl: Just ja vänta [testar]. Nej fel. Va?? Tre gånger… det blir nio. Men den här ska bara hända en gång. Ola: Dra ut den då. Karl: Sen tillbaka med det som ska repeteras. Så sätter vi den andra delen nedanför. [delar på ekvationen och placerar + ett nedanför loopen]. Change S by ett. [testar] tio, ok ok. Karl: Om vi stället testar med 2 [test] 7. Ola: Du måste lägga in en etta. Karl: Nej, det är rätt. Karl: Vi provar 100, om det blir 301. Yes!!!

Elevgruppens strategi var att använda sig av en loop för att repetera det algebraiska uttrycket.

Vid elevernas första test skrev programmeringsverktyget ut ett svar som inte var förväntat och

en felsökning påbörjades. Fasen uppmuntrar till kreativa matematiska resonemang då eleverna

felsöker det algebraiska uttrycket och insåg att datorn repeterat hela uttrycket. Det var först då

som eleverna reflekterade över att det endast var en del av uttrycket som bör repeteras. Det

medförde att eleverna behövde felsöka, skapa en ny idé, genomföra nya planen och återigen

testa lösningsmetoden. Eleverna omformulerade programkoden och flyttade runt blocken som

inte skulle repeteras. Till sist testade eleverna lösningsmetoden och fick ett korrekt svar.

5.2.4 Sammanfattning programmeringsprocessen Sammanfattningsvis presenterar analysen att eleverna ges möjlighet att utveckla sitt kreativa

matematiska resonemang med hjälp av ett programmeringsverktyg under studiens utformade

lektioner. Med utgångspunkt från McCracken et al. (2001) fem faser beskrivs tre av dessa faser

relevanta för studiens resultat. De tre faserna som visas i analysen och utvecklar elevers kreativa

matematiska resonemang är: 1) abstrahera 2) delproblem och 3) testa. Första fasen i

programmeringsprocessen medför att eleverna skapar ett nytt resonemang om

matematikuppgiftens innehåll, val av strategi samt om programmeringsverktygets funktioner.

Page 39: Programmering i matematikundervisningen

38

Andra fasen, delproblem arbetar eleverna med olika delproblem för att i ett senare skede sätta

ihop till en helhetslösning. Eleverna utvecklar sitt kreativa matematiska resonemang genom att

resonera om variabler, blockens position i programmeringsverktyget, hur det algebraiska

uttrycket för aritmetiska talföljden kan skrivas i programmeringsverktyget samt vilka delar av

det algebraiska uttrycket som skulle kunna utformas som en repetition. I sista och avslutande

fasen, testa provkör eleverna sin programkod och därefter påbörjades en felsökning. Analysen

visar att eleverna var mycket aktiva i testfasen och upplevdes engagerade och motiverade.

Programmeringsverktyget gav eleverna feedback på om programkodens utformning, vilket

medförde att nya resonemang skapades. Eleverna resonerade främst om vilken del i

programkoden som inte var korrekt, hur blocken var placerade i programkoden, huruvida svaret

var korrekt eller ej och det skapades även argument för de handlingar som eleverna resonerade

kring. Avslutningsvis visar analysen att eleverna utvecklar sitt kreativa matematiska

resonemang i tre olika faser under programmeringsprocessen. Dock konstateras det att den sista

och tredje fasen, testa ger störst möjlighet till utveckling och lärande.

6. Diskussion I följande avsnitt presenteras studiens metod- och resultatdiskussion. Avsnittet inleds med

resultatdiskussion som diskuterar och problematiserar studiens resultat. Därefter följer

metoddiskussionen som behandlar för- och nackdelar med studiens metod. Avsnittet avslutas

med studiens kunskapsbidrag och presenterar studiens konsekvenser för framtida

matematikundervisning.

6.1 Resultatdiskussion Resultatdiskussionen är indelad i två delar utifrån studiens två forskningsfrågor. Första delen

diskuterar första forskningsfrågan och andra delen diskuterar andra forskningsfrågan.

6.1.1 Matematikuppgiftens design Studiens resultat presenterar hur en matematikuppgift kan utformas med hjälp av ett

programmeringsverktyg med syfte att utveckla elevers kreativa matematiska resonemang.

Programmeringsverktyget medförde en programmeringsprocess där eleverna värdesatte sista

och femte fasen, testa. Eleverna reflekterade över sin lösningsmetod, skapade nya strategier och

resonemang för att lösa matematikuppgiften. Det visade sig att i slutet på

programmeringsprocess skapades störst möjligheter för eleverna att utveckla sitt kreativa

matematiska resonemang. Detta kan kopplas till ett av de sex koncepten i datalogiskt tänkande

Page 40: Programmering i matematikundervisningen

39

då människan ska vara logisk och resonera kring vad programmet ska göra (Barefoot

Computing, 2014).

Med utgångspunkt från hypotetiska lärandebanans identifierade nyckelaspekter konstateras att

elevernas förkunskaper är avgörande för att matematikuppgiftens syfte ska uppnås. En

nyckelaspekt var att eleverna förstod och analyserade aritmetiska talföljden genom att resonera

om likheter och skillnader mellan figurerna på uppgiftsbeskrivningen. Elevernas förkunskaper

bör sträcka sig till att förstå och se olika typer av mönster samt ha kunskaper om algebraiska

uttryck (Drijvers et al., 2010). Ett av det fem tillvägagångsätten i datalogiskt tänkande beskriver

att eleverna behöver inneha vissa förkunskaper för att arbeta med programmering (Barefoot

Computing, 2014). Detta skapade ett dilemma eftersom ett flertal elevgrupper visade sig inte

inneha tillräckligt med förkunskaper inom detta område. En annan nyckelaspekt som

identifierats var att elevgrupperna i programmeringsprocessen arbetade med att skapa en

programkod i linje med det algebraiska uttrycket. Ett flertal elevgrupper upplevde det

utmanande att sätta ihop ett algebraiskt uttryck så att datorn förstod och läste av programkoden

på ett korrekt sätt. Dock bör alla elevgrupper inneha goda förkunskaper att skapa ett algebraiskt

uttryck som stämde överens med den aritmetiska talföljden. En förklaring till dilemmat skulle

kunna vara att eleverna inte är vana vid att testa sina lösningsmetoder. Wing (2008) och Papert

(1980) talar för att det är viktigt att implementera datalogiskt tänkande tidigt i skolåren, vilket

eventuellt hade inneburit en större programmeringsvana hos eleverna.

Studiens design utvärderades och reviderades efter varje lektion. Totalt reviderandes studiens

design i två omgångar. Utvärderingen av lektionerna visar att eleverna fick möjlighet att

utveckla sitt kreativa matematiska resonemang och resulterade i ett flertal nyckelaspekter i

hypotetiska lärandebanan. Lektionernas utvärdering strävade efter att synliggöra de delar i

lektionerna som uppfyllde studiens syfte, men framförallt synliggöra de delar i lektionerna som

inte motsvarade studiens syfte och därmed behövde revideras. Min studie motsäger Kalelioglu

och Gülbahar (2014) som uttrycker att programmering inte bidrar till att elever utvecklar sina

kunskaper i matematik.

Studiens resultat visar att revideringen av matematikuppgiften framförallt innehöll

omformuleringar av uppgiftsbeskrivningen för att skapa förståelse hos eleverna. Ett av de fem

tillvägagångssätten i datalogiskt tänkande är att eleverna förstår matematikuppgiften, vilket kan

kopplas till de revideringar som genomfördes för att skapa en större förståelse hos eleverna

(Barefoot Computing, 2014). Det skapas ett dilemma när matematikuppgiften utformades och

Page 41: Programmering i matematikundervisningen

40

reviderades efter en elevgrupp som forskaren inte tidigare träffat. Åkerfeldt et al. (2018),

Mannila (2018) och Drijvers et al. (2010) uttrycker i tidigare forskning att det är viktigt att

anpassa undervisningen efter eleverna och deras tidigare erfarenheter för att möjliggöra ett

lärande. Det innebär att matematikuppgiften troligtvis hade utformats på ett helt annat sätt om

forskaren var medveten om elevernas exakta kunskapsnivå, tidigare erfarenheter samt fick

möjlighet att utveckla en relation till varje enskild elev. Ett försök till att möta eleverna utifrån

deras tidigare erfarenheter var att vid starten på lektionssekvenserna visa

programmeringsverktygets funktioner för att alla elever skulle få samma utgångspunkt. Två

exempel presenterades för att påvisa hur eleverna skapade variabler och utformade ett

algebraiskt uttryck. Under lektionerna blev det märkbart att dessa exempel var till stor nytta för

eleverna som snabbt skapade en förståelse för programmeringsverktyget, vilket medförde att

eleverna kunde fokusera på att lösa matematikuppgiften.

Lektionerna utvärderades även utefter vilken roll programmeringsverktyget fick under

lektionerna. Under första lektionen visade det sig att de flesta elever i första delen av

matematikuppgiften inte använde sig av programmeringsverktyget som därmed en passiv roll.

Det medförde att resultatet inte blev som tänkt och matematikuppgiften reviderades till nästa

lektion. Under andra lektionen arbetade vissa elevgrupper med programmeringsverktyget från

start, vilket visade på flera uppfyllda lärandemål. En förklaring till att eleverna i början av

matematikuppgiften inte använde sig av programmeringsverktyget kan vara att de är vana vid

att arbeta med penna och papper, därmed upplevde det enklare att påbörja

programmeringsprocessen med en känd metod.

I matematikuppgiftens andra delar fick programmeringsverktyget en roll som ram och

responsgivare. En nyckelaspekt som resultatet identifierade var att programmeringsverktyget

blev en ram för hur eleverna kunde arbeta med och utforma det algebraiska uttrycket. Det

innebar att eleverna, med hjälp av programmeringsverktyget fick en förståelse för det

algebraiska uttryckets möjligheter och begränsningar.

Tidigare forskning visar att programmeringsprocessen innebär i stor utsträckning att testa

programkoder och att det är en del av inlärningsprocessen (McCracken et. al., 2001; Åkerfeldt

et al., 2018). Ytterligare en nyckelaspekt som identifierats var att programmeringsverktyget gav

eleverna direkt feedback på lösningsmetoden. Responsen från programmeringsverktyget bidrog

sedan till att eleverna skapade ny kunskap och nya strategier för att finna den korrekta

lösningsmetoden. Eftersom eleverna anses oerfarna inom programmering har de inte fått

Page 42: Programmering i matematikundervisningen

41

kunskaper om hur viktigt det är att avsluta programmeringsprocessen med att testa

programkoden. En förklaring till dilemman skulle kunna ses utifrån lärarens perspektiv.

Tidigare forskning visar att matematiklärare upplever okunskap inom datorkunskap och

programmering och det skulle kunna vara en bidragande faktor till att eleverna inte arbetat med

programmering tidigare (Benton et al., 2017; Drijvers et al., 2010). För att återkoppla till

studiens syfte konstateras att för att ge eleverna möjlighet att utvecklas krävs det en didaktisk

princip som utgår från elevernas tidigare kunskaper men också fortutbildning för lärare för att

uppleva bekvämlighet i en den specifika undervisningssituationen.

Min studie visar alltså samma sak som Dalton och Goodrum (1991) studie, att eleverna fick en

effektiv inlärning när matematikuppgiften utformats som en problemlösningsuppgift men löstes

med hjälp av ett programmeringsverktyg. Om eleverna arbetat med matematikuppgiften med

penna och papper, utan programmeringsverktyget hade elevernas lärande troligtvis sätt

annorlunda ut. Eleverna hade exempelvis inte arbetat efter en ram för det algebraiska uttrycket.

Eleverna skulle inte kunna få feedback på samma sätt, utan istället blir läraren respondent och

lösningsmetoden skulle inte kunna testas. Elevernas arbete med matematikuppgiften genom

programmeringsverktyget har således bidragit till flera kreativa matematiska resonemang som

annars inte varit aktuella.

Ett annat resultat värt att diskutera är valet av programmeringsverktyget och hur det påverkade

uppgiftens utformning. Första och mest centrala förklaringen till att programmeringsverktyget

Blockly använts i studien är programspråket. Blockly har ett blockbaserat programspråk, vilket

innebär att eleverna använder sig av färgade block som liknar pusselbitar. Manilla (2018)

skriver i tidigare forskning att blockbaserat programspråk är att föredra vid introduktion av

programmering. Det är ett enkelt språk som är lätt att förstå och går snabbt att lära sig. Som

tidigare nämnts har eleverna inte läst programmering i skolan innan och ansågs därför vara

nybörjare. Andra förklaringen är att Blockly finns tillgängligt för alla och eleverna behöver inte

logga in eller registrera sig för att använda programmeringsverktyget. Detta upplevdes som en

fördel eftersom eleverna snabbt kunde starta igång sin programmeringsprocess utan förarbete.

Valet av programmeringsverktyg hade givetvis sätt annorlunda ut om eleverna hade haft större

kunskaper inom området, men även om forskaren hade haft större kunskaper om elevernas

tidigare erfarenheter. Fördelen med matematikuppgiftens utformning är att den undervisande

läraren kan anpassa programmeringsverktyget till elevgruppen, vilket medför att uppgiften kan

appliceras i flera elevgrupper på ett enkelt sätt. Ytterligare en fördel är att det inte krävs speciellt

Page 43: Programmering i matematikundervisningen

42

mycket förkunskaper av den undervisande läraren för att implementera programmet i

undervisningen. Tidigare forskning uttrycker att undervisande lärare upplever det utmanande

att använda teknik i sin undervisning eftersom det krävs nya didaktiska förhållningssätt

(Drijvers et al., 2010). Då kan ett program som Blockly vara till fördel eftersom det inte krävs

speciellt mycket förkunskaper samt elever och undervisande lärare kan lära tillsammans.

Sammanfattningsvis konstateras att studiens uppgiftsdesign är utformad efter en elevgrupp utan

tidigare erfarenheter av programmering samt utifrån matematikämnets kursplan för årskurs ett

i gymnasieskolan. En inledande hypotetisk lärandebana låg till grund för de revideringar som

genomfördes efter avslutad lektionssekvens och resulterade i ett flertal nyckelaspekter.

Matematikuppgiftens utformning är avgörande för hur eleverna tolkar problemet, skapar en

strategi och på vilket sätt de tar sig ann problemet.

6.1.2 Analys av programmeringsprocessen av aspekter av kreativa resonemang Resultatet visar att abstrahera, delproblem och testa är de tre faser i programmeringsprocessen

som eleverna utvecklar sitt kreativa matematiska resonemang (McCracken et al., 2001). För att

betrakta ett resonemang som kreativt och matematiskt ska elevernas resonemang innehålla

argument för strategival utifrån matematikens grund med relevanta begrepp. Resonemanget

skulle anses nytt för eleverna, slutligen leda till en lösning på problemet samt eleverna skulle

motivera relevansen på problemets svar (Lithner, 2008).

De tre faser som resultatet presenterar är tre skilda delar i elevernas programmeringsprocess.

Elevernas resonemang utformades på olika sätt beroende på vilken av faserna som de befann

sig i. Första fasen behandlade uppgiftsbeskrivningen och elevernas förståelse för vad som

förväntades av dem. För att koppla tillbaka till studiens syfte förde eleverna kreativa

matematiska resonemang men inte med hjälp av programmeringsverktyget. Första delen av

programmeringsprocessen innehöll endast resonemang kring matematikuppgiften. Detta skapar

ett dilemma då eleverna påbörjar sina resonemang och väljer en strategi innan de börjat arbeta

i programmeringsverktyget. Elevernas valda strategi fick snabbt revideras eftersom de inte haft

programmeringsverktyget i åtanke. Det var endast ett fåtal elevgrupper som påbörjade sin

programmeringsprocess genom att arbeta direkt i programmeringsverktyget och därefter valde

en strategi utifrån verktyget. Elevgrupperna som påbörjade sitt arbete med hjälp av

programmeringsverktygen blev snabbt bekväma och anpassade strategin utefter

programmeringsverktygets möjligheter. En logisk förklaring till att flertalet elevgrupper inte

Page 44: Programmering i matematikundervisningen

43

använde programmeringsverktyget i programmeringsprocessen start kan vara att eleverna

upplevde programmering som ett nytt moment.

Andra fasen, delproblem fick en helt ny innebörd med hjälp av programmeringsverktyget.

Eleverna resonerade kring hur de olika blocken skulle placeras för att programkoden skulle

fungera. Eftersom eleverna inte arbetat med programmering innan och ansågs nybörjare

uppstod det ett dilemma för de elever som inte vågade prova sig fram. Ett flertal elevgrupper

upplevde att de fastnade och inte kom vidare. Jäder (2015) har en relevant förklaring på

dilemmat. Han uttrycker att elever sällan arbetar med uppgifter som inte har en given

lösningsmetod, vilket resulterar i att eleverna inte tränas tillräckligt i att våga prova sina

strategier. Vidare skriver han att eleverna är vana vid att beräkna proceduruppgifter och behöver

därmed inte välja strategi (Jäder, 2015). Dock skriver Åkerfeldt et al. (2018) att grunden till att

lyckas inom programmering är att först misslyckas och våga testa. Ytterligare en förklaring till

dilemmat skulle därför kunna vara att de elever som aldrig kommit i kontakt med

programmering upplevde fasen delproblem som utmanande eftersom de inte fått kunskaper om

att programmering till viss del innebär att testa sig fram.

Testa som är den tredje fasen var enligt resultatavsnittet den fas som eleverna fick störst

möjlighet att utveckla sitt kreativa matematiska resonemang. Sista delen i en

problemlösningsprocess är den mest relevanta eftersom det är då som programkoden testas

(McCracken et al., 2011). Under den sista delen i programmeringsprocessen har eleverna tid

för reflektion och ser tillbaka på sin lösningsmetod. Det finns flera förklaringar till att testfasen

var den del av programmeringsprocessen som främst möjliggjorde elevers utveckling av

kreativa matematiska resonemang. Första förklaringen är att när eleverna testade sin

programkod fick de direkt feedback på om programkoden var korrekt eller ej. När eleverna

testade programkoden och fick resultatet skapades ett kreativt resonemang kring svaret, oavsett

om det ansågs korrekt eller ej. Andra förklaringen är att efter eleverna testat programkoden

påbörjades en felsökning, vilket innebar att eleverna försökte ta reda på vilken del i

programkoden som inte var korrekt. Felsökningen skapade nya resonemang och eleverna fick

ofta revidera sin strategi. Tredje och sista förklaringen är att programmeringsverktyget ansågs

nytt för eleverna, vilket resulterade i flertalet resonemang om verktygets möjligheter och

begränsningar.

Resultatet visar även att programmeringsverktyget bidrog till att eleverna resonerade och

diskuterade det algebraiska uttrycket för aritmetiska talföljden på ett sätt som de troligtvis inte

Page 45: Programmering i matematikundervisningen

44

hade gjort om de skulle löst uppgiften som en vanlig matematikuppgift. Ett flertal elevgrupper

stötte på dilemman som hur programmeringsverktyget prioriterade i blocken, vilka variabler

som var relevanta för datorn att ha kunskaper om samt i vilken ordning blocken skulle sitta för

att datorn skulle läsa av programkoden på ett korrekt sätt. Dessa dilemman bidrog till att

eleverna utvecklade sitt kreativa matematiska resonemang samt sitt datalogiska tänkande. Inget

av dessa dilemman ovan hade varit aktuellt om matematikuppgiften hade lösts på ett vanligt

sätt med exempelvis penna och papper.

Avslutningsvis konstateras att programmering och matematik har många likheter. Lovric

(2018) uttrycker att programmering och matematik går hand i hand. Han syftar till att

matematikens teoretiska delar kan användas praktiskt inom programmeringen genom att skapa

programkoder. Detta medför att programmering kan användas som ett verktyg för att främja

elevers lärande i matematik samt skapa förutsättningar för elever att utveckla sitt kreativa

matematiska resonemang.

6.2 Metoddiskussion För att uppnå studiens syfte och besvara forskningsfrågorna valdes en kvalitativ

forskningsansats och UDF som metodansats. En reflektion som är värd att diskutera är valet av

studiens metod och om det finns ytterligare en metod som hade varit relevant för studiens syfte

och forskningsfrågor. Studiens syfte är att undersöka hur digitala lärmiljöer i programmering

kan utveckla elevers förmåga att föra resonemang i algebra. I detta fall hade inte en kvantitativ

forskningsansats varit aktuell eftersom syftet med en kvantitativ metod är kvantifiering och

siffror och därmed hade syftet med studien ej uppnåtts. Kvalitativa forskningsansatsen är vald

utefter studiens syfte och forskningsfrågor vilket innebär att resultatet kan anses trovärdigt.

Detta eftersom studiens metod motsvarar det resultat som ansågs relevant och bidrog därmed

till ett väsentligt resultat.

UDF är en metod vars studiens resultat direkt kan appliceras i undervisningen och användas av

undervisande matematiklärare. Hade en annan metodansats valts hade givetvis resultatet sätt

annorlunda ut och studien hade inte bidragit med ett direkt användbart resultat. Dock hade en

observationsstudie varit relevant eftersom ett syfte med studien är att undersöka elevers

utveckling av kreativa matematiska resonemang. En vidare reflektion är att om en observation

hade genomförts skulle det kräva mer av deltagarna och den undervisande läraren. Det hade

eventuellt upplevts mer utmanande att få deltagare till studien samt innehållet i den

Page 46: Programmering i matematikundervisningen

45

observerande lektionen hade varit styrt av den undervisande läraren. Av den anledningen kan

UDF anses som bäst lämpad för studiens syfte och forskningsfrågor.

Metodens utgångspunkt är en cyklisk process som bidrar till att urskilja i resultatet vad eleverna

egentligen lärt sig. I denna studie genomfördes två cyklar av processen, vilket innebar att

matematikuppgiften utformades, testades i en lektion, utvärderades och sist reviderades.

Metodens cykliska process var ett systematiskt arbetssätt som skapade utvecklingsmöjligheter

för den valda matematikuppgiften. Efter den första cykliska processen blev det tydligt att

programmeringsverktyget inte användes i en av deluppgifterna. Detta medför att denna

information inte hade uppmärksammats utan den cykliska processen och därmed hade

lärandemålen inte uppnåtts. Efter att den andra cykliska processen genomförts fanns det delar i

matematikuppgiften som inte uppfyllde lärandemålen. Utvärderingen pekade på att eleverna

missförstod syftet med en av deluppgifterna och blev resultatfokuserade istället för att fokusera

på att lösa problemet. Återigen hade informationen inte uppmärksammats utan den cykliska

processen. Det systematiska arbetssättet innehållande cykliska processen ger studien en

trovärdighet genom att forskaren steg för steg arbetat för att konkretisera delar av studiens

resultat. Systematiken i den cykliska processen visar även hur forskaren arbetat med att stärka

studiens pålitlighet och säkerhetsställa en fullständig redogörelse. Revideringar av

matematikuppgiften genomfördes efter varje avslutad lektion och utvärdering med syfte att

skapa en matematikuppgift som främjade och utvecklade elevers kreativa matematiska

resonemang. Ytterligare revideringar hade varit till nytta för att utveckla matematikuppgiften

för en större måluppfyllelse.

Studiens urval av deltagare motiverades utifrån elevernas förkunskaper och utifrån kursplanen.

Gymnasieelever i årskurs ett ansågs inneha de förkunskaper som krävdes för att kunna

genomföra matematikuppgiften. Deltagarna skulle anses nybörjare i programmering eftersom

programmeringsverktyget som användes var blockbaserat och enkelt. Kursplanen för

matematikkurserna 1 a-c beskriver hur programmering ska användas i

matematikundervisningen och var därför relevant för studien.

6.3 Studiens kunskapsbidrag Studien har visat på vad en matematiklärare på gymnasiet bör tänka på när hen ska utforma en

matematikuppgift med hjälp av ett programmeringsverktyg, med syfte att skapa förutsättningar

för elever att utveckla sin resonemangsförmåga. Tidigare forskning har uttryckt att elever inte

får tillräckligt med utrymme i matematikundervisningen för att utveckla sin

Page 47: Programmering i matematikundervisningen

46

resonemangsförmåga (Jäder, 2015). Forskningen visar även att de matematikuppgifter som

innehåller delar av resonemang anses som utmanande och är ofta frivilliga för eleverna att

beräkna. Detta medför att eleverna får en begränsad kunskap inom matematikämnet som

framförallt innehåller olika typer av procedurberäkningar (Jäder, 2015). Lärare som undervisar

i matematik behöver därför utveckla undervisningen mot att erbjuda eleverna olika typer av

matematikuppgifter som utmanar och utvecklar elevernas olika förmågor. Som tidigare nämnts

är programmering ett nytillkommet ämne i grundskolan och gymnasieskolan. Tidigare

forskning har visat att programmering och matematik går hand i hand och eleverna ges större

möjlighet till inlärning när eleverna får konstruera egna problem (Lovric, 2018; Marshall &

Buteau, 2013). Programmeringsprocessen beskrivs ofta som en problemlösningsprocess med

ett flertal olika faser, vilket medför att programmering kan användas som verktyg för att

utveckla elevers resonemangsförmåga (Manilla, 2018). Därav hade det varit intressant att skapa

ytterligare förståelse för hur programmeringsverktyget spelar roll i elevernas utveckling genom

att jämföra grupper av elever som löser samma matematikuppgift med och utan verktyget.

Resultatet i första forskningsfrågan presenterar hur en matematikuppgift kan utformas med

hjälp av ett programmeringsverktyg, med syfte att utveckla elevers kreativa matematiska

resonemang. Programmeringsverktyget får en central roll under elevernas

programmeringsprocess och blir till en ram för vad som kan utföras, både utifrån verktygets

funktioner men även utifrån matematikämnet. Programmeringsverktyget fungerade även som

en responsgivare och gav eleverna feedback på lösningsmetoden och eleverna fick vägledning

i deras fortsatta arbete. Matematikuppgiften behöver upplevas enkel att förstå för att eleverna

ska uppleva en inre motivation att vilja lösa problemet. Matematikuppgiftens utformning kräver

dock ett relativt avancerat problem eftersom det ska inneha flera olika metoder som eleverna

måste använda sig av för att finna lösningen på problemet. Matematikuppgiften kan med fördel

även inneha flera olika lösningsalternativ, vilket innebär flera alternativa lösningsmetoder.

En förfinad hypotetisk lärandebanan med ett flertal nyckelaspekter har presenterats för att

synliggöra elevernas lärande och till följd av detta få ett underlag för matematikuppgiftens

revideringar. Programmeringsverktyget skapade en progression som utvecklade elevernas

resonemangförmåga genom att ge feedback och synliggöra fel som eleverna behövde åtgärda

för att finna en korrekt lösning. Eleverna utvecklade en djupare förståelse för variabler och

algebraiska uttryck med hjälp av programmeringsverktyget som ram.

Page 48: Programmering i matematikundervisningen

47

Den utformade matematikuppgiften som är en del av studiens resultat kan direkt implementeras

in i matematikundervisningen eller användas som en inspiration till undervisande

matematiklärare att själva utforma en liknande matematikuppgift med hjälp av ett

programmeringsverktyg.

Andra forskningsfrågan har studerat i vilka faser i programmeringsprocessen som eleverna gavs

möjlighet att utveckla sitt kreativa matematiska resonemang. Analysens resultat visar att faserna

abstrahera, delproblem och testa ger eleverna möjlighet att resonera kreativt och matematiskt.

I första fasen abstrahera krävs det att eleverna tillsammans resonerar för att skapa en förståelse

för matematikuppgiftens innebörd. Eleverna skapar en förståelse och väljer en strategi för att

påbörja programmeringsprocessen. Andra fasen, delproblem kräver resonemang för varje del i

problemet som eleverna arbetar med. Eleverna resonerar om variabler och dess betydelse,

blockens placeringar och på vilket sätt delarna kan bli en helhetslösning. Tredje och sista fasen,

testa får eleverna feedback från programmeringsverktyget och elevernas resonemang innehåller

framförallt problemlösande argument för hur de ska revidera sin programkod för att hitta den

rätta lösningen på problemet.

Även om studien bidragit till ny kunskap krävs det ytterligare forskning inom området. Ett

förslag till ytterligare forskning inom området är att med en intervention studera traditionell

matematikundervisning och matematikundervisning innehållande programmering. Detta för att

studera vilka möjligheter eleverna får att utveckla sin resonemangsförmåga med hjälp av

programmering i jämförelse med traditionell matematikundervisning. Det finns ett intresse att

fortsatt studera huruvida programmering faktiskt ger en positiv effekt på elevernas förmåga att

utveckla sin resonemangsförmåga.

Page 49: Programmering i matematikundervisningen

48

7. Referenser Alfredsson, L., Bråting, K., Erixon, P., & Heikne, H. (2011). Matematik 5000, 1c. Stockholm:

Natur & Kultur.

Bakker, A. (2018). Design research in education, A practical guide for early career

researchers. England: TJ International Ltd.

Barefoot computing. (2014). Barefoot computing. Hämtad 2019-09-23, från

https://www.barefootcomputing.org/about-barefoot.

Benton, L., Hoyles, C., Kalas, I., & Noss, R. (2017). Bridging Primary Programming and

Mathematics: Some Findings of Design Research in England. Digital Experiences in

Mathematics Education, 3(2), 115-138. doi: 10.1007/s40751-017-0028-x.

Bryman, A. (2018). Samhällsvetenskapliga metoder. Stockholm: Liber.

Corbin, J., & Strauss, A. (2008). Basics of Qualitative Research (3rd ed.): Techniques

and Procedures for Developing Grounded Theory. USA: Sage Publications. Tillgänglig:

http://methods.sagepub.com.db.ub.oru.se/book/basics-of-qualitative-research.

Dalton, D., & Goodrum, D. (1991). The effects of computer programming on problem-

solving skills and attitudes. Educational computing research, 7(4), 483-506. doi:

10.2190/762V-KV6T-D3D1-KDY2.

Drijvers, P., Doorman, M., Boon, P., Reed, H., & Gravemeijer, K. (2010). The teacher and the

tool: instrumental orchestrations in the technology-rich mathematics classroom. Science

and Mathematics Education, 75(2), 213-234. doi: 10.1007/s10649-010-9254-5.

Eriksson Barajas, K., Forsberg, C., & Wengström, Y. (2018). Systematiska litteraturstudier i

utbildningsvetenskap. Stockholm: Natur & Kultur.

Hagland, K., Hedrén, R., & Taflin, E. (2005). Rika matematiska problem – inspiration till

variation. Malmö: Liber.

Jonsson, B., Nordqvist, M., Liljekvist., Y. & Lithner, J. (2014). Learning mathematics

through algorithmic and creative reasoning. The Journal of Mathematical Behavior, 36,

20-32. doi: 10.1016/j.jmathb.2014.08.003.

Jäder, J. (2015). Elevers möjligheter till lärande av matematiska resonemang

(Licentiatavhandling). Norrköping: Linköpings Universitet. Tillgänglig:

http://webstaff.itn.liu.se/~micho58/research/Licentiatavhandling_Jonas_Jader.pdf.

Kalelioglu, F., & Gülbahar, Y. (2014). The effects of teaching programming via Scratch on

problem solving skills: A discussion from learners´ perspective. Informatics in

education, 13(1), 33–50.

Page 50: Programmering i matematikundervisningen

49

Kiselman, C., & Mouwitz, L. (2008). Matematiktermer för skolan. Göteborg: Nationellt

Centrum för Matematikutbildning, NCM Göteborgs Universitet.

Lithner, J. (2008). A research framework for creative and imitative reasoning. Education

studies in mathematics, 67 (3),255–276. doi: 10.1007/s10649-007-9104-2.

Lovric, M. (2018). Programming and Mathematics in an Upper-Level University Problem-

Solving Course. Problems, Resources, and Issues in Mathematics Undergraduate

Studies, 28(7), 683–698. doi:10.1080/10511970.2017.1403524.

Mannila, L. (2018). Att undervisa programmering i skolan. Lund: Studentlitteratur.

Marshall, N., & Buteau, C. (2013). Learning Mathematics by Designing, Programming, and

Investigating with Interactive, Dynamic Computer-based Objects. International Journal

of Technology in Mathematics Education, 21(2), 1-6.

McCracken, M., Almstrum, V., Diaz, D., Guzdial, M., Hagen, D., Kolikant-Yifat, B., Laxer,

C., Thomas, L., Utting, I., & Wilusz, T. (2001). A Multi-National, Multi-Institutional

study of assessment of programming skills of first-year CS students. SIGCSE Bull,

33(4), 125–140.

Moreno-León, J., Robles, G., & Román-González, M. (2016). Code to Learn: Where Does It

Belong in the K-12 Curriculum?. Journal of Information Technology Education, 15,

283-303.

Nordqvist, M. (2016). On Mathematical Reasoning - being told or finding out. Department of

Mathematics and Mathematical Statistics. Umeå: Umeå Universitet. Tillgänglig:

http://umu.diva-portal.org/smash/get/diva2:954413/FULLTEXT01.pdf

Papert, S. (1980). Mindstorms, Children, Computers, and Powerful Ideas. Brighton:

Harvester Press.

Plomp, T., & Nieveen, N. (2013). Educational Design research, part A: an introduction.

Nederländerna: Enchede. Tillgänglig:

https://www.researchgate.net/profile/Brenda_Bannan/publication/263733328_The_Inte

grative_Learning_Design_Framework_114_-

_133_An_Illustrated_Example_from_the_Domain_of_Instructional_Technology/links/0

046353bc22945ecfd000000/The-Integrative-Learning-Design-Framework-114-133-An-

Illustrated-Example-from-the-Domain-of-Instructional-Technology.pdf#page=12.

Polya, G. (2003). Problemlösning, en handbok i rationellt tänkande av G. Polya. Stockholm:

P.A Norstedt & Söner.

Page 51: Programmering i matematikundervisningen

50

Sidenvall, J., Lithner, J., & Jäder, J. (2015). Students’ reasoning in mathematics textbook

task-solving, International Journal of Mathematical Education in Science and

Technology, 46(4), 533-552. doi: 10.1080/0020739X.2014.992986.

Skolverket. (2011). Läroplan, examensmål och gymnasiegemensamma ämnen för

gymnasieskola 2011. Tillgänglig:

https://www.skolverket.se/undervisning/gymnasieskolan/laroplan-program-och-amnen-

i-gymnasieskolan/laroplan-gy11-for-gymnasieskolan.

Strauss, A., & Corbin, J. M. (1990). Basic of qualitative research: grounded theory procedures

and techniques. Newbury park, CA: Sage.

Trangius, K., & Hall, E. (2018). Programmering i matematiken. Lidköping: Thelin Förlag.

Ulin, B. (2008). Fibonacci-talen och gyllne snittet. Nationellt Centrum för

Matematikutbildning, NCM. Göteborg: Göteborgs universitet. Tillgänglig:

http://bestallning.ncm.gu.se/wp-content/uploads/2017/03/fibonacci-talen.pdf.

Vetenskapsrådet. (2017). God forskningssed. Stockholm: vetenskapsrådet.

Wing, J. (2006). Computational thinking. Communications of the ACM, 49 (3).

Wing, J. (2008). Computational thinking and thinking out computing. The Royal Society, 366,

3717–3725. doi:10.1098/rsta.2008.0118.

Wing, J. (2010). Computational Thinking: What and Why?. Tillgänglig:

https://www.cs.cmu.edu/~CompThink/resources/TheLinkWing.pdf.

Yadav, A., Stephenson, C., & Hong, H. (2017). Computational Thinking for Teacher

Education. Communications of the ACM, 60(4), 55-62. doi:10.1145/2994591.

Åkerfeldt, A., Kjällander, S., & Selander, S. (2018). Programmering, introduktion till digital

kompetens i grundskolan. Stockholm: Liber.

Page 52: Programmering i matematikundervisningen

51

8. Bilagor 8.1 Bilaga A: Missivbrev Hej! Jag heter Amanda Scherdin och läser till ämneslärare på Örebro Universitet. Just nu arbetar jag med mitt examensarbete som syftar till att undersöka hur digitala lärmiljöer i programmering ger eleverna förutsättning att utveckla sin resonemangs- och problemlösningsförmåga. Min studie ska också undersöka hur programmering kan främja elevernas kreativa resonemang i matematikundervisningen. Som en del av denna studie så ber jag dig om tillåtelse att spela in ljud och bildskärm på ett digitalt hjälpmedel under en matematiklektion där ditt barn medverkar. Syftet med inspelningen är att kunna analysera i detalj vad som sker när eleverna får arbeta med programmering som ett digitalt verktyg. Med hjälp av denna analys kommer undervisningen i matematik kunna förbättras både för ditt barn och för framtida elever. Ljudklippen kommer ej att bli tillgängliggjorda på internet eller på annat allmänt sätt utan är endast till för mina analyser. Alla namn som kommer presenteras i dokumentationen är fiktiva så att ditt barns medverkan förblir anonymt. Om ni av något skäl inte vill att ditt barn ska delta respekterar jag ert beslut. Det är även möjligt att alltid avsäga sin medverkan, både under studiens gång eller vid senare tillfälle. Var vänligen att diskutera detta med ditt barn och därefter kryssa i ett alternativ nedan som sedan lämnas till er matematiklärare. Om ni har några frågor får ni gärna kontakta mig, [email protected]. ……………………………… ( ) Det är ok att mitt barn spelas in. Målsmans underskrift och namnförtydligande

( ) Jag vill inte att mitt barn spelas in.

……………………………… Elevens underskrift och namnförtydligande Hälsningar Amanda Scherdin

Page 53: Programmering i matematikundervisningen

52

8.2 Bilaga B: Inledning och instruktioner inför genomförande av studie Visa programmeringsverktyget ”Blockly” https://developers.google.com/blockly Logic – Bestämmer vägval, sant eller falskt

Loops – Upprepning av en kod medans någonting fortfarande stämmer

Math - Matematik

Text - Text

Lists – Ej aktuell för studien

Color – Ej aktuell för studien

Variables – Skapar egna variabler

Functions – Kan sätta in koder i andra koder med hjälp av endast en variabel

Genomgång av exempeluppgift:

1. 𝑦 beror av 𝑥 enligt formeln 𝑦 = 1200 − 4𝑥 Beräkna 𝑥 = 100

2. Startkostnaden 𝑠 för att hyra en bil är 250kr, därefter är kostnaden för varje mil 25kr. 𝑥 = 𝑎𝑛𝑡𝑎𝑙𝑚𝑖𝑙. Vad blir den totala kostnaden 𝐾 för att hyra en bil om man åker 10mil?

𝐾 = 250 + 25𝑥

Page 54: Programmering i matematikundervisningen

53

8.3 Bilaga C: Instruktioner till att använda FScapture (datainsamling)

1. Stäng alla fönster på datorn. 2. Googla Blockly och öppna programmeringsverktyget.

https://developers.google.com/blockly 3. Sätt i USB-stickan i datorn (stickan heter Kingston)

4. Klicka på genvägen som finns på stickan, då:

a. Öppnas en panel med olika verktyg b. Klicka på filmrullen c. Ställ sedan in verktyget med: full screen, record audio –

microphone d. Tryck start

5. För att se om inspelningen är igång, titta efter en ikon, filmrullen nere i högra hörnet på datorn. Ikonen ska blinka vit och röd.

6. Arbeta i Blockly

7. När ni är färdiga med uppgiften tyck på ikonen i högra hörnet a. TRYCK SPARA. b. SPARA PÅ FSCAPTURE (stickan) och döp inspelningen till

siffran som ni blivit tilldelade.

8. Ta ut stickan

Page 55: Programmering i matematikundervisningen

54

8.4 Bilaga D: Matematikuppgift – Aritmetisk talföljd Uppgift

Figurerna på bilden är lagda med stickor och mönstret antas fortsätta på samma sätt.

a) Finn en formel för antalet stickor 𝑆i figur nummer 𝑛 med hjälp av

programmeringsverktyget Blockly.

b) Beräkna därefter 𝑛 = 7 och 𝑛 = 100

c) Kan ni hitta ytterligare en lösningsmetod på problemet?

Lösning:

Page 56: Programmering i matematikundervisningen

55

Lösning Det finns flera olika lösningar. Tre metoder visas nedan. Metod 1 Börja med att göra en tabell: Figur nr n 1 2 3 4 Antal stickor S 4 7 10 13

Antalet stickor ökar med 3 från en figur till nästa figur. Så skulle figurerna kunna vara uppbyggda på följande sätt: Figur nr n 1 2 3 4 Antal stickor S 1+3 1+3∙2 1+3∙3 1+3∙4

Detta ger oss formeln 𝑆 = 1 + 3𝑛. Metod 2 Figur nummer n innehåller n kvadrater, var och en med 4 stickor. Vi får antalet om vi justerar för att de inre stickorna, som är 𝑛 − 1, räknas två gånger. 𝑆 = 4𝑛 − (𝑛 − 1) = 3𝑛 + 1. Metod 3 Använd figur 3𝑛 för lösningsmetod men resonemanget är allmängiltigt. Beräkna först de horisontella stickorna 2𝑛 (se de svarta pilarna på bilden) Formeln ser ut:𝑆 = 2𝑛 Beräkna sedan de yttre stickorna (2) Formeln ser ut: 𝑆 = 2𝑛 + 2

Figur 3𝑛

Page 57: Programmering i matematikundervisningen

56

Till sist besräkna de inre stickorna (𝑛 − 1) Då får vi formeln: 𝑆 = 2𝑛 + 2 + 𝑛 − 1 = 1 + 3𝑛 𝑆 = 1 + 3𝑛 (Alfredsson et al., 2011)

Figur 3𝑛

Page 58: Programmering i matematikundervisningen

57

Lösning med programmeringsverktyg Blockly 𝑛 = 7 Metod 1 Metod 2

Metod 3

Page 59: Programmering i matematikundervisningen

58

𝑛 = 100 Metod 1 Metod 2 Metod 3

Page 60: Programmering i matematikundervisningen

59

8.5 Bilaga E: Matematikuppgift – Aritmetisk talföljd (revidering) Uppgift

Figurerna på bilden är lagda med stickor och mönstret antas fortsätta på samma sätt.

a) Skriv en kod i programmeringsverktyget Blockly som beräknar hur många stickor som

finns i figur 7.

b) Kan ni hitta ytterligare en lösningsmetod på problemet?