300 likes | 679 Views
Agile i praktiken 2013-10-07. Magnus Grimsell. Vad är Agile , Scrum och Lean ? Hur kan jag ha nytta av Agile som beställare?. Vad är Agile ?. Vad är Agile ?. Agile Manifesto.
E N D
Agile i praktiken2013-10-07 • Magnus Grimsell
Vad är Agile, Scrum och Lean? • Hur kan jag ha nytta av Agile som beställare?
Vad är Agile? Vad är Agile?
AgileManifesto Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan That is, while there is value in the items onthe right, we value the items on the left more.
Lean Lean
Lean Software Development • Toyota ProductionSystem 1930 • Lean Production - The Machine That Changed the World 1990 • Lean Software Development • Toyota Product Development System • 7 principles
Lean Software Development • Eliminate waste • Identifieravilkaaktivitetersominteskaparaffärsvärde • Amplify learning • Kunskapinomteamet • Kunskapomkundensbehov • Decide as late as possible • Vi lärosshelatiden • Belsutskabaseras på såmycketkunskapsommöjligt • Deliver as fast as possible • ROI • För attfåmerkunskap
Lean Software Development • Empower the team • “Find good people and let them do their own job” • Undvik micro management • Build Quality in • Åtgärdaorsakenintesymptomen • Buggarär waste • See the whole • Optimerahelheten
Scrum Scrum
Scrum • 1995, Ken Schwaber, Jeff Sutherland, OOPSLA ’95 • 2001 ”Agile Software Development with Scrum” • “An iterative software development framework for managing software projects and product development”
Daily Scrum Retrospective Product Owner Sprint Backlog Release Dev Team Scrum Master Product Backlog Demo Stakeholders Default Definition of Done
Roller • Produktägare • Produktvision • Skapar produktbackloggen • Scrum Master • Undanröjer hinder • Skyddar teamet från störningar • Ser till att processen följs • Utvecklingsteam • 3-9 • Självorganiserande • Cross functional – undvika köer • Stakeholders • Kunder, säljare, marknadsförare osv
Daily Scrum Retrospective Product Owner Sprint Backlog Release Dev Team Scrum Master Product Backlog Demo Stakeholders Default Definition of Done
Product backlog • Produktvision • Prioriterad lista av Userstories • User Story • As a <role>, I want <goal/desire> so that <benefit> • Användarcentrerad • Fokus på affärsvärde Som en handläggare vill jag själv kunna välja kolumner i att-göra-listan så att jag bättre kan planera mitt arbete
Tidsuppskattning • Varför? • För att kunna prioritera och planera • Story Points • Tidsuppskattning är svårt. Jättesvårt. • Traditionellt • Utvecklare uppskattar i timmar • För vem? Medelresursen? Den bäst lämpade? Utan störande moment? • Vad ingår? Test? Merge? Release? Dokumentation? • x=y*1,8+8+2 • Förenkla genom att bara uppskatta storlek • Jämför med tidigare userstories i en så kallad Golden List • Mät hastighet för att avgöra vad som är klart när
Daily Scrum Retrospective Product Owner Sprint Backlog Release Dev Team Scrum Master Product Backlog Demo Stakeholders Default Definition of Done
Sprintstart • Sprint Planning Meeting • Vad ska vi göra kommande sprint? • Planering i detalj • UserStories bryts ner till Tasks • Tidsuppskattning i timmar • Finns det några hinder? • Commitment!
Sprinten • Sprint backlog • Teamets gemensamma mål • Fokuserat arbete mot ett gemensamt mål under en kort begränsad tid • Stories tas från toppen av backloggen och färdigställs innan man tar nästa • Färdig?
Default Definition ofDone • En story anses vara klar enligt DDD • DDD bör innefatta så mycket som möjligt för att minimera risk Commitad Ingen ökad teknisk skuld Gått igenom automatiska tester Testad av annan i teamet Uppgraderingsskript Dokumenterad Demad för PO
Daily Scrum • Vad gjorde jag igår? • Vad ska jag göra idag? • Vilka problem ser jag? • (Hur mycket är det kvar?) • Kommunicera teamets status och progress • Bidrar till fokus • Löser problem
Sprint burndownchart • Uppdateras dagligen • Synlig för alla, även stakeholders • Release burndownchart
Task Board • Tydligt vad som pågår • Synlig för alla, även stakeholders • Fokus på det som är viktigt
Sprintavslut • Demo • Direkt feedback från stakeholders • Retrospektiv • Strukturerat förbättringsarbete • Vad har fungerat bra? • Vad har fungerat sämre? • Vilka förändringar gör vi till nästa sprint? • Release • Något typ av resultat • Helst så färdigt att vi får avkastning på vår investering
Daily Scrum Retrospective Product Owner Sprint Backlog Release Dev Team Scrum Master Product Backlog Demo Stakeholders Default Definition of Done
Sprint commitment Amplifylearning Fokus Sprint Backlog Kvalité Självorganiserande team Eliminatewaste Effektivitet Decide as late as possible Stakeholder Demo Task Board Cross Functional Default Definition ofDone Daily Scrum Burn Down Chart Buildquality in Transparens Empower the team Deliver as fast as possible Förbättringsfokus Time-to-market Retrospektiv See the whole Iterativt
Hur kan jag ha nytta av Agile som beställare? Hur kan jag ha nytta av Agile som beställare?
Inför en produktägare • Budgetansvar och domänkunskap i en och samma person • En person som slutgiltigt prioriterar • Skapa en produktbacklogg • Prioriterad för att maximera ROI • Uttryck UserStories för fokus på användaren • Lär och justera • Titta på demos kontinuerligt • Justera krav och prioritet • Var delaktig i hela processen • Burndown på sprint och hela projektet • Fokus på funktion, inte bara timmar