LEAN-Machine Målbasert utvikling
Outline o Introduksjon o Løsningen o Team Outline: o Hypotest- og målbasert utvikling o Verktøy o Tracking og tolkning o Eksempler o Oppsummering
Hvem er jeg? oeivind Arvesen outvikler ojobbet i Bouvet siden 2017
Løsningen o Jobber løpende Ingen overlevering til drift you build it you run it o Smidig prosess Muliggjør å dekke behov i større grad Kortere vei fra idé til produkt o Muliggjøres av: Tillit Automatisering
Team okryssfunksjonelt kjerneteam Utviklere fulltid på sin løsning oteammedlemmer som ressurser oeierskap til hele prosessen oselvstendig, autonomt Prosjektleder Interaksjonsdesigner Analytiker Løsning Løsning Løsning Utvikler Utvikler Utvikler Utvikler Utvikler Utvikler
Metodologi Hypotese- og ma lbasert utvikling oscrum - teknikker odevops okanban olean Startup
SMIDIG
SMIDIG
SMIDIG SCRUM
SMIDIG Kanban
SMIDIG DevOps o«you buildit, yourun it» oalle gjør alt Du er utvikler, men gjør også support og drift ojobber gjerne med noe som er i produksjon oforutsetninger Ansvarlig for drift selv Oppsett for automatiserte prosesser (bygg, tester, deploy) Monitorering av løsningene og oppsett for varsling
SMIDIG LEAN-Startup o I utgangspunktet en metode for Teknologi-startups okort fortalt: MVP og tidlig lansering Mål om å lære så tidlig som mulig Bekrefte hypoteser fra dag 1 Fokus på verdiskapning og vekst Fortsett, endre retting eller stopp og begynn på nytt
SMIDIG LEAN-Startup: Eksempler fra virkeligheten
SMIDIG Det viktigste er at man finner en metode som funker for kunden, teamet og løsningen man jobber på slik at man får en optimal prosess og kan kontinuerlig levere verdi til sluttbruker
Hypotese- og målbasert utvikling olage det viktigste først overifisere at vi når målene osørge for at vi forbedrer løsningen Om vi ikke fortsetter å lære stagnerer vi.
Hvordan jobbet vi? LEAN-Startup Build-Measure-Learn loop DevOps Videreutviklet og driftet løsningene vi jobbet på Automatiserte prosesser SCRUM Stand-up Demo en gang i uken Retrospektiv SMIDI G Kanban Kontinuerlig utvikling Kanban-board
Viktige prinsipper o Fra prosjekt til produktutvikling Løsningen skal leve over lengre tid Ingen overlevering til drift you build it you run it o Smidig arbeidsprosess Kontinuerlig utvikling Åpen for endringer o Måle og lære underveis i utviklingsprosessen Definere smarte mål Fokus på resultater over leveranser Tidlig brukertest o «Just enough planning» Fokus på MVP og tidlig lansering Lage det viktigste først
Behov orask endringsevne Rask deployment Automatisering av prosesser Autonomi
Oppsett okildekontroll oinfrastruktur som kode okontinuerlig test/bygg okontinuerlig leveranse omåle miljø og applikasjon Kode Bygg Miljø Docker Container Container
Workflow/Branchingstrategi ogitflow o Hoved-grener er 1:1 med miljø Develop Release Master
Logger/Dashboards
Fordeler: oenkelt å gjennomføre deployment oenkelt å gjenskape miljøer oenkelt å skalere tjenester Færre manuelle prosesser... Mer utvikling!
Utviklingsløp o Taktisk mål o Tiltak o Hypotese o Måling o Estimert effekt Hva? Hvorfor? Hvordan?
Den som vet at han ingenting vet, er vis Sokrates - angivelig... Være skeptiske Ha et godt sammenligningsgrunnlag
Tracking o Scroll tracking o Event tracking o Tid på siden o Antall sider sett o Koble dette opp mot endringer Hva tracker vi? Hvordan tracker vi? Hvorfor tracker vi?
Å tolke tallene - å forstå resultatene o Sammenligningsgrunnlag o Unngå støy o Variasjonstesting o Supplere kvalitativt "Lies, damned lies, and statistics"
Et eksempel fra virkeligheten
Tre målnivåer Strategisk mål Kundes overordnede mål Å øke omdømme Taktisk mål Produkteiers mål Høyere Google-ranking Operasjonelt mål Vårt mål Optimalisere webløsning
Hypotese- og måldrevet utvikling o 3 nivåer Strategisk overordnet mål Taktisk produkteier setter mål Operasjonelt teamet definerer operasjonelle tiltak ut i fra hvilke taktiske mål som er i fokus o Hensikt: Skjønne hvorfor vi gjør noe og vite hvordan vi kan måle suksess o Vi ønsker å måle om de endringene vi gjør har effekten vi håper på o Vi ønsker å lære av feil og suksesser o Vi ønsker å videreutvikle løsningen i riktig retning o Det er motiverende og se at det man gjør faktisk bidrar til en bedre løsning gjennom bevis og tall fra analyser
Eksempel: Øke engasjement fra besøkende o 60 % av trafikken til siden kommer fra organisk søk o Brukeren gikk tilbake til Google dersom oppskriften ikke fristet o Lite trafikk og navigasjon mellom oppskrifter o Taktisk mål: Få besøkende til å bli på siden og ikke søke videre på Google Flere sidevisninger per besøk Øke tid på siden per besøk
LEAN learning loop
44% 19% Fra brukertest på løsningen lærte vi at det var generelt lite navigering mellom oppskriftene Om de ikke fant det de var ute etter, gikk de tilbake til søkeresultatet 11% BILDE HER 7%
o Tiltak: Flytte relaterte oppskrifter opp, over kommentarfelt o Hypotese: Ved å tilby relaterte oppskrifter tidligere på oppskriftssiden tror vi at sannsynligheten for at de klikker seg videre i tjenesten i stedet for å gjøre et nytt søk i Google øker o Måling: Flere klikker på en relatert oppskrift o Dagens tall: Mellom 5-7000 klikk i uken o Estimert effekt: ca. 8000 flere klikk o Tidsramme Sjekker status 1 uke etter lansering
Taktisk mål: Øke engasjement Få besøkende til å bli på siden og ikke søke videre på Google Flere sidevisninger per besøk Økt tid på siden per besøk
Lær oved å flytte noe opp, prioriterer man annet innhold ned, eksempelvis Kommentarer oantall som ser innholdet har gått fra 19,8% à 9.01% odet ble opprettet færre kommentarer i september sammenlignet med året før
Tiltak: Tilgjengelig gjøre en snarvei til kommentarer fra hovedinnholdet til oppskriften Hypotese: Brukeren vet ikke at det finnes kommentarer på oppskriften. Det ser ut som siden tar slutt når man kommer til «Relatert innhold» Måling: Motvirke negativ effekt av endret posisjon på siden Dagens tall: Fra 280 til 145 nye kommentarer
Tall, lær Original A B Baseline 9,5% økning 5,2% økning
Hvorfor er dette bedre?
Tradisjonell VS Innovasjon Fossefall o Fokus på leveranse o Dyr og langtekkelig konseptutviklingsfase o Codemonkeys, kunden bestemmer o Store, dyre prosjekter med høy risiko o Unødvendig overhead og «endringshåndtering» o Antagelser om hva brukeren vil ha Smidig o Fokus på resultat o Raskere ut i markedet med nye ideer o Fremmer kreativitet motiverende o Lavere risiko og kost o Mindre overhead o Forbruker i fokus hva brukeren faktisk vil ha!
Hvorfor vi foretrekker smidig utvikling It is always wise to look ahead, but difficult to look further than you can see Winston Churchill The only true wisdom is in knowing you know nothing. Socrates
Hva krever det? otydelig strategi, visjon og mål! oautonomt team - Full tillit til teamet omå være åpen for endring o«just enoughplanning» omå ha støtte fra ledelsen - alle forstår verdien av å jobbe på denne måten oen aksept for at ressurser blir allokert til ting om ikke er håndfaste fra dag 1 ofeedback loops for raske tilbakemeldinger
Oppsummering o Måling lar oss verifisere at endringer er til det bedre Når man målene man har satt seg? o Viktig med felles kultur og tankegang o Autonomi krever tillit o Arbeidet forenkles av automatisering og eierskap til hele prosessen o Motiverende å jobbe med
Spørsmål?