Write a Blog >>
ESEC/FSE 2021
Thu 19 - Sat 28 August 2021 Clowdr Platform
Fri 27 Aug 2021 16:10 - 16:20 - Human Aspects—Software Practices 1 Chair(s): Carlos Gavidia-Calderon
Sat 28 Aug 2021 04:10 - 04:20 - Human Aspects—Software Practices 1 Chair(s): Eirini Kalliamvakou

Background: Using feature toggles is a technique that allows developers to either turn a feature on or off with a variable in a conditional statement. Feature toggles are increasingly used by software companies to facilitate continuous integration and continuous delivery. However, using feature toggles inappropriately may cause problems that can have a severe impact, such as code complexity, dead code, and system failure. For example, the erroneous repurposing of an old feature toggle caused Knight Capital Group, an American global financial services firm, to go bankrupt due to the implications of the resultant incorrect system behavior.

Aim: The goal of this research project is to aid software practitioners in the use of practices to support software development with feature toggles through an empirical study of feature toggle practice usage by practitioners.

Method: We conducted a qualitative analysis of 99 artifacts from the grey literature and 10 peer-reviewed papers about feature toggles. We conducted a survey of practitioners from 38 companies.

Results: We identified 17 practices in 4 categories: Management practices, Initialization practices, Implementation practices, and Clean-up practices. We observed that all of the survey respondents use a dedicated tool to create and manage feature toggles in their code. Documenting feature toggle’s metadata, setting up the default value for feature toggles, and logging the changes made on feature toggles are also frequently-observed practices.

Conclusions: The feature toggle development practices discovered and enumerated in this work can help practitioners more effectively use feature toggles. This work can enable future mining of code repositories to automatically identify feature toggle practices.

Fri 27 Aug

Displayed time zone: Athens change

16:00 - 17:00
Human Aspects—Software Practices 1Journal First / Research Papers / Industry Papers +12h
Chair(s): Carlos Gavidia-Calderon ThoughtWorks (UK) Ltd.
16:00
10m
Paper
XAI Tools in the Public Sector: A Case Study on Predicting Combined Sewer OverflowsArtifacts AvailableArtifacts Reusable
Research Papers
Nicholas Maltbie University of Cincinnati, Nan Niu University of Cincinnati, Matthew Van Doren Metropolitan Sewer District of Greater Cincinnati, Reese Johnson Metropolitan Sewer District of Greater Cincinnati
DOI
16:10
10m
Paper
Software Development with Feature Toggles: Practices used by Practitioners
Journal First
Rezvan Mahdavi-Hezaveh North Carolina State University, Jacob Dremann North Carolina State University, Laurie Williams North Carolina State University
16:20
10m
Paper
How Can Manual Testing Processes Be Optimized? Developer Survey, Optimization Guidelines, and Case Studies
Industry Papers
Roman Haas Saarland University; CQSE, Daniel Elsner TU Munich, Elmar Juergens CQSE, Alexander Pretschner TU Munich, Sven Apel Saarland University
DOI Pre-print Media Attached
16:30
30m
Live Q&A
Q&A (Human Aspects—Software Practices 1)
Research Papers

Sat 28 Aug

Displayed time zone: Athens change

04:00 - 05:00
Human Aspects—Software Practices 1Industry Papers / Research Papers / Journal First
Chair(s): Eirini Kalliamvakou University of Victoria
04:00
10m
Paper
XAI Tools in the Public Sector: A Case Study on Predicting Combined Sewer OverflowsArtifacts AvailableArtifacts Reusable
Research Papers
Nicholas Maltbie University of Cincinnati, Nan Niu University of Cincinnati, Matthew Van Doren Metropolitan Sewer District of Greater Cincinnati, Reese Johnson Metropolitan Sewer District of Greater Cincinnati
DOI
04:10
10m
Paper
Software Development with Feature Toggles: Practices used by Practitioners
Journal First
Rezvan Mahdavi-Hezaveh North Carolina State University, Jacob Dremann North Carolina State University, Laurie Williams North Carolina State University
04:20
10m
Paper
How Can Manual Testing Processes Be Optimized? Developer Survey, Optimization Guidelines, and Case Studies
Industry Papers
Roman Haas Saarland University; CQSE, Daniel Elsner TU Munich, Elmar Juergens CQSE, Alexander Pretschner TU Munich, Sven Apel Saarland University
DOI Pre-print Media Attached
04:30
30m
Live Q&A
Q&A (Human Aspects—Software Practices 1)
Research Papers