4 METOD 10
6.6 T EAMETS PROCESSRELATERADE ERFARENHETER 47
6.6.2 Möten 47
Vissa möten har hållits vid specifika tillfällen och andra efter behov. De teammedlemmar som arbetat på distans deltog på alla möten via Skype. Detta fungerade över förväntan då teamet räknade med en del tekniska problem som endast förkommit vid ett fåtal tillfällen. Under projektets gång blev teamet bättre på att utnyttja tiden på möten och hålla dem effektiva med tydliga mål.
Under sprintplaneringsmötena planerades vad som skulle hinnas med i sprinten utifrån produktbackloggen och en sprintbacklogg skapades. Gemensamt utformade teamet en tidplan för sprinten samt delade ut ansvarsområden. Ansvarsfördelningen fungerade bra då alla teamets medlemmar tog ansvar för sina delar och såg till att dessa implementerades. Tidsplaneringen gick dock sämre då de interna deadlines som satts upp inte fungerat. Detta berodde till stor del på att teamet inte arbetat med omfattande programmeringsprojekt tidigare. Därför saknades uppfattning om hur mycket tid som krävdes till olika delar och planeringen blev något bristfällig.
Hela teamet deltog kontinuerligt i Daily Scrum och uppdaterade varandra med vad var och en arbetat med. Dessa möten hölls på fasta tider måndag, onsdag och fredag för att inte för lång tid skulle fortlöpa mellan två möten. Genom att ha jämn
fördelning av möten över veckan skapades ett kontinuerligt flyt i arbetet. Detta bidrog till effektiv arbetsprocess och problemlösning. I samband med dessa möten förmedlades problem snabbt till hela teamet och den gemensamma kompetensen bidrog till tillfredställande lösningar.
I slutet av varje sprint har teamet haft sprint review i samband med möte för förberedelse av presentation av sprinten. Detta gav en överblick över hur sprinten gått och hur effektivt arbetet varit. Inför nästkommande sprint gav detta en god start då hela teamet visste vad som implementerats och därmed också vad som fanns kvar att utföra.
Den kontinuerliga utvärderingen av teamet i samband med sprintretrospektiven bidrog till en bra dynamik och ett öppet klimat i gruppen. Detta medförde i sin tur att gruppen kom fram till förbättringsförslag gällande utvecklingsprocessen och samarbetet inom teamet.
Under sprintretrospektivet för sprint 1 kom teamet fram till att arbetet blivit för osammanhängande. Medlemmarna hade inte tillräcklig insikt i hur de andra teammedlemmarnas funktioner implementerats för att kunna arbeta på ett effektivt sätt. Teamet valde då att införa demonstrationsmöten en gång i veckan där samtliga medlemmar fick demonstrera det personen arbetat med under veckan och hur det fungerade rent tekniskt. Detta bidrog till mindre dubbelarbete och ökad förståelse för de tekniska lösningar som använts.
Under projektets gång hade teamet inplanerade möten för lägeskontroller. Vid dessa möten genomfördes avstämningar med samtliga medlemmar om hur arbetet gått gentemot tidplanen. I samband med detta har kontinuerlig uppföljning gentemot vad som ska hunnits med gjorts, vilket gett en jämnare arbetsbelastning. Om någon medlem legat före plan, och någon annan efter, har arbetet kunnat omfördelas för att sysselsätta alla medlemmar i teamet.
6.6.3 Arbetssätt
Till en början satt teammedlemmarna och arbetade självständigt med olika områden. Det gick smidigt under sprint 0 då arbetet huvudsakligen innefattade efterforskning och kompetensutveckling. Däremot bidrog det till en svagare sammanhållning inom teamet och då implementeringen av e-‐butiken började uppstod flera svårigheter. Det var vanligt att teammedlemmarna fastnade i sitt arbete utan att kunna ta hjälp av någon annan vilket ödslade en del tid. Trots Daily Scrum var förståelsen för vad de övriga teammedlemmarna arbetade med bristfällig. Därför bestämde teamet att arbeta mer tillsammans och det fick önskad effekt. Uppkomna problem kunde då ofta lösas genom diskussion med andra teammedlemmar.
I ett tidigt skede tog teamet fram prototyper till webbapplikationen. Vid teamets genomgång av prototyperna presenterades två större prototypförslag där även grafisk design tagits fram, samt ett par mindre kompletta förslag som fokuserat främst på funktionaliteten. Då dessa mindre kompletta förslag gick i linje med de större prototyperna gick inte teamet vidare med dessa. De två större förslagen skilde
sig dock nämnvärt i vilken funktionalitet som lyftes fram och teamet diskuterade kring för-‐ och nackdelar med de båda förslagen. En slutgiltig prototyp togs fram som kombinerade idéer från båda för att lyfta fram all viktig funktionalitet beroende på den aktuella situationen. Den grafiska designen byggde vidare på en av prototyperna men tog inspiration från den andra för att uppnå en mer stilren och avskalad design.
Under sprint 0 utvecklades en produktbacklogg med user-‐stories som ansågs ha olika status och kunde klassificeras som antingen nödvändiga eller önskvärda. De önskvärda implementeras i mån av tid enligt teamets prioritet. Tanken var att alla nödvändiga user-‐stories skulle implementeras under sprint 1 och de önskvärda under sprint 2. Detta gav tydliga riktlinjer för arbetets utveckling, men de följdes inte fullt ut. Det berodde på att teamet kontinuerligt uppdaterade produktbackloggen genom att förnya, förändra eller ta bort user-‐stories. Dessutom kunde vissa user-‐ stories börja implementeras tidigare än beräknat. Dessa ändringar medförde att slutresultatet höll hög kvalitet samtidigt som det bidrog till att teamet tog vara på tiden.
Vid sprintplaneringsmötena blev varje teammedlem utsedd till ansvarig för ett antal user-‐stories som skulle implementeras under den kommande sprinten. Som ansvarig var uppgiften att se till att en user-‐story blev utförd och innebar i många fall att den ansvariga implementerade funktionaliteten. Vid behov har den ansvariga kunnat vända sig till resterande teammedlemmar för hjälp, vilket har fungerat tillfredställande. Ofta är det tillräckligt att en annan person delar med sig av sina tankegångar för att lösa det uppkomna problemet.
Då personen som var ansvarig för en user-‐story ansåg att den var klar fick teammedlemmen som var testkompis med den ansvariga testa funktionen. Detta bidrog till att många brister i funktionaliteten upptäcktes och åtgärdades tidigt. Då en user-‐story blev godkänd i testningen och uppnådde definition of done ansågs den vara färdig. User-‐storyn skulle därmed vara färdigutvecklad men så var inte alltid fallet. Ibland berodde det på att varken den som var ansvarig eller den som testade en viss user-‐story hade tänkt igenom funktionaliteten tillräckligt noga och därmed missade viktiga delar som senare fick införas. Under sprint 1 var ytterst få funktioner färdigutvecklade eftersom de inte var single page men vissa utav dem ansågs ändå uppfylla kraven för definition of done. Därför fick dessa arbetas om under sprint 2 vilket inte var helt optimalt på grund av att fokus då skulle ligga på annan utveckling. Problematiken kring att funktioner uppfyllde definition of done trots att de inte var färdigutvecklade hade kunnat lösas genom striktare krav på innebörden av defintion of done. Dessa krav borde bland annat ha täckt single page, design och koppling till databas.
6.6.4 Verktyg för kommunikation
Under alla möten utnyttjades Skype för att kommunicera med de teammedlemmar som inte var fysiskt närvarande. Det fungerade över förväntan men var problematiskt då uppkopplingen tillfälligt försvann. En annan svårighet var delaktighet i diskussioner på grund av att ljudet inte var tillräckligt bra och då hamnade de som var med via Skype utanför. Med tiden anpassade sig teamet bättre
och diskussionerna flöt på mer naturligt. Teamet testade att lösa diskussionsproblemet genom att ha möten då alla teammedlemmar deltog via Skype för att på så sätt ge samtliga medlemmar samma förutsättningar till att föra diskussion. Detta fick dock inte tillräckligt bra effekt för att användas vid längre möten utan utnyttjades endast när det var nödvändigt i samband med Daily Scrum.
Delningen av dokument via Google Drive fungerade tillfredställande eftersom teammedlemmar nästintill alltid kunde komma åt att redigera, kommentera och läsa all dokumentation. Det fungerade dock tillfälligt inte för två teammedlemmar då de befann sig i Kina där tjänsten är blockerad. Detta ansågs inte ha direkta konsekvenser eftersom det var under en så pass kort tid. Under denna period hade de heller ingen tillgång till Facebook som utgjorde en av teamets kommunikationskanaler. Exakt hur Facebook skulle användas var otydligt vid början av projektet och det uppmärksammades och åtgärdades genom att en kommunikationsplan utformades. Denna plan angav vilken typ av information som skulle flödas genom vilken kanal och det hade varit bra om planen hade upprättats redan vid projektets start.
Trello var ett verktyg som var enkelt att använda trots att ingen i teamet arbetat med det tidigare. Med hjälp av Trello blev det enkelt att få en övergripande bild av hur långt teamet kommit med de olika aktiviteterna. Bilden var däremot inte alltid rättvisande eftersom teammedlemmarna ibland inte förflyttade korten mellan kolumnerna då status för aktiviteter ändrades. Anledningen till att korten inte förflyttades var att teammedlemmar glömde bort det. Detta inträffade mer sällan framåt projektets slut då de flesta fått in förflyttning av kort som en rutin i sitt arbete.
Teamet skapade en tavla för varje sprint i Trello och alla uppgifter som skulle utföras lades in som ett kort i rätt sprint. Denna metod tydliggjorde vilka uppgifter som skulle utföras under vilken sprint. Den hade dock en stor nackdel då alla uppgifter inte blev klara under den tänkta sprinten. Dessa uppgifter glömdes till viss del bort då gruppen påbörjade nästa sprint och arbetade med en ny tavla. För att förhindra detta hade de pågående uppgifterna kunna flyttas över till tavlan för nästa sprint.
7
Slutsats
Visionen för webbapplikationen realiserades och det resulterade i att en e-‐butik med försäljning av egenkomponerade och färdiggjorda pralinaskar skapades. Frågeställningen innefattade hur det skulle bli enkelt att navigera bland ett stort utbud och vara möjligt för kunden att anpassa köpet efter egna preferenser. Väl utvecklade sök-‐ filtrerings-‐ och rangordningsfunktioner samt en funktion för visning av antal produkter implementerades för att göra det enkelt att navigera. Dessa funktioner bidrog dessutom till att göra det möjligt att anpassa köpet efter egna preferenser eftersom kunden därmed själv kan välja vilken typ av praliner som visas. Ytterligare en funktion som tar hänsyn till kundens egna preferenser är möjligeten att ange allergier och filtrera utbudet utefter detta.
Scrum var en väl lämpad arbetsmetodik som användes under utvecklingen av e-‐ butiken. Den bidrog till att arbetet kunde struktureras på ett tydligt sätt samtidigt som flexibiliteten och möjligheten till att genomföra förändringar var hög. Dessutom var den till stor nytta för gruppens kommunikation i och med att metodiken förespråkar flera olika typer av återkommande möten. Dessa var givande för både samarbetet och utvecklingsarbetet.
Hade mer tid hade varit tillgänglig skulle e-‐butiken vidareutvecklats genom att införa funktionalitet som möjliggör att handla utan att vara inloggad. Teamet skulle dessutom undersökt möjligheten att som administratör lägga till särskilda specialerbjudanden och rabatter. Det hade även varit önskvärt att som administratör kunna utöka rangordnings-‐ och filtreringsfunktionerna med fler alternativ som till exempel ett nytt fabrikat. Samtliga av dessa funktioner fanns med i produktbackloggen men prioriterades lägre än mer essentiella funktioner. Efter färdigställandet av e-‐butiken uppmärksammades ytterligare en önskvärd funktion nämligen att alltid kunna backa tillbaka till föregående sida.
Sammanfattningsvis har teamet uppfyllt projektets syfte och utvecklat en webbapplikation som uppfyller i princip all önskvärd funktionalitet. Om webbapplikationen uppfyller de krav på en e-‐butik som ställs av marknaden är i dagsläget dock svårt att uttala sig om. Mer ingående användbarhetstestning med den färdiga produkten behöver utföras för att avgöra om butiken med den aktuella implementationen helt uppfyller kunders krav.
8
Referenser
1. Findahl O. Svenskarna och internet. Göteborg:.SE; 2014.
2. Postnord. HUI research. [Online].; 2014 [cited 2015 02 10. Available from: http://www.hui.se/statistik-‐rapporter/index-‐och-‐barometrar/e-‐barometern. 3. DIBS. Svensk E-‐handel 2014. ; 2014.
4. Conradson B. ICA-‐historien. [Online].; 2014 [cited 2015. Available from: http://www.ica-‐historien.se/Varorna/Varumarken-‐och-‐sortiment/Nar-‐
losviktsgodiset-‐slog-‐igenom-‐pa-‐1980-‐talet/.
5. Mildner A. Godis är ingen vi skojar om. Sydsvenskan. 2014 Jan 26.
6. Gripenberg P, Rosholm J. Plockgodis från Sverige en allt smaskigare exportvara. Dagens Nyheter. 2014 Apr 16.
7. Bäck Karlander M, Eriksson A. Det första intrycket gör allt -‐ Webbdesign på användarens villkor. Kandidatuppsats. Borås:; 2013.
8. Schlosser A, White TB, Lloyd S. Converting Web Site Visitors into Buyers: How Web Site Investment Increases Consumer Trusting Beliefs and Online Purchase Intentions. Journal of marketing. 2006 Apr: p. 133-‐148.
9. Johnson D. Achieving customer value from electronic channels through identity commitment, calculative commitment, and trust in technology. Journal of Interactive Marketing. 2007: p. 2-‐22.
10. Nedergård D. Trygg E-‐handel. Kandidatuppsats. Uppsala:; 2014.
11. Becerra E, Korgaonkar P. Effects of trust beliefs on consumers’ online intentions. European Journal of Marketing. 2011.
12. Campbell D, Wells J, Valacich J. Breaking the Ice in B2C Relationships: Understanding Pre-‐Adoption E-‐Commerce Attraction. Information Systems Research. 2013 Jun.
13. Larsson A, Rosendahl CA. Flermetodsforskning – ger det en bredare bild av användbarhet på ehandelssidor? Kandidatuppsats. Borås: Handels och IT-‐ högskolan; 2014.
14. Johnsson A, Julkunen E. Hur skapar företag en återkommande kundstock online? Magisteruppsats. Borås:; 2013.
15. Ltifi M, Gharbi JE. E-‐SATISFACTION AND E-‐LOYALTY OF CONSUMERS SHOPPING ONLINE. Journal of Internet Banking and Commerce. 2012 Apr.
16. Mohammed Rafiq HFXL. Building customer loyalty in online retailing: The role of relationship quality. Journal of Marketing Management. 2013.
17. Ryding A, Qvarnström A, Wolfhagen J. E-‐lojalitet: Vid din sida för alltid? : En kvalitativ studie om hur konsumenter påverkas av företags strategier för att skapa e-‐lojalitet. Kandidatuppsats. Växjö:; 2014.
18. Oppenheim C, Ward L. Evaluation of web sites for B2C e-‐commerce. Aslib Journal of Information Managemen. 2006.
19. Softhouse Consulting. Scrum in 5 minutes. Malmö; 2013.
20. Schwaber K, Sutherland J. Scrum Guides. [Online].; 2013 [cited 2015. Available from: http://www.scrumguides.org/docs/scrumguide/v1/scrum-‐guide-‐us.pdf. 21. Sims C, Johnson HL. Scrum: A breathtakingly brief and agile introduction:
Dymaxicon; 2012.
22. Schwaber K. SCRUM Development Process. Burlington:; 1995.
23. Heslin PA. Better than brainstorming? Potential contextual boundary conditions to brainwriting for idea generation in organizations. Jurnal of Occupational and Organizational Psyhology. 2011 Jan 10: p. 129-‐145.
24. Dominiques I, Berntsson J. Utvärdera användbarhet. [Online]. [cited 2015 05 19. Available from: http://anvandbarhet.se/bok:utvardera_anvandbarhet.
25. Nielsen J, Landauer T. A mathematical model of the finding of usability problems. In Proceeding CHI '93 Proceedings of the INTERACT '93 and CHI '93 Conference on Human Factors in Computing Systems ; 1993; New York. p. 206-‐213.
26. Guzel B. Understanding Hash Functions and Keeping Passwords Safe.; 2012. 27. Andersson BE. Som man frågar får man svar Kristianstad: Kristianstads
Boktryckeri AB; 1985.
28. Hallin A, Karrbom Gustavsson T. Projektledning Malmö: Liber; 2012. 29. Biello D. Can Videoconferencing Replace Travel?.; 2009.
30. Scrum Methodology. Scrum Product Owner.; 2013. 31. Scrum Methodology. The Scrum Team Role.; 2013. 32. Schwaber K. What is Scrum?.; 2007.
33. Hasnain E, Hall T. Introduction to Stand-‐up Meetings in Agile Methods. In IAENG Transactions on Engineering Technologies.; 2009.
34. Pope-‐Ruark R. Let’s Scrum: How Scrum Methodology Encourages Students to View Themselves as Collaborators. Elon; 2012.
35. Risning L, Janoff N. The Scrum Software Development Process for Small Teams. 2000 Jul: p. 26-‐32.
36. Mahmoud Q, Dobosiewicz W, Swayne D. Redesigning introductory computer programmin with HTML, JavaScript, and Java. ; 2004.
37. Hallin A, Karrbom Gustavsson T. Projektledning Malmö: Liber; 2008.
9
Bilaga 1 – Marknadsundersökning
Här beskrivs den marknadsundersökning som genomfördes i form av en enkät som kunde fyllas i över nätet.
Rubrik: Kandidatarbete: E-‐butik – Tillverka din egen chokladask
Fråga 1: Ange ditt kön • Man
• Kvinna
Fråga 2: Hur gammal är du? • Under 15 år
• Mellan 15 och 30 år • Mellan 30 och 50 år • Över 50 år
Fråga 3: Hur ofta äter du choklad? • Dagligen
• Flera gånger i veckan • En gång i veckan • Mer sällan • Nästan aldrig
Fråga 4: Skulle du kunna tänka dig att beställa en chokladask där du själv har valt vilka praliner som ska ingå?
• Ja • Nej
Fråga 5: På en skala från 1 till 5, hur viktiga är följande funktioner i en e-‐butik där man kan beställa chokladaskar och själv välja vilka praliner som ska ingå? 1 motsvarar att funktionen är onödig och 5 motsvarar att funktionen är nödvändig.
• Ha en profil där man kan lägga till favoriter • Kunna välja att leverera en ask som present
• Välja kort och skriva meddelande vid leverans som present • Få asken inslagen vid leverans som present
• Få förslag utifrån dina val baserat på vad andra kunder köpt • Prenumerera på en order i månaden
• Spara eventuella allergier på ”Min profil” • Få specialerbjudanden
• Kunna välja mellan några färdiggjorda askar • Spara betalningsmetoder på ”Min profil” • Verifiera nya konton med bekräftelsemail • Kunna filtrera bland pralinerna
• Kunna rangordna bland pralinerna
• Markera intressanta praliner, utan att lägga till dem i varukorgen • Att det finns ett stort utbud
Fråga 6: På en skala från 1 till 5, hur viktigt är det att man kan filtrera pralinerna med avseende på följande kategorier? 1 motsvarar att funktionen är onödig och 5 motsvarar att funktionen är nödvändig.
• Ingredienser • Mörk/Ljus/Vit • Fabrikat • Typ av fyllning • Sockerfritt • Allergener
• Vilka praliner du själv valt att markera som intressanta
Fråga 7: Om du har fler förslag på kategorier som man bör kunna filtrera efter kan du ange dem här:
Fråga 8: På en skala från 1 till 5, hur viktigt är det att välja ordningen som pralinerna visas på med avseende på följande kategorier? 1 motsvarar att funktionen är onödig och 5 motsvarar att funktionen är nödvändig.
• Pris • Kakaohalt • Vikt • Kalorihalt • Mest köpta • Högsta betyg • Senast inkomna
• Högsta betyg från din egen betygsättning
Fråga 9: Om du har några fler bra förslag på kategorier man bör kunna visa pralinerna efter kan du ange dem här: