KTH
| Nada
| Utbildning
| Teknologer
| echo $kurskod; ?>
P-uppgift
Kursens tredje moment, LAB3, är en större, personlig programmeringsuppgift i Python; en P-uppgift. Uppgifterna är tänkta att vara något så när svåra och tidskrävande, räkna med ca 80 timmar. P-uppgiften redovisas i tre steg, specifikation, granskning och slutredovisning (se nedan). Du måste boka en tid för slutredovisningen. Det finns många olika uppgifter, och du ska inte göra samma uppgift som någon annan i din grupp. Uppgiftslydelsen kvitterar du ut hos din assistent.
P-uppgiftens delmoment
- Specifikation
- Innan programmet skrivs ska en specifikation lämnas in.
Syftet är att du ska tänka igenom
problemet innan du försöker lösa det. Specifikationen ska
innehålla följande delar:
- Algoritm
- Datastruktur (rita också en minnesbild med exempeldata)
- Funktioner
- Klasser med attribut och metoder (om du använder klasser)
Specen redovisas muntligt vid ett laborationstillfälle.
- Granskning
- Innan det färdiga programmet kan redovisas för en handledare ska
det testas (granskas) av en kurskamrat. Vid testen ska
din granskare kritiskt granska ditt program, testköra det och
fylla i ett granskningsprotokoll.
Denna granskning är ett obligatoriskt moment.
(Varje kursdeltagare måste granska en uppgift, och
alla uppgifter som ska redovisas för handledare måste granskas först.)
Syftet med granskningen är att du genom att kritiskt granska en annans
program ska få en ökad förståelse för hur man ska (och inte ska)
programmera.
- Slutredovisning
- Du väljer (normalt via webben) en tid för slutredovisning.
Uppgiftslydelsen, specifikationen med uppdaterad minnesbild,
besiktningsprotokollet och granskaren ska medföras till
slutredovisningen, liksom en färsk programutskrift, och
förstås programmet.
Om du tar med en egen dator till redovisningen
ska den vara uppkopplad mot Internet, eftersom vi (för att
förhindra fusk) jämför din lösning mot tidigare lösningar.
Krav på P-uppgiftslösningen
Utöver kraven på funktionalitet som finns i uppgiftslydelsen gäller
detta alltid:
- Programmet ska vara kommenterat upptill med författare,
datum och ev revisionsdatum. Överkommentera inte programmet
i övrigt. Tänk på att det är kvalitet och inte kvantitet på
kommentarer som räknas.
- Programmet ska vara användarvänligt och presentera sig
vid programstart. Tydliga instruktioner ska ges på skärmen.
Det ska vara lätt att förstå vad programmet skriver ut.
Det är tillåtet att anta att indatafiler är felfria om
inte annat anges i uppgiftslydelsen.
- Programmet ska vara vettigt uppdelat i funktioner, och
eventuellt klasser.
Funktioner ska inte vara alltför långa (max en skärmsida). Det
ska vara lätt att i efterhand gå in och förstå och ändra i
programmet. Robust, flexibelt och lättläst är nyckelord.
- Varje variabel och funktion ska vara
försedd med kommentarer. Ange vad variabeln
representerar och vad funktionen gör. För funktioner bör man också
ange vad indata (parametrar) och utdata (retur-värde) betyder.
Det ska räcka att läsa kommentar och funktionshuvud för
att förstå hur en funktion ska användas.
- Namn på variabler och funktioner ska vara vettiga.
Alla deklarerade namn ska vara på samma språk, liksom alla
kommentarer (engelska namn och svenska kommentarer är OK).
Koden skall vara snyggt formaterad.
- Nästan identiska kodstycken ska inte upprepas. Gör
i stället generella funktioner. Inför inte i onödan
begränsningar. Inför konstanter för sådant som man kan tänkas vilja
ändra framöver (om man skulle vilja arbeta vidare med din lösning) och
för tal som inte ska ändras och går att beskriva med namn.
Redovisa senare?
Efter kursens slut kan P-delen endast redovisas i
omtentaperioder och
ger maximalt betyget E.
Eftersom datorsystemen
byts eller uppgraderas årligen så bör du vara medveten om att tiden du
har på dig att redovisa din P-uppgift är begränsad. Väntar du mer än ett
år från kursstart med att redovisa kan lydelsen till din P-uppgift
behöva bytas ut. Du måste då ta kontakt med kursledaren. Vi reserverar
oss för att byten av datorsystem kan medföra att vissa eller samtliga
P-uppgifter inte går att utföra i framtiden. Du kan alltså bara vara
säker på att det går att redovisa din P-uppgift fram till nästa
kursstart. Lydelsen som ligger ute på nätet kan ändras när som
helst. Se därför till att du skriver ut den lydelse du har valt och
håller rätt på den tills du har redovisat.