42
1. Temeljna literatura CSE – Klasifikacija istraživanja_ koja su područja CSE i najvažniji radovi. Klasifikacije istraživanja iz područja CSE (metodike informatike) – Valentine, Fincher-Petre. Kvalitativne metode (naglasak fenomenografija) – prednosti i nedostaci, mogućnosti i primjeri primjene. Lit:/istraživanjaCSER - /Guide to teaching CS/pogl 3-4 Modeli (kategorije) istraživanja poučavanja računalne znanosti: Znanje početnika – problemi programera početnika Razumijevanje koncepata - varijable, rekurzija, nasljeđivanje – jedno od predloženih rješenja jest vizualizacija Vještine učenja – rješavanje problema, traženje pogrešaka u programskom kodu, apstrakcija Paradigme učenja i poučavanja programiranja – funkcionalnost, logičnost, proceduralnost i objektna orijentiranost Učenje i poučavanje programskih jezika s naglaskom na objektno orijentirano programiranje – SmallTalk, Java, C#, Python ili Prolog Različite tehnike poučavanja – rad u laboratoriju, rad na projektima i u grupama Pedagoška upotreba informatičkih alata – Alice, BlueJ i Jeliot (Java), Karel, Scratch Socijalna pitanja u poučavanju računalne znanosti – različitosti i etika Učitelji računalne znanosti – ljetne škole za učitelje, radionice i projekti za učitelje Područja za CSE istraživanje: Istraživanja užih opsega Istraživanja motivirana upotrebom sredstava Istraživanja u psihologijskoj tradiciji Neki važniji radovi: Pregled automatiziranih pristupa ocjenjivanju programskih zadataka. Konceptualni modeli software-skih rukotvorina. Učinkovitost algoritama – zablude.

Metodika II NAJNOVIJE - Skraćeno

Embed Size (px)

DESCRIPTION

MNI 2

Citation preview

Page 1: Metodika II NAJNOVIJE - Skraćeno

1. Temeljna literatura CSE – Klasifikacija istraživanja_ koja su područja CSE i najvažniji radovi. Klasifikacije istraživanja iz područja CSE (metodike informatike) – Valentine, Fincher-Petre. Kvalitativne metode (naglasak fenomenografija) – prednosti i nedostaci, mogućnosti i primjeri primjene.

Lit:/istraživanjaCSER - /Guide to teaching CS/pogl 3-4

Modeli (kategorije) istraživanja poučavanja računalne znanosti: Znanje početnika – problemi programera početnika Razumijevanje koncepata - varijable, rekurzija, nasljeđivanje – jedno od

predloženih rješenja jest vizualizacija Vještine učenja – rješavanje problema, traženje pogrešaka u programskom kodu,

apstrakcija Paradigme učenja i poučavanja programiranja – funkcionalnost, logičnost,

proceduralnost i objektna orijentiranost Učenje i poučavanje programskih jezika s naglaskom na objektno orijentirano

programiranje – SmallTalk, Java, C#, Python ili Prolog Različite tehnike poučavanja – rad u laboratoriju, rad na projektima i u grupama Pedagoška upotreba informatičkih alata – Alice, BlueJ i Jeliot (Java), Karel,

Scratch Socijalna pitanja u poučavanju računalne znanosti – različitosti i etika Učitelji računalne znanosti – ljetne škole za učitelje, radionice i projekti za učitelje

Područja za CSE istraživanje: Istraživanja užih opsega Istraživanja motivirana upotrebom sredstava Istraživanja u psihologijskoj tradiciji

Neki važniji radovi: Pregled automatiziranih pristupa ocjenjivanju programskih zadataka. Konceptualni modeli software-skih rukotvorina. Učinkovitost algoritama – zablude. . Smješteno učenje (eng. Situated learning) u obrazovanju u rač. znanostima. Premala zastupljenost djevojaka i žena u računalnim znanostima Modeli i područja za istraživanje obrazovanja u rač. znanostima. Učenje programiranja. Fenomenografski pogled.

Najvažniji radovi od: John Stasko - istraživao animacije – dinamičku vizualizaciju Mark Guzdial – usredotočio se na načine podučavanja dizajna Michael Clancy - daje pregled nekoliko starijih istraživanja o krivim idejama i

pogrešnim stavovima koje studenti usvajajuNell Dale - opisiva jedanaestogodišnji razvoj CS Education Group na sveučilištu u Austinu, Texas.

Sally Fincher - upućuje na problem traženja zajednice izvan lokalnih institucija

Klasifikacije istraživanja iz područja CSE (metodike informatike)

Klasifikacije tipova članaka TSP (Tehnical Symposium Proceedings): Marco Polo prezentacije, tj. »bio sam, vidio sam« Alati

Page 2: Metodika II NAJNOVIJE - Skraćeno

Eksperimenti Nifty - zadaci, projekti, slagalice, igre i paradigme Filozofski John Henry - J. Henry-ji su vrijedni za zajednicu jer bi trebali neprekidno

dostizati gornju granicu pedagogije

Istraživanje računalnog obrazovanja je višedisciplinarno područje koje spaja računalstvo s drugim disciplinama. Glavna je svrha ove discipline unaprijediti podučavanje i učenje računalstva te time pridonijeti samom računalstvu. Cilj je pokazati i objasniti projekte kvalitativnog istraživanja u CER-u koji su utemeljeni na pedagoškoj tradiciji.

Područja istraživanja računalnog obrazovanja: 1. Istraživanja užih opsega 2. Istraživanja motivirana upotrebom sredstava 3. Istraživanja u psihologijskoj tradiciji

Istraživanja utemeljena na obrazovnoj tradiciji: Odnos istraživanja i rezultata Kvalitativna istraživanja

Pregled istraživačkih projekata s pristupom temeljenim na pedagogiji: Rad u tradiciji Vygotskyja Fenomenologija

Radovi temeljeni na konstruktivističkim teorijama učenja

Kritički pristup u istraživanju računalnog obrazovanja

Višestrani pristupi

Još jedan pristup klasifikaciji je fokusiranje na karakter i svrhu rada: uvod alata, prezentacija rezultata eksperimentalnog istraživanja... Ovaj pristup koristi Valentine.

MARIAN PETRE

U nedostatku vodeće teorije i metodologije mi posuđujemo istraživače metode iz drugih disciplina. Ono što posuđujemo treba biti oblikovano pitanjima kojima se želimo baviti i razumijevanjem prirode dokaza. Kako posuđujemo treba biti oblikovano nastojanjem da budemo rigorozniji što je više moguće.

Fincher i Petre dijele područje istraživanja obrazovanja rač. znanosti na sljedećih 10 potpolja:

1. kako studenti razumiju gradivo

2. animacije, vizualizacije i simulacije

3. metode poučavanja

4. procjenjivanje

Page 3: Metodika II NAJNOVIJE - Skraćeno

5. obrazovna tehnologija

6. prijenos profesionalne prakse u učionicu

7. udruživanje novih izuma i tehnologija

8. prijenos fakultetskog poučavanja na obrazovanje na daljinu

9. jačanje i zadržavanje

10. stvaranje discipline

Fenomenografija – vrlo rijedak način i stil pisanja, u CS-u programiranje, pisanje koda.

2. Poučavanje programiranja – stanje danas (alati, vizualizacije, roboti..i njihova didaktička pozadina). Demonstracija primjera korištenjem ALICE ili JkarelRobot. Pregled (kriteriji za taksonomiju) programskih jezika i okruženja za poučavanje programiranja. Usporedba PJ – kriteriji i rezultati. Učinkovitost robota u poučavanju programiranja – primjeri istraživanja. Legomindstorm NXTG – (objasniti programe seagway, smoothfollow). Usporedba BYOB Scratch+ enchanting s RoboMind-om. Karakteristike Alice3. Eksperiment (posredovani transfer). Barem jedan alat dobro poznavati i napraviti primjere koji pokrivaju osnovne koncepte: kontrolne strukture – selekcija, petlje te procedure. Tehnike rješavanja problema. Uloga varijabli.

Lit: /PoucavanjeProgramiranja + - /Guide to teaching CS/pogl 5

Strategije rješavanja problema Programiranje - proces rješavanja problema

Proces rješavanja problema započinje skiciranjem zahtijeva problema, a završava skicom rješenja.Faze rješavanja problema su :

Analiza problema Razmatranje alternative Odabir pristupa Dekompozicija problema Pisanje algoritma Ispravnost. Efikasnost Razmišljanje

