SlideShare a Scribd company logo
1 of 7
Download to read offline
Feature Flags
Feature flags (also referred to as feature toggles or feature flippers) act as run time switches to turn on or
off user access to specific features. They allow you to control access in real-time with no code
deployments necessary.
You can choose to grant or block access based on all sorts of criteria such as user access controls, user
groups, time of day, geography, or randomize access for running experiments.
Used in combination with software version management and branching strategies, feature flags are a
very powerful approach to optimize CICD pipelines.
https://theproductmanager.com/tools/best-feature-flag-software/
https://theproductmanager.com/topics/feature-flag-management/
https://harness.io/blog/feature-flag-management-tools/
https://www.flagship.io/feature-flag-implementation/
https://harness.io/blog/architecting-feature-flags-performance/
https://www.cloudbees.com/blog/how-to-secure-your-feature-flag-based-application
https://flagsmith.com/
https://theproductmanager.com/tools/best-feature-flag-software/
https://theproductmanager.com/topics/feature-flag-management/
=
3
Feature Flag Use Cases
• Dependency testing – Turn on feature versions for version
compatibility testing during each stage of the value stream.
• Testing in production – Features are turned on in the production
environment for testing by specific internal users.
• Feature enablement – Features are enabled for certain entitled
users.
• Testing in Production – Selected customers participate in feature
trials.
• Gradual Release rollout – Features are turned on gradually to
more users until fully deployed.
• Roll-back – Switch back to earlier version if problem detected
• A/B Testing – Test with different switch settings to compare
results.
• Feature experiments – Turn on a feature to test hypothesis.
• Feature demonstrations – Turn on a feature to demonstrate to
selected group of stakeholders.
• Kill-Feature Switch – Monitoring system triggers feature switch
off.
4
Simple Code Switch
E.g., if/else
statement
Usually reserved for
short-lived flags.
Maintenance issues
when supporting
many feature flags.
Config File
(In-house solution)
Config file controls which
code path will be enabled.
Cost of maintaining in-
house tools.
Accumulation of technical
debt.
Feature Flag Management
System
(3rd Party Solution)
Lifecycle management of
feature Flags.
Third-party tools (E.g.,
Unleash, Flagsmith,
LaunchDarkly, Hackle, Split,
CloudBees, Harness, …)
5
• Access controls - custom permissions restrict who can make changes.
• Audit logs – track which features are enabled and tested.
• Environment-sensitive configurations - E.g., development and production environments
• Meta data - Feature flags can be tagged with meta data to support search.
• Dynamically controls - context-specific flagging decisions E.g., trigger on a user basis.
• Track Flag usage - to determine which can be removed if no longer used.
7
1. Identify priorities of feature flag use cases.
2. Start Feature Flag implementation by testing one simple use case and
simple switch before evolving to more advanced implementations.
3. Decide whether to use in-house or a third-party solutions. Solution
choice decision factors include Ease of use, Stability, Scalability,
Flexibility, Support cost, License cost, Tools compatibility, and
Language compatibility.
4. Build a Feature Flag MVP for a model application, monitor usage and
expand to other applications and use cases.

More Related Content

What's hot

What's hot (20)

Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupComparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
An Introduction to Scaled Agile Framework (SAFe)
An Introduction to Scaled Agile Framework (SAFe)An Introduction to Scaled Agile Framework (SAFe)
An Introduction to Scaled Agile Framework (SAFe)
 
Scrum Process
Scrum ProcessScrum Process
Scrum Process
 
Agile & SCRUM basics
Agile & SCRUM basicsAgile & SCRUM basics
Agile & SCRUM basics
 
"DevOps > CI+CD "
"DevOps > CI+CD ""DevOps > CI+CD "
"DevOps > CI+CD "
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começar
 
Introduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile FrameworkIntroduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile Framework
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Making the business case for DevOps
Making the business case for DevOpsMaking the business case for DevOps
Making the business case for DevOps
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)
 
Lean & Agile Project Management
Lean & Agile Project ManagementLean & Agile Project Management
Lean & Agile Project Management
 
Agile Principles, Agile People
Agile Principles, Agile PeopleAgile Principles, Agile People
Agile Principles, Agile People
 
Minimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good EnoughMinimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good Enough
 
Padrões de Projeto - Design Patterns e Anti-Patterns
Padrões de Projeto - Design Patterns e Anti-PatternsPadrões de Projeto - Design Patterns e Anti-Patterns
Padrões de Projeto - Design Patterns e Anti-Patterns
 
Agile Development Methodology: Best Practices and Use Cases
Agile Development Methodology: Best Practices and Use CasesAgile Development Methodology: Best Practices and Use Cases
Agile Development Methodology: Best Practices and Use Cases
 
