Nada - numerisk analys & datalogi 

Kursanalys för Datalogi, grundkurs 1, för Stockholms Universitet våren 2001

Kursdata

Tid för kursens genomförande

Vårterminen 2001, hela terminen

Kursledare

Carina Edlund

Handledare

Jolanta Jensen, Anders Nilsson, Åsa Hansson, Hjalmar Jacobson och Silakhdar Krikeb

Undervisningstid

Föreläsning: 62 tim
Övning: 56 tim
Laborationshandledning: 64 tim

Antal registrerade elever:

16

Under kursens gång har dock minst 8 elever avbrutit sina studier på denna kurs. Skälen har framförallt varit arbete och andra studier.

Kurslitteratur:

Abelson, Sussman: "Structure and Interpretation of Computer Programs" (MIT 1985)
Dahl, Lindqvist: "Pascal, helt enkelt" (Studentlitteratur 1994)

För bredvidläsning rekommenderades dessutom:

Lunell: "Datalogi - begreppen och tekniken" (Studentlitteratur 1994)
Watt: "Programming Language Concepts and Paradigms" (Prentice Hall 1990)
Kruse: "Programming with Data Structures" (Prentice Hall 1989)

Kursmoment:

Tentamen: 2 poäng
Muntlig examination: 2 poäng
Laborationer: 6 poäng

Genomströmning:

Helt klara med kursen: 2 st
Klara med tentan: 4 st
Klara med muntlig del: 4 st
Klara med alla labbar: 2 st

Prestationsgrad:

15% (24 av 160)

Examinationsgrad:

6.25% (1 av 16)

Kursens mål:

Eleverna skall kunna hantera en dator (logga in, logga ut, editera texter, söka information på internet, sända och ta emot elektronisk post, använda interpretatorer och kompilatorer samt avlusare) och förstå, i stort, hur en dator fungerar. De skall kunna genomföra programmeringsuppgifter från problemspecifikation, via pseudokod till färdigt program. De skall förstå grundläggande begrepp som rekursion, iteration, listhantering. För varje nytt begrepp finns programmeringsuppgifter i kommande laboration. Eleverna får grundläggande kunskap om algoritmer för olika ändamål, för filhantering m.m. De får lära sig modularisering av program (i Pascal). I den sista delen av kursen får de dessutom kunskap om konsekvenserna av sina val avseende data- och programstrukturer samt en jämförelse mellan datorspråk (Scheme, ML, Pascal, ADA, m.fl.) samt utför laborationer i Scheme och Pascal där man utforskar skillnaderna mellan språken.

Förändringar inför denna kursomgång:

Upplägget från hösten användes och utifrån det har vissa förändringar gjorts som t.ex.:
* en stor del av den programkod som presenteras under föreläsningarna finns tillgänglig.
* föreläsningsanteckningarna har rättats.
* lektionsuppgifter har korrigerats och förbättrats.
* laborationsuppgifterna har förtydligats.

Sammanfattning

Mitt intryck var att allt gick bra under kursens gång. Kursen och dess upplägg har uppskattats mycket av eleverna.

Denna termin var antalet elever endast 16 stycken från start, av dessa har minst 8 stycken avbrutit sina studier på kursen. Detta har inneburit att varje elev har fått mycket tid med lärare och handledare. Tyvärr har jag inte upplevt att eleverna har utnyttjat denna mertid i den utsträckning som varit möjlig till att t.ex. ställa frågor till och diskutera med lärare/handledare.

Dialogen mellan mig som föreläsare/lärare och eleverna har jag ansett som mycket viktig. Vi har då diskuterat olika problem och det har enligt mig och elever fungerat bra samt att det har varit mycket givande, se även sammanställningen av enkätsvaren nedan.

De tre momenten, föreläsning, lektion och laboration, passar bra ihop enligt enkätsvaren men jag har uppfattat att det skulle vara bra om detta förbättrades.

Att så få förbereder sig till föreläsningarna tycker jag är synd. Det ökar ju förståelsen av en föreläsning, gör dem mer intressanta och ger mer, kunskapsmässigt.

Undervisningen

har bedrivits genom föreläsningar, där begrepp har förklarats och programexempel gåtts igenom och förklarats noga. Samma saker har sedan förekommit på övning och till sist ingått som moment på laborationerna. Det har fungerat bra.

Föreläsningarna har fungerat bra och flutit i ett jämnt tempo, eftersom relativt mycket tid ägnades åt pekare, poster och listor (de flesta upplever detta som svårt).

Under övningarnas ena timme löstes gemensamt uppgifter och under den andra timmen redovisade eleverna sina hemuppgifter. Att eleverna har haft hemläxa till varje övningstillfälle har de flesta upplevt som positivt och krävande. Mycket av övningstiden har ägnats åt elevernas frågor och redovisningar, detta har av en del upplevts som slöseri med tid men av merparten har detta varit mycket uppskattat.

Laborationerna är 11 stycken och de blir succesivt mer komplexa samt kräver mer självständigt tänkande. Redovisning sker varje en till två vecka/or. Genom att ha ett senastdatum med bonuspoäng för varje laboration har redovisningen stimulerats. Bonuspoängen har uppskattats men eleverna har prioriterat att förstå laborationerna framför att klara av dem i tid. Laborationsmomenten upplevs som krävande och givande.

Examination

* Tentamen omfattande 2 akademiska poäng. Traditionell blandning av uppgifter avsedda att ge insikt i elevernas teoretiska kunskaper. Inga hjälpmedel utom Systemgruppshäften.
* Muntlig framställning (= redovisning av hemläxan) omfattande 2 akademiska poäng, se ovan.
* Laborationer omfattande 6 akademiska poäng, där eleverna får praktisk erfarenhet av det som gåtts igenom på föreläsningar och övningar, se ovan.
Bra mix av moment i examinationen.

Kurslitteraturen

Scheme och Pascalboken har av ett fåtal elever ansetts vara för komplicerade för nybörjare men av de övriga har böckerna ansetts vara givande. Det finns 1 önskan att kurslitteraturen ska vara på engelska, se enkäten, men tidigare elever har önskat att engelsk litteratur ska ersättas av svensk om det är möjligt.
Föreläsningsanteckningarna har uppskattats, vilket även kan ses i enkäten där kursbunten som helhet har fått ett bra omdöme.

Elevenkät

En enkät har lagts ut på nätet. 5 stycken har svarat på enkäten och det bör observeras att det finns elever som gått andra kursomgångar än denna som svarat på enkäten. En sammanställning av alla svaren finns här: sammanställning

Kursens belastning för eleverna

Eleverna har här helt skilda uppfattningar. De elever som tidigare programmerat tycker att tempot kan var lågt medans de som är nybörjare lägger ned mycket tid för att hänga med och de tycker att arbetsbördan är stor.

Planerade förändringar

Tidigare införa hur man arbetar strukturerat när man löser ett programmeringsproblem.
Behandla felsituationer och åtgärder tydligare och tidigare.
Lägga in frågestunder under terminen.
Omarbeta de tre momenten: föreläsning, lektion och laboration så att de passar bättre ihop.