Projekt är unik och välavgränsad verksamhet AGILA METODER Stefan Berglund, Sara Mejtoft och Håkan Gulliksson Avslöjanden: - Alla projekt har förhistoria - Projekt förbrukar materiella och finansiella resurser - Projekt får långsiktiga konsekvenser Projekt har, eller bör ha, fasta och tydliga mål Avslöjanden: - Mål förändras över tiden - Mål kan aldrig vara helt gemensamma t.ex. pengar, kvalitet, nytta - Vi vet inte alltid vad vi vill Framgångsrika projekt är välplanerade Avslöjanden: - Framgångsrika projekt kan vara oplanerade - Misslyckade projekt är ofta extremt välplanerade Framgångsrika projektarbete är att hålla tids- och kostnadsbudgetar Avslöjande: - Lyckade projekt håller sällan budget - Lyckade projekt tar ofta mer tid i anspråk - Det finns inga objektiva kriterier för projektframgång Projekt är en överlägsen organisationsform Avslöjande: - Traditionell projektledning hämmar förändrings och innovationsbenägenheten - All verksamhet är samtidigt repetitiv och innovativ 1
Att vara agil innebär att varje dag prova, utvärdera och förbättra sitt arbetssätt. Tomas Gustafsson Värderingar från Lean Agila metoder bygger på Lean Eliminera slöseri Fokusera på lärande Skjuta på åtaganden Leverera snabbt Respektera människor Optimera helheten Källor till slöseri 1. Onödiga funktioner lägg till funktioner först när de efterfrågas 2. Ej färdigt arbete ej uppdaterad kod, ej lanserad kod 3. Återlärande kunskap skall underhållas och överföras 4. Växla mellan uppgifter koncentration på det viktigaste ökar effektivitet och kundnöjdhet 5. Väntetider personer med svar ska alltid finnas tillgänglig 6. Lager både lager och lokaler kostar 7. Defekter kostar tid och pengar att rätta 8. Frustration chefer lyssnar inte, medarbetare skaffar information själva 9. Onödigt arbete allt som inte tillför värde för kunden 10.Outnyttjad kreativitet alla deltar i det kreativa arbetet, inte bara utvecklare och ledning Gruppdiskussion 1 I grupper om 2 3 studenter Ca 5 minuter Gränssnittsutvecklingsprojekt: Agilt upplägg eller traditionellt? För- respektive nackdelar? 2
Prioriteringar - Manifest Individer och interaktion högre än processer och verktyg Fungerande programvara högre än omfattande dokumentation Samarbete med kunden högre än att förhandla om kontrakt Anpassning till förändring högre än att följa en uppgjord plan Källa: agilemanifesto.org/iso/sv/manifesto.html 9 av 12 Agila principer 1. Optimera, prioritera och fokusera maximera Return on Investment (ROI) 2. Transparens synliggöra problem och bygg förtroende 3. Iterativ och inkrementell utveckling för att lära, få feedback och minska risker 4. Samarbete för minska missförstånd och klyftor och för att säkerställa affärsmässiga mål 9 av 12 Agila principer 5. Uppmuntra och välkomna förändring eftersom verkligheten alltid ändrar sig 6. Enkla verktyg för att kunna anpassa processen efter verksamheten 7. Målstyrning/Decentralisering för att kunna arbeta effektivt 8. Ständig förbättring för ökad effektivitet 9. Hög kvalitet för att fel är kostsamma Optimering Resursoptimering ställs mot Time-to-market optimering Produkt A Produkt B Produkt C Produkt D Produkt A Produkt B Produkt C Produkt D Prioritera och fokusera Strikt prioritering - Det finns inte två saker som är lika viktiga Prioriteringen kan ändras - Men vid ett visst tillfälle är alltid något viktigast Påbörjade projekt kostar pengar Avslutade projekt ger intäkter Fokus på kundvärde - 80% kundvärde på 20% av arbetstiden! Transparens hög kvalitet Tala om kundvärde och funktionalitet istället för tekniska lösningar Tumma inte på kvalitet - Fel är kostsamma Exempel: Fungerande mjukvara = buggfri, lättförståelig och väl testad 3
Iterativ och inkrementell Iterativt arbetssätt - Arbetet utförs i cykler Inkrementellt arbetssätt - Skapar löpande färdiga, användbara delar av värdeskapande projektresultat. Tidiga intäkter - Systemet växer fram funktion efter funktion Feedback tidigt - Tid att lära och förbättra Lagom mycket förändring - Jobba i iterationer där målen ligger fast, inför nästa iteration kan målen ändras Ex. Agilt kodprojekt Walking skeleton - En minimal, fungerande prototyp Bygg inkrementellt - kan lanseras med de funktioner som implementerats Koden har alltid högsta kvalitet Scrumroller Beställare Delaktig i hela processen Produktägare Ansvarar för prioriteringar och kundnytta Utvecklingsteam Scrum master Ansvarar för scrumprocessenoch att förbättra denna Utvecklingsteamet Kännetecken hos en Agil projektgrupp: - Självstyrande och samarbetar - Gemensamt ansvar - Tydliga mål - Kollektivt ansvar - Åtar sig jobb, blir inte tilldelade - 5 9 personer med all nödvändig kompetens - helst 100% i projektet - Inga specifika roller (undantaget Scrum-master och testare) Är inte en projektledare! Samarbete Anpassa åtagandet efter kapacitet Kaizen (japanskt uttryck) - Ständig förbättring - Acceptera inte problem Lös dem! Scrum-master Utses helst av teamet Lagkapten, ordningsvakt och vaktmästare Ser till att teamet kan jobba bra Löser problem och förbättrar processen Ser till att rutinerna följs Upptäcker och löser problem Finns i bakgrunden 4
Agil arbetsprocess Genomförande Produktägaren (beställaren) Närvarande och engagerad Insatt i verksamheten svara på detaljfrågor Utvecklingsteamet Bestämmer hur det skall göras Allt arbete görs i cykler Sprintar om ca 2-4 veckor Dagliga stå-upp möten under varje sprint Två processer Utveckling av funktionerna Förbättring av arbetsmodellen Sprintplanering Första veckan Dagliga scrum Andra veckan Release Löpande Erfarenhetsmöte överlämning Planering Detaljplanering av en etapp/sprint i taget Produktbacklogg (för hela projektet) Krav: Den förväntan projektresultatet ska uppfylla Mål: Det faktiska resultatet som levereras för att tillgodose kravet Användarhistorier (AH) [Roll] ska kunna [krav eller funktion] för att [orsak] Sprintbacklogg (för en sprint i taget) Prioriterar krav Ej över 16h per aktivitet Backlog för produkt Prioriterad Att-göra lista Användarhistorier Kundperspektiv Produktutvecklingsplan (PBS isf WBS) Nya saker kan läggas till Prioriteringar kan ändras Synlig för alla Sara Mejtoft, universitetsadjunkt sara.mejtoft@umu.se 2015 Prioriteringsgrunder Dagligt scrum - Vilket färde tillförs? - Till vilken kostnad? - Minimeras någon risk? - Kan vi lära oss något? 15 minuter samma tid varje dag Stående Koordinering SIP-frågor 1. Vad har hänt Sedan sist? 2. Vad gör vi Idag? 3. Har vi haft eller räknar vi med Problem? 5
Sprintavslut Löpande överlämning 30-60 min presentation Visa det verkliga resultatet Produktägaren närvarande Erfarenhetsmöte - Vid varje etappslut 30-60 min Vad gick bra och vad kan vi förbättra (gula lappar) Diskutera och nedteckna beslut Sprint task board Ej påbörjat Pågående Klart Oväntat Burndown chart 1. Sdjlsdkfasöl dkfskföadj 2. Sldköalsd öasöd 3. Ölkaös 4. Söldkäaösd käösd 5. Ldksfäök 6. skdfäalöskd fäasdö Produktlogg Etapplogg 1. Sdjlsdkfasöl dkfskföadj 2. Sldköalsd öasöd 3. Ölkaös 4. Söldkäaösd käösd 5. Ldksfäök 6. Skdfäalösk lkjkjhjhjg Gruppdiskussion 2 I era projektgrupper Ca 5-10 minuter Hur kan ni implementera den agila metoden på ert projekt? Hur skulle en scrum-master fungera? Vad skulle ni ha för sprintrar? Vad skulle ni ha för prioriteringar? GRUPPUPPGIFT Case Lördagskaos Lördag 12.00 Familjen sitter samlad i köket. Stämningen dämpad. Alla vet med sig att de borde gjort något. Mamma, pappa, barnen Kalle och Stina har försovit sig. Farmor och farfar kommer på middag klockan 17-19 (prick). De är pedanter och om något är fel kommer alla att få höra det, ALLA! Detta gäller! Städning av alla rum, bäddning och allt sådant i sovrum, plocka undan i hallen, torka av vardagsrum, skura köksgolvet, 6 rum (plocka undan=30 min, torka=30 min) Matlagning (förrätt (räksallad), huvudrätt (lammstek, potatissallad), efterrätt (Farmor gillar fruktsallad ). 3 rätter (förbereda=30 min, lagatill och lägga upp=30 min) Lunchen? Alla är hungriga. Laga en god makaronipudding=30 min, Äta puddingen = 30 min för alla Grannarna kommer på fika med sina snälla barn kl 15-16 (= 60 min för alla), 30 min förberedelser Farfar och farmor kommer prick kl 17. Scrum säger mamma, scrum brummar pappa med och så sätter de igång och scrummar. Mamma product owner (PO) och scrummaster. Sprintar på en timme. Samling 12.30 6
Er uppgift 12.30: Arbetet ska just starta. Hur ser planeringen ut? 1-2 st A3 per grupp, 30 min Ny information! 13.30 Samling hos PO efter första sprinten. Sprint 2 startar. Mamma har stukat foten och sitter i soffan och surar. Hon snubblade i badrummet direkt efter planeringsmötet och slet lös duschen. Pappa kommer inte alls, han är i badrummet och försöker laga duschen. Vattnet sprutar. Pappa svär. Mormor och morfar kommer också! De sover över. De är inte petiga alls med städning, snurriga bohemer. De vill göra något roligt till kvällen, alla tillsammans. MoM gillar inte fruktsallad, det får bli en cheesecake Ett rum till att förbereda (1 tim) En maträtt till (1 tim) En kvällsaktivitet (1 tim) Modifiera er produktlogg och skapa sprintlogg/etapplogg för sprint 2. 7