Kungl Tekniska Högskolan NADA 2D1362 Programutvecklingsprojekt med mjukvarukonstruktion Kursledare: Lars Kjelldahl Grupputvärdering Gängbildning Utvecklare: Rasmus Ahlberg Joel Andersson Karl-Johan Grahn Joakim Isaksson Emil Lundström Jakob Sagatowski Maroun Sleiman Bartek Tatkowski ahlberg@kth.se bja@kth.se kjgrahn@kth.se joakimi@kth.se emill@kth.se jsagatow@kth.se maroun@kth.se bartek@kth.se Hemsida: http://www.nada.kth.se/projects/prom04/gangup/ Uppdragsgivare: Kimmo Eriksson, Mälardalens Högskola
Innehåll 1 Samarbetet i gruppen 3 2 Ansvarsfördelning 3 3 Kontakten med uppdragsgivaren 3 4 Tidsplanen 3 5 Förstudien 3 6 Programvaror och utrustning 4 7 Riskanalysen 4 8 Vad vi skulle ha gjort annorlunda om vi fick göra om projektet 4 9 Stöd 4 10 Vad vi har lärt oss av arbetet 5 11 Referenser 6 2
1 Samarbetet i gruppen Samarbetet i gruppen har fungerat bra inom respektive grupp, medan kommunikationen mellan dokumentations- och programmeringsgruppen kunde ha varit bättre. Några i programmeringsgruppen tycker att alla borde satt sig in bättre i själva programmet men inser samtidigt att det var deras eget fel att det inte blev av. Vi hade mer samarbete i varje delgrupp i sig än i gruppen som helhet. Överlag har samarbetet fungerat ganska bra, även om det uppkom en viss glipa mellan programmeringsgruppen och dokumentationsgruppen. Det har inte förekommit några tvister och alla meningsskillnader har bearbetats demokratiskt. Fram till årsskiftet var Joel projektansvarig, därefter tog Karl-Johan över ansvaret efter sina studier utomlands. Före årsskiftet höll Karl-Johan kontakt med gruppen och kursledaren via e-post. 2 Ansvarsfördelning De flesta tycker att gruppindelningen har fungerat bra, men folk har varit olika mycket involverade i projektet. Programmeringsgruppen tycker att deras interna indelning har varit lite oklar. Gruppindelningen skedde först efter jullovet, vilket helst skulle ha gjorts tidigare. 3 Kontakten med uppdragsgivaren Kontakten med Kimmo Eriksson har fungerat bra, även om vi inte har haft så stort behov av kontakt. Vi har skickat e-post till honom då frågor dykt upp och haft två bra möten före förhandsvisningen. En gruppmedlem uppskattar att möterna dessutom låg bra tidsmässigt. Uppdragsgivarens fysiska frånvaro (bortrest) var inte så mycket till besvär som man skulle kunna tro. 4 Tidsplanen Tidsplanen har följts nära nog enligt kravspecifikationen, med undantag av kravspecifikationen som lämnades in för sent. Några i gruppen kommenterar att det mesta arbetet har utförts i slutet. Överlag tycker de flesta att tidsplanen har fungerat bra. Några kommenterar att programmeringsgruppen har legat efter en aning, vilket kan bero på underbemanning. 5 Förstudien Vi har till stor del följt förstudien i alla dess aspekter. I skrivande stund kommenterar dock många att de inte har någon aning i fråga om detta 3
p.g.a. de dels inte kommer ihåg vad förstudien innehåller, dels inte vet vad den slutgiltiga prototypen innehåller. 6 Programvaror och utrustning Alla programvaror har fungerat som de ska. Överlag tycker vi att vi hade ganska bra uppfattning om de verktyg vi använde, eftersom vi har använt de flesta programvaror tidigare. Angående utrustning så hade vi ingen särskild sådan. Projektets hemsida utvecklades i ASP och var tillgänglig från en av gruppmedlemmarnas personliga dator, förutom de gånger då datorn krånglade. Vi har inte testat spellabbet, men antar att dess datorer inte ska ställa till med några bekymmer när det gäller att köra spelet. 7 Riskanalysen Den största risken var att flera inte tog tag i saker förrän de var tvungna. I övrigt hade vi effektiva åtgärder för de risker vi förväntades stöta på. Överlag tycker alla att vi inte har haft några större kriser. Vi lyckades täcka in alla risker av betydelse i analysen, men har delvis underskattat hur mycket arbete projektet verkligen inneburit. 8 Vad vi skulle ha gjort annorlunda om vi fick göra om projektet Om vi fick göra om projektet skulle nästan alla ha börjat arbeta tidigare. Programmeringsgruppen skulle ha en tydligare ansvarsfördelning med en chefsprogrammerare. Spelets design skulle vara klar tidigare så att folk som inte varit involverad i programmeringen lättare kunnat hoppa in och hjälpa till. Några erkänner att de skulle varit mer engagerade i projektet, speciellt i programmeringen. Gruppen skulle tidigt behövt en väl genomtänkt ansvarsfördelning så att alla visste exakt vad de skulle göra. Kommunikationen mellan grupper skulle också behöva förbättras. 9 Stöd Vi har i stort sett haft allt stöd vi har haft behov av. Med de kunskaper vi besitter inom gruppen tycker vi inte att detta har varit nödvändigt. Litet mer konkreta specifieringar från beställaren hade däremot varit välkommet. Som det var nu så kändes det väldigt luddigt, som om beställaren 4
inte riktigt visste vad han ville ha. På detta sätt fick vi tillsammans successivt arbeta fram funktioner och design av spelet. 10 Vad vi har lärt oss av arbetet Programmerarna har just blivit bättre på att programmera och lärt sig använda CVS i arbetet. Programmeringsmässigt har de främst utökat sina kunskaper inom Java, OpenGL och JavaScript. Däremot säger de själva att de inte har fått någon bättre insikt i hur man jobbar i projekt. Många säger tyvärr att de inte har lärt sig så mycket och att de främst har använt sig av gamla kunskaper. Projektledaren har lärt sig lite om grupparbete, ledarskap samt administration, dokumentation och programmeringsmetoder i stora projekt. 5
11 Referenser Utvecklare Ansvarsområde E-post Rasmus Ahlberg Serverprogrammering ahlberg@kth.se Joel Andersson Grafikprogrammering och versionshantering bja@kth.se Karl-Johan Grahn Projektansvarig och dokumentation kjgrahn@kth.se Joakim Isaksson Dokumentation och diverse joakimi@kth.se Emil Lundström Logger- och serverprogrammering emill@kth.se Jakob Sagatowski Webhemsida och diverse jsagatow@kth.se Maroun Sleiman Dokumentation och diverse maroun@kth.se Bartek Tatkowski Ljud- och grafikprogrammering bartek@kth.se Projektets hemsida: Uppdragsgivare: Kursledare: Kursens hemsida: SourceForge: http://www.nada.kth.se/projects/prom04/gangup/ Kimmo Eriksson, Mälardalens Högskola Lars Kjelldahl, KTH http://www.nada.kth.se/kurser/kth/2d1362/ http://www.sourceforge.net/ 6