Skapa Värde KTH - November 2009
Varför detta är viktigt för tekniker - Fet bredsida från en Designer Nästan alla projekt misslyckas Alla i teamet är involverade Alla måste vara beredda att agera
Nu börjar vi
Vad som händer när man börjar Skapa och underhåll ett Team Träna på kommunikation med varandra Detta kräver tid i början och fortgår genom projektet Förtydliga och revidera en idé om en produkt Samlar ihop och tolkar den information som har stor relevans för produkten Hanterar informationen tillsammans för att nå gemensamt perspektiv Fokuserar på, tränar upp och nyttja teamets tid och engagemeng Skapa, underhåll och förändra en produkt Baserad på teamets gemensamma lärdommar, förmågor och insikter Uppnå mål I tät kontakt med marknaden 4
Sträva efter förbättring Varför bry sig om Lean och Agile? Marknadstypen är avgörande för processen Börja sakta Agil utveckling ökar i hastighet över tid Att börja för fort är sällan önskvärt Detta är svårt Hela teamet tränar på snabbhet under hela projektet Scrum sprint retrospectives Lean kaizen Generellt feedbackloopar 5
Gör en del antaganden om marknaden Olika delar av idén har olika utmaningar. Old Market New Product New Market New Product Hur ser denna marknad ut för mig? Old Market Old Product New Market Old Product Existing niche Resegmented cheap New 6 website Efterfrågan mmorpg Typ av risk kraftverk (fusion) Teknik
Speldesign
Konceptuellt om Spel Symbolik för terminologi och funktion Metafor matchar användarens mål
Vad spel gör Roligt = Learning in a safe environment Nervsystem & dopamin Spel konstrueras för att säkra effekten Vad som fungerar är oftast okänt
STARS - En modell för analys Skill Tools & Action GOAL Stimuli Rules Cred till modellens uppfinnare: Daniel Cook (www.lostgarden.com)
Engagemeng i allmänhet Casual Interested Engaged Dedicated Hardcore Vanliga Betalar Inget GOAL Skill Stimul i Tools & Action Rules Sällsynta Betalar Mycket
Hur man säkrar att lyckas Iteration Vad betyder detta för produktion Varje STARS loop kan och behöver testas Fel måste lagas för att addera fler loopar framgångsrikt Vad som är rätt är ofta okänt Detta är problematiskt för estimering Chablonestimat av # iterationer i produktion Agila metoder vänder på problemet och blickar bakåt i stället
Vad som händer när det går bra Google Analytics från ett av våra experiment.? 13
Spel är okända problem Vad som är rätt är okänt Pskologi använder black box metafor för användarens psyke Spel använder samma trick Speldesign har några teoretiska modeller för standardmönster Hur vi vet vad som blev rätt KBT Psykologi använder beteendeförändring Spel använder samma trick Speldesign har många teoretiska modeller för att göra antaganden Hur vi vet att vi är färdiga Alla mål uppnås Pengarna tar slut Information tar slut Tiden tar slut 14
Sammanfattning Speldesign Speldesign är ett verktyg som gör produkter engagerande Innovativ speldesign måste testas grundligt För att få ett bra resultat testar man ofta Ett bra resultat är en hockey stick på marknaden
Produktion av värde
Saker att sträva mot över tid Produktivitet Mätbara beteendeförändringar orsakade av produkt i användarens händer Det finns många vanliga felaktiga mätmetoder som skapar waste Några Trick Optimera hela systemet för biologiska informationsnätverk Säkra mätbarhet av alla tänkbara relevanta beteendeförändringar Identifiera potential till ökad produktivitet Skapa förutsättningar Teamet startar i okänt territorium Tid och utrymme för att driva OODA loop 17
Praktisk innebär Optimera utveckling för snabb testning Ta bort det som inte snabbar upp Säkra att feedback från test är användbar idé 11010100101 1110110101
Två olika sätt att jobba på Snabbt Långsamt
Kvalitet
Att betrakta Kvalitet objektivt Alla är sällan överens om vad det innebär Prislapp Lycka Glädje Mercedes Upplevelse Perfektion Felfrihet Funktionalitet Konvention...?
Kvalitet är Felfrihet Kvalitet är inbyggd i processen Defekt ~ Svaghet som orsakar misslyckande Förebyggande arbete i stället för reaktivt arbete Continuous Deployment ftw
Abstrakt Motiv Några begrepp ett team kommer pyssla med Produkt ~ system av noder och länkar Metcalfe s Law ~ Network Effect Erlang ~ nytta av levande länk Defekt ~ antinytta av levande länk Detta har några konsekvenser Små produkter tål större defekter Antinytta växer lavinartat med #noder * defekter/nod Tekniskt misslyckande smyger sig på produkten
Praktiska Strategiska Åtgärder Bryt ner produkten i lagom celler Speldesign matchar cellerna mot chunkbarhet Arbeta med en länk i taget Säkra befintligt värde före skapande av nytt I förväg betrakta länkar som inte når 1 Erlang som negativt värde Klustra lämpliga noder Infodesigners kallar ofta detta för Gruppera Information Alternativ man kan välja i stället Börja om: Redesign Complete Rewrite Konkurs Sälj verksamheten till ny ägare Byt Marknad Investera i andra produkter
Praktiska Taktiska Åtgärder Implementera QA i arbetsprocessen De fem varför Investera proportionellt mot skadans kostnad i varje steg Automatisera detektion av defekter Stoppa defekter från att komma igenom processen Börja litet och träna på att växa Alternativa taktiska åtgärder Skyll på något annat Låtsas att det inte finns defekter Fokusera på karriären Ge bort problemet till en testavdelning
Åtgärder inbyggda i Agila metoder Definiera vad länkens Erlang är i Backlog Iterera samma PBI tills 1 Erlang uppnås Investera i löpande inspektion av byggda länkar och dess noder Delegera ägarskap av helheten till PO Delegera ägarskap av process till Teamet Automatisera prioritering av problem ~ impediment Alternativa processer Maximera antalet features (noder) Anställ QA avdelning osv..
Kvalitet i praktiken Hög Vanlig Låg Hög kostnad Stort värde Mycket testning Vanlig kostnad Vanligt värde Lite testning Vanlig kostnad Lågt värde Gissa = testa
I processen Hög kvalitet är logiskt simpel onupdate() if usercatpleasure >= qualityambition then backlog else iterate end
Hur detta brukar se ut usercatpleasure *Purr* Mjau? qualityambition #!&% = Done! #iterationer Deadline! Mjau? = Iterate
Sammanfattning Kvalitet Bli van att hantera defekter tillsammans Långsiktig hållbarhet kostar i början Livsviktigt i längden I grunden är detta en fråga om testning av värde & Testning av teknik
Konceptutveckling & Scrum
Konceptutveckling i allmänhet Formulerande av hypoteser så de kan valideras eller invalideras av ett utvecklingsteam Scrum kallar dessa hypoteser för Backlog
Antagandet om värde finns i Backlog Värdet i systemet är länkarna mellan noderna Interaktionen mellan noder har värde Features är Noder Erlang dyker upp igen Produkten definieras som länkar Dvs: Vad som händer och hur detta har ett värde 33
Konceptet ämnar belysa värdet Huvudsakligen är detta kommunikation Det uppstår även vissa anteckningar Vad kommunikationen inehåller lär vi oss under resan Verkningsgrad av kommunikation, 3 nivåer #1: Dialog, gemensamt skissande, gemensam analys etc #2: Tele-pressence, conf call, irc chat, google talk, msn, telefon #3: Dokumentation 34
Dokumentation blir Backlog Hypoteser om värdet samlas i Backlog Produktägaren väljer vilket experiment teamet gör först Teamet gör ett experiment i taget Backlog skrivs således så det inte uppstår interna beroenden Detta är lite klurigt Experiment brukar misslyckas Konceptet rör sig fortare än visionen, långsammare än backloggen 35
Koncept blir testbart Testning styr arbetet Vad kan testas? När, mot vem, hur? =============== Hur gick testerna? Vilket testresultat vill vi uppnå nästa gång? 36
Frågor?