Introduktion till datalogi
Projekt
I samband med övningen den 2,4/4 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 (9,11 april). Inlämning av projektplan
och muntlig lägesrapport.
-
Övning 10 (16,18 april). Muntlig lägesrapport.
-
Övning 11 (23 april). Inlämning av slutrapport
och körbar prototyp. Muntlig lägesrapport.
-
Övning 12 (30 april). 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 23 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.