{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,20]],"date-time":"2025-09-20T18:44:22Z","timestamp":1758393862882,"version":"3.41.0"},"reference-count":91,"publisher":"Association for Computing Machinery (ACM)","issue":"7","license":[{"start":{"date-parts":[[2024,9,27]],"date-time":"2024-09-27T00:00:00Z","timestamp":1727395200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Softw. Eng. Methodol."],"published-print":{"date-parts":[[2024,9,30]]},"abstract":"<jats:p>\n            Feature toggles and configuration options are techniques to include or exclude functionality in software. The research contributions to these two techniques have most often been focused on either one of them. However, focusing on the similarities of these two techniques and the use of a common terminology may enable a combined family of research on\n            <jats:italic>software configuration<\/jats:italic>\n            (a term we use to encompass both techniques) and prevent duplication of effort.\n            <jats:italic>The goal of this study is to aid researchers in conducting a family of research on software configuration by extending an existing model of software configuration that provides a common terminology for feature toggles and configuration options in research studies.<\/jats:italic>\n            We started with Siegmund et al.\u2019s Model of Software Configuration (MSC), which was developed based on configuration option-related resources. We extend the MSC by qualitative analysis of feature toggle-related resources. From our analysis, we proposed MSCv2 and evaluated it through its application on publications and an industrial system. Our results indicate researchers studying the same system may provide different definitions of software configuration in publications, similar research questions may be answered repeatedly because of a lack of a clear definition of software configuration, and having an MSC may enable generalized research on this family of research.\n          <\/jats:p>","DOI":"10.1145\/3672555","type":"journal-article","created":{"date-parts":[[2024,6,14]],"date-time":"2024-06-14T15:58:30Z","timestamp":1718380710000},"page":"1-27","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Paving a Path for a Combined Family of Feature Toggle and Configuration Option Research"],"prefix":"10.1145","volume":"33","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-9761-4361","authenticated-orcid":false,"given":"Rezvan","family":"Mahdavi-Hezaveh","sequence":"first","affiliation":[{"name":"North Carolina State University, Raleigh, NC, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-3167-4065","authenticated-orcid":false,"given":"Sameeha","family":"Fatima","sequence":"additional","affiliation":[{"name":"North Carolina State University, Raleigh, NC, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3300-6540","authenticated-orcid":false,"given":"Laurie","family":"Williams","sequence":"additional","affiliation":[{"name":"North Carolina State University, Raleigh, NC, USA"}]}],"member":"320","published-online":{"date-parts":[[2024,9,27]]},"reference":[{"key":"e_1_3_2_2_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.csi.2016.03.003"},{"key":"e_1_3_2_3_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-021-10097-z"},{"key":"e_1_3_2_4_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-37521-7"},{"key":"e_1_3_2_5_2","doi-asserted-by":"publisher","DOI":"10.5555\/1753235.1753247"},{"key":"e_1_3_2_6_2","first-page":"354","article-title":"The logic and aims of qualitative research","volume":"2","author":"Christians Clifford G.","year":"1989","unstructured":"Clifford G. Christians and James W. Carey. 1989. The logic and aims of qualitative research. Research Methods in Mass Communication 2 (1989), 354\u2013374.","journal-title":"Research Methods in Mass Communication"},{"key":"e_1_3_2_7_2","unstructured":"Chromium. 2021. Chromium Flags. Retrieved April 23 2023 from https:\/\/docs.google.com\/spreadsheets\/d\/1XwGEpBidtPKS_xFzW8bfQ4kbuVe0OuPlpMsSd8wTmmo\/edit#gid=0"},{"key":"e_1_3_2_8_2","doi-asserted-by":"publisher","DOI":"10.1109\/IRI.2013.6642507"},{"key":"e_1_3_2_9_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24667-1_37"},{"key":"e_1_3_2_10_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2019.110422"},{"key":"e_1_3_2_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/2063239.2063245"},{"key":"e_1_3_2_12_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE-SEIP58684.2023.00033"},{"key":"e_1_3_2_13_2","doi-asserted-by":"publisher","DOI":"10.1109\/TEM.2006.889066"},{"key":"e_1_3_2_14_2","doi-asserted-by":"publisher","DOI":"10.1145\/3571788.3571795"},{"key":"e_1_3_2_15_2","unstructured":"Martin Fowler. 2010. Feature Toggle. Retrieved April 23 2023 from https:\/\/martinfowler.com\/bliki\/FeatureToggle.html"},{"key":"e_1_3_2_16_2","unstructured":"Ross Harmes. 2009. Flipping Out. Retrieved April 23 2023 from https:\/\/code.flickr.net\/2009\/12\/02\/flipping-out\/"},{"key":"e_1_3_2_17_2","first-page":"1","article-title":"Mass customization with configurable products and configurators: A review of benefits and challenges","author":"Heiskala Mikko","year":"2007","unstructured":"Mikko Heiskala. 2007. Mass customization with configurable products and configurators: A review of benefits and challenges. Mass customization information systems in business (2007), 1\u201332.","journal-title":"Mass customization information systems in business"},{"key":"e_1_3_2_18_2","unstructured":"Pete Hodgson. 2017. Feature Toggles (aka Feature Flags). Retrieved April 23 2023 from https:\/\/martinfowler.com\/articles\/feature-toggles.html"},{"key":"e_1_3_2_19_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-020-09902-y"},{"key":"e_1_3_2_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/3546932.3547009"},{"key":"e_1_3_2_21_2","doi-asserted-by":"publisher","DOI":"10.1145\/1868688.1868693"},{"key":"e_1_3_2_22_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10618-008-0114-1"},{"key":"e_1_3_2_23_2","doi-asserted-by":"publisher","DOI":"10.1109\/ADEVC.2004.15"},{"key":"e_1_3_2_24_2","doi-asserted-by":"publisher","DOI":"10.1109\/ISSSR53171.2021.00036"},{"key":"e_1_3_2_25_2","doi-asserted-by":"publisher","DOI":"10.1109\/MODELS-C53483.2021.00015"},{"key":"e_1_3_2_26_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2021.106813"},{"key":"e_1_3_2_27_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-020-09901-z"},{"key":"e_1_3_2_28_2","doi-asserted-by":"publisher","DOI":"10.1145\/3109729.3109748"},{"key":"e_1_3_2_29_2","doi-asserted-by":"publisher","DOI":"10.1145\/3379597.3387463"},{"key":"e_1_3_2_30_2","doi-asserted-by":"publisher","DOI":"10.1145\/2970276.2970322"},{"key":"e_1_3_2_31_2","doi-asserted-by":"publisher","DOI":"10.1145\/3377813.3381366"},{"key":"e_1_3_2_32_2","volume-title":"A Security Practices Evaluation Framework","author":"Morrison Patrick James","year":"2017","unstructured":"Patrick James Morrison. 2017. A Security Practices Evaluation Framework. North Carolina State University."},{"key":"e_1_3_2_33_2","doi-asserted-by":"publisher","DOI":"10.1109\/AGILE.2013.17"},{"key":"e_1_3_2_34_2","unstructured":"Linda Northrop Paul Clements Felix Bachmann John Bergey Gary Chastek Sholom Cohen Patrick Donohoe Lawrence Jones Robert Krut Reed Little John McGregor and Liam O\u2019Brien. 2012. A Framework for Software Product Line Practice Version 5.0. SEI. Retrieved from https:\/\/insights.sei.cmu.edu\/library\/a-framework-for-software-product-line-practice-version-50"},{"key":"e_1_3_2_35_2","volume-title":"Ontology-Based Retrieval of Software Engineering Experiences","author":"Nour Philip","year":"2003","unstructured":"Philip Nour. 2003. Ontology-Based Retrieval of Software Engineering Experiences. Department of Computer Science, University of Calgary."},{"key":"e_1_3_2_36_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2018.07.054"},{"key":"e_1_3_2_37_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2012.03.008"},{"key":"e_1_3_2_38_2","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2017.86"},{"key":"e_1_3_2_39_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2021.111044"},{"key":"e_1_3_2_40_2","doi-asserted-by":"publisher","DOI":"10.3390\/fi9040058"},{"key":"e_1_3_2_41_2","doi-asserted-by":"publisher","DOI":"10.1109\/EDOCW.2018.00021"},{"key":"e_1_3_2_42_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.3034"},{"key":"e_1_3_2_43_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2010.09.042"},{"key":"e_1_3_2_44_2","doi-asserted-by":"publisher","DOI":"10.1109\/Agile.2015.12"},{"key":"e_1_3_2_45_2","doi-asserted-by":"publisher","DOI":"10.1145\/2901739.2901745"},{"key":"e_1_3_2_46_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-018-9639-0"},{"key":"e_1_3_2_47_2","doi-asserted-by":"publisher","DOI":"10.1109\/MSR59073.2023.00032"},{"key":"e_1_3_2_48_2","doi-asserted-by":"publisher","DOI":"10.1145\/3377813.3381350"},{"key":"e_1_3_2_49_2","unstructured":"Repository. 2022. Esquio. Retrieved April 23 2023 from https:\/\/github.com\/Xabaril\/Esquio"},{"key":"e_1_3_2_50_2","unstructured":"Repository. 2022. feature. Retrieved April 23 2023 from https:\/\/github.com\/mgsnova\/feature"},{"key":"e_1_3_2_51_2","unstructured":"Repository. 2022. feature-flags. Retrieved April 23 2023 from https:\/\/github.com\/ylsideas\/feature-flags"},{"key":"e_1_3_2_52_2","unstructured":"Repository. 2022. FeatureManagement-Dotnet. Retrieved April 23 2023 from https:\/\/github.com\/microsoft\/FeatureManagement-Dotnet"},{"key":"e_1_3_2_53_2","unstructured":"Repository. 2022. FeatureSwitch. Retrieved April 23 2023 from https:\/\/github.com\/valdisiljuconoks\/FeatureSwitch"},{"key":"e_1_3_2_54_2","unstructured":"Repository. 2022. FeatureSwitcher. Retrieved April 23 2023 from https:\/\/github.com\/mexx\/FeatureSwitcher"},{"key":"e_1_3_2_55_2","unstructured":"Repository. 2022. FeatureToggle. Retrieved April 23 2023 from https:\/\/github.com\/jason-roberts\/FeatureToggle"},{"key":"e_1_3_2_56_2","unstructured":"Repository. 2022. Fflip. Retrieved April 23 2023 from https:\/\/github.com\/FredKSchott\/fflip"},{"key":"e_1_3_2_57_2","unstructured":"Repository. 2022. Flag. Retrieved April 23 2023 from https:\/\/github.com\/garbles\/flag"},{"key":"e_1_3_2_58_2","unstructured":"Repository. 2022. Flagged. Retrieved April 23 2023 from https:\/\/github.com\/sergiodxa\/flagged"},{"key":"e_1_3_2_59_2","unstructured":"Repository. 2022. Flags. Retrieved April 23 2023 from https:\/\/github.com\/happykit\/flags"},{"key":"e_1_3_2_60_2","unstructured":"Repository. 2022. Flip. Retrieved April 23 2023 from https:\/\/github.com\/pda\/flip"},{"key":"e_1_3_2_61_2","unstructured":"Repository. 2022. Flipper. Retrieved April 23 2023 from https:\/\/github.com\/jnunemaker\/flipper"},{"key":"e_1_3_2_62_2","unstructured":"Repository. 2022. Ngx-Feature-Toggle. Retrieved April 23 2023 from https:\/\/github.com\/willmendesneto\/ngx-feature-toggle"},{"key":"e_1_3_2_63_2","unstructured":"Repository. 2022. Qandidate-Toggle. Retrieved April 23 2023 from https:\/\/github.com\/qandidate-labs\/qandidate-toggle"},{"key":"e_1_3_2_64_2","unstructured":"Repository. 2022. React-Feature-Toggles. Retrieved April 23 2023 from https:\/\/github.com\/paralleldrive\/react-feature-toggles"},{"key":"e_1_3_2_65_2","unstructured":"Repository. 2022. Rollout. Retrieved April 23 2023 from https:\/\/github.com\/fetlife\/rollout"},{"key":"e_1_3_2_66_2","unstructured":"Repository. 2022. Rollout for php. Retrieved April 23 2023 from https:\/\/github.com\/opensoft\/rollout"},{"key":"e_1_3_2_67_2","unstructured":"Repository. 2022. Swivel. Retrieved April 23 2023 from https:\/\/github.com\/zumba\/swivel"},{"key":"e_1_3_2_68_2","unstructured":"Repository. 2022. Unleash. Retrieved April 23 2023 from https:\/\/github.com\/Unleash\/unleash"},{"key":"e_1_3_2_69_2","first-page":"1","volume-title":"Proceedings of the 2023 15th International Conference on Electronics, Computers and Artificial Intelligence (ECAI)","author":"Rosu Cosmin-Ioan","year":"2023","unstructured":"Cosmin-Ioan Rosu and Mihai Togan. 2023. A modern paradigm for effective software development: Feature toggle systems. In Proceedings of the 2023 15th International Conference on Electronics, Computers and Artificial Intelligence (ECAI). IEEE, 1\u20136."},{"key":"e_1_3_2_70_2","doi-asserted-by":"publisher","DOI":"10.1002\/9781118181034"},{"key":"e_1_3_2_71_2","doi-asserted-by":"publisher","DOI":"10.1109\/5254.708432"},{"key":"e_1_3_2_72_2","volume-title":"The Coding Manual for Qualitative Researchers","author":"Saldasimna Johnny","year":"2015","unstructured":"Johnny Saldasimna. 2015. The Coding Manual for Qualitative Researchers. Sage."},{"key":"e_1_3_2_73_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2018.2867847"},{"key":"e_1_3_2_74_2","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2018.111094748"},{"key":"e_1_3_2_75_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2018.02.010"},{"key":"e_1_3_2_76_2","first-page":"28","volume-title":"Proceedings of the 2nd Workshop on Continuous Software Engineering (CSE)","author":"Schneid Konrad","year":"2017","unstructured":"Konrad Schneid. 2017. Branching strategies for developing new features within the context of continuous delivery. In Proceedings of the 2nd Workshop on Continuous Software Engineering (CSE). Citeseer, 28\u201335."},{"key":"e_1_3_2_77_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-58638-6_3"},{"key":"e_1_3_2_78_2","doi-asserted-by":"publisher","DOI":"10.1145\/3540250.3558942"},{"key":"e_1_3_2_79_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10515-022-00333-1"},{"key":"e_1_3_2_80_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-018-9651-4"},{"key":"e_1_3_2_81_2","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409675"},{"key":"e_1_3_2_82_2","doi-asserted-by":"publisher","DOI":"10.1145\/3511430.3511461"},{"key":"e_1_3_2_83_2","unstructured":"tallbl0nde. 2022. TriPlayer. Retrieved April 23 2023 from https:\/\/github.com\/tallbl0nde\/TriPlayer"},{"key":"e_1_3_2_84_2","unstructured":"Google Chromium Team. 2022. Chromium. Retrieved April 23 2023 from https:\/\/github.com\/chromium\/chromium"},{"key":"e_1_3_2_85_2","unstructured":"Google Chromium Team. 2022. Chromium Configurations. Retrieved April 23 2023 from https:\/\/github.com\/chromium\/chromium\/blob\/main\/docs\/configuration.md"},{"key":"e_1_3_2_86_2","doi-asserted-by":"publisher","DOI":"10.1145\/3510466.3510485"},{"key":"e_1_3_2_87_2","volume-title":"Family Evaluation Framework Overview & Introduction","author":"Linden Frank van der","year":"2005","unstructured":"Frank van der Linden. 2005. Family Evaluation Framework Overview & Introduction. Philips Medical Systems, version 1."},{"issue":"5","key":"e_1_3_2_88_2","first-page":"360","article-title":"Understanding interobserver agreement: The kappa statistic","volume":"37","author":"Viera Anthony J.","year":"2005","unstructured":"Anthony J. Viera, Joanne M. Garrett. 2005. Understanding interobserver agreement: The kappa statistic. Family Medicine 37, 5 (2005), 360\u2013363.","journal-title":"Family Medicine"},{"key":"e_1_3_2_89_2","doi-asserted-by":"publisher","DOI":"10.1049\/ic:20040394"},{"key":"e_1_3_2_90_2","volume-title":"Extreme Programming Evaluation Framework for Object-Oriented Languages Version 1.4","author":"Williams Laurie Ann","year":"2004","unstructured":"Laurie Ann Williams, Lucas Layman, and William Krebs. 2004. Extreme Programming Evaluation Framework for Object-Oriented Languages Version 1.4. Technical Report. Department of Computer Science, North Carolina State University."},{"key":"e_1_3_2_91_2","doi-asserted-by":"publisher","DOI":"10.1145\/2601248.2601268"},{"key":"e_1_3_2_92_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00029"}],"container-title":["ACM Transactions on Software Engineering and Methodology"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3672555","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3672555","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T00:06:14Z","timestamp":1750291574000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3672555"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,9,27]]},"references-count":91,"journal-issue":{"issue":"7","published-print":{"date-parts":[[2024,9,30]]}},"alternative-id":["10.1145\/3672555"],"URL":"https:\/\/doi.org\/10.1145\/3672555","relation":{},"ISSN":["1049-331X","1557-7392"],"issn-type":[{"type":"print","value":"1049-331X"},{"type":"electronic","value":"1557-7392"}],"subject":[],"published":{"date-parts":[[2024,9,27]]},"assertion":[{"value":"2022-12-27","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-05-03","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-09-27","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}