Aktivnost 1: Tehnike rješavanja problema u računalnoj znanostiAktivnost 2. Ispitivanje reprezentativnih ulaza i izlazaAktivnost 3: Odabir varijabliAktivnost 4: Uloge varijabliAktivnost 5: Uloge varijabliAktivnost 6: Vježbanje – ”razbijanje” problema na manje dijelove Aktivnost 7: Vježbanje – analiza liste problemaAktivnost 8. Vježbanje – ispitivanje dizajna uzorka Aktivnost 9. Vježbanje – Uzorci koji koriste apstraktne tipove podatakaAktivnost 10. Vježbanje – oblikovanje radnih listova kao pomoć učenicima pri korištenju uzorakaAktivnost 11: Proces ispravljanja pogrešaka

Page 4: Metodika II NAJNOVIJE - Skraćeno

Aktivnost 12: Laboratorijske vježbe koje se bave ispravljanjem pogrešakaAktivnost 13: Promišljajuće aktivnosti

Poučavanje programiranja više puta se pokazalo kao izazov, kako za profesore tako i za studente. Za poučavatelje koji sudjeluju u kolegiju često je vrlo obeshrabrujuće kad studenti ne uspijevaju razumjeti ni primijeniti osnovne principe. Za pisanje programa potrebne su dvije faze, faza rješavanja problema i faza implementacije.

Rješavanje problemaIdealni nastavni sadržaj računalnih znanosti bi trebao studente naučiti fundamentalnim konceptima računalnih znanosti baziranih na matematičkim temeljima te razviti sposobnost korištenja tih koncepata u analizama i razvoju software-a.

ImplementacijaZa uspješno ostvarivanje ove faze student mora svladati nekoliko područja:

• Sintaksu odabranog jezika

• Konstrukcija programa

• Razvojno okruženje

• Testiranje i ispravljanje pogreški

Klasifikacija pristupa:1. Predavanja i vježbe

U ovom pristupu studenti se pasivni primatelji informacija, s minimalnom interakcijom PREDNOSTI PRISTUPA PREDAVANJA I VJEŽBI

• Pruža osnovno znanje početnicima

• Vježbe pružaju studentima priliku da testiraju svoje znanje

2.Vizualizacija software-aVizualizacija software-a je prenošenje apstraktnih ideja koje se javljaju u kodu u vizualne prikaze koji će bolje i jednostavnije pokazati rad tog sustava. VS se dijeli na:

• Vizualizacija programa

• Animacija algoritma

• Vizualno programiranje

• Programiranje demonstracijom

• Računska vizualizacija

PREDNOSTI KORIŠTENJA ALATA ZA VIZUALIZACIJU

Page 5: Metodika II NAJNOVIJE - Skraćeno

• Objašnjavanje složenih principa pomoću slika

• Većina studenata bolje razmišlja vizualno

Vizualizacija programaAlice Alice se u prvom redu bavi animiranjem 3-D objekata i njihovim ponašanjem u malom virtualnom svijetu. Alice podržava funkcije, koje se najčešće koriste u rekurzijama, petljama, implementaciji interakcija putem događaja, odluke. Alice je 3D interaktivno programsko okruženje namijenjeno Windows operacijskimsustavima. Baziran je na Java programskom jeziku i u prvom redu služi za kreiranje 3Danimacija objekata vlastitog virtualnog svijeta.JKarelRobot Ovaj alat nastao je širenjem koncepta programa Karel the Robot.Studenti u vrlo jednostavnom okruženju daju naredbe Karelu, postavljaju zidove i premještaju ih učeći tako osnovne principe proceduralnog programiranja, ali i osnove objektno-orijentiranog pristupa JKarelRobot je napisan u Java programskom jeziku i podržava poučavanje u Pascal, Java i Lisp sintaksi.

Animacija algoritmaAnimacije algoritma služe za vizualizaciju svih operacija tog algoritma, a ne samo određenog koda ili podataka. Prvi alat za vizualizaciju algoritma, BALSASambaSamba je interaktivni animirani interpreter koji čita ascii komande i izvodi odgovarajuće animirane akcije. JHAVEJHAVE je klijent – server okružje, za prikaz animacija algoritma preko weba.

Vizualno programiranjeVisual BasicNe koristi se toliko često u procesu poučavanja.

3.Robotikonkretno prije apstraktnog.Istraživanja su pokazala da je aktivno učenje, učenje provedeno u interakciji sa okruženjem, nasuprot predavanjima, mnogo djelotvornije pri razvijanju studentovih sposobnosti stjecanja znanja“ (Linder, 2001).LEGO/Logo povezuju popularne LEGO konstrukcije sa Logo programskim jezikom, djeca su mogla napraviti strojeve od LEGO kockica te spojiti svoj stroj ne računalo a zatim koristiti programski jezik Logo za kontrolu stroja. Lego MindstormsOvo je vrlo popularan alat za podučavanje korišten na mnogim američkim sveučilištima i akademijama. REZULTATI KORIŠTENJA ROBOTA

• Potiču aktivno učenje, privlači studente i potiče entuzijazam i učenje

• Potiču suradnju i roboti postaju dio u ovoj suradnji

Page 6: Metodika II NAJNOVIJE - Skraćeno

• Potiču iskustvo sa stvarnim strojevima

• Potiču kreativnost

• Studenti mogu postavljati hipoteze te ih testirati, pri tom dobivaju odmah povratnu poruku

• Promiču dobar dizajn i planiranje

4.Učenje zasnovano na problemimaProblemi iz stvarnog života i prakse se postavljaju studentima, a oni onda uče tehnike i principe potrebne da ih riješe. 5.Kognitivno tutorstvoOva metoda uključuje promatranje radnji koje tutor (profesor) obavlja, i vježbu, prvo uz pomoć tutora, a kasnije samostalno.

Problemi pri učenju programiranje:› Razumijevanje strukturirane izrade rješenjaproblema› Učenje načina na koje se programi izvršavaju› Učenje krute sintakse programskih jezika› Učenje naredbi naizgled proizvoljnih ili moždazbunjujućih nazivaProgramiranje: čin prikupljanja i sastavljanjaskupa simbola koji pretstavljaju određenu računalnu radnju.Pojednostavljenje jezika: Basic, SP/k, Turing, „Blue“ jezik, Junior Java, GrailSprječavanje sintatičkih pogrešaka: Gnome, MacGnomeIzrada programa korištenjem objekata: LogoBlocks, Drape, Alice2.Kreiranje programa korištenjem akcija sučelja: Tortis, Roamer.Omogućiti višestruke načine izrade programa: Leogo,

Struktrurirani programi: Pascal, Smalltalk

Razumijevanje izvršavanja programaUčiniti programiranje konkretnim

Modeli izvršavanja programa

Skupno učenje

Rješavanje problema pomoću pozicioniranih objekata

Rješavanje problema pomoću koda

Kod je pretežak

Usavršavanje programiranja pomoću jezika: Cobol, Logo

Poboljšanje interakcije s jezikom

Interakcija s okružjem

Page 7: Metodika II NAJNOVIJE - Skraćeno

Usporedba PJ – kriteriji i rezultati

Po ovoj usporedbi 3 jezika su uvjerljivo najprikladnija u odnosu na ostale uspoređivane.

Python i Eiffel su najviše rangirani, što opravdava njihov dizajn kao jezika za poučavanje. Iza

njih odmah slijedi Java, koja se obično povezuje s industrijskim aplikacijama. Najpogodniji

jezici za učenje programiranja su Python i Eiffel. To su jezici koji su dizajnirani s „nastavom

na umu“ (teaching in mind). Međutim, studija je pokazala da Java, koja je primarno

dizajnirana za komercijalnu primjenu, ima svoje zasluge ako se smatra jezikom poučavanja.

Glavni cilj uvođenja robota u nastavu je poboljšanje učenja studenata. Roboti bi trebali privlačiti ljude da odaberu disciplinu računalne znanosti i poboljšavati iskustvo u učionici.

Unutar istraživanja su proveli testiranje koristeći se identičnim testom na uzorku ispitanika

koji je prelazio brojku od 800 studenata. Cijelo istraživanje su vršili u sklopu obaveznog

kolegija kojeg su svi studenti morali pohađati, a ključna razlika među grupama bila je ta što su

jedni radili s robotima tijekom laboratorijskih vježbi, dok druga grupa nije.

