bild
Skolan för
elektroteknik
och datavetenskap

KursPM för DD1310 Programmeringsteknik

Lärare, Vem får läsa kursen, Kursens mål, Studentexpedition, Kurslitteratur, Kursuppläggning, Examination, Betyg,

Ändringar i kursPM kommer att meddelas under nyheter.


Kurshemsidans adress:
http://www.csc.kth.se/utbildning/kth/kurser/DD1310/prgo12/

Kursledare

Kursledare

Sten Andersson
stene@csc.kth.se
http://www.csc.kth.se/~stene
08-790 92 76

Övningsassistenter

Grupp 1: Moa Gardell , moa.rosen.gardell@hotmail.com

Grupp 2: Jana Götze, jagoetze@nada.kth.se

Grupp 3: Mikael Lindahl, lindahlm@csc.kth.se

Vem får läsa kursen

Kursen är obligatorisk för OPEN.

Kursens mål

Kursen syftar till att ge grundläggande kunskaper i programmering och datalogiska begrepp. Som språk används Python då det är relativt okomplicerat och därmed lämpligt som första programmeringsspråk.

Studentexpedition och Delfi

Nadas studentexpedition finns på Osquars backe 2 plan 2. Den har öppet må-fr 10.00-12.00 och må-to 13.00-15.00.

Delfi är CSC:s systemgruppsmottagning som har hand om konton och passerkort till CSC-salar. Delfi har öppet må-fr 10-12 och må-to 13-15. Delfi är granne med studentexpeditionen.

Kurslitteratur

Bok

Som kurslitteratur används Python Programming for the Absolute Beginner av Michael Dawson, ISBN 9781435455009.

Kursuppläggning

Kursen är uppdelad i föreläsningar, övningar och laborationer. På föreläsningarna presenteras nya begrepp som sedan exemplifieras under övningarna. Under datorlaborationerna får man sedan själv lösa ett antal uppgifter. Aktivitet:

F1: Introduktion till programmeringstekniken och programmeringsspråket Python. (Kap 1)
F2: Datatyper, variabler, konstanter, tilldelning, funktioner, inläsning. (Kap 2,6)
F3: Logiska operatorer, villkor, slingor. (Kap 3,4)
F4: Listor, dictonaries, felhantering, strängar. (Kap 5,7)
F5: Klass och objekt: Instansvariabler, instansmetoder, Klassvariabler, klassmetoder, publikt & privat. (Kap 8,9)
F6: Klass och objekt, fortsättning. (Kap 8,9)
F7: Sökning & sortering. Rekursion. (Kap ?)
F8: Inför datorprovet.
F9: Fiktiv P-uppgift med specifikation, prototyp och lösning.
F10: Grafik: Komponenter, containers och lyssnare. (Kap 10)

Examination

Kursen består av tre LADOK-moment (studiemedelspoängsmoment)
  • LAB1 (1.5 hp) Utgörs av fem stycken inledande laborationer som man arbetar med parvis. Betyg G/U.
  • LAB2 (1.5 hp) Individuellt datorprov för att testa kunskaperna från LAB1. Betyg G/U.
  • LAB3 (3.0 hp) Benämns P-del (P som i Python) och utgörs av en större individuell programmeringsuppgift. Graderad betygsskala.
Sammanlagt 6 hp eller c:a 160h arbete.

Inledande laborationer (LAB1)

Labbarna arbetar ni med i grupper om två (varken fler eller färre), av pedagogiska skäl och för att datorerna ska räcka till. Under de schemalagda laborationstiderna har ni möjlighet att få hjälp, men det mesta av arbetet utför ni på egen tid. För varje laboration som redovisas i tid erhålles bonuspoäng till datorprovet. När ni redovisat er laboration: Se till att handledaren skriver under er kvittensblankett som ingår i kursbunten.

Datorprov (LAB2)