Overview: Agile Methodology and Scrum
Overview: Agile Methodology and ScrumOverview: Agile Methodology and Scrum
Overview: Agile Methodology and Scrum
 
Scaled Agile Framework in 10 minutes (CAS2015)
Scaled Agile Framework in 10 minutes (CAS2015)Scaled Agile Framework in 10 minutes (CAS2015)
Scaled Agile Framework in 10 minutes (CAS2015)
 

Similar to Feature Flags.pdf

Deployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
Deployment Download and Policy Workstream Update - Gábor Pécsy, NokiaDeployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
Deployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
mfrancis
 
ArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspectsArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspects
Maneesh Innani
 
ArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspectsArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspects
Maneesh Innani
 
Psi multi accessgateway_casestudy
Psi multi accessgateway_casestudyPsi multi accessgateway_casestudy
Psi multi accessgateway_casestudy
Primesoftinc
 
Star team 13 datasheet(1)
Star team 13 datasheet(1)Star team 13 datasheet(1)
Star team 13 datasheet(1)
Noel_Slane
 
CiklumJavaSat15112011:Alexey Trusov-Code quality management
CiklumJavaSat15112011:Alexey Trusov-Code quality managementCiklumJavaSat15112011:Alexey Trusov-Code quality management
CiklumJavaSat15112011:Alexey Trusov-Code quality management
Ciklum Ukraine
 

Similar to Feature Flags.pdf (20)

4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy
 
Deployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
Deployment Download and Policy Workstream Update - Gábor Pécsy, NokiaDeployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
Deployment Download and Policy Workstream Update - Gábor Pécsy, Nokia
 
An Introduction to Feature Flags
An Introduction to Feature FlagsAn Introduction to Feature Flags
An Introduction to Feature Flags
 
SCM Migration Webinar - English
SCM Migration Webinar - EnglishSCM Migration Webinar - English
SCM Migration Webinar - English
 
How to Use OWASP Security Logging
How to Use OWASP Security LoggingHow to Use OWASP Security Logging
How to Use OWASP Security Logging
 
SpiraPlan Overview Presentation (2022)
SpiraPlan Overview Presentation (2022)SpiraPlan Overview Presentation (2022)
SpiraPlan Overview Presentation (2022)
 
ArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspectsArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspects
 
ArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspectsArchitectureAndPlatformsAspects
ArchitectureAndPlatformsAspects
 
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
 
Psi multi accessgateway_casestudy
Psi multi accessgateway_casestudyPsi multi accessgateway_casestudy
Psi multi accessgateway_casestudy
 
DevOps-Roadmap
DevOps-RoadmapDevOps-Roadmap
DevOps-Roadmap
 
Star team 13 datasheet(1)
Star team 13 datasheet(1)Star team 13 datasheet(1)
Star team 13 datasheet(1)
 
Chapter 12 Access Management
Chapter 12 Access ManagementChapter 12 Access Management
Chapter 12 Access Management
 
Feasibility Study Template for Electronic Software Distribution
Feasibility Study Template for Electronic Software DistributionFeasibility Study Template for Electronic Software Distribution
Feasibility Study Template for Electronic Software Distribution
 
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
 
CiklumJavaSat15112011:Alexey Trusov-Code quality management
CiklumJavaSat15112011:Alexey Trusov-Code quality managementCiklumJavaSat15112011:Alexey Trusov-Code quality management
CiklumJavaSat15112011:Alexey Trusov-Code quality management
 
Chris Rutter: Avoiding The Security Brick
Chris Rutter: Avoiding The Security BrickChris Rutter: Avoiding The Security Brick
Chris Rutter: Avoiding The Security Brick
 
Php Web Frameworks
Php Web FrameworksPhp Web Frameworks
Php Web Frameworks
 
devops certification
devops certificationdevops certification
devops certification
 
devops certification
devops certificationdevops certification
devops certification
 

More from Marc Hornbeek

More from Marc Hornbeek (19)

Continuous Testing Landscape.pptx
Continuous Testing Landscape.pptxContinuous Testing Landscape.pptx
Continuous Testing Landscape.pptx
 
DevOps_the_Gray Predictions for 2020
DevOps_the_Gray Predictions for 2020DevOps_the_Gray Predictions for 2020
DevOps_the_Gray Predictions for 2020
 
Gap assessment Continuous Testing
Gap assessment   Continuous TestingGap assessment   Continuous Testing
Gap assessment Continuous Testing
 
Seven step transformation blueprint
Seven step transformation blueprintSeven step transformation blueprint
Seven step transformation blueprint
 
Gap Assessment for DevOps
Gap Assessment   for DevOpsGap Assessment   for DevOps
Gap Assessment for DevOps
 
Gap assessment kubernetes
Gap assessment   kubernetesGap assessment   kubernetes
Gap assessment kubernetes
 
Gap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOps
 