Metoda kojom su se koristili tijekom ovog istraživanja je eksperiment.

Studenti koji nisu radili s robotima bolje su ocjenili sadržaj kolegija od onih studenata

koji su radili s robotima. Razlika među ocjenama studenata bila je od 2.2% za „bitnost i

korisnost“, dok se razlika od 7.6% odnosila na „efikasnost instruktora“.

Iz transkripta se također došlo i do pozitivnih rezultata. Studenti iz grupe koja je radila s

robotima često su upotrijebili riječi poput „interesantno“, „zabavno“, „izazovno“ i „bitno“.

No, osim pozitivnih rezultata, dobili su se i neki negativni. Studenti su općenito bili

nezadovoljni nedostatkom simulatora što je izazvalo manjak reflektivnog vremena kod

rješavanja problema. Također su izjavili da su roboti „teški za rad“ i „oduzimaju previše

vremena“. Razlog tome je i činjenica da su se roboti mogli koristiti samo za vrijeme

laboratorijskih vježbi te ih se nije moglo ponijeti sa sobom, što je otežalo, a nekima i

onemogućilo rješavanje problema izvan laboratorija u slobodno vrijeme.

Kao rješenje ovog problema nameće se korištenje simulatora u nastavi s robotima.

• Enchanting je alat koji djeci omogućava lakše razumijevanje programiranja LEGO MINDSTORM robota

• Bazira se na Scratchu, a pokreće ga LeJOS NXJ (Java za NXT)

Konfiguracija motora i senzora

Primjer 1. Kvadrat

Page 8: Metodika II NAJNOVIJE - Skraćeno

RoboMind

• Software specijalno razvijen za obrazovanje

• Može se koristiti za znanstvene i tehničke projekte u osnovnim, srednjim školama kao i u daljnjem obrazovanju

• Razvio ga Arvid Halma, student amsterdamskog sveučilišta

Enchanting se koristi sa grafičkim ikonama koje se slažu i koje sačinjavaju program, svaka ikona sadrži prodedure i funkcije, naredbe se unose u obliku blokova, ne treba znati sintaksu, dok je RoboMind više baziran na ručnom pisanju programskog koda.

Alice 3

Objektno-orijentirano 3D obrazovno okruženje. Uvod studenata u objektno-orijentirano programiranje.

Ne treba znati sintaksu, naredbe se unose u obliku blokova (drag & drop).

Izrada 3D animacija i igara u virtualnom svijetu.

Objekti su osnovna jedinica u objektno-orijentiranom programiranju.

Svaki objekt je instanca neke klase.

Uloga varijabli

Nedavno uveden pristup koji se može koristiti pri poučavanju programiranja početnicima.

Uloga varijable određuje se prema dinamičnom karakteru varijable

Na primjer, u ulozi brojača, varijabli je dodijeljen niz vrijednosti unaprijed poznat.

Primjer Neformalna definicija

maxStrLength Podatak koji ne mijenja svoju vrijednost nakon inicijalizacija

count Podatak koji mijenja vrijednosti prema unaprijed poznatim vrijednostima

inputData Podatak u kojem je spremljena posljednja vrijednost dobivena unosom

Page 9: Metodika II NAJNOVIJE - Skraćeno

maximum Podatak u kojem je spremljena najbolja vrijednost do sad

sum Podatak u koji se akumuliraju vrijednosti drugih podataka

prev Podatak koji uvijek poprime staru vrijednost nekog podatka

3. Tipične početničke greške u programiranju – klasifikacije i uzroci. Usporedba s ekspertima. Miskoncepcije o efikasnosti i korektnosti program. – koje su, primjeri. Istraživanja vještine programiranja i tracinga, primjeri i rezultati, preporuke o efikasnim načinima.

Lit: /PocetniciProgramiranje/- /Guide to teaching CS/pogl 6

Ranije stečena znanja mogu omesti novo učenje!!!Konstruktivistička teorija učenja kaže da se znanje izgrađuje iz osobnih iskustava.Učenje je rezultat socijalnih interakcija. Staro znanje utječe na novo znanje.BUG- pogrešake u programskom kodu.BUG–ovi se mogu definirati kao neprikladna upotreba učenikovog znanja pri specifikaciji nekog procesa korak po korak.Tri osnovna tipa pogrešaka pretpostavljaju da je programski jezik inteligentan i da posjeduje sposobnost interpretacije:

• Paralelizam –više aktivnih instrukcija istovremeno

• Intencionalnost – pripisuje se usmjerenost cilju

• Egocentrizam – pretpostavlja se da postoji više programskih ciljeva nego je prezentirano u kodu

• Matematičko znanje može dovesti do zabluda pri programiranju u računalno–informacijskim sustavima.

• “+” zbrajanje : konkatenacija

• “=“ pridruživanje: uspoređivanje X = X + 1

• Brojenje od 0 a ne od 1 (polje – array)

CILJEVI ISTRAŽIVANJA BUGOVA:Učenici shvaćaju izvođenje dokaza linearno, korak po korak, ali sami ne znaju ni započeti.S druge strane, smatra se da je programiranje predmet u kojem učenik može naučiti i razviti učinkovite vještine rješavanja problema.Svaki program ima dva čitatelja:

RAČUNALO- naredbe programa pretvaraju računalo u mehanizam koji diktira kako riješiti problem

Page 10: Metodika II NAJNOVIJE - Skraćeno

ČOVJEK- programer mora znati objasniti zašto program rješava zadani problem

Učenje programiranja je izgradnja mehanizama i objašnjenja. Whorfijeva hipoteza:

''jezik određuje mišljenje'' ''jezik pomaže mišljenje''

Programeri opažaju grupu kodova koje rade zajedno (planovi) u stvaranju željenog rezultata (ciljevi)Dvije važne činjenice o cilju i planu:

• cilj se rastavlja u podciljeve, a planovi se ostvaruju u podciljevima cilja

• postoji mnogo različitih planova za ostvarivanje istog cilja

Obilježje stručnosti je sposobnost viđenja novih problema u uvjetima starih, tako da se strategije rješenja mogu prenjeti iz stare situacije u novu.. MEHANIZAM - određuje lanac akcija koje, kad se pokrenu, proizvode željeni učinak

OBJAŠNJENJA - programeri moraju objasniti zašto i kako je rukotvorina dizajnirana baš na taj način, kako bi omogučili drugim programerima da naprave efektivne promjena rukotvorina.

DIZAJNERSKE STRATEGIJE: KONSTRUKCIJA MEHANIZAMA I OBJAŠNJENJA

BISTRENJE KORAK PO KORAKOva metoda učenike uči razbiti problem na više potproblema Razbijaj probleme u potprobleme, na temelju problema koje si već riješio i za koje imaš gotova (u limenkama) rješenjaČetiri načina koja ostvaruju ''lijepljenje planova'':

• Graničenje

• Ugnježđivanje

• Stapanje

• Praćenje – kada je potrebno modificirati postojeći plan

Konstruktivni problemi- problemi koji stvaraju teškoće početnicima u učenju točne semantike jezičnih konstrukcija

• Problem prirodnog jezika

• Problem ljudskog prevoditelja

• Problem nekonzistentnosti

Problem kompozicije plana- problemi koji stvaraju poteškoće pri sastavljanju ispravnog planaProblem zbrajanja Problem optimizacijeProblem prijašnjih iskustava Problem specijalizacije

Page 11: Metodika II NAJNOVIJE - Skraćeno

Problem prirodnog jezika Problem interpretacijeGranični problemi Kognitivni problemiProblem neočekivanih slučajevaProblem zbrajanjaPočetnici mogu zbrojiti složene kombinacije planova u terminima nekih primarnih funkcija previđajući implikacije složenih sekundarnih funkcija na kasnijim kompozicijama planaProblem optimizacijePočetnici mogu biti toliko željni optimizacije svojih planova da ne provjere da li se optimizacije uopće može provestiProblem prijašnjih iskustavaPočetnici konstantno razvijaju, recikliraju i slažu planove temeljene na prijašnjim iskustvima. Često neodgovarajući aspekti već korištenih planova ometaju plan koji se koristi novoj situacijiProblem specijalizacijePočetnici razvijaju apstraktne planove koji moraju biti prilagođeni za novu situaciju. Ponekad su ti planovi neodgovarajući ili nisu pravilno implementirani.Problem prirodnog jezikaPridruživanje prirodnog jezika u programski stvara BUG-oveProblem interpretacijePočetnici dijelom ovise o njihovom postojećem znanju ciljeva i planova u zadacima prevođenjaGranični problemiPočetnici imaju poteškoća u odlučivanju o odgovarajućim graničnim točkama u specificiranju planovaProblem neočekivanih slučajevaPočetnici povremeno pišu probleme koji rade točno za neke obične slučajeve, ali ne rade generalnoKognitivni problemiPočetnici mogu detektirati gubitak informacija iz radne memorije. Mali, ali važni dijelovi planova mogu biti izostavljeni ili planovi interakcija mogu biti preskočeni.Što karakterizira uspješne i manje uspješne početnike – važnije od usporedbi početnika i eksperata za prvi programski jezik

