{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,24]],"date-time":"2026-04-24T19:20:25Z","timestamp":1777058425361,"version":"3.51.4"},"reference-count":55,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2021,1]]},"DOI":"10.1007\/s10664-020-09901-z","type":"journal-article","created":{"date-parts":[[2021,1,11]],"date-time":"2021-01-11T21:35:11Z","timestamp":1610400911000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":39,"title":["Software development with feature toggles: practices used by practitioners"],"prefix":"10.1007","volume":"26","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-9761-4361","authenticated-orcid":false,"given":"Rezvan","family":"Mahdavi-Hezaveh","sequence":"first","affiliation":[]},{"given":"Jacob","family":"Dremann","sequence":"additional","affiliation":[]},{"given":"Laurie","family":"Williams","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2021,1,8]]},"reference":[{"key":"9901_CR1","unstructured":"Bird J (2014) Feature toggles are one of the worst kinds of technical debt. [Online]. Available: https:\/\/dzone.com\/articles\/feature-toggles-are-one-worst. Accessed 24 April 2019"},{"key":"9901_CR2","volume-title":"Introduction to java and software design: swing update","author":"NB Dale","year":"2003","unstructured":"Dale NB, Weems C, Headington MR (2003) Introduction to java and software design: swing update. Jones & Bartlett Learning, Burlington"},{"key":"9901_CR3","unstructured":"Day B (2020) Get good at devops: Feature flag deployments with asp.net, webapi, & javascript. Available: https:\/\/channel9.msdn.com\/Events\/Visual-Studio\/Visual-Studio-Live-Redmond-2016\/W07. Accessed 27 January 2020"},{"key":"9901_CR4","unstructured":"featureflags.io (2020) Feature flags, toggles, controls - cleaning up. Available: http:\/\/featureflags.io\/feature-flags-cleaning-up\/. Accessed 13 January 2020"},{"issue":"4","key":"9901_CR5","doi-asserted-by":"publisher","first-page":"8","DOI":"10.1109\/MIC.2013.25","volume":"17","author":"DG Feitelson","year":"2013","unstructured":"Feitelson DG, Frachtenberg E, Beck KL (2013) Development and deployment at facebook. IEEE Internet Comput 17(4):8\u201317","journal-title":"IEEE Internet Comput"},{"key":"9901_CR6","unstructured":"Fowler M (2013) Continuousdelivery. [Online]. Available: https:\/\/martinfowler.com\/bliki\/ContinuousDelivery.html. Accessed 24 April 2019"},{"key":"9901_CR7","unstructured":"Fowler M (2010) Feature toggle. [Online]. Available: https:\/\/martinfowler.com\/bliki\/FeatureToggle.html. Accessed 24 April 2019"},{"key":"9901_CR8","doi-asserted-by":"crossref","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV (2016) The need for multivocal literature reviews in software engineering: complementing systematic literature reviews with grey literature. In: Proceedings of the 20th international conference on evaluation and assessment in software engineering, pp 1\u20136","DOI":"10.1145\/2915970.2916008"},{"key":"9901_CR9","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1016\/j.infsof.2018.09.006","volume":"106","author":"V Garousi","year":"2019","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV (2019) Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf Softw Technol 106:101\u2013121","journal-title":"Inf Softw Technol"},{"key":"9901_CR10","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV, Rainer A (2019) Benefitting from the grey literature in software engineering research. arXiv:1911.12038"},{"key":"9901_CR11","unstructured":"Google (2019) Chromium flags. Available: https:\/\/docs.google.com\/spreadsheets\/d\/1XwGEpBidtPKS_xFzW8bfQ4kbuVe0OuPlpMsSd8wTmmo\/edit. Accessed 24 April 2019"},{"key":"9901_CR12","volume-title":"Kanban in action","author":"M Hammarberg","year":"2014","unstructured":"Hammarberg M, Sunden J (2014) Kanban in action. Manning Publications Co., Shelter Island"},{"key":"9901_CR13","unstructured":"Harmes R (2009) Flipping out. [Online]. Available: http:\/\/code.flickr.net\/2009\/12\/02\/flipping-out\/. Accessed 24 April 2019"},{"key":"9901_CR14","unstructured":"Hodges B (2017) Progressive experimentation with feature flags. Available: https:\/\/docs.microsoft.com\/en-us\/azure\/devops\/learn\/devops-at-microsoft\/progressive-experimentation-feature-flags. Accessed 24 April 2019"},{"key":"9901_CR15","unstructured":"Hodgson P (2017) Feature toggles (aka feature flags). [Online]. Available: https:\/\/martinfowler.com\/articles\/feature-toggles.html. Accessed 24 April 2019"},{"key":"9901_CR16","unstructured":"Hodgson P (2018) Lean product development: Managing feature flags at scale. [Online]. Available: https:\/\/www.youtube.com\/watch?v=uFW4SSRtkUU. Accessed 24 April 2019"},{"key":"9901_CR17","unstructured":"Humble J, Farley D (2010) Continuous delivery: reliable software releases through build, test, and deployment automation (Adobe Reader), Pearson Education, Upper Saddle River"},{"key":"9901_CR18","unstructured":"Instagram Engineering (2015) Flexible feature control at instagram. Available: https:\/\/instagram-engineering.com\/flexible-feature-control-at-instagram-a7d3417658df. Accessed 24 April 2019"},{"key":"9901_CR19","unstructured":"Kieser G (2017) Removing risk from product launches: a webinar with LaunchDarkly, CircleCI and GoPro. Available: https:\/\/circleci.com\/blog\/removing-risk-from-product-launches-a-webinar-with-launchdarkly-circleci-and-gopro\/. Accessed 27 January 2020"},{"key":"9901_CR20","unstructured":"Knight Capital Group (2014) Knightmare: A devops cautionary tale. Available: https:\/\/dougseven.com\/2014\/04\/17\/knightmare-a-devops-cautionary-tale\/. Accessed 24 April 2019"},{"issue":"1","key":"9901_CR21","doi-asserted-by":"publisher","first-page":"140","DOI":"10.1007\/s10618-008-0114-1","volume":"18","author":"R Kohavi","year":"2009","unstructured":"Kohavi R, Longbotham R, Sommerfield D, Henne RM (2009) Controlled experiments on the web: survey and practical guide. Data Mining and Knowledge Discovery 18(1):140\u2013181","journal-title":"Data Mining and Knowledge Discovery"},{"key":"9901_CR22","unstructured":"Launchdarkly (2018) Best practices. Available: https:\/\/github.com\/launchdarkly\/featureflags\/blob\/master\/5%20-%20Best%20Practices.md. Accessed 24 April 2019"},{"key":"9901_CR23","unstructured":"Leena SN (2017) Merge hells!! feature toggles to the rescue - pipeline conference 2017. [Online]. Available: https:\/\/www.youtube.com\/watch?v=R9EYY0Uu250. Accessed 24 April 2019"},{"key":"9901_CR24","doi-asserted-by":"crossref","unstructured":"Lefebvre C, Manheimer E, Glanville J (2008) Searching for studies. Cochrane handbook for systematic reviews of interventions:, Cochrane book series, pp 95\u2013150","DOI":"10.1002\/9780470712184.ch6"},{"key":"9901_CR25","unstructured":"Likert R (1932) A technique for the measurement of attitudes. Arch Psychol"},{"key":"9901_CR26","doi-asserted-by":"crossref","unstructured":"Meinicke J, Wong C-P, Vasilescu B, Kaestner C (2020) Exploring differences and commonalities between feature flags and configuration options. In: Proceedings of the 42nd international conference on software engineering - software engineering in practice (ICSE-SEIP)","DOI":"10.1145\/3377813.3381366"},{"key":"9901_CR27","unstructured":"Meyer M (2014) Using feature flags to ship changes with confidence. [Online]. Available: https:\/\/blog.travis-ci.com\/2014-03-04-use-feature-flags-to-ship-changes-with-confidence\/. Accessed 24 April 2019"},{"key":"9901_CR28","unstructured":"Mclaughlin T (2017) Introducing stormcrow. Available: https:\/\/blogs.dropbox.com\/tech\/2017\/03\/introducing-stormcrow\/. Accessed 24 April 2019"},{"key":"9901_CR29","volume-title":"Crossing the chasm: Marketing and selling technology project","author":"GA Moore","year":"2009","unstructured":"Moore GA (2009) Crossing the chasm: Marketing and selling technology project. Harper Collins, New York"},{"key":"9901_CR30","unstructured":"Nadel B (2018) Launchdarkly lunch-and-learn panel discussion: New York City. Available: https:\/\/www.bennadel.com\/blog\/3464-launchdarkly-lunch-and-learn-panel-discussion-new-york-city.htm. Accessed 18 June 2019"},{"key":"9901_CR31","unstructured":"Nadel B (2018) Using the launchdarkly dashboard and json types to create light-weight application administrative features. Available: https:\/\/www.bennadel.com\/blog\/3465-using-the-launchdarkly-dashboard-and-json-types-to-create-light-weight-application-administrative-features.htm. Accessed 27 January 2020"},{"key":"9901_CR32","doi-asserted-by":"crossref","unstructured":"Neely S, Stolt S (2013) Continuous delivery? easy! just change everything (well, maybe it is not that easy). In: 2013 Agile conference. IEEE, pp 121\u2013128","DOI":"10.1109\/AGILE.2013.17"},{"key":"9901_CR33","unstructured":"\u00d8sthus I (2017) Continuous deployment: Unleash your features gradually!. Available: http:\/\/bytes.schibsted.com\/unleash-features-gradually\/. Accessed 24 April 2019"},{"issue":"3","key":"9901_CR34","doi-asserted-by":"publisher","first-page":"86","DOI":"10.1109\/MS.2017.86","volume":"34","author":"C Parnin","year":"2017","unstructured":"Parnin C, Helms E, Atlee C, Boughton H, Ghattas M, Glover A, Holman J, Micco J, Murphy B, Savor T et al (2017) The top 10 adages in continuous deployment. IEEE Software 34(3):86\u201395","journal-title":"IEEE Software"},{"key":"9901_CR35","unstructured":"Piessens D (2015) It\u2019s more than feature toggles. Available: https:\/\/www.youtube.com\/watch?v=TCwMxTuDLwI. Accessed 27 January 2020"},{"key":"9901_CR36","unstructured":"Rahman AAU, Helms E, Williams L (2015) Chris Parnin Synthesizing continuous deployment practices used in software development. In: Proceedings IEEE Agile Conference, pp 1\u201310"},{"key":"9901_CR37","doi-asserted-by":"crossref","unstructured":"Rahman MT, Querel L-P, Rigby PC, Adams B (2016) Feature toggles: practitioner practices and a case study. In: Proceedings of the 13th International conference on mining software repositories. ACM, pp 201\u2013211","DOI":"10.1145\/2901739.2901745"},{"key":"9901_CR38","unstructured":"Rahman MT, Rigby PC, Shihab E (2018) The modular and feature toggle architectures of google chrome. Empir Softw Eng, 1\u201328"},{"key":"9901_CR39","unstructured":"Roberts J (2019) Featuretoggle in.net. [Online]. Available: http:\/\/jason-roberts.github.io\/FeatureToggle.Docs\/. Accessed 24 April 2019"},{"key":"9901_CR40","doi-asserted-by":"publisher","first-page":"263","DOI":"10.1016\/j.jss.2015.12.015","volume":"123","author":"P Rodr\u00edguez","year":"2017","unstructured":"Rodr\u00edguez P, Haghighatkhah A, Lwakatare LE, Teppola S, Suomalainen T, Eskeli J, Karvonen T, Kuvaja P, Verner JM, Oivo M (2017) Continuous deployment of software intensive products and services: A systematic mapping study. J Syst Softw 123:263\u2013291","journal-title":"J Syst Softw"},{"key":"9901_CR41","unstructured":"Rollout (2018) Your feature flag management needs to include retirement [Online]. Available: https:\/\/rollout.io\/blog\/feature-flag-retirement\/. Accessed 24 April 2019"},{"key":"9901_CR42","unstructured":"Rusovsky E (2017) Feature flag management systems save you from technical debt. Available: https:\/\/rollout.io\/blog\/feature-flag-management-technical-debt\/. Accessed 18 June 2019"},{"key":"9901_CR43","unstructured":"Salda\u00f1a J (2015) The coding manual for qualitative researchers. Sage"},{"key":"9901_CR44","unstructured":"Sayagh M, Kerzazi N, Adams B, Petrillo F (2018) Software configuration engineering in practice: Interviews, survey, and systematic literature review. IEEE Trans Softw Eng"},{"issue":"2","key":"9901_CR45","doi-asserted-by":"publisher","first-page":"26","DOI":"10.1109\/MS.2018.111094748","volume":"35","author":"G Schermann","year":"2018","unstructured":"Schermann G, Cito J, Leitner P (2018) Continuous experimentation: challenges, implementation techniques, and current research. IEEE Softw 35(2):26\u201331","journal-title":"IEEE Softw"},{"key":"9901_CR46","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1016\/j.infsof.2018.02.010","volume":"99","author":"G Schermann","year":"2018","unstructured":"Schermann G, Cito J\u00fcrgen, Leitner P, Zdun U, Gall HC (2018) We\u2019re doing it live: A multi-method empirical study on continuous experimentation. Inf Softw Technol 99:41\u201357","journal-title":"Inf Softw Technol"},{"key":"9901_CR47","unstructured":"Schneid K (2017) Branching strategies for developing new features within the context of continuous delivery. In: CSE@ SE, pp 28\u201335"},{"key":"9901_CR48","unstructured":"Sowa RLE (2010) Feature bits: Enabling flow within and across teams. [Online]. Available: https:\/\/www.infoq.com\/presentations\/Feature-Bits. Accessed 24 April 2019"},{"key":"9901_CR49","unstructured":"Split (2019) Audit logs. Available: https:\/\/docs.split.io\/docs\/streaming-audit-logs. Accessed 24 April 2019"},{"key":"9901_CR50","volume-title":"Beginning software engineering","author":"R Stephens","year":"2015","unstructured":"Stephens R (2015) Beginning software engineering. Wiley, New York"},{"key":"9901_CR51","doi-asserted-by":"crossref","unstructured":"Tang C, Kooburat T, Venkatachalam P, Chander A, Wen Z, Narayanan A, Dowell P, Karl R (2015) Holistic configuration management at facebook. In: Proceedings of the 25th symposium on operating systems principles, pp 328\u2013343","DOI":"10.1145\/2815400.2815401"},{"key":"9901_CR52","unstructured":"Tejaswini UL (2019) There is no devops without feature flags! [Online]. Available: https:\/\/www.ibm.com\/developerworks\/community\/blogs\/c914709e-8097-4537-92ef-8982fc416138\/entry\/THERE_IS_NO_DEVOPS_WITHOUT_FEATURE_FLAGS?lang=en. Accessed 24 April 2019"},{"key":"9901_CR53","unstructured":"Tiwari A (2013) Decoupling deployment and release- feature toggles. [Online]. Available: https:\/\/www.abhishek-tiwari.com\/decoupling-deployment-and-release-feature-toggles\/. Accessed 24 April 2019"},{"key":"9901_CR54","unstructured":"Tsvetkov A (2017) Feature toggles in .Net: tips and tricks. Available: https:\/\/surfingthecode.com\/feature-toggles-in-.net-tips-and-tricks\/. Accessed 13 January 2020"},{"key":"9901_CR55","doi-asserted-by":"crossref","unstructured":"Wohlin C (2014) Guidelines for snowballing in systematic literature studies and a replication in software engineering. In: Proceedings of the 18th international conference on evaluation and assessment in software engineering. Citeseer, p 38","DOI":"10.1145\/2601248.2601268"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-020-09901-z.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-020-09901-z\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-020-09901-z.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,2,19]],"date-time":"2021-02-19T22:53:46Z","timestamp":1613775226000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-020-09901-z"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,1]]},"references-count":55,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2021,1]]}},"alternative-id":["9901"],"URL":"https:\/\/doi.org\/10.1007\/s10664-020-09901-z","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,1]]},"assertion":[{"value":"23 September 2020","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"8 January 2021","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"1"}}