Experimentering (förhandsversion)
Kommentar
Vi uppskattar den feedback vi har fått under förhandsversionsfaserna i Experimentation på Azure App Configuration, och våra team använder den för att göra uppdateringar av funktionen. Under den här tiden är experimenteringsarbetsytan tillfälligt otillgänglig.
Experimentering är en process för att systematiskt testa hypoteser eller ändringar för att förbättra användarupplevelsen eller programvarufunktionerna. Den här definitionen gäller även för de flesta vetenskapliga områden, inklusive teknik, där alla experiment har fyra vanliga steg:
- Utveckla en hypotes för att dokumentera syftet med det här experimentet,
- Beskriva en metod för att utföra experimentet, inklusive installation, vad som mäts och hur,
- Observation av resultaten som mättes med måtten som definierades i föregående steg,
- Dra en slutsats om huruvida hypotesen har verifierats eller ogiltigförklarats.
Begrepp som rör experimentering
Variantfunktionsflaggor: Representerar olika versioner eller konfigurationer av en funktion. I ett experiment jämförs de variantfunktionsflaggor som är relevanta för de mått som du är intresserad av och den trafik som allokeras för programpubliken.
Telemetri: Telemetri är data för varianter av en funktion och relaterade mått för att utvärdera funktionen.
A/B-testning: A/B-testning, även kallat experimentering, är en branschstandardmetod för att utvärdera effekten av potentiella ändringar i en teknikstack.
Minsta samplingsstorlek: är det minsta antal händelser som krävs per variant av funktionen för experimentet för att visa statistiskt signifikanta resultat. Ju större urvalsstorlek, desto bättre statistisk signifikans för experimentets resultat.
Tänk på följande exempel: du vill se om kunder på din e-handelswebbplats är mer benägna att klicka på utcheckningsknappen om den är gul i färg (variant A) eller blå i färg (variant B). För att konfigurera den här jämförelsen kan du dela trafik mellan de två varianterna av funktionsflaggan och använda antalet klick som mått för att mäta deras prestanda. Det är osannolikt att alla dina funktioner är så enkla att mäta och omedelbart utvärdera, och det är där experimentet kommer in. När du kör ett experiment måste du konfigurera en tidslinje för den här processen för att jämföra prestanda för varje variant som är relevant för de mått som du är intresserad av. Termerna "A/B-testning" och "experimentering" används ofta omväxlande, där experimentering i huvudsak är ett utökat A/B-test där du systematiskt testar hypoteser.
Konfigurera experimentet
Innan du börjar bör du överväga följande frågor i din hypotesidentifieringsfas: Vilka frågor försöker du besvara genom att köra ett experiment? Vad ska du köra ett experiment på? Varför? Var börjar du ens? Vilka är några strategier att följa efter dina affärsbehov? Kommer det här experimentet att hjälpa dig att göra omedelbara förbättringar av programmets eller ditt företags prestanda?
Identifiera vad du hoppas uppnå genom att köra ett experiment före en fullständig version, du bör dokumentera din plan i det här skedet. Vilka är varianterna av den funktion eller funktion som du vill experimentera med? Vilka mått är du intresserad av? Vilka händelser av användar- eller systeminteraktion kan användas för att samla in data för att driva dessa mått för mått?
Experimentet är bara lika bra som de data du samlar in för det. Innan du påbörjar experimentet måste du avgöra vilken variant du tänker använda som kontroll (baslinjevariant) och vilken som du tänker se ändringar i (jämförelsevariant).
Dra en slutsats från experimentet
Att dra en slutsats (eller flera slutsatser om det behövs) är det sista steget i experimenteringscykeln. Du kan kontrollera experimentresultatet, som visar resultatet och effekten av jämförelsevarianten mot kontrollvarianten. Resultaten visar också deras statistiska betydelse. Statsig-måttet beror på telemetridata och exempelstorlek.
Resultaten hjälper dig att slutföra de lärdomar och resultat i användbara objekt som du omedelbart kan implementera i produktion. Experimentering är dock en kontinuerlig process. Påbörja nya experiment för att kontinuerligt förbättra din produkt.
Scenarier för att använda experimentering
Frisläpp försvar
Mål: Säkerställa smidiga övergångar och underhålla eller förbättra viktiga mått för varje version.
Metod: Använda experimentering för att gradvis distribuera nya funktioner, övervaka prestandamått och samla in feedback för iterativa förbättringar.
Fördelar:
- Minimerar risken för omfattande problem med hjälp av skyddsräckesmått för att identifiera och åtgärda problem tidigt i distributionen.
- Hjälper till att underhålla eller förbättra viktiga prestanda- och användarnöjdhetsmått genom att fatta välgrundade beslut baserat på realtidsdata.
Testa hypoteser
Mål: Validera antaganden och hypoteser för att fatta välgrundade beslut om produktfunktioner, användarbeteenden eller affärsstrategier.
Metod: Använd experimentering för att testa specifika hypoteser genom att skapa olika funktionsversioner eller scenarier och sedan analysera användarinteraktioner och prestandamått för att fastställa resultat.
Fördelar:
- Ger evidensbaserade insikter som minskar osäkerheten och vägleder strategiskt beslutsfattande.
- Möjliggör snabbare iteration och innovation genom att bekräfta eller motbevisa hypoteser med verkliga användardata.
- Förbättrar produktutveckling genom att fokusera på idéer som har visat sig fungera, vilket i slutändan leder till mer framgångsrika och användaranpassade funktioner.
A/B-testning
Mål: Optimera affärsmått genom att jämföra olika UX-variationer och fastställa den mest effektiva designen.
Metod: Utför A/B-tester med experimentering med olika användarupplevelser, mäta användarinteraktioner och analysera prestandamått.
Fördelar:
- Förbättrar användarupplevelsen genom att implementera UX-ändringar baserat på empiriska bevis.
- Ökar konverteringsfrekvensen, engagemangsnivåer och den övergripande effektiviteten hos digitala produkter eller tjänster.
För intelligenta program (till exempel AI-baserade funktioner)
Mål: Påskynda generativ AI-implementering (Gen AI) och optimera AI-modeller och användningsfall genom snabba experiment.
Metod: Använd experimentering för att iterera snabbt på AI-modeller, testa olika scenarier och fastställa effektiva metoder.
Fördelar:
- Förbättrar flexibiliteten när det gäller att anpassa AI-lösningar till föränderliga användarbehov och marknadstrender.
- Underlättar förståelsen av de mest effektiva metoderna för skalning av AI-initiativ.
- Förbättrar noggrannheten och prestandan för AI-modeller baserat på verkliga data och feedback.
Anpassnings- och målexperiment
Mål: Leverera personligt innehåll och upplevelser som är skräddarsydda för användarinställningar och beteenden.
Metod: Använd experimentering för att testa personligt innehåll, mäta engagemang och iterera på anpassningsstrategier.
Fördelar:
- Ökar användarengagemang, konverteringsfrekvenser och kundlojalitet genom relevanta och anpassade upplevelser.
- Driver intäktstillväxt och kundkvarhållning genom att rikta in sig på målgrupper med skräddarsydda meddelanden och erbjudanden.
Prestandaoptimeringsexperiment
Mål: Förbättra programmets prestanda och användarupplevelse genom prestandaoptimeringsexperiment.
Metod: Utföra experiment för att testa prestandaförbättringar, mäta viktiga mått och implementera lyckade optimeringar.
Fördelar:
- Förbättrar programmets skalbarhet, tillförlitlighet och svarstider genom proaktiva prestandaförbättringar.
- Optimerar resursutnyttjande och infrastrukturkostnader genom att implementera effektiva optimeringar.