• predznanje

• njihove strategije

• mentalne modele

• različite vrste stilova

Različite vrste stilova novih programera:

• Movers (pokretače) -eksperimentiraju, mijenjaju kodove, uspješno koriste povratne informacije o greškama i imaju potencijala za rješavanje problema i napredovanje.

• Stopers - nešto neuspješniji pri rješavanju problema. Iz različitih razloga idu u krivom smjeru.

• Thinkers (exteme movers) – male šanse za uspjeh.

Page 12: Metodika II NAJNOVIJE - Skraćeno

Iznenađuje učestalost problema: P6: OSNOVNI MEHANIZMIProblemi s tehničkim detaljima.Konzole, polukolone, tipfeleri, nepravilno pisanje riječi. Konvencije Java imenovanja fileova. Formatiranje izlaza, urednost, razmaci, komentari.Osim ovog, često se javljaju problemi:P3: ZASTOJ PRI DIZANJU PROGRAMARješenje se ne može primijeniti u algoritmu ili se algoritam ne može primijeniti u programuP4: PROBLEMI S OSNOVNOM STRUKTUROMProblemi na strukturalnim razinama (klasa/objekt/major), oni imaju općeniti dizajn i klase, ali osnovni strukturalni detalji su loši. Zbrka s lokalnim varijablama. Osnovni problemi s kreiranjem i korištenjem instanci objekataP2: RAZUMIJEVANJE TEMEProblemi nerazumijevanja lab vježbi / tema ili njihovih rješenja, tj. bitan je problem, a ne ono što program treba raditi.Sljedeći po učestalosti važni problemi su:Proceduralni:P16: MATRICE(array) P13: TOK PODATAKA I METODE VODEĆEG MEHANIZMAP8: PETLJEP7: KONTROLA TOKAOO:P24: KONSTRUKTORI

USPOREDBA S EKSPERTIMA

Pet apstraktnih karakteristika mentalnih reprezentacija računalnih programa kod eksperata:

hijerarhijske strukture i višeslojnost

eksplicitno pridruživanje koda ciljevima (između slojeva)

temelj prepoznavanja ponavljajućih uzoraka

povezanost znanja u unutrašnjem smislu

utemeljenje u programskom tekstu

Reprezentacija programa

konkretne informacije – kako program radi

funkcionalne informacije – što program radi

Bolji programeri se razlikuju od lošijih po savladavanju funkcionalne informacijeNapredni programeri koristili strategiju čitanja programa u onome slijedu u kojem bi se ono izvršavalo

ekspertni programeri “vežu” svoje hipoteze o programskim funkcijama na specifične informacije u programskom kodu

početnici naprave mnoštvo spekulativnih hipoteza o programskim funkcijama

Page 13: Metodika II NAJNOVIJE - Skraćeno

testiranje ekspertnih programera i početnika u sposobnostima nalaženja informacija u programskom tekstu:

PRETPOSTAVKA: eksperti će nadmašiti početnike u nalaženju većine informacijaPočetnici- studenti koji su upravo odslušali kolegij PascalEksperti- programeri sa 7 godina iskustvaPrema Soloway-u i Ehrlichu, znanje programiranja je predstavljeno kao set struktura blokovskog oblika koje nazivamo planovima.Hipotetski se došlo do zaključka da bi razlika između početnika i eksperata bila u njihovim sposobnostima da povezuju programski kod sa planskim oznakama za sve samo ne za veoma jednostavne planove. Tri perspektive:

1. INŽENJERI- žele poboljšati programsku produktivnost i pouzdanost

2. NASTAVNICI- poboljšavaju početno razumijevanje programiranja i početničke sposobnosti za ubrzano učenje te uče kako ispravno generirati i održavati programe

3. ZNANSTVENICI- pomažu pri razumijevanju i izvedbi, te rješavanju kompleksnih problema pomoću vještina

Dakle, očiti zaključak je da je glavni nedostatak programera početnika posjedovanje manje programskog znanja i možda čak nepostojanje vještina potrebnih za razvijanje ekspertovih reprezentacija, posebno vještina u obavljanju simboličkog izvršavanja.

MISKONCEPCIJE O EFIKASNOSTI I KOREKTNOSTI PROGRAMA

Naziv „alternativne koncepcije“ je izraz koji se koristi za ono što se često zvalo miskoncepcija u prošlosti.

Threshold˝ koncepti

Pojedina prethodna shvaćanja mogu voditi do krive koncepcije kada je poznati pojam korišten u nepoznatom kontekstu.

Kako se studenti (učenici) upoznaju s novim temama, njihovo površno znanje ih

navodi na razvijanje svojih osobnih pravila. Na nesreću, zbog njihovog nedovoljnog znanja ova njihova pravila mogu rezultirati krivom koncepcijom, koje jednom postavljene, teško se isprave.

pogreške pružaju učenicima priliku da isprave postojeće znanje Miskoncepcije se temelje na nekim modifikacijama ispravnog znanja Ne mogu se lako detektirati pomoću konvencionalnih testova

Poteškoće nastavnika početnika:

1. razumijevanje kako ljudi ne razumiju teme koje oni doživljavaju kao trivijalne2. spuštanje njihove razine razumijevanja na učenikovu razinu3. „ulaženje u glavu“ nekom drugom (ne samo učeniku), jer nemaju iskustva Fullerov model (tri razvojne faze iskustva nastavnika):

1. faza o samom sebi 2. faza o zadacima 3. faza utjecaja

Page 14: Metodika II NAJNOVIJE - Skraćeno

Prijelaz iz faze usmjerene prema sebi u fazu usmjerenu prema učeniku je funkcija iskustva.

Nemoguće je pripremiti buduće nastavnike za sve situacije s kojima će se suočiti u budućnosti!

Pedagoški alati za suočavanje s alternativnim koncepcijama Interakcija učenik-učitelj (liječnik-pacijent)

U MTCS tečaju (computer science teaching method): poticati nastavnike da slušaju svoje učenike od prvog nastavnog iskustva

Dijagnostičke vježbe (niz testova) 1. aktivnost

Greške i pogreške (Errors and mistakes) kao prilika za učenje i poboljšanje razumijevanja (pričanje o greškama)

Nastavnik treba „ući“ u učenikovu glavu, prepoznati pojam ili temu koju učenik ne razumije, pokušati zamisliti učenikove koncepcije zadanog koncepta i pogoditi učenikove namjere koje su dovele do (krivog) odgovora

1. Aktivnost: Rad na učeničkom razumijevanju osnovnih tema računalne znanosti2. Aktivnost: Vrednovanje učenikovog odgovora na pismenom ispitu3. Aktivnost: Klinički razgovor s učenikom kao sredstvo otkrivanja alternativnih koncepcija

Multinacionalna, multiinstitucionalna studija za procjenu vještina programiranja studenata prve godine informatičkih znanostiProgramiranje je jedna od mnogih vještina koje studenti informatičih znanosti moraju savladati.Ova radna grupa istražila je koliko su studenti vješti u programiranju nakon završetka jednog ili oba tečaja informatičkih znanosti.U skladu s tim provedeno je probno ispitivanje, u kojem je sudjelovalo nekoliko sveučilišta a rezultati su bili ispod očekivanjaPokazalo se da velik broj studenata nakon završetka tečaja NE ZNA programirati.

OKVIR ZA UČENJE OBJEKATA U PRVOJ GODINIKoraci koji se trebaju usvojiti su: 1. Izdvojiti problem iz njegovog opisa 2. Stvoriti pod-probleme 3. Pretvoriti pod-probleme u pod-rješenja 4. Ukomponirati pod-rješenja u program koji radi 5. Procjeniti i ponavljati

