En introduksjon til Scrum ditt navn dato Mountain











































- Slides: 43
En introduksjon til Scrum <ditt navn> <dato> Mountain Goat Software, LLC
En introduksjon til Scrum Presentert av <deg> <dato> Mountain Goat Software, LLC
Vi taper stafetten “The… ‘relay race’ approach to product development…may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach—where a team tries to go the distance as a unit, passing the ball back and forth—may better serve today’s competitive requirements. ” Hirotaka Takeuchi og Ikujiro Nonaka, “The New Product Development Game”, Harvard Business Review, januar 1986. Mountain Goat Software, LLC
Scrum på 100 ord • Scrum er en smidig prosess som lar oss fokusere på å levere høyest mulig forretningsverdi på kortest mulig tid. • Scrum lar oss raskt og regelmessig inspisere fungerende programvare (i perioder fra to til fire uker). • Bedriften setter prioritetene. Teamene organiserer seg selv for å finne den beste måten å levere den høyest prioriterte funksjonaliteten. • I hver periode fra to til fire uker – en sprint – kan alle se fungerende programvare, og avgjøre om det kan slippes eller om man skal fortsette å utvikle det i en sprint til. Mountain Goat Software, LLC
Scrums opprinnelse • • Jeff Sutherland • • Innledende scrum på Easel Corp i 1993 IDX og 500+ folk bruker Scrum Ken Schwaber • • • ADM Presenterte Scrum på OOPSLA 95 med Sutherland Forfatter av tre bøker om Scrum Mike Beedle • Scrum-mønstre i PLOPD 4 Ken Schwaber og Mike Cohn • Stiftet Scrum Alliance i 2002, opprinnelig innenfor Agile Alliance Mountain Goat Software, LLC
Scrum har blitt brukt av: • Microsoft • Yahoo • Google • Electronic Arts • Lockheed Martin • Philips • Siemens • Nokia • IBM • Capital One • BBC Mountain Goat Software, LLC • Intuit • Nielsen Media • First American Real Estate • BMC Software • Ipswitch • John Deere • Lexis Nexis • Sabre • Salesforce. com • Time Warner • Turner Broadcasting • Oce
Scrum har blitt brukt til: • • • Kommersiell programvare Intern utvikling Kontraktsutvikling Prosjekter med avtalt pris Finansielle applikasjoner ISO 9001 -sertifiserte applikasjoner Innebygde systemer 24 x 7 systemer med krav til 99. 999% oppetid Joint Strike Fighter • Dataspillutvikling • FDA-godkjente, livskritiske systemer • Kontrollsystemer for satellitter • Websider • Programvare for håndholdte enheter • Mobiltelefoner • Nettverksapplikasjoner • Applikasjoner fra uavhengige programvareleverandør • Noen av de største applikasjonene i bruk Mountain Goat Software, LLC
Kjennetegn • • • Selvorganiserende team Produktene utvikles i “sprinter” (perioder på to til fire uker) Krav blir presentert som punkter på en liste (product backlog) Ingen spesifikke tekniske arbeidsmåter blir foreskrevet Bruker produktive regler for å skape et smidig miljø for å levere prosjekter Én av de ”smidige prosessene” Mountain Goat Software, LLC
The Agile Manifesto – et sett med verdier fremfor Prosesser og verktøy fremfor Omfattende dokumentasjon Samarbeid med kunden fremfor Kontraktsforhandling er Å reagere på endringer fremfor Å følge en plan Personer og samspill Programvare som virker Kilde: www. agilemanifesto. org Mountain Goat Software, LLC
Et prosjekts støynivå Langt unna avtale Anarki ns Mountain Goat Software, LLC ke lig Enkelt Nær sikker Nær avtale Va Teknologi Kilde: Strategic Management and Organizational Dynamics av Ralph Stacey i Agile Software Development with Scrum av Ken Schwaber og Mike Beedle. Langt unna sikker Krav Kompleks
Scrum 24 timer Sprint 2 -4 uker Sprint-mål Return Cancel Return Coupons Gift wrap Gift Cancel wrap Product backlog Mountain Goat Software, LLC Sprint backlog Coupons Potensielt leverbart produktinkrement
Alt sett i sammenheng Bilde tilgjengelig på www. mountaingoatsoftware. com/scrum Mountain Goat Software, LLC
Sprintene • Scrum-prosjekter utvikles i en serie av sprinter • Tilsvarende iterasjoner i Extreme Programming • Typisk varighet er to til fire uker, eller maks én kalendermåned • En fast varighet fører til bedre rytme • Produktet designes, kodes og testes i løpet av sprinten Mountain Goat Software, LLC
Sekvensiell kontra overlappende utvikling Krav Design Kode Test I stedet for å gjøre en ting om gangen. . . gjør Scrum-team litt av alt hele tiden Kilde: “The New Product Development Game” av Takeuchi og Nonaka. Harvard Business Review, januar 1986. Mountain Goat Software, LLC
Ingen endringer i løpet av en sprint Endringer • Planlegg varigheten på en sprint i forhold til hvor lenge du kan binde deg til å ikke gjøre endringer i en sprint Mountain Goat Software, LLC
Scrum-rammeverket Roller • Produkteier • Scrum. Master • Teamet Seremonier • Sprint-planlegging • Sprint-gjennomgang • Sprint-retrospekt • Daglige scrum-møter Artefakter • Product backlog • Sprint backlog • Burndown-diagram Mountain Goat Software, LLC
Scrum-rammeverket Roller • Produkteier • Scrum. Master • Teamet Seremonier • Sprint-planlegging • Sprint-gjennomgang • Sprint-retrospekt • Daglige scrum-møter Artefakter • Product backlog • Sprint backlog • Burndown-diagram Mountain Goat Software, LLC
Produkteier • Definerer produktets funksjonalitet • Avgjør sperrefrist og innhold • Er ansvarlig for produktets lønnsomhet (ROI) • Prioriterer funksjonalitet i forhold til markedsverdi • Justerer funksjonalitet og prioritet ved hver iterasjon, etter behov • Aksepterer eller forkaster arbeidsresultater Mountain Goat Software, LLC
Scrum. Master • • • Representerer ledelsen ovenfor prosjektet Ansvarlig for å opprettholde Scrum-verdier og -metoder Fjerner hindringer Passer på at teamet er funksjonelt og produktivt Muliggjør tett samarbeid mellom rollene og funksjonene Skjermer teamet fra eksterne inngrep Mountain Goat Software, LLC
Teamet • • • Normalt 5 -9 personer Tverrfunksjonelt: • Utviklere, testere, interaksjonsdesignere osv. Medlemmene bør være på heltid • Kan være unntak (f. eks. databaseadministrator) Teamene er selvorganiserende • Ingen titler er ideelt, men sjelden en mulighet Teamsammensetning bør kun endres mellom sprinter Mountain Goat Software, LLC
Scrum-rammeverket Roller • Produkteier • Scrum. Master • Teamet Seremonier • Sprint-planlegging • Sprint-gjennomgang • Sprint-retrospekt • Daglige scrummøter Artefakter • Product backlog • Sprint backlog • Burndown-diagram Mountain Goat Software, LLC
Teamets kapasitet Produkt backlog Sprint-planleggingsmøte Sprint-prioritering • • Forretningsbetingelser Teknologi Sprintmål Sprint-planlegging • Gjeldende produkt Analysere og evaluere produkt backlog Velge sprint-mål • • Mountain Goat Software, LLC Bestem hvordan sprint-målet kan nås (design) Lag sprint backlog (oppgaver) fra punkter i product backlog (user stories / funksjonalitet) Estimere sprint backlog i timer Sprint backlog
Sprint-planlegging • • • Teamet velger punkter fra product backlog de kan binde seg til å fullføre En sprint backlog blir opprettet • • Oppgavene blir identifisert og hver av dem blir estimert (1 -16 timer) Gjøres i fellesskap, ikke av Scrum. Master alene Design på et overordnet nivå blir vurdert Som en ferieplanlegger vil jeg se bilder av hotellet. Mountain Goat Software, LLC Kode forretningslogikklaget (8 timer) Kode brukergrensesnittet (4) Skriv testklasser (4) Kode foo-klassen (6) Oppdatere ytelsestester (4)
Daglig scrum-møte • Parametre • • • Daglig 15 -minutter Stående • • Hele verden er invitert Bare teammedlemmer, Scrum. Master og produkteier kan prate • Ikke for problemløsing • Hjelper til å unngå andre unødvendige møter Mountain Goat Software, LLC
Alle svarer på 3 spørsmål Hva gjorde du i går? Hva skal du gjøre i dag? Hindrer noe deg i arbeidet? • Det er ikke statusrapportering til Scrum. Master • Det er forpliktelser ovenfor kolleger Mountain Goat Software, LLC 1 2 3
Sprint-gjennomgang • Teamet presenterer det som ble utført i • • sprinten Gjøres ofte som en demo av ny funksjonalitet eller underliggende arkitektur Uformelt • • 2 timer forberedelsestid Ingen Power. Point-sider • Hele teamet deltar • Inviter hele verden Mountain Goat Software, LLC
Sprint-retrospekt • Regelmessig vurdering av hva som • • • fungerer og ikke fungerer Typisk 15 - 30 minutter Gjøres etter hver sprint Hele teamet deltar • • Scrum. Master Produkteier Teamet Eventuelt kunder og andre Mountain Goat Software, LLC
Begynne / Slutte / Fortsette • Hele teamet møtes og diskuterer hva de vil: Begynne å gjøre Slutte å gjøre Dette er kun én av mange måter å gjøre sprintretrospekt på. Mountain Goat Software, LLC Fortsette å gjøre
Scrum-rammeverket Roller • Produkteier • Scrum. Master • Teamet Seremonier • Sprint-planlegging • Sprint-gjennomgang • Sprint-retrospekt • Daglige scrummøter Artefakter • Product backlog • Sprint backlog • Burndown-diagram Mountain Goat Software, LLC
Product backlog • Krav • En liste over alt ønsket arbeid i prosjektet • Beskrevet slik at hvert punkt har verdi for produktets brukere eller kunder • Prioriteres av produkteier • Reprioriteres før hver sprint Dette er product backlog Mountain Goat Software, LLC
Product backlog-eksempel Punkter Estimat La en gjest lage en reservasjon 3 Som en gjest vil jeg kansellere en reservasjon 5 Som en gjest vil jeg forandre datoen på en reservasjon 3 Som en hotellansatt vil jeg kjøre en omsetningsrapprt (inntekt-per-tilgjengelig-rom) 8 Forbedre feilhåndtering 8 . . . 30 . . . 50 Mountain Goat Software, LLC
Sprint-målet • En kort beskrivelse over hva som har fokus i denne sprinten Biovitenskap Støtte nødvendig funksjonalitet for genetiske Databaseapplikasjonen Applikasjonen skal kjøre på studier. SQL Server i tillegg til Oracle. Finansielle tjenester Støtte flere tekniske indikatorer enn ABC med sanntidsdata. Mountain Goat Software, LLC
Håndtere sprint backlog • • • Personer tar på seg arbeid etter eget ønske • Arbeid er aldri avtalt/utpekt Estimert gjenstående arbeid oppdateres daglig Ethvert teammedlem kan legge til, fjerne eller endre oppgaver i sprint backlog Nye oppgaver vil oppdages underveis i sprinten Hvis arbeidet er uklart kan man definere en oppgave i sprint backlog med et høyere estimat og dele det opp senere Oppdater gjenstående arbeid etterhvert som man vet mer Mountain Goat Software, LLC
En sprint backlog Oppgaver Kode brukergrensesnitt Man Tirs Ons Tors Fre 8 4 8 Kode mellomlaget 16 12 10 4 Teste mellomlaget 8 16 16 11 8 Skriv online-hjelp 12 Skriv foo-klassen 8 8 8 4 Legg til feilregistrering Mountain Goat Software, LLC
Timer Et sprint burndown-diagram Mountain Goat Software, LLC
Oppgaver Man Tirs Ons Tors Fre 8 16 8 12 Kode brukergrensesnitt Kode mellomlaget Teste mellomlaget Skriv online-hjelp 4 12 16 8 10 16 7 11 50 Timer 40 30 20 10 0 Man Mountain Goat Software, LLC Tirs Ons Tors Fre 8
Skalerbarhet • • • Normalt 7 ± 2 personer per team • Skalerbarhet gjennom team av team Faktorer i skalering • • Applikasjonstype Teamets størrelse Teamets spredning Prosjektets varighet Scrum har blitt brukt på flere prosjekter med 500+ deltakere Mountain Goat Software, LLC
Skalering gjennom Scrum of scrums Mountain Goat Software, LLC
Scrum of scrums Mountain Goat Software, LLC
Hvor kan man finne ut mer • • www. mountaingoatsoftware. com/scrum www. scrumalliance. org www. controlchaos. com scrumdevelopment@yahoogroups. com Mountain Goat Software, LLC
Litteratur om Scrum • • • Agile and Iterative Development: A Manager’s Guide av Craig Larman Agile Estimating and Planning av Mike Cohn Agile Project Management with Scrum av Ken Schwaber Agile Retrospectives av Esther Derby og Diana Larsen Agile Software Development Ecosystems av Jim Highsmith Agile Software Development with Scrum av Ken Schwaber og Mike Beedle Scrum and The Enterprise av Ken Schwaber User Stories Applied for Agile Software Development av Mike Cohn Det finnes mange ukentlige artikler på www. scrumalliance. org Mountain Goat Software, LLC
Lisensvilkår • • Du har lov til: • • å remikse - å bearbeide verket På følgende vilkår: • • • å dele - å kopiere, distribuere og spre verket Navngivelse - Du skal navngi opphavspersonen og/eller lisensgiveren på den måte som disse angir (men ikke på en måte som indikerer at disse har godkjent eller anbefaler din bruk av verket) Ingenting i lisensen skader eller begrenser opphavsmannens ideelle rettigheter For mer informasjon, se http: //creativecommons. org/licenses/by/3. 0/ Mountain Goat Software, LLC
Kontaktinformasjon Presentation by: Mike Cohn mike@mountaingoatsoftware. com www. mountaingoatsoftware. com (720) 890 -6110 You can remove this (or any slide) but you must credit the source somewhere in your presentation. Use the logo and company name (as at bottom left, for example) or include a slide somewhere saying that portions (or all) of your. presentation are from this source Thanks. Mountain Goat Software, LLC











































