Upload
oskarasbrink
View
367
Download
1
Embed Size (px)
DESCRIPTION
Föreläsning om Game Design på KTH.
Citation preview
Skapa VärdeKTH - 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
4
Skapa och underhåll ett TeamTräna på kommunikation med varandraDetta kräver tid i början och fortgår genom projektet
Förtydliga och revidera en idé om en produktSamlar ihop och tolkar den information som har stor relevans för produktenHanterar informationen tillsammans för att nå gemensamt perspektivFokuserar på, tränar upp och nyttja teamets tid och engagemeng
Skapa, underhåll och förändra en produktBaserad på teamets gemensamma lärdommar, förmågor och insikterUppnå målI tät kontakt med marknaden
Sträva efter förbättring
5
Varför bry sig om Lean och Agile?Marknadstypen är avgörande för processen
Börja saktaAgil utveckling ökar i hastighet över tid
Att börja för fort är sällan önskvärtDetta är svårt
Hela teamet tränar på snabbhet under hela projektetScrum ”sprint retrospectives”Lean ”kaizen”Generellt ”feedbackloopar”
Gör en del antaganden om marknaden
6
Old MarketOld Product
New MarketOld Product
Old MarketNew Product
New MarketNew Product
ResegmentedExisting New
niche
cheap
Olika delar av idén har olika utmaningar.
Hur ser denna marknad ut för mig?
Typ av riskTeknikEfterfrågan
website kraftverk(fusion)
mmorpg
Speldesign
Symbolik för terminologi och funktionMetafor matchar användarens mål
Konceptuellt om Spel
Vad spel gör
Roligt = ”Learning in a safe environment”Nervsystem & dopaminSpel konstrueras för att säkra effektenVad som fungerar är oftast okänt
STARS - En modell för analys
Skill
GOAL
Tools & Action
RulesStimuli
Cred till modellens uppfinnare: Daniel Cook (www.lostgarden.com)
Engagemeng i allmänhet
Casual HardcoreInterested Engaged Dedicated
Vanliga
Betalar Inget
Sällsynta
Betalar Mycket
GOAL
SkillTools
& Action
Stimuli Rules
Hur man säkrar att lyckas
IterationVad betyder detta för produktion
Varje ”STARS” loop kan och behöver testasFel måste lagas för att addera fler loopar framgångsriktVad som är ”rätt” är ofta okänt
Detta är problematiskt för estimeringChablonestimat av # iterationer i produktionAgila metoder vänder på problemet och blickar bakåt i stället
Vad som händer när det går bra
13
Google Analytics från ett av våra experiment.
?
Spel är okända problem
14
Vad som är ”rätt” är okäntPskologi 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
Sammanfattning Speldesign
Speldesign är ett verktyg som gör produkter engagerandeInnovativ speldesign måste testas grundligtFör att få ett bra resultat testar man oftaEtt bra resultat är en ”hockey stick” på marknaden
Produktion av värde
Saker att sträva mot över tid
17
ProduktivitetMä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
Praktisk innebär
Optimera utveckling för snabb testningTa bort det som inte snabbar uppSäkra att feedback från test är användbar
idé
110101001011110110101
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 PrislappLyckaGlädjeMercedesUpplevelsePerfektionFelfrihetFunktionalitet Konvention...?
Kvalitet är Felfrihet
Kvalitet är inbyggd i processenDefekt
• ~ Svaghet som orsakar misslyckande
Förebyggande arbete i stället för reaktivt arbeteContinuous Deployment ftw
Abstrakt Motiv
Några begrepp ett team kommer pyssla medProdukt ~ 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 konsekvenserSmå 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 cellerSpeldesign 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älletBö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 arbetsprocessenDe 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ärderSkyll 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 BacklogIterera 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 processerMaximera antalet features (noder)
Anställ QA avdelning
osv..
Kvalitet i praktiken
Hög
Hög kostnad
Stort värde
Mycket testning
Vanlig
Vanlig kostnad
Vanligt värde
Lite testning
Låg
Vanlig kostnad
Lågt värde
Gissa = testa
Hög kvalitet är logiskt simpel
I processen
onUpdate()if userCatPleasure >= qualityAmbition then backlog else iterateend
Hur detta brukar se ut
#iterationer
userCatPleasure
qualityAmbition
#!&%
Mjau?
*Purr*
= Done!
Mjau? = IterateDeadline!
Sammanfattning Kvalitet
Bli van att hantera defekter tillsammansLångsiktig hållbarhet kostar i börjanLivsviktigt i längdenI 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
33
Värdet i systemet är länkarna mellan nodernaInteraktionen mellan noder har värdeFeatures är NoderErlang dyker upp igenProdukten definieras som länkar
Dvs: Vad som händer och hur detta har ett värde
Konceptet ämnar belysa värdet
34
Huvudsakligen är detta kommunikationDet uppstår även vissa anteckningarVad 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
Dokumentation blir Backlog
35
Hypoteser om värdet samlas i BacklogProduktägaren väljer vilket experiment teamet gör förstTeamet gör ett experiment i tagetBacklog skrivs således så det inte uppstår interna beroenden
• Detta är lite klurigt
Experiment brukar misslyckasKonceptet rör sig fortare än visionen, långsammare än backloggen
Koncept blir testbart
36
Testning styr arbetetVad kan testas?När, mot vem, hur?
===============
Hur gick testerna?Vilket testresultat vill vi uppnå nästa gång?
Frågor?