Međunarodno istraživanje o vještinama čitanja i pretraživanja koda kod programera početnikaMoguća objašnjenja za neznanje programiranjaNedostatak :

Sposobnosti rješavanja problema (problem solve),

Raščlanjivanja na podprobleme

Page 15: Metodika II NAJNOVIJE - Skraćeno

Rješavanja podproblema

Sastavljanja rješenja u konačnu cjelinu

Slabo znanje o:

Osnovnim principima programiranja

Rutinskim programerskim zadacima poput pretraživanja koda (tracing)

McCraken grupa definira rješavanje problema kao proces od 5 koraka:

1. Sagledavanje problema

2. Generiranje podproblema

3. Pretvaranje podproblema u podrješenja

4. Sastavljanje podrješenja

5. Procjenjivanje i ponavljanje (evaluate and iterate)

Ispitivanje na studentima iz 7 zemalja na dva načina

Sposobnost predviđanja ishoda izvršenja kratkog dijela koda

Sposobnost završetka skoro završenog koda izborom ponuđenih mogućnosti

o LOŠIJI REZULTATI!

ZAKLJUČCI ISHODA TESTIRANJA

Student razumije kod & muči se s pisanjem programa à nedostaje mu vještina rješavanja problema

Student ne razumije kodà problem slabog znanja i vještina

Podaci prikupljeni pomoću 12 pitanja višestrukog izbora!Treba uzeti u obzir 6 razlika:

Sposobnost studenata

Iskustvo studenata

Motivacija studenata

Programski jezik

Način testiranja

Format ispisa

ANALIZA BILJEŠKINajviše točnih odgovora kod onih koji su koristili praćenje rezultata

Page 16: Metodika II NAJNOVIJE - Skraćeno

Najmanje točnosti oni koji nemaju bilješkeČesto studenti bilježe na lakšim pitanjima, a na težima neZAKLJUČAK

Pitanje važnosti ovakvih zadataka za pisanje programa

Smatra se da je sposobnost praćenja koda važna, jer se tako otkrivaju greške

Iskusni programeri brže čitaju kod od početnika

Važnost sposobnosti praćenja koda korak po korak

4. Rekurzija – osnovni slučajevi – tipične greške, studentske teškoće i njihovi uzroci. Zašto je teška – primjeri. Mentalni modeli rekurzije. Modeli poučavanja rekurzije.

Lit: /Rekurzija

Rekurzija je osnovni koncept u računalnoj znanosti ali je početnicima težak za shvaćanje. U računalnoj znanosti, rekurzija je postupak u kojem rješenje problema ovisi o rješenjima manjih oblika istog problema. bitna stvar za shvaćanje rekurzije je osnovni slučaj – sastavni dio algoritma rekurzije. Rekurzija je temeljni pojam u informatici, kako početnicima stvara probleme nastavnici bi trebali više vremena posvetiti objašnjavanju rekurzije kao i proceduralnom aspektu kategoriziranja.Baziramo se na dva osnovna slučaja. Prvi je vezan uz apstraktni pristup koji je vezan uz osnovne slučajeve čija rješenja možemo lako pretpostaviti. Drugi je pak vezan uz proceduralni pristup. Dakako da bismo u potpunosti znali što je rekurzija i naravno da bismo je znali koristiti, moramo usvojiti oba područja. U nastavku rada objasnit ćemo najčešće probleme učenika u indetificiranju i radu osnovnih slučajeva.Cilj studije je procjenjivanje studentovih shvaćanja osnovnih slučajeva rekurzivnih rješenja. Zadatak nam je bio otkriti poteškoće studenata u identificiranju i upotrebljavanju osnovnih slučajeva u formulaciji i procjeni rekurzije. Studija se sastojala iz dva dijela. Prvi dio je bio vezan uz analizu znanja vezanog za rekurziju, dakle u tom djelu smo doznali koje su najčešće pogreške i koje su krive predođbe rješavanja najčešće. Drugi dio istraživanja uključuje procjenu studentove procjene rekurzije Preporuke za prevladavanje poteškoća studenata:Naglasak na apstraktni i deklarativni aspekt rekurzije , učitelji bi trebali utrošiti malo više vremena te osloboditi učenike kod apstraktnog kategoriziranja i upotrebljavanja osnovnih slučajeva .Također treba biti oprezan kod prihvaćanja ili formuliranja konkretnih modela, ako smo došli do nedjeljivog možemo ilustrirati mogućnost null graničnih vrijednostiTrebalo bi pomoći eliminirati pogreške na način da upoznamo studenta s problemom na koji bi mogao naićiTe kod učenika koji rade u različitim programima, treba razviti strategiju samokontrole da ne bi zamijenili programe u kojima rade, a time i pogriješili kod.

Studentska procjena rekurzije:Preference algoritama:U cilju određivanja koji algoritam preferiraju studenti su se vodili po sljedećim kriterijima: točnost, kompleksnost koda i tip osnovnog slučaja. Studenti su dali najveću važnost točnosti algoritma, sljedeći po redu je bila kompleksnost koda, a tek na kraju tip osnovnih slučajeva.

Page 17: Metodika II NAJNOVIJE - Skraćeno

Napredni studenti uobičajeno opravdavaju svoja preferiranja u izrazima točnosti , dok početnici gledaju uglavnom na čitljivost I duljinu koda.TočnostZaključujem da studenti loše shvaćaju točnost, uglavnom smatraju sve dok radi kako treba dobar je , također studenti su smatrali da je algoritam netočan kad bi se bavio nepredvidljivim, ali ipak osnovnim slučajem.Klasifikacija poteškoća studenata:

Ovdje vidimo četiri osnovna tipa poteškoća u utvrđivanju osnovnih slučajeva:neznanje I granični slučajevi: studenti su skloni ignorirati male probleme, ne uključuju granično područje-za varijable koje definiraju problem, Izbjegavanje upotrebljavanja out of rage vrijednosti: ponekad da bismo dobili nešto jednostavniji algoritam potrebno je izaći izvan granicaNedostatak osnovnih slučajeva, ponekad studenti znaju u potpunosti ignorirati osnovne slučajeve te tako stvore netočne rekurzivne algoritme koji ne uključuju ijedan završni uvjetSuvišnost osnovnih slučajeva nastaju kada definiramo dodatni slučajevi kao osnovni time dobivamo algoritam koji je mnogo kompleksniji nego što bi trebao biti.

Zašto je teška – primjeriFaktorijeli, ima li neparna znamenka u broju?, da li je niz sortiran?, da li je jedinka X član liste L, koliko čvorova ima u binarnom stablu?, koliko mnogo različitih putova od N koraka se može skakač kretati po šahovskoj ploči od jednog kvadrata do drugog?

Moguća objašnjenja

Ovdje se objašnjavaju vjerojatni uzroci problema studenata s osnovnim slučajevima. Ovo istraživanje podržava prvo objašnjenje, dok bi se ostali trebali ispitati u nekim drugim istraživanjima.

(a) Konkretan ili apstraktan pristup rješavanja problema

(b) Pogrešna upotreba metoda rješavanja problema

(c) Utjecaj konkretnih koncepcijskih modela:

(d) Prijelaz s drugih programskih paradigmi:

Zaključujemo predlaganjem sljedećih nastavnih preporuka koje bi trebale pomoći u prevladavanju studentskih poteškoća svladavanja rekurzije:

Naglasak na deklarativna i apstraktna gledišta rekurzije mogu pomoći ukloniti studentske poteškoće u shvaćanju rekurzije. Preporuča se učiteljima ulaganje dodatnog truda za raspravu raznih gledišta na koncept osnovnog slučaja. Naglasak bi trebao biti na deklarativnom i proceduralnom aspektu kategoriziranja i korištenja osnovnog slučaja kao dijela stvaranja rekurzije. Osnovne slučajeve bi se trebalo shvatiti kao najmanje oblike dopuštenog ulaza problema, umjesto samo kao dodatne uvjete zaustavljanja.

Učitelji bi trebali biti vrlo oprezni u prilagođavanju ili dizajniranju konkretnih modela. Na primjer, kada se koristi model ruske lutke (babuške), učitelj bi trebao koristiti

Page 18: Metodika II NAJNOVIJE - Skraćeno

strukturu ruske lutke koja u sebi sadrži najmanju rastavljivu lutku koja u sebi ne sadrži još jednu. Ta struktura predstavlja mogućnost null graničnih vrijednosti.

