{"id":"https://openalex.org/W3110003940","doi":"https://doi.org/10.1145/3428212","title":"A model for detecting faults in build specifications","display_name":"A model for detecting faults in build specifications","publication_year":2020,"publication_date":"2020-11-13","ids":{"openalex":"https://openalex.org/W3110003940","doi":"https://doi.org/10.1145/3428212","mag":"3110003940"},"language":"en","primary_location":{"id":"doi:10.1145/3428212","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3428212","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3428212","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"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 ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3428212","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5090354733","display_name":"Thodoris Sotiropoulos","orcid":"https://orcid.org/0000-0002-9906-3073"},"institutions":[{"id":"https://openalex.org/I73142707","display_name":"Athens University of Economics and Business","ror":"https://ror.org/03s262162","country_code":"GR","type":"education","lineage":["https://openalex.org/I73142707"]}],"countries":["GR"],"is_corresponding":false,"raw_author_name":"Thodoris Sotiropoulos","raw_affiliation_strings":["Athens University of Economics and Business, Greece"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Athens University of Economics and Business, Greece","institution_ids":["https://openalex.org/I73142707"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5028030636","display_name":"Stefanos Chaliasos","orcid":"https://orcid.org/0000-0001-5414-4120"},"institutions":[{"id":"https://openalex.org/I73142707","display_name":"Athens University of Economics and Business","ror":"https://ror.org/03s262162","country_code":"GR","type":"education","lineage":["https://openalex.org/I73142707"]}],"countries":["GR"],"is_corresponding":false,"raw_author_name":"Stefanos Chaliasos","raw_affiliation_strings":["Athens University of Economics and Business, Greece"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Athens University of Economics and Business, Greece","institution_ids":["https://openalex.org/I73142707"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5021658848","display_name":"Dimitris Mitropoulos","orcid":"https://orcid.org/0000-0002-5061-9018"},"institutions":[{"id":"https://openalex.org/I73142707","display_name":"Athens University of Economics and Business","ror":"https://ror.org/03s262162","country_code":"GR","type":"education","lineage":["https://openalex.org/I73142707"]}],"countries":["GR"],"is_corresponding":false,"raw_author_name":"Dimitris Mitropoulos","raw_affiliation_strings":["Athens University of Economics and Business, Greece"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Athens University of Economics and Business, Greece","institution_ids":["https://openalex.org/I73142707"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5021948425","display_name":"Diomidis Spinellis","orcid":"https://orcid.org/0000-0003-4231-1897"},"institutions":[{"id":"https://openalex.org/I73142707","display_name":"Athens University of Economics and Business","ror":"https://ror.org/03s262162","country_code":"GR","type":"education","lineage":["https://openalex.org/I73142707"]}],"countries":["GR"],"is_corresponding":false,"raw_author_name":"Diomidis Spinellis","raw_affiliation_strings":["Athens University of Economics and Business, Greece"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Athens University of Economics and Business, Greece","institution_ids":["https://openalex.org/I73142707"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.1141,"has_fulltext":true,"cited_by_count":13,"citation_normalized_percentile":{"value":0.85079344,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"4","issue":"OOPSLA","first_page":"1","last_page":"30"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9995999932289124,"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"}},{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9993000030517578,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8605798482894897},{"id":"https://openalex.org/keywords/scripting-language","display_name":"Scripting language","score":0.7871571779251099},{"id":"https://openalex.org/keywords/task","display_name":"Task (project management)","score":0.5939299464225769},{"id":"https://openalex.org/keywords/reliability","display_name":"Reliability (semiconductor)","score":0.5174697041511536},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.481018602848053},{"id":"https://openalex.org/keywords/file-system","display_name":"File system","score":0.4793013632297516},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.45233890414237976},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.4238799810409546},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3795735239982605},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.18096110224723816},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.16919264197349548},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.08913028240203857}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8605798482894897},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.7871571779251099},{"id":"https://openalex.org/C2780451532","wikidata":"https://www.wikidata.org/wiki/Q759676","display_name":"Task (project management)","level":2,"score":0.5939299464225769},{"id":"https://openalex.org/C43214815","wikidata":"https://www.wikidata.org/wiki/Q7310987","display_name":"Reliability (semiconductor)","level":3,"score":0.5174697041511536},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.481018602848053},{"id":"https://openalex.org/C2780940931","wikidata":"https://www.wikidata.org/wiki/Q174989","display_name":"File system","level":2,"score":0.4793013632297516},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.45233890414237976},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.4238799810409546},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3795735239982605},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.18096110224723816},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.16919264197349548},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.08913028240203857},{"id":"https://openalex.org/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","level":1,"score":0.0},{"id":"https://openalex.org/C163258240","wikidata":"https://www.wikidata.org/wiki/Q25342","display_name":"Power (physics)","level":2,"score":0.0},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C187736073","wikidata":"https://www.wikidata.org/wiki/Q2920921","display_name":"Management","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3428212","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3428212","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3428212","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"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 ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3428212","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3428212","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3428212","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"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 ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G3231584680","display_name":"Fine-Grained Analysis of Software Ecosystems as Networks","funder_award_id":"825328","funder_id":"https://openalex.org/F4320320300","funder_display_name":"European Commission"}],"funders":[{"id":"https://openalex.org/F4320320300","display_name":"European Commission","ror":"https://ror.org/00k4n6c32"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3110003940.pdf","grobid_xml":"https://content.openalex.org/works/W3110003940.grobid-xml"},"referenced_works_count":39,"referenced_works":["https://openalex.org/W10563742","https://openalex.org/W602296818","https://openalex.org/W632144552","https://openalex.org/W1985896931","https://openalex.org/W2023056333","https://openalex.org/W2029482959","https://openalex.org/W2052776473","https://openalex.org/W2070223459","https://openalex.org/W2078753252","https://openalex.org/W2093927510","https://openalex.org/W2099805222","https://openalex.org/W2103030845","https://openalex.org/W2132251340","https://openalex.org/W2133692747","https://openalex.org/W2140368099","https://openalex.org/W2144528247","https://openalex.org/W2148238464","https://openalex.org/W2148766740","https://openalex.org/W2156858199","https://openalex.org/W2229273480","https://openalex.org/W2347053969","https://openalex.org/W2546542678","https://openalex.org/W2591355029","https://openalex.org/W2604153767","https://openalex.org/W2740675210","https://openalex.org/W2761380876","https://openalex.org/W2765843494","https://openalex.org/W2773253898","https://openalex.org/W2794497357","https://openalex.org/W2794695798","https://openalex.org/W2888590305","https://openalex.org/W2951076951","https://openalex.org/W2962804757","https://openalex.org/W2999907777","https://openalex.org/W3095023974","https://openalex.org/W3142332980","https://openalex.org/W4248990690","https://openalex.org/W4285719527","https://openalex.org/W4287664278"],"related_works":["https://openalex.org/W2046765700","https://openalex.org/W4384345686","https://openalex.org/W2357937784","https://openalex.org/W2547618384","https://openalex.org/W4394391052","https://openalex.org/W2145834781","https://openalex.org/W2577782152","https://openalex.org/W262455470","https://openalex.org/W4242899858","https://openalex.org/W2356327704"],"abstract_inverted_index":{"Incremental":[0],"and":[1,24,48,74,99,101,127,149,190,203,212,257,263,276,281],"parallel":[2,49,150],"builds":[3,14,50,151,273],"are":[4,60],"crucial":[5],"features":[6],"of":[7,67,91,135,144,154,166,182,205,220],"modern":[8],"build":[9,30,41,68,77,84,97,108,125,136,168,221,231],"systems.":[10,232],"Parallelism":[11],"enables":[12],"fast":[13],"by":[15,27,35,193,208,259],"running":[16],"independent":[17],"tasks":[18],"simultaneously,":[19],"while":[20],"incrementality":[21],"saves":[22],"time":[23],"computing":[25],"resources":[26],"processing":[28],"the":[29,65,71,89,120,128,155,164,176,180,200,226,260],"operations":[31,69,78],"that":[32,43,116,236],"were":[33],"affected":[34],"a":[36,52,113,159,167,268],"particular":[37],"code":[38],"change.":[39],"Writing":[40],"definitions":[42],"lead":[44],"to":[45,63,147,217,228,242],"error-free":[46],"incremental":[47,148],"is":[51,56,225,239,279],"challenging":[53],"task.":[54],"This":[55],"mainly":[57],"because":[58],"developers":[59],"often":[61],"unable":[62],"predict":[64],"effects":[66],"on":[70,175],"file":[72,132,160],"system":[73,133,161],"how":[75],"different":[76,142],"interact":[79],"with":[80],"each":[81],"other.":[82],"Faulty":[83],"scripts":[85],"may":[86],"seriously":[87],"degrade":[88],"reliability":[90],"automated":[92],"builds,":[93],"as":[94],"they":[95],"cause":[96],"failures,":[98],"non-deterministic":[100],"incorrect":[102],"outputs.":[103],"To":[104],"reason":[105],"about":[106],"arbitrary":[107],"executions,":[109,222],"we":[110],"present":[111],"BuildFS,":[112,189],"generally-applicable":[114],"model":[115],"takes":[117],"into":[118,188],"account":[119],"specification":[121,165],"(as":[122],"declared":[123],"in":[124,152,250],"scripts)":[126],"actual":[129],"behavior":[130],"(low-level":[131],"operation)":[134],"operations.":[137],"We":[138,198],"then":[139],"formally":[140],"define":[141],"types":[143],"faults":[145,192],"related":[146],"terms":[153],"conditions":[156],"under":[157],"which":[158,173],"operation":[162],"violates":[163],"operation.":[169],"Our":[170],"testing":[171],"approach,":[172],"relies":[174],"proposed":[177],"model,":[178],"analyzes":[179],"execution":[181],"single":[183],"full":[184],"build,":[185],"translates":[186],"it":[187],"uncovers":[191],"checking":[194],"for":[195,271],"corresponding":[196],"violations.":[197],"evaluate":[199],"effectiveness,":[201],"efficiency,":[202],"applicability":[204],"our":[206,218,223,237],"approach":[207,238],"examining":[209],"612":[210],"Make":[211,272],"Gradle":[213],"projects.":[214],"Notably,":[215],"thanks":[216],"treatment":[219],"method":[224],"first":[227],"handle":[229],"JVM-oriented":[230],"The":[233],"results":[234],"indicate":[235],"(1)":[240],"able":[241],"uncover":[243],"several":[244],"important":[245],"issues":[246,248],"(247":[247],"found":[249],"47":[251],"open-source":[252],"projects":[253],"have":[254],"been":[255],"confirmed":[256],"fixed":[258],"upstream":[261],"developers),":[262],"(2)":[264],"much":[265],"faster":[266],"than":[267],"state-of-the-art":[269],"tool":[270],"(the":[274],"median":[275],"average":[277],"speedup":[278],"39X":[280],"74X":[282],"respectively).":[283]},"counts_by_year":[{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2026-06-22T08:00:12.763002","created_date":"2020-12-07T00:00:00"}
