430 likes | 590 Views
PUS iterasjon 0. Johannes Brodwall Statens Landbruksforvaltning 24.11.2008. Smidig. For å kunne forstå hvilke problemer Scrum er ment til å løse Som en deltager på PUS prosjektet Ønsker jeg å lære om historien bak Scrum. For å kunne uttrykke hvilke faktorer som gjør prosjekter vellykkede
E N D
PUS iterasjon 0 Johannes Brodwall Statens Landbruksforvaltning 24.11.2008
For å kunne forstå hvilke problemer Scrum er ment til å løse Som en deltager på PUS prosjektet Ønsker jeg å lære om historien bak Scrum Smidig og Scrum
For å kunne uttrykke hvilke faktorer som gjør prosjekter vellykkede Som en coach, forfatter eller prosjektdeltager som forfatter det smidige manifestet Ønsker jeg å beskrive våre felles erfaringer og verdier Smidig og Scrum
Felles verdier i Smidige metoder Individer og samspill framfor prosesser og verktøy Fungerende system framfor utførlig dokumentasjon Samarbeid med kunden framfor kontraktsforhandlinger Å reagere på endringer framforå følge en plan Smidig og Scrum
Manifest for smidig systemutvikling • Vi oppdager nye og bedre måter å utvikle systemer på, ved å gjøre det selv og ved å hjelpe andre. Derved har vi lært oss å verdsette: • Individer og samspillframfor prosesser og verktøy • Fungerende systemframfor utførlig dokumentasjon • Samarbeid med kundenframfor kontraktsforhandlinger • Å reagere på endringerframfor å følge en plan • Det betyr at selv om punktene til høyre er verdifulle, verdsetter vi de til venstre mer. • Vi oppdager nye og bedre måter å utvikle systemer på, ved å gjøre det selv og ved å hjelpe andre. Derved har vi lært oss å verdsette: • Individer og samspillframfor prosesser og verktøy • Fungerende systemframfor utførlig dokumentasjon • Samarbeid med kundenframfor kontraktsforhandlinger • Å reagere på endringerframfor å følge en plan • Det betyr at selv om punktene til høyre er verdifulle, verdsetter vi de til venstre mer. Smidig og Scrum
De smidige prinsippene: Levere verdifullt, kjørende system hyppig Endringer = kundens konkurransefortrinn Hyppige leveranser Forretning og utvikling jobber sammen Stol på teamet Samtale ansikt-til-ansikt. Mål fremdrift ved programvare Bærekraftig arbeidstempo Teknisk utmerkelse Enkelhet Arkitekturen vokser fram Teamet reflekterer Smidig og Scrum
Essensen For å kunne forbedre sjansene for å lykkes Som en prosjektdeltager Ønsker jeg å høre essensen de smidige prinsippene Smidig og Scrum
Essensen • Vi forbedrer oss etter hver iterasjon Smidig og Scrum
Essensen • Vi tilfredstiller brukeren ved å levere et verdifullt, kjørende system tidlig og hyppig Smidig og Scrum
Essensen • Vi utnytter endringer til å gi kunden merverdi Smidig og Scrum
Roller Seremonier Artifakter Smidig og Scrum
Scrum – Hvem? Produkt-eier Scrum Master Scrum Team Smidig og Scrum
Definerer produktets krav, bestemmer releasedato og –innhold • Er ansvarlig for produktets lønnsomhet (ROI) • Prioriterer krav o.a. i Produkt-backloggen etter verdi • Kan endre krav og prioritering hver iterasjon (sprint) • Godkjenner eller underkjenner arbeidsresultatet ut fra iterasjonsmålet Produkteier (funksjonelt ansvarlig) • Sikrer at teamet fungerer og er produktivt • Legger til rette for tett samarbeid på tvers av alle roller og funksjoner • Fjerner hindringer • Skjermer teamet fra eksterne forstyrrelser • Sikrer at prosessen blir fulgt. Inviterer til daglig scrum, iterasjonsreview og iterasjonsplanleggingsmøter ScrumMaster • Tverrfaglig, sju pluss/minus to medlemmer • Estimerer Produkt-backlog og Iterasjonsbacklog • Bryter Iterasjonsbacklog ned i konkrete arbeidsoppgaver • Har rett til å gjøre alt innen prosjektets retningslinjer for å nå iterasjonsmålet • Organiserer seg selv og arbeidet sitt • Demonstrerer arbeidsresultatet for Produkteieren Team Roller og ansvar Smidig og Scrum
Scrum – Hva? Burn-down Produkt Produkt-eier Scrum Master Produkt-kø Scrum Team Sprint-kø Smidig og Scrum
Hovedartefakter i Scrum • Kjørbart, testet, potensielt utgivbart produkt • Visjon • Produkt-backlog • Liste med krav og andre saker som det skal jobbes med • Eid av Produkteier • Alle kan legge til saker, men bare Produkteier prioriterer • Sprint Backlog • Et kort mål for iterasjonen, typisk en én-linjer: • “få løsningen til å kjøre på Oracle i tillegg til SQL Server” • Krav o.a. fra Produkt-backlog som skal tas i denne iterasjonen • Lages i forhandling mellom Produkteier og Teamet • Brytes ned i oppgaver av Teamet • Burndown Chart Smidig og Scrum
Scrum – Når? 24 timer Stand-up Sprint(1-4 uker) Demo Retro-spektiv Sprint planning Smidig og Scrum
Seremonier • Sprintplanmøte • Todelt. Første del setter mål og velger fra Produkt-backlog, andre del etablerer og estimerer Sprint-backlog • Daglig møte • 15 minutter • Sprint-demo • Kjørende system • Retrospektiv • Hva skjedde, hva gikk bra, hva kan forbedres Smidig og Scrum
For å forstå hvordan det er å jobbe med Scrum Ønsker jeg å høre hvordan en typisk iterasjon/sprint ser ut Smidig og Scrum
Scrum - Overblikk Smidig og Scrum
Krav For å vite hvordan vi skal jobbe med krav og akseptanse Ønsker jeg å høre hvilke teknikker som gjerne brukes med scrum Smidig og Scrum
For å ha avregningsgrunnlag tilgjengelig Som en saksbehandler Ønsker jeg å importere regneark i PUS Smidig og Scrum
For å ha avregningsgrunnlag tilgjengelig Som en saksbehandler Ønsker jeg å importere innfraktdata i PUS Smidig og Scrum
For å kunne lage egne rapporter Som en saksbehandler Ønsker jeg å kunne hente ut historisk innfraktdata fra PUS Smidig og Scrum
For å [verdi] Som en [rolle] Ønsker jeg [funksjon] Smidig og Scrum
Estimering For å få best mulig resultat og involverere hele prosjektet Som en prosjektdeltager Ønsker jeg å bruke planning poker til å estimere omfang Smidig og Scrum
En smidig måte å spesifisere krav • De tre K’ene: • Kort (teksten) • Konversasjon (samtale om teksten) • Konfirmasjon (test) Smidig og Scrum
Akseptansetest For å være sikker på at levert funksjonalitet fortsetter å virke Som en produkteier Ønsker jeg at akseptansetestene skal automatiseres Smidig og Scrum
Funksjonelle tester • Gitt at jeg har en tom database • Når jeg importerer regneark 1 for Tine • Og jeg importerer regneark 2 for Q-Meieriene • Og jeg importerer regneark 3 for Aksut • Så skal historisk innfrakt ha 1000 liter fra Alta for Tine i mars • Og historisk innfrakt ha 2000 liter fra Troms for Tine i mars • Og historisk innfrakt ha 500 liter fra Troms for Q-meieriene i mars • Og historisk innfrakt ikke ha noen rader for Aksut Smidig og Scrum
Funksjonelle tester • Gitt [utgangspunkt] • Og [utgangspunkt] • Når [handling] • Og [handling] • Så [resultat] • Og [resultat] Smidig og Scrum
Iterasjonsplan For å vite hva vi skal gjøre de neste ukene Som en prosjektdeltager Ønsker jeg å lage en iterasjonsplan for iterasjon 0 Smidig og Scrum
Hva skal produseres i iterasjon 0? • Sprintkø for iterasjon 0 • Produktkø • Kjøreregler for prosjektet • Demonstrerbar, kjørbart system Smidig og Scrum
Hva skal gjøres i iterasjon 0? • Workshop – How do we work agile on this project • Sprint Planning Meeting • Workshop – Team ground rules • Workshop – Criteria for "Done” • Workshop – Product Backlog estimation • Workshop – Vision, Actors and Stakeholders, Product Backlog • Set up development environment and test environment • Set up project home page and other administrative stuff • Design, programming, testing (to be detailed in the Sprint Planning Meeting) • Demo • Retrospective • Sprint celebration Smidig og Scrum
Hva skal gjøres i iterasjon 0? • Workshop – How do we work agile on this project • Establish a shared understanding of how we're going to work in this project, including specific decisions on sprint length, roles and responsibilities, what artefacts to use, how to clarify issues, etc. If the majority of the participants have not worked on an agile project before, part of the workshop will resemble an agile introduction course. • Sprint Planning Meeting • Plan the Sprint work • Workshop – Vision, Actors and Stakeholders, Product Backlog • Establish a shared understanding of goals and target groups, the products users and stakeholders, and set the scope for the project. You may not be able to establish the entire Product Backlog in one meeting – if you don't, schedule a new workshop later in this or next sprint. • Workshop – Product Backlog estimation • Estimate the size of the Product Backlog, for planning and steering of the project. You may not be able to estimate all of the Backlog items in one meeting – if you don't, schedule a new workshop later in this sprint. Estimere omfanget av Produkt-backloggen, for planlegging og styring. Det er ikke sikkert at man blir ferdige med all estimering på ett møte, ta i så fall et nytt møte i denne iterasjonen. • Set up development environment and test environment • To make the team able to deliver value in the form of running, tested software • Set up project home page and other administrative stuff • Ensure visibility of status, plans, etc. • Design, programming, testing (to be detailed in the Sprint Planning Meeting) • Deliver value in the form of running, tested software • Workshop – Criteria for "Done” • Get consensus on which criteria to meet in order to call a Product Backlog item or a task "Done". Example: "All code must be reviewed.” • Workshop – Team ground rules • Agree on ground rules for the team. Example: "Don't bring laptop to team meetings“ • Demo • Demo the sprint results for the Product Owner and other people in the customer organization. Only show what's "Done" according the criteria for "Done". • Retrospective • Improve and increase productivity • Sprint celebration • Strengthen the team spirit and give closure. Smidig og Scrum
Kjøreregler For å ha en metode som passer for vårt prosjekt Som en prosjektdeltager Ønsker jeg å bestemme kjøreregler for prosjektet Smidig og Scrum
Kjøreregler • Hvor lang skal iterasjonen være? • Når har vi møter? • Hvordan dokumenterer vi produktkøen og sprintkøen? • Hvordan gjør vi estimering? • Hvilken teknologi skal vi bruke? Hvordan? Smidig og Scrum
Hva skal gjøres i iterasjon 0? • Workshop – How do we work agile on this project • Sprint Planning Meeting • Workshop – Team ground rules • Workshop – Criteria for "Done” • Workshop – Product Backlog estimation • Workshop – Vision, Actors and Stakeholders, Product Backlog • Set up development environment and test environment • Set up project home page and other administrative stuff • Design, programming, testing (to be detailed in the Sprint Planning Meeting) • Demo • Retrospective • Sprint celebration Smidig og Scrum