Učitelji mogu pomoći ukloniti bug-ove tako da studentima jasno ukažu na probleme koje mogu susresti. Dijagnostički upitnici, kao primjer opisan ovdje, mogu biti iskorišteni kao aktivnost razreda, i osnova za razrednu raspravu o klasifikaciji i korištenju osnovnih slučajeva.

Studenti koji uče različite programske paradigme bi se trebali navoditi na korištenje strategija samokontrole, da izbjegnu zablude pri prebacivanju s jedne paradigme na drugu.

Mentalni modeli rekurzije

Rekurzija je temeljni koncept u računalnoj znanosti. Učenikovo poznavanje rekurzije se može izraziti njegovim mentalnim modelom rekurzije. Ovaj rad predstavlja proučavanje mentalnih modela rekurzije koji su stvorili studenti prve godine na sveučilištu 2000, 2001, i 2003. godine. Izraz mentalni model je korišten od strane kognitivnih psihologa.Mentalni modeli su korišteni u edukaciji o računalnoj znanosti da bi se studentima

opisalo znanje o rekurziji. U ovom istraživanju mentalni modeli su identificirani od tragova studentskih rekurzivnih programa. 'Trag' je studentova prezentacija protoka kontrole i preračuna rješenja rekurzivnih

programa. Kategorije definiraju karakteristike rekurzije kao što su aktivni i pasivni tok.

PRIKUPLJANJE PODATAKA I ANALIZA

1. RAZVIJANJE METODE KODIRANJA

2. POJAVLJIVANJE MENTALNIH MODELA

3. PROCJENA KODIRANJA

IDENTIFICIRANI MENTALNI MODELI

Mentalni model studenata je indiciran kombinacijom kategorija njihovim tragovima ili procjenom. Kahneyeve sposobne copies (C) modele je identificiran i sljedeći modeli su također smatrani nesposobnim modelima: Looping model (L), Active model (Ac), Step model, Return value model, MagicStudenti sa 'odd ' i 'step' modelima su bili najmanje aktivni u njihovom učenju i nemaju pouzdano razumijevanje rekurzije.

Studenti sa 'return-value' modelom nisu mogli konstruirati pouzdan model rekurzije jer nisu imali pouzdan model prolaznog parametra i povratno vrijednosne procjene koji su potrebni za razumijevanje kako se izvršava rekurzivni program.

Page 19: Metodika II NAJNOVIJE - Skraćeno

Identifikacija mentalnih modela rekurzije studenata ne samo da donosi nepouzdane modele i pogrešne koncepcije već također potiče predavače da se vračaju na svoja učenja. Očekivano je da će neki studenti konstruirati nepouzdane mentalne modele rekurzije. Studenti sa nepouzdanim modelima trebaju biti aktivniji u učenju i trebaju biti opskrbljeni specifičnim konstrukcijama da bi stvorili konstrukciju 'copies‘ modela.

Modeli poučavanja rekurzije

Konkretni konceptualni modeli su bolji od apstraktnih modela. Genther je predložio teoriju strukturalnog mapiranja (SMT) da objasni postupak kojim

korisnici stvaraju analogiju od koncepcijskog modela do ciljanog sustava. Apstraktni model je sintetsko predstavljanje naglašene koncepcijske strukture sustava. Sljedeći modele možemo kategorizirati; prva tri kao konkretni,a zadnji apstraktni: Russian dolls (ruske lutke) Proces tracing Stack simulation Structural tempates

Postoje 2 glavne dimenzije po kojima ljudi uče: Prva dimenzija je apstrakt-konkretni Druga dimenzija je aktivno-reflektna

Učitelji bi trebali biti pažljivi pri adaptiranju ili dizajniranju konkretnih modela. Konkretni model treba ne samo uvesti analogiju relativno konkretnog objekta, već također i demonstrirati prikladnu razinu detalja unutarnjeg mehanizma.

5. Vizualizacije – primjena u poučavanju algoritama i struktura podataka. Znati objasniti primjere (obilasci binarnog stabla po širini i dubini, primjeri quick i merge sorta, heap-sorta, AVL, Dijkstra alg.najkraćeg puta, hashing, Huffmanov kod). Istraživanja stvarnih efekata vizualizacije – meta-analiza. Razine uključenosti studenata. Vrednovanje obrazovnog utjecaja AV. Okvir za eksperimentalna istraživanja. HalVis – struktura, karakteristike. Teorija multimedijalnog učenja - principi. Kognitivno preopterećenje – uzroci, načini redukcije.Lit: /Vizualizacija + /Guide to teaching CS/ dio pogl 8

Rezultat vizualiziranja je vizualizacija koja može biti viđena ili promatrana. Općenito, može se reći da nam vizualizacija omogućava da učinimo očitim značenje nekog apstraktnog entiteta, kao što je matematička funkcija ili ogroman broj numeričkih podataka fizičkog eksperimenta ili sistemske simulacije.U disertaciji [15] Ari Korhonen tvrdi da je SV polarizirana na dvije suprotne domene: programsku vizualizaciju i algoritamsku vizualizaciju. U programskoj vizualizaciji pogledi na programsku strukturu su generirani automatski i ovi pogledi koji se odnose na otkrivanje i otklanjanje pogrešaka u algoritmu praćenjem njegova izvršenja korak-po-korak su pogledi niske razine i nisu dovoljno ekspresivni da bi se adekvatno prenijelo kako algoritam funkcionira. U drugoj domeni algoritamske vizualizacije smo zainteresirani za vizualiziranje svih stanja struktura podataka tijekom izvršenja algoritma i želimo eksplicitno pokazati strukturu objekata koji su potrebni da bi se u potpunosti razumjela logika i ponašanje algoritma.

Page 20: Metodika II NAJNOVIJE - Skraćeno

Primjena u poučavanju algoritama i struktura podataka

StrukturaMetastudije i empirijske studije

• CAI

• Stilovi učenja

• Animacija algoritama

Interaktivni kursver za vizualizaciju SPA

• Grafovi

• Binarna stabla (za traženje, heap, AVL)

• Algoritmi sorta: O(n2) - insert, select, bubble, O(n log n) - merge, quick

Eksperiment na GWU

• Dizajn, rezultati, zaključci

