bild
Skolan för
datavetenskap
och kommunikation
KTH / CSC / Kurser / 2D1345 / inda06 / Projekt

Introduktion till datalogi

Projekt

I samband med övningen den 27/28 mars kommer ni att starta projektet och dela upp er i grupper.

  • Projekten ska göras av tvåpersonersgrupper. I undantagsfall kan man också göra ett något större projekt i en grupp om tre personer. Men då måste ni ha särskilt godkännande av er övningsledare. Man får inte göra projektet själv.
  • Ert program ska ha ett GUI, ett grafiskt användargränssnitt. Kapitel 11 i läroboken ger en bra introduktion till hur man bygger grafiska användargränssnitt.
  • Projektet måste göra i Java. Ni får gärna, men måste inte, använda något av bokens exempel som utgångspunkt för ert projekt.
  • Projektet ska göras med utvecklingsverktyget Eclipse. Ni får gärna, men måste inte, använda de inbyggda verktygen Ant och CVS.

Projektet kommer att redovisas i fyra steg.

  • Övning 9 (13 april). Inlämning av projektplan och muntlig lägesrapport.
  • Övning 10 (18 april). Muntlig lägesrapport.
  • Övning 11 (25 april). Inlämning av slutrapport och körbar prototyp. Muntlig lägesrapport.
  • Övning 12 (8/9 maj). Inlämning av färdig kod och muntlig slutrapport.
Det blir alltså fyra muntliga rapporter. Dessa ska göras av en person i gruppen och båda deltagarna ska göra två muntliga presentationer var.

De två skriftliga dokumenten, projektplan och slutrapport, beskrivs i detalj nedan. Ni ser på schemat att rapporterna ska lämnas in ganska tidigt. Detta är för att ni ska ha möjlighet att skriva om och förbättra er rapport till nästa vecka. Att skriva rapporter är ett iterativt arbete och det är normalt att man arbetar med rapporten under en längre tid. Rapporterna måste naturligtvis vara professionellt utformade. Handskrivna dokument accepteras inte.

Prototypen ska vara ett körbart program och en annan projektgrupp ska ha provkört er prototyp inför övningen 25 april.

Projektplan

Ert dokument måste innehålla följande avsnitt med följande rubriker i följande ordning.

  • Programbeskrivning. Beskriv detaljerat vad programmet gör.
  • Användarbeskrivning. Vem kommer att använda ert program? Vilka antaganden gör ni om användarna? Är de vana datoranvändare, är de specialister, nybörjare, små barn, etc.
  • Användarscenarier. Ge minst två exempel på scenarier där en av era tänkta användare använder programmet. Du måste beskriva i detalj vad de ser, vilken typ av input de måste ge, hur de ger sin input och hur programmets output ser ut.
  • Tekniska frågor. En lista av tekniska frågor som ni måste hantera när ni bygger ert system. Var så detaljerad som möjligt. Ett viktigt steg mot en god design är att få ner så många frågor som möjligt på papper på ett organiserat sätt med så många förslag till lösningar som möjligt.
  • Programdesign. Beskriv de grundläggande klasserna som ni avser att implementera och ge en beskrivning av de viktigaste metoderna i varje klass.
  • Arbetsplan. Beskriv hur arbetet kommer att delas upp mellan personerna i projektet. Gör en tidsplan som visar när olika delmoment i projektet ska vara klara. Gör också en integrationsplan som visar hur de olika delarna ska integreras till en färdig produkt.
  • Testplan. Beskriv hur ni tänker testa programmet. Om ni räknar med att göra användartestning så bör ni beskriva vilka uppgifter som testanvändaren ska utföra och hur man ska testa resultatet.

Försök att skriva ett så komplett och detaljerat dokument som möjligt. Ju mer jobb ni gör nu desto lättare och snabbare kommer den verkliga implementationen att gå. Det är svårt att skriva en bra projektplan och jag räknar med att samtliga grupper kommer att få i uppdrag av sina övningsledare att göra ändringar och tillägg efter att rapporten har lämnats in första gången.

Slutrapport

Er slutrapport kommer att bestå av samma sju avsnitt som projektrapporten (plus lite till) och kommer att ha samma titlar. Men nu ska varje avsnitt att delas in i tre delavsnitt med namnen A, B och C.

  • A ska vara samma text som i projektplanen.
  • B ska vara en uppdaterad text som tar hänsyn till vad som verkligen hände när ni gjorde projektet.
  • C är text som jämför A och B. I er jämförelse måste ni förklara varför ni ändrade på er ursprungliga plan. Om inget har ändrat sig så säg det.

Ni måste göra detta för varje avsnitt. Avsnitt 7B ska innehålla era testresultat och en analys av dessa. Den här typen av post mortem är ett utmärkt tillfälle att reflektera över hur projektet gick och att lära sig så mycket som möjligt för framtiden.

Dokumentet ska också innehålla ett avsnitt 8 med titeln sammanfattning. Här ska ni beskriva vad ni har lärt er av projektet. Om ni har planer på att utveckla projektet ytterligare så vill vi gärna höra om era idéer.

Utöver de åtta avsnitten ovan så ska ert dokument också innehålla en bruksanvisning (user's manual) för ert system.

Copyright © Sidansvarig: Stefan Nilsson <snilsson@nada.kth.se>
Uppdaterad 2007-03-13