Efter de inledande labbarna förväntas man ha grundläggande programmeringskunskaper och dessa examineras med ett datorprov (LAB2). Detta kommer att genomföras vid ett schemalagt laborationstillfälle och utgörs av 25 frågor av flervalstyp som ska besvaras på 50 minuter. Ett tillfälle att öva på provfrågor kommer att ges innan provet.

P-del (LAB3)

Kursens tredje moment, LAB3, är en större, individuell programmeringsuppgift i Python; en "P-uppgift". P-delen redovisas i tre steg under kursens andra period. Uppgifterna är tänkta att vara något så när svåra och tidskrävande, räkna med ca 80 timmar för en medelsvår uppgift.
  • Specifikation: Innan programmet skrivs ska en specifikation redovisas. Syftet med specifikationen är att du ska tänka igenom problemet innan du försöker lösa det.
  • Granskning: Innan det färdiga programmet kan redovisas för en handledare ska det granskas av en annan kursdeltagare som tittar på koden och provkör programmet. Det är obligatoriskt för varje kursdeltagare att granska ett program.
  • Slutredovisning: Du väljer (normalt via webben) en tid för slutredovisning. Uppgiftslydelsen, specifikationen, besiktningsprotokollet och granskaren ska medföras till slutredovisningen, liksom en färsk programutskrift, källkod och det körbara programmet. Om du tar med en egen dator till redovisningen ska den vara uppkopplad mot Internet, eftersom vi jämför med tidigare lösningar (för att stävja fusk).

P-uppgifterna är av olika omfång och kräver olika mycket tid.

Som ett komplement till de "inbyggda" finesserna i Python så finns ytterligare Pythonfiler för P-uppgiften. Utnyttja gärna dessa, men tänk på att i enlighet med hederskodexen ALLTID ange varifrån koden kommer när det inte är din egen.

Efter kursens slut kan P-delen endast redovisas i omtentaperioder och ger maximalt betyget D.

Hederskodex

Skolan tillämpar en hederskodex i alla sina kurser och varje student förutsätts tillämpa hederskodexen. Den finns via länk på kursens webbsida.

Betyg

Betyget på kursen avgörs helt av P-uppgiften. De flesta uppgifterna kan byggas på för att ge högre betyg. I övrigt gäller följande:
E = Godkänd P-redovisning av uppgift som lösts tillräckligt bra (max tre påpekanden).

D = Godkänd P-redovisning med ett perfekt program, dvs inga anmärkningar i protokollet (väl uppdelat, ingen kodupprepning, vettigt dokumenterat mm).

För betyg högre än D krävs att grunduppgiften redovisas före kursomgångens slut. Kraven på ett perfekt program gäller hela programmet, inklusive extrauppgifter.

C = Kraven för D + en extrauppgift med betyg C (ofta hantering av felaktig inmatning).

B = Kraven för C + en extrauppgift med betyg B (ofta en svårare algoritm).

A = Kraven för B + en extrauppgift med betyg A (ofta grafiskt användargränssnitt eller avancerad algoritm).

Om du är missnöjd med övningsassistentens beslut om betyg kan du skicka ett e-brev till kursledaren där du förklarar din syn på betyget och bifogar alla filer.

Plussa

På KTH finns av hävd en rätt att tenta om för att få högre betyg fast tentan redan är godkänd. I kurser med andra typer av examination (än tenta) måste vi av kostnadsskäl begränsa denna rätt. Följande regler gäller i denna kurs:
  • Den som har redovisat sin P-uppgift under kursens gång kan efter det höja sitt betyg, men bara inom ett år från kursstart.
  • Krav för betygen framgår av kursprogrammet. Man kan behöva förbättra programkvalitén eller göra vissa extrauppgifter. Man kan också göra en helt ny uppgift.
  • Redovisningen görs vid något av uppsamlingstillfällena för P-uppgifter.
  • Man har bara ett år från kursstart på sig att höja sitt betyg, sen är det försent.

 

Copyright © Sidansvarig: Sten Andersson <stene@nada.kth.se>
Uppdaterad 2012-08-27