CAI1.faza (programirano učenje) i2.faza (individualizirani sustavi)3. faza (CBE 4. faza (multimedija)5. faza (Web)

Istraživanja stvarnih efekata vizualizacije – meta-analiza

Grafičkim prikazivanjem računalnih algoritama u djelovanju, AV tehnologija (tehnologija algoritamskih vizualizacija) teži pomoći studentima računalnih znanosti u razumjevanju načina rada algoritamaAV softver se koristi:

kao pomoć instruktorima da prikažu algoritamske operacije tokom predavanja

kao pomoć studentima dok uče o osnovnim algoritmima u kursu računalne znanosti

kao pomoć instruktorima u pronalaženju studentskih grešaka linked-list programima tokom konzultacija

kao pomoć studentima pri učenju osnovnih operacija apstraktnog tipa podataka u kompjuterskom znanstvenom laboratoriju

Zbog čega instruktori računalnih znanosti izbjegavaju koristiti AVT?

misle da neće imati dovoljno vremena savladati je

Page 21: Metodika II NAJNOVIJE - Skraćeno

smatraju da korištenje te tehnologije oduzima vrijeme potrebno za ostale razredne aktivnosti

smatraju da kreiranje vizualizacija za učionicu zahtjeva previše vremena i truda.

smatraju da ta tehnologija nije edukacijski učinkovita

AV metode istraživanja

Slučajne, programske, analitičke, empiričke

kontrolirani eksperimenti - cilj otkrivanje uzročne veze između faktora (npr. nezavisnih varijabli) i mjerenja (zavisnih varijabli)

4 teorije učinkovitosti

Pismena Vjerodostojnost

Dvostruko Kodiranje

Individualne Razlike

Kognitivni Konstruktivizam

JE LI AV TEHNOLOGIJA UČINKOVITA?Na primjer, AVT je uspješno korištena kako bi aktivno angažirala studente u takvim aktivnostima kao što su

«što ako» analize algoritamskog ponašanja

vježbe predviđanja

vježbe programiranja

u takvim slučajevima, umjesto što je samo instrument prenošenja znanja, AVT služi i kako katalizator učenja

Meta-studija predlaže da je AVT edukacijski učinkovita, ali ne na konvencionalan način predložen kroz staru izreku «slika vrijedi više od 1000 riječi», nego, prema pronalascima u ovom korpusu forma učeničke vježbe u kojoj je AVT korištena je zapravo važnija od kvalitete vizualizacija proizvedenih AV tehnologijom

Razine uključenosti studenata

U meta-analizi Hundhausen, Douglas i Stasko-a iz 2001. godine [11] možemo naći podatak da

od 24 istražena eksperimenta 12 ih je uključivalo studente u dodatne aktivnosti i 10 od tih 12

eksperimenata je pokazalo statistički značajno poboljšanje u učenju studenata.

Najinteresantnije opažanje koje iznosi taj rad jest da odlučujući faktor učinkovitog korištenja

vizualizacije nije toliko u karakteristikama alata za algoritamsku vizualizaciju koliko u načinu

i stupnju uključenja učenika u aktivnosti koje nisu samo gledanje vizualizacije. Tablica 3

Page 22: Metodika II NAJNOVIJE - Skraćeno

donosi sažetak kontroliranih eksperimenata koji razmatraju učinkovitost algoritamske

vizualizacije.

Vrednovanje obrazovnog utjecaja AV

Obrazovni utjecaj vizualizacije ne ovisi samo o tome koliko dobro učenici nauče kada ga koriste, već koliko široko ga koriste predavači.Predavači vjeruju da vizualizacija pomaže učenicima učiti. Integracija vizualizacijske tehnike u učionskim instrukcijama je pala daleko ispod svog potencijala. Ova studija isključuje tu tvrdnju identificirajući uzrok u nerazumjevanju potreba ključnog člana u hijerarhiji sudionika tj. predavača. Obrazovni utjecaj vizualizacije uključuje dvije komponente; poboljšanje učenja vizualizacije i implementaciju vizualizacije u učionici. . Prijašnja istraživanja (35) pokazuju značajno razdvajanje između intuitivnog vjerovanja da vizualizacija poboljšava učenikovo učenje, voljnost i sposobnost predavača da razviju vizualizaciju u svojim učionicama. Ključna zapreka usvajanja vizualizacije od predavača je vrijeme potrebno za naučiti, instalirati, razviti vizualizaciju i tada ih integrirati u kolegij. Osim toga postoji primjetan manjak učinkovitog razvoja vizuializacije alata (oruđa) i softvera. Prepoznajemo četiri različite uloge povezane sa vizualizacijom:

a) programeri vizualizacijskog alata razvijaju alat za predočavanje (vizualiranje) sadržaja, kao što su algoritmi, strukture podataka ili izvršavanje programa.b) vizualizacijski dizajneriOd apstraktnih koncepata do njihovog vizualnog prikaza stvaranjem specifičnih vizualizacija-koristeći vizualizacijske meta alate ili direktnije metode.

c) instruktori uvode vizualizacije u svoje nastavne metode i metodiku

d) učenici gledaju i po mogućnosti djeluju s vizualizacijom u jednom ili više stupnjeva angažmana opisanih u (35)

d) pojedinac može primiti mnoge od ovih uloga, npr. predavači će također djelovati kao vizualizacijski dizajneri da bi stvorili svoje vlastite specijalizirane vizualizacije.

Različitost drugih mogućnosti za razvoj vizualizacijskih sustava i vizualizacijskih alata koji se

odnose na mnoge zapreke navedene ranije:

Dizajn za neovisnu platformu.

Obuhvaćanje većih koncepcija.

Plan za postojeće predavačke i učeničke izvore.

Dizajn za fleksibilnost. Omogućavanje sveobuhvatne, integrirane potpore. Razvoj Web stranice potpore.

Registracija alata u spremište podataka (repozitorij).

Objavljivanja. Okvir za eksperimentalna istraživanja

Page 23: Metodika II NAJNOVIJE - Skraćeno

Definirano je šest različitih formi1 uključenosti učenika u obrazovne situacije koje uključuju

vizualizaciju. Ove forme se zatim koriste za postavljanje hipoteza u budućim istraživanjima.

Definirane su ove forme:

1. Bez gledanja. Budući da je moguće naučiti algoritam bez vizualizacije, kategorija Bez

gledanja znači da nije korištena vizualizacijska tehnologija.

2. Gledanje. Gledanje je najpasivnijja od formi uključenosti. Sve ostale forme uključuju

neku vrstu gledanja.

3. Odgovaranje. Ključna aktivnost u ovoj kategoriji je odgovaranje na pitanja vezanih za

vizualizaciju. U ovoj formi učenik koristi vizualizaciju kao izvor za odgovaranje na

pitanja. Kao takvo, uključivanje sadrži samo ograničenu interakciju sa vizualizacijom.

Međutim, odgovaranje na pitanja može uključivati aktivnosti koje na kraju zahtijevaju

još gledanja.

4. Mijenjanje. Ova forma uključuje modificiranje vizualizacije. Najuobičajeniji primjer

je omogućavanje učeniku da mijenja ulazne podatke algoritma da bi istražio njegovo

ponašanje u različitim slučajevima.

5. Konstruiranje. U ovom slučaju učenici konstruiraju vlastite vizualizacije algoritama.

Forma Konstruiranje ne uključuje nužno kodiranje algoritma, iako su se kodiranje

algoritma i njegova vizualizacija pokazali kao vrlo uspješan način učenja [25].

6. Predstavljanje. Ova forma uključuje prezentiranje vizualizacije publici radi povratnih

informacija i rasprave. Predstavljena vizualizacija ne mora biti napravljena od strane

učenika.

Eksperimentalni okvir

1 Ovo nije ordinarna ljestvica. Veze između šest formi ne čine jednostavnu hijerarhiju.

Page 24: Metodika II NAJNOVIJE - Skraćeno

Opće hipoteze

I. Gledanje nasuprot bez gledanja

II. Odgovaranje nasuprot gledanja

III. Mijenjanje nasuprot odgovaranja

IV. Konstruiranje nasuprot mijenjanja

V. Predstavljanje nasuprot konstruiranja

VI. Višestruko uključivanje: ova hipoteza tvrdi „Više je bolje

Opći okvirOpći okvir je napravljen kao sredstvo poticanja konzistentnosti za sve eksperimente. Okvir

uključuje odabir ispitanika, pripremu materijala koji će se koristiti u izvedbi zadataka,

proceduru koja definira organizaciju eksperimenta i opis mjernog instrumenta za skupljene

podatke.

HalVis – struktura, karakteristike

Arhitektura za multimedijalne prezentacije algoritama nazvanu Hypermedia Algorithm

Visualization (HalVis) [10]. Termin vizualizacija upućuje na bogatiji proces od sama gledanja

animacije, a termin hipermedia označava upotrebu mnogostrukih medija, semantičke

poveznice i druga kognitivna oruđa koja pomažu studentima da formiraju točne mentalne

modele algoritama.

Ove karakteristike HalVis arhitekture su opisane dolje.

(1) uključivanje animacija u hipermedijsko okruženje koje usto koristi tekstualne opise,

statične dijagrame i interaktivne primjere da bi osiguralo kontekstualnu informaciju.

(2) uključivanje animirane analogije svaki put kada student prvi put ugleda algoritam.

(3) osiguravanje tri različita načina animiranja da ilustrira kvalitativno različite poglede

na algoritamsko ponašanje.

Page 25: Metodika II NAJNOVIJE - Skraćeno

(4) Prezentacija algoritamskih animacija u diskretnim segmentima zajedno sa

objašnjenjima specifične akcije koja se izvodi.

(5) Poticanje sudjelovanja studenta omogućavajući bogate interakcije sa animacijom i

korištenje proba i pitanja koji stimuliraju razmišljanje i potiču studenta da si pokuša

objasniti viđeno.

Arhitektura sustava

HalVis se sastoji od četiri glavne i dvije pomoćne komponente. Prva komponenta objašnjava

najvažnije operacije u algoritmu i ilustrira ih koristeći poznate analogije. Druga komponenta

je dizajnirana da pomogne studentu u razumijevanju pseudokoda prezentirajući da zajedno sa

tekstualnim objašnjenjima. Treća komponenta predstavlja četiri prezentacije simultano. Jedna

je detaljna na mikro razini, animacija algoritma na malom skupu podataka, druga je

pseudokod algoritma čiji koraci se osvjetljavaju sinkronizirano sa animacijom, treća je

verbalno objašnjenje događaja u animaciji, a četvrta je zaslon varijabli koja ilustrira kako se