Gap assessment containers
Gap assessment   containersGap assessment   containers
Gap assessment containers
 
Value stream mapping for DevOps
Value stream mapping for DevOpsValue stream mapping for DevOps
Value stream mapping for DevOps
 
The Quest for Quality at Speed
The Quest for Quality at SpeedThe Quest for Quality at Speed
The Quest for Quality at Speed
 
DevOps as-a-Service (DaaS) value
DevOps as-a-Service (DaaS) valueDevOps as-a-Service (DaaS) value
DevOps as-a-Service (DaaS) value
 
Continuous Security / DevSecOps- Why How and What
Continuous Security /  DevSecOps- Why How and WhatContinuous Security /  DevSecOps- Why How and What
Continuous Security / DevSecOps- Why How and What
 
Rapid Strategic SRE Assessments
Rapid Strategic SRE AssessmentsRapid Strategic SRE Assessments
Rapid Strategic SRE Assessments
 
Engineering DevOps and Cloud
Engineering DevOps and CloudEngineering DevOps and Cloud
Engineering DevOps and Cloud
 
Engineering Continuous Delivery Architectures
Engineering Continuous Delivery ArchitecturesEngineering Continuous Delivery Architectures
Engineering Continuous Delivery Architectures
 
DevOps Test Engineering - Marc Hornbeek - July 2017
DevOps Test Engineering -  Marc Hornbeek - July 2017DevOps Test Engineering -  Marc Hornbeek - July 2017
DevOps Test Engineering - Marc Hornbeek - July 2017
 
Engineering DevOps Right the First Time
Engineering DevOps Right the First TimeEngineering DevOps Right the First Time
Engineering DevOps Right the First Time
 
Engineering DevOps to meet Business Goals
 Engineering DevOps to meet Business Goals Engineering DevOps to meet Business Goals
Engineering DevOps to meet Business Goals
 
DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?
 

Recently uploaded

1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
pritamlangde
 
Query optimization and processing for advanced database systems
Query optimization and processing for advanced database systemsQuery optimization and processing for advanced database systems
Query optimization and processing for advanced database systems
meharikiros2
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
hublikarsn
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 

Recently uploaded (20)

Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
 
Query optimization and processing for advanced database systems
Query optimization and processing for advanced database systemsQuery optimization and processing for advanced database systems
Query optimization and processing for advanced database systems
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 

Feature Flags.pdf

  • 1. Feature Flags Feature flags (also referred to as feature toggles or feature flippers) act as run time switches to turn on or off user access to specific features. They allow you to control access in real-time with no code deployments necessary. You can choose to grant or block access based on all sorts of criteria such as user access controls, user groups, time of day, geography, or randomize access for running experiments. Used in combination with software version management and branching strategies, feature flags are a very powerful approach to optimize CICD pipelines.
  • 3. 3 Feature Flag Use Cases • Dependency testing – Turn on feature versions for version compatibility testing during each stage of the value stream. • Testing in production – Features are turned on in the production environment for testing by specific internal users. • Feature enablement – Features are enabled for certain entitled users. • Testing in Production – Selected customers participate in feature trials. • Gradual Release rollout – Features are turned on gradually to more users until fully deployed. • Roll-back – Switch back to earlier version if problem detected • A/B Testing – Test with different switch settings to compare results. • Feature experiments – Turn on a feature to test hypothesis. • Feature demonstrations – Turn on a feature to demonstrate to selected group of stakeholders. • Kill-Feature Switch – Monitoring system triggers feature switch off.
  • 4. 4 Simple Code Switch E.g., if/else statement Usually reserved for short-lived flags. Maintenance issues when supporting many feature flags. Config File (In-house solution) Config file controls which code path will be enabled. Cost of maintaining in- house tools. Accumulation of technical debt. Feature Flag Management System (3rd Party Solution) Lifecycle management of feature Flags. Third-party tools (E.g., Unleash, Flagsmith, LaunchDarkly, Hackle, Split, CloudBees, Harness, …)
  • 5. 5 • Access controls - custom permissions restrict who can make changes. • Audit logs – track which features are enabled and tested. • Environment-sensitive configurations - E.g., development and production environments • Meta data - Feature flags can be tagged with meta data to support search. • Dynamically controls - context-specific flagging decisions E.g., trigger on a user basis. • Track Flag usage - to determine which can be removed if no longer used.
  • 6.
  • 7. 7 1. Identify priorities of feature flag use cases. 2. Start Feature Flag implementation by testing one simple use case and simple switch before evolving to more advanced implementations. 3. Decide whether to use in-house or a third-party solutions. Solution choice decision factors include Ease of use, Stability, Scalability, Flexibility, Support cost, License cost, Tools compatibility, and Language compatibility. 4. Build a Feature Flag MVP for a model application, monitor usage and expand to other applications and use cases.