{"id":"https://openalex.org/W4308643037","doi":"https://doi.org/10.1145/3540250.3558942","title":"Discovering feature flag interdependencies in Microsoft office","display_name":"Discovering feature flag interdependencies in Microsoft office","publication_year":2022,"publication_date":"2022-11-07","ids":{"openalex":"https://openalex.org/W4308643037","doi":"https://doi.org/10.1145/3540250.3558942"},"language":"en","primary_location":{"id":"doi:10.1145/3540250.3558942","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3540250.3558942","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3540250.3558942","source":{"id":"https://openalex.org/S4363608883","display_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3540250.3558942","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5045368238","display_name":"Michael Schr\u00f6der","orcid":"https://orcid.org/0000-0003-1496-0531"},"institutions":[{"id":"https://openalex.org/I145847075","display_name":"TU Wien","ror":"https://ror.org/04d836q62","country_code":"AT","type":"education","lineage":["https://openalex.org/I145847075"]}],"countries":["AT"],"is_corresponding":false,"raw_author_name":"Michael Schr\u00f6der","raw_affiliation_strings":["TU Wien, Austria"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"TU Wien, Austria","institution_ids":["https://openalex.org/I145847075"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5000434752","display_name":"Katja Kevic","orcid":null},"institutions":[{"id":"https://openalex.org/I4210108625","display_name":"Microsoft (United Kingdom)","ror":"https://ror.org/01rw27z95","country_code":"GB","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210108625"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Katja Kevic","raw_affiliation_strings":["Microsoft, UK"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft, UK","institution_ids":["https://openalex.org/I4210108625"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5076388753","display_name":"Dan Gopstein","orcid":null},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Dan Gopstein","raw_affiliation_strings":["Microsoft, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5075932839","display_name":"Thomas Brendan Murphy","orcid":"https://orcid.org/0000-0002-5668-7046"},"institutions":[{"id":"https://openalex.org/I4210108625","display_name":"Microsoft (United Kingdom)","ror":"https://ror.org/01rw27z95","country_code":"GB","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210108625"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Brendan Murphy","raw_affiliation_strings":["Microsoft, UK"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft, UK","institution_ids":["https://openalex.org/I4210108625"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5013937268","display_name":"Jennifer Beckmann","orcid":null},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jennifer Beckmann","raw_affiliation_strings":["Microsoft, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft, USA","institution_ids":["https://openalex.org/I1290206253"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.2912,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.53730703,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"1419","last_page":"1429"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.998199999332428,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.825355052947998},{"id":"https://openalex.org/keywords/feature","display_name":"Feature (linguistics)","score":0.7546049952507019},{"id":"https://openalex.org/keywords/flag","display_name":"Flag (linear algebra)","score":0.7501883506774902},{"id":"https://openalex.org/keywords/flags-register","display_name":"FLAGS register","score":0.6195906400680542},{"id":"https://openalex.org/keywords/software-deployment","display_name":"Software deployment","score":0.5163949131965637},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5162484645843506},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.4660521447658539},{"id":"https://openalex.org/keywords/interdependence","display_name":"Interdependence","score":0.45062142610549927},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.361568808555603},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.2465657889842987},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.15347245335578918},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.0853031575679779}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.825355052947998},{"id":"https://openalex.org/C2776401178","wikidata":"https://www.wikidata.org/wiki/Q12050496","display_name":"Feature (linguistics)","level":2,"score":0.7546049952507019},{"id":"https://openalex.org/C2776730729","wikidata":"https://www.wikidata.org/wiki/Q1392130","display_name":"Flag (linear algebra)","level":3,"score":0.7501883506774902},{"id":"https://openalex.org/C69721887","wikidata":"https://www.wikidata.org/wiki/Q2600316","display_name":"FLAGS register","level":2,"score":0.6195906400680542},{"id":"https://openalex.org/C105339364","wikidata":"https://www.wikidata.org/wiki/Q2297740","display_name":"Software deployment","level":2,"score":0.5163949131965637},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5162484645843506},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.4660521447658539},{"id":"https://openalex.org/C185874996","wikidata":"https://www.wikidata.org/wiki/Q269699","display_name":"Interdependence","level":2,"score":0.45062142610549927},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.361568808555603},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.2465657889842987},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.15347245335578918},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0853031575679779},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C199539241","wikidata":"https://www.wikidata.org/wiki/Q7748","display_name":"Law","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C136119220","wikidata":"https://www.wikidata.org/wiki/Q1000660","display_name":"Algebra over a field","level":2,"score":0.0},{"id":"https://openalex.org/C17744445","wikidata":"https://www.wikidata.org/wiki/Q36442","display_name":"Political science","level":0,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3540250.3558942","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3540250.3558942","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3540250.3558942","source":{"id":"https://openalex.org/S4363608883","display_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3540250.3558942","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3540250.3558942","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3540250.3558942","source":{"id":"https://openalex.org/S4363608883","display_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","raw_type":"proceedings-article"},"sustainable_development_goals":[{"display_name":"Partnerships for the goals","score":0.5199999809265137,"id":"https://metadata.un.org/sdg/17"}],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4308643037.pdf","grobid_xml":"https://content.openalex.org/works/W4308643037.grobid-xml"},"referenced_works_count":13,"referenced_works":["https://openalex.org/W134722953","https://openalex.org/W2055765785","https://openalex.org/W2066787289","https://openalex.org/W2067937778","https://openalex.org/W2108999965","https://openalex.org/W2156817008","https://openalex.org/W2167482691","https://openalex.org/W2404120807","https://openalex.org/W3090120825","https://openalex.org/W3090557936","https://openalex.org/W3107331477","https://openalex.org/W3117078320","https://openalex.org/W3207613969"],"related_works":["https://openalex.org/W577438491","https://openalex.org/W4237372558","https://openalex.org/W2287913863","https://openalex.org/W784985651","https://openalex.org/W576648413","https://openalex.org/W588068431","https://openalex.org/W643061367","https://openalex.org/W3183852398","https://openalex.org/W1639975906","https://openalex.org/W4251586001"],"abstract_inverted_index":{"Feature":[0],"flags":[1,29,36,61],"are":[2,37,148],"a":[3,50],"popular":[4],"method":[5],"to":[6,82,94,104,119,150],"control":[7],"functionality":[8],"in":[9,41,64,86],"released":[10],"code.":[11],"They":[12],"enable":[13],"rapid":[14],"development":[15],"and":[16,44,123,147,173,184],"deployment,":[17],"but":[18],"can":[19,30],"also":[20,167],"quickly":[21],"accumulate":[22],"technical":[23],"debt.":[24],"Complex":[25],"interactions":[26],"between":[27],"feature":[28,60,97,109,159],"go":[31],"unnoticed,":[32],"especially":[33],"if":[34],"interdependent":[35],"located":[38],"far":[39],"apart":[40],"the":[42],"code,":[43],"these":[45],"unknown":[46],"dependencies":[47],"could":[48],"become":[49],"source":[51,164],"of":[52,59,78,171],"serious":[53],"bugs.":[54],"Testing":[55],"all":[56],"possible":[57],"combinations":[58],"is":[62,81,115,124],"infeasible":[63],"large":[65,120],"systems":[66],"like":[67],"Microsoft":[68,145],"Office,":[69],"which":[70],"has":[71],"about":[72],"12000":[73],"active":[74],"flags.":[75],"The":[76],"goal":[77],"our":[79,138],"research":[80],"aid":[83],"product":[84],"teams":[85],"improving":[87],"system":[88],"reliability":[89],"by":[90],"providing":[91],"an":[92],"approach":[93,114,139],"automatically":[95],"discover":[96],"flag":[98,110,160],"interdependencies.":[99],"We":[100,136,166],"use":[101],"probabilistic":[102],"reasoning":[103],"infer":[105],"causal":[106],"relationships":[107,161,172],"from":[108,144],"query":[111,142],"logs.":[112],"Our":[113],"language-agnostic,":[116],"scales":[117],"easily":[118],"heterogeneous":[121],"codebases,":[122],"robust":[125],"against":[126],"noise":[127],"such":[128],"as":[129],"code":[130],"drift":[131],"or":[132],"imperfect":[133],"log":[134],"data.":[135],"evaluated":[137],"on":[140],"real-world":[141],"logs":[143],"Office":[146],"able":[149],"achieve":[151],"over":[152],"90%":[153],"precision":[154],"while":[155],"recalling":[156],"non-trivial":[157],"indirect":[158],"across":[162],"different":[163],"files.":[165],"investigated":[168],"re-occurring":[169],"patterns":[170],"describe":[174],"applications":[175],"for":[176],"targeted":[177],"testing,":[178],"determining":[179],"deployment":[180],"velocity,":[181],"error":[182],"mitigation,":[183],"diagnostics.":[185]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