njihove vrijednosti mijenjaju tijekom izvođenja algoritma. Četvrta komponenta je

namijenjena da učvrsti učenikov mentalni model prezentiranjem animacije na makro razini sa

mnogo većim skupom podataka. Ona omogućava studentu da predviđa parametre

algoritamskog ponašanja i uspoređuje ih sa stvarnim vrijednostima. Pomoćna komponenta

osigurava različite vrste pitanja. Šest komponenti su grupirane u pet modula.

Teorija multimedijalnog učenja - principi

5 glavnih principa kako koristiti multimediju da pomogne učenicima da bolje razumiju

znanstvena objašnjenja:

1. Princip višestrukih prezentacija: Bolje je predstaviti objašnjenje riječima i slikom nego

samo riječima.

2. Princip neprekidnosti: Kada se daje multimedijalno objašnjenje bolje je predstaviti

odgovarajuće slike i riječi zajedno nego odvojeno. Drugi princip kaže da studenti bolje

razumiju objašnjenja kada se slike i riječi predstave u isto vrijeme nego u različito

vrijeme.

Page 26: Metodika II NAJNOVIJE - Skraćeno

3. Princip podijeljene pažnje: Kada se daje multimedijalno objašnjenje bolje je

predstaviti riječi kao auditornu naraciju nego vizualni tekst na ekranu. Treći princip

kaže da riječi trebaju biti predstavljene auditorno, a ne vizualno.

4. Princip individualnih razlika: prethodni principi su važniji za učenike sa manje znanja

nego za one sa više znanja i za učenike sa boljim prostornim sposobnostima nego za

one sa lošijim prostornim sposobnostima. Četvrti princip kaže da svi prethodni

principi ovise o individualnim karakteristikama učenika.

5. Princip koherentnosti: Kada se daje multimedijalno objašnjenje bolje je koristiti manje

stranih riječi i slika. Peti princip kaže da studenti bolje uče iz koherentnog sažetka koji

naglašava važne riječi i slike nego iz dužih verzija sažetaka.

Kognitivno preopterećenje – uzroci, načini redukcije

Pojam kognitivne preopterećenja u kojem Učenik je namijenjen kognitivna obrada prelazi s

učenikovim dostupan kognitivne sposobnosti. kognitivno opterećenje je središnji čimbenik u

dizajnu multimedija.

Tri vrste kognitivnih zahtjevima:

osnovna obrada, popratna obrada, reprezentacijski holding.

6. Poučavanje u računalnom laboratoriju. Stjecanje iskustva u poučavanju informatike.

Lit:/Guide to teaching CS/pogl 8, 13

Zašto računalni laboratorij?

• Okruženje za učenje koje učenicima omogućava:

– istraživanje vlastitih strategija rješavanja problema

– izražavanje vlastitog rješenja za dani problem

– dobivanje povratne informacije o točnosti vlastitog rješenja

– razvoj velikih projekata

– istraživanje novih tema

Što je računalni laboratorij?

• Laboratorij – koncept bilo koje znanosti

• Definiran kao:

1)

Page 27: Metodika II NAJNOVIJE - Skraćeno

a) soba ili zgrada opremljena za znanstveno eksperimentiranje ili

istraživanje

b) akademski period posvećen radu ili učenju na takvom mjestu

2)

mjesto za vježbu, promatranje ili testiranje

• Važnost eksperimentalnog aspekta.

• Računalni laboratorij se razlikuje od ostalih po opremi i primjeni.

• Oprema: računala

• Primjena: rad učenika (programi)

Prednosti računalnog laboratorija

• Učenici su upoznati s opremom u laboratoriju.

• Nije potrebna priprema dodatnih materijala.

• Eksperiment se može izvesti puno puta i svaki put će učenici brzo dobiti povratnu

informaciju.

„Lab-first” pristup

• Okreće tradicionalni red predavanja (prezentacija teorijskog dijela nakon koje slijedi

vježbanje i eksperimentiranje u računalnom laboratoriju)

Vizualizacija i animacija

• Osnovni građevni elementi polja su apstraktni.

• Konkretiziranje i grafički prikaz tih elemenata – bolje razumijevanje njihovog rada.

Korištenje Interneta u nastavi računalne znanosti

• U nastavi računalne znanosti mu se posvećuje posebna pažnja zbog toga što se sam

Web temelji na idejama računalne znanosti kao što su: kompresija podataka, šifriranje

i algoritmi pretrage.

• Učenje računalne znanosti u računalnom laboratoriju nije ograničeno samo na

programiranje.

• Učenici su aktivni i zainteresirani za rad.

• Pomaže u razumijevanju biti računalne znanosti - što se može napraviti s računalima i

kakav utjecaj imaju polja računalne znanosti na svijet.

• Konstrukcija testa iz informatike korištenjem Bloomove taksonomije. Vrste pitanja u CSE.

Lit: /Guide to teaching CS/pogl 9-10

Page 28: Metodika II NAJNOVIJE - Skraćeno

Bloomova taksonomija

Kognitivna domena – umna učenja/vještine

Afektivna domena – osjećaji ili emocionalno učenje

Psihomotorna domena – ručne ili fizičke vještine

Kognitivna domena se može rastaviti u šest kategorija

1. prisjećanje podataka

2. razumijevanje

3. primjena

4. analiza

5. sinteza

6. evaluacija

1. PRISJEĆANJE PODATAKAMože se nazvati učenje napamet, memoriziranje teksta. Riječi koje bi mogle odrediti ovu kategoriju su: imenuj, sjeti se, reci, nabroji. Omogućuje studentu odgovore na pitanja poput:

Imenuj tri vrste loop struktura u C++-u.

2. RAZUMIJEVANJEOvo je vrsta učenja koja se javlja kada student prati što učitelj radi na satu. Ključne riječi povezani uz nju su razumi, objasni, generaliziraj, predvidi, saberi i prevedi.Pitanja koja mogu demonstrirati ovu vrstu učenja su:

Objasni što se događa sljedećem C++ kodu:

3. PRIMJENAOvakvo učenje primjenjuje nešto, već naučeno, u novu situaciju. Ključne riječi bi bile primjeniti, izračunaj, demonstriraj, manipuliraj, izmjeni, stvori i riješi. Evo nekih primjera koji bi prikazali ovakvu vrstu učenja:

Studenti su učili o redovima i strukturama, dajte im nekakav problem koji bi kombinirao ova dva koncepta zajednoPromijeni postojeću petlju tako da postane “while” petlja.

4. ANALIZAStudent s ovom vrstom učenja može odvojiti nekakav koncept u svoje komponente. Ključne riječi su: analizaj, usporedi, nađi suprotnost, razlikuj, razluči, odredi i razdvoji.

Page 29: Metodika II NAJNOVIJE - Skraćeno

Sljedeća pitanja testiraju ovu vrstu učenja:

Odredi relativne prednosti i mane RISC arhitekture naspram CISC arhitekture.

5. SINTEZAStudent s ovom razinom učenja može iskoristiti prije naučene koncepte za stvaranje nečeg novog. Ova razina je potrebna za pisanje potpuno novog programa koristeći svladane koncepte poput petlji, odluka, funkcija, itd. Ključne riječi su kombiniraj, preradi, skrati i organiziraj. Sljedeća pitanja bi ispitala razinu vladanja ovom kategorijom:

(Nadovezujući se na prošli zadatak iz kategorije analize,) napiši potpuni program za izračunavanje prosjeka, mediane i dominante i ispiši rezultate

Ako studenti uče nekakav objektno orijentiran jezik, može ih se pitati da ispišu kod za objekt. Na primjer: “Napiši sučelje za klasu koja može predstavljati razlomke, uključujući dodavanje, oduzimanje, množenje i dijeljenje razlomaka.

6. EVALUACIJAOva razina učenja se postiže kada student može vrednovati ideju, algoritam ili neki drugi pojam, i kritizirati iste. Ključne riječi su kritiziraj, vrednuj, objasni i rezimiraj.Pitanja koja mogu ispitati ovu kategoriju su:

Dati kod studentima koji ima logičku grešku u kodu pa pitati: “Nađi logičku grešku u kodu.”

Dati studentima kod pa pitati: “Daj podatke koji će testirati cijeli kod. Objasni što se provjerava sa svakim korakom.”

Kritiziraj dani kod tako da mu daš pozitivne i negativne bodove.

Page 30: Metodika II NAJNOVIJE - Skraćeno