La oss innse det – å administrere et programvareprodukt i vekst kan være en overveldende oppgave for både nybegynnere og veteraner. Når du introduserer nye funksjoner for å støtte en større og voksende brukerbase, er grønnmarkedsdagene med ansvar for bare en håndfull funksjoner et fjernt minne.
Det økende presset fra sluttbrukerne og interne interessenter begynner å bygge seg opp når du utforsker nye måter å skape verdi for kundene dine på. Uten god kontroll kan du ende opp med å håndtere funksjonsomfang som sklir ut.
Etter å ha jobbet i en rekke roller innen produktledelse gjennom karrieren min, har jeg sett fordelene ved funksjonsflagg på nært hold. Fra å forenkle A/B-testing og gjøre produktlanseringer mer håndterbare, til å opprettholde en praksis for kontinuerlig levering – funksjonsflagg hjelper virkelig produktledere med å ta kontroll over et produkt i vekst med selvtillit.
Hva er funksjonsflagg?
Funksjonsflagg (også kalt funksjonsbrytere eller funksjonsvekslere) fungerer som portvakter for spesifikk funksjonalitet i applikasjonen din under kjøring – det betyr at du kan slå av eller på tilgangen til bestemte funksjoner for brukere når kriteriene du har satt, er oppfylt. De lar deg styre tilgangen i sanntid uten at det er nødvendig å distribuere kode – tenk på friheten!
Hvilke kriterier snakker vi om her? Det er her kraften i funksjonsflagg blir tydeligere. Du kan velge å gi eller blokkere tilgang basert på alle mulige kriterier, som bestemte brukersegmenter, tidspunkt på dagen, geografi, eller du kan til og med randomisere tilgangen for å gjennomføre eksperimenter.
Fordeler ved å bruke funksjonsflagg
Effektiviser A/B-testingen og eksperimentene dine
Når du gjennomfører eksperimenter for å ta gode produktbeslutninger, må du kunne prøve ulike tilnærminger på definerte målgrupper. Du kan bruke funksjonsflagg til å gjennomføre disse testene på en enkel måte, og fokusere på måleverdiene og eksperimentene du ønsker å kjøre, i stedet for på mekanikken ved å segmentere brukere.
Ta forbedring av brukeropplevelsen i en viktig arbeidsflyt i produktet ditt som eksempel. I stedet for å distribuere endringene til hele brukerbasen kan du identifisere bestemte brukersegmenter som kan prøve den nye opplevelsen. Deretter kan du samle inn tilbakemeldinger og måleverdier fra testgruppen for å sammenligne dem med den bredere brukerbasen før du bestemmer deg for å distribuere endringene til hele produktet.
Hvis du tester endringer i layout, interaksjoner eller visuelt hierarki, kan prototyping av responsive design hjelpe deg med å validere ideene dine raskere. Ta en titt på de beste verktøyene for prototyping av responsivt design for å lage testbare arbeidsflyter før du slår dem på for aktive brukere.
Have an account? Log In
Administrer utrullinger og lanseringer av nye funksjoner
En superkraft ved funksjonsflagg er at de gir deg kontroll over komplekse produktlanseringer – de lar deg gå gradvis og trinnvis frem. I stedet for å bare basere deg på intern testing kan du faktisk begynne å distribuere deler av den nye funksjonen til produksjonsmiljøet for å sikre at den fungerer godt sammen med eksisterende funksjoner og kode.
Dette kalles noen ganger en kanarilansering, der du kan se effekten av ny kode og nye funksjoner før du gjør dem tilgjengelige for en større målgruppe. Funksjonslanseringer trenger ikke lenger å skape den samme bekymringen når du har sett at de fungerer for reelle brukere i et aktivt produksjonsmiljø. Det er en mer presis tilnærming, som ligner på praksiser for kontinuerlig integrasjon, i stedet for å risikere nedetid for brukerne dine.
Et godt eksempel på dette er introduksjonen av bilde-i-bilde-funksjonen i YouTube-appen på iPhone. I stedet for å gjøre dette til en standardfunksjon for alle brukere introduserte YouTube gradvis funksjonen for et begrenset antall brukere, slik at utviklerne kunne løse feil og problemer med brukeropplevelsen før en større utrulling fant sted.
Relatert lesning: 12 strategier for vellykkede produktlanseringer (+ eksempler)
Eksperimenter med prisnivåer
Hvis du har måttet bidra til å fastsette prisstrukturen for produktet ditt, vet du at det kan være en hårfin balanse mellom å tilby riktig verdi til riktig pris. Når balansen er feil, kan du ta for lite betalt og miste inntekter – eller du kan skremme bort potensielle kunder med høye priser.
Funksjonsflagg hjelper deg med å administrere prisnivåer langt mer effektivt enn manuelle metoder. Ettersom prisnivåer ofte representerer tilgang til et bestemt sett med funksjoner for spesifikke brukersegmenter, gir det mye mening å bruke funksjonsflagg.
La oss si at du ønsker å introdusere et nytt nivå som du tror kan tiltrekke seg et underbetjent markedssegment. Du kan sette opp et funksjonsflagg for å introdusere dette nye prisnivået for et lite antall brukere, og følge med på om du ser positiv eller negativ mottakelse av prisplanen. Ved å bruke funksjonsflagg kan du føle deg tryggere på prisstrukturen for produktet ditt, fordi det reduserer behovet for gjetting.
Frem gode praksiser gjennom programvareutviklingens livssyklus
Produktledere vet at fornøyde utviklingsteam gir fornøyde kunder! Funksjonsflagg legger mindre press på utviklere som skal støtte komplekse utrullinger, og enda viktigere: de forenkler katastrofale endringer som skaper frykt hos enhver utvikler som har vakt i en helg.
Ettersom funksjonsflagg tvinger frem en tydelig avgrensning av kode, blir det mye enklere å håndtere tilbakerulling av kodeutrullinger hvis noe går galt. Det gjør det mulig for deg og teamene dine å være mer smidige når dere reagerer på uforutsette hendelser. Det gjør virkelig arbeidet med kontinuerlig levering, eller til og med progressiv levering, mer mulig – fordelene ved tilbakemeldingssløyfer fra kunder kan bli en realitet jo mer kontroll du har over funksjonstilgang og utgivelser (dette er også noe AI i utgivelseshåndtering kan hjelpe med).
Hvis du lanserer en ny funksjon, gir et funksjonsflagg deg en enkel avbryter. Hvis du for eksempel oppdager at utrulling til produksjon gir uventede resultater for brukerne dine, til tross for at du har gjort ditt beste i testingen av en ny funksjon, kan du slå av tilgangen med en gang. Det som tidligere var et kaos av håndtering av funksjonsgreiner, hurtigreparasjoner og panikkutrullinger, kan nå håndteres bedre med funksjonsflagg.
Hvordan komme i gang med funksjonsflagg?
Identifiser avhengigheter
Først må du finne ut om kodebasen din legger til rette for en enkel innføring av funksjonsflagg. Eldre monolitter fulle av spaghetti-kode kan by på store utfordringer når du skal komme i gang. Det blir vanskelig å koble funksjoner fra andre arbeidsflyter, slik at de kan avgrenses.
En grundig samtale med utviklingsteamene dine og DevOps-teamet vil være nødvendig for å komme i gang. Selv om fordelene er svært overbevisende, må du være klar over at innføring av funksjonsflagg i seg selv er arbeid som tar tid fra den nåværende funksjonsutviklingen. På lang sikt lønner det seg likevel, så det er verdt å starte samtalen før heller enn senere.
Hvor skal avgrensningen starte?
Det kan være fristende å avgrense alt og bruke funksjonsflagg til kuene kommer hjem, men en mer metodisk tilnærming vil hjelpe deg med å gjøre fremgang uten å ofre alt det andre arbeidet som for tiden er under utvikling.
Når vi tenker på funksjoner, tenker vi ofte på interaksjonene på klientsiden som brukeren har, så du vil kanskje begynne der. Selv om det kan være et godt sted å begynne å avgrense funksjonene dine, må du ikke glemme den underliggende støtten som finnes på serversiden i API-et ditt. Endringer i API-et kan sikre at kodeendringer ikke bryter forventet atferd på baksiden før du i det hele tatt introduserer funksjonaliteten for brukerne i brukergrensesnittet.
Bestem hvordan tilgangen skal kontrolleres
Selv om vi har snakket om å gi en bestemt gruppe brukere tilgang til bestemte funksjoner, kan du også bruke andre kriterier for å gi betinget tilgang til en funksjon. Det kan for eksempel hende at du vil prøve å aktivere et funksjonsflagg på bestemte tider av døgnet, i bestemte geografiske områder eller til og med tilfeldig for en rask test! Hvis du på forhånd bestemmer hvilke kriterier du vil bruke, kan du og teamet ditt sette opp funksjonsflagg som gir størst mulig fleksibilitet.
Ved å kartlegge de ulike kriteriene du kjenner til, kan du identifisere hvilke du først vil komme i gang med.
More Articles
Husk å begynne enkelt
Selv om fantasien kanskje allerede løper løpsk med alle tingene du skal gjøre med funksjonsflagg (aktivere denne funksjonen for premiumbrukere som bruker Chrome, har på seg blå sko og det er tirsdag 😅), må du huske å begynne med enklere kontroller.
Et enkelt sted å begynne er å introdusere funksjoner for brukersegmenter basert på deres eksisterende tilgang. Betalende brukere kontra gratisbrukere er et enkelt eksempel.
Mer komplekse funksjonsflagg som er multivariate (det vil si bruker en kombinasjon av kriterier for å bestemme tilgang), kan være noe å strekke seg etter – hvis du først legger det grunnleggende på plass, vil det hjelpe deg med å komme dit.
Verktøy for håndtering av funksjonsflagg
I begynnelsen ble funksjonsflagg håndtert på baksiden, noe som krevde større involvering fra utviklere når du ville aktivere eller deaktivere dem. Heldigvis har det kommet verktøy som bidrar til å forenkle håndteringen av funksjonsflagg – med enkel tilgang for å slå dem av eller på, samt håndtering av de ulike kriteriene som definerer de forskjellige segmentene dine.
I dag finnes det et bredt utvalg av plattformer for funksjonsflagg, blant annet Optimizely, LaunchDarkly og et alternativ med åpen kildekode i form av Flagsmith. Noen organisasjoner velger kanskje til og med å lage egne interne verktøy hvis de har spesielle krav som ikke dekkes av disse plattformene.
Selv om de kan variere i funksjoner og muligheter, lover alle disse verktøyene forenklet håndtering av funksjonsflagg som gir deg mer kontroll over og trygghet ved utrullinger og iterasjoner.
Håndter funksjoner med trygghet
Når du har lagt funksjonsflagg til verktøykassen din, vil du føle deg tryggere på lanseringene dine, redusere presset på utviklingsteamene dine og finne den riktige kombinasjonen av funksjoner som gir kundene dine størst verdi.
Fortell oss gjerne i kommentarfeltet hvordan du har brukt (eller planlegger å bruke) funksjonsflagg i produktene dine!
Du finner flere verktøy, tips og teknikker for å utvikle karrieren din som produktsjef ved å abonnere på nyhetsbrevet fra The CPO Club.
Relatert lesning: 8 beste fremgangsmåter for funksjonsflagg du bør kjenne til
Også verdt å sjekke ut: Den beste programvaren for produktkrav


