{"id":"https://openalex.org/W2395593080","doi":"https://doi.org/10.1145/2897695.2897703","title":"On the maintenance complexity of makefiles","display_name":"On the maintenance complexity of makefiles","publication_year":2016,"publication_date":"2016-05-14","ids":{"openalex":"https://openalex.org/W2395593080","doi":"https://doi.org/10.1145/2897695.2897703","mag":"2395593080"},"language":"en","primary_location":{"id":"doi:10.1145/2897695.2897703","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2897695.2897703","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th International Workshop on Emerging Trends in Software Metrics","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5110518597","display_name":"Douglas Martin","orcid":null},"institutions":[{"id":"https://openalex.org/I4210154901","display_name":"Kingston University","ror":"https://ror.org/0517ce304","country_code":"US","type":"education","lineage":["https://openalex.org/I4210154901"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Douglas H. Martin","raw_affiliation_strings":["Queen's University, Kingston, ON, CA"],"affiliations":[{"raw_affiliation_string":"Queen's University, Kingston, ON, CA","institution_ids":["https://openalex.org/I4210154901"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5111905373","display_name":"James R. Cordy","orcid":null},"institutions":[{"id":"https://openalex.org/I4210154901","display_name":"Kingston University","ror":"https://ror.org/0517ce304","country_code":"US","type":"education","lineage":["https://openalex.org/I4210154901"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"James R. Cordy","raw_affiliation_strings":["Queen's University, Kingston, ON, CA"],"affiliations":[{"raw_affiliation_string":"Queen's University, Kingston, ON, CA","institution_ids":["https://openalex.org/I4210154901"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5110518597"],"corresponding_institution_ids":["https://openalex.org/I4210154901"],"apc_list":null,"apc_paid":null,"fwci":4.0827,"has_fulltext":false,"cited_by_count":8,"citation_normalized_percentile":{"value":0.9422735,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"50","last_page":"56"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":1.0,"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":1.0,"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/T10430","display_name":"Software Engineering Techniques and Practices","score":0.9958999752998352,"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/T12423","display_name":"Software Reliability and Analysis Research","score":0.9958999752998352,"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.7950928211212158},{"id":"https://openalex.org/keywords/indirection","display_name":"Indirection","score":0.6754673719406128},{"id":"https://openalex.org/keywords/source-lines-of-code","display_name":"Source lines of code","score":0.6092708110809326},{"id":"https://openalex.org/keywords/programming-complexity","display_name":"Programming complexity","score":0.5500737428665161},{"id":"https://openalex.org/keywords/software-maintenance","display_name":"Software maintenance","score":0.5229830741882324},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.516602635383606},{"id":"https://openalex.org/keywords/software-system","display_name":"Software system","score":0.48488980531692505},{"id":"https://openalex.org/keywords/cyclomatic-complexity","display_name":"Cyclomatic complexity","score":0.4817214608192444},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.4704683721065521},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.46952810883522034},{"id":"https://openalex.org/keywords/metric","display_name":"Metric (unit)","score":0.46210038661956787},{"id":"https://openalex.org/keywords/software-metric","display_name":"Software metric","score":0.45990416407585144},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.45742619037628174},{"id":"https://openalex.org/keywords/task","display_name":"Task (project management)","score":0.45297685265541077},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.44756120443344116},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.4432212710380554},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.440315306186676},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.4249518811702728},{"id":"https://openalex.org/keywords/software-construction","display_name":"Software construction","score":0.3921579122543335},{"id":"https://openalex.org/keywords/systems-engineering","display_name":"Systems engineering","score":0.10261565446853638}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7950928211212158},{"id":"https://openalex.org/C89377073","wikidata":"https://www.wikidata.org/wiki/Q1171224","display_name":"Indirection","level":2,"score":0.6754673719406128},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.6092708110809326},{"id":"https://openalex.org/C66429209","wikidata":"https://www.wikidata.org/wiki/Q7248499","display_name":"Programming complexity","level":5,"score":0.5500737428665161},{"id":"https://openalex.org/C101317890","wikidata":"https://www.wikidata.org/wiki/Q940053","display_name":"Software maintenance","level":4,"score":0.5229830741882324},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.516602635383606},{"id":"https://openalex.org/C149091818","wikidata":"https://www.wikidata.org/wiki/Q2429814","display_name":"Software system","level":3,"score":0.48488980531692505},{"id":"https://openalex.org/C187303228","wikidata":"https://www.wikidata.org/wiki/Q867330","display_name":"Cyclomatic complexity","level":3,"score":0.4817214608192444},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.4704683721065521},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.46952810883522034},{"id":"https://openalex.org/C176217482","wikidata":"https://www.wikidata.org/wiki/Q860554","display_name":"Metric (unit)","level":2,"score":0.46210038661956787},{"id":"https://openalex.org/C82214349","wikidata":"https://www.wikidata.org/wiki/Q657339","display_name":"Software metric","level":5,"score":0.45990416407585144},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.45742619037628174},{"id":"https://openalex.org/C2780451532","wikidata":"https://www.wikidata.org/wiki/Q759676","display_name":"Task (project management)","level":2,"score":0.45297685265541077},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.44756120443344116},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.4432212710380554},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.440315306186676},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.4249518811702728},{"id":"https://openalex.org/C186846655","wikidata":"https://www.wikidata.org/wiki/Q3398377","display_name":"Software construction","level":4,"score":0.3921579122543335},{"id":"https://openalex.org/C201995342","wikidata":"https://www.wikidata.org/wiki/Q682496","display_name":"Systems engineering","level":1,"score":0.10261565446853638},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C21547014","wikidata":"https://www.wikidata.org/wiki/Q1423657","display_name":"Operations management","level":1,"score":0.0},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"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}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2897695.2897703","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2897695.2897703","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th International Workshop on Emerging Trends in Software Metrics","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.5400000214576721,"id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W76990466","https://openalex.org/W1505648523","https://openalex.org/W1514026819","https://openalex.org/W1584220698","https://openalex.org/W1957789923","https://openalex.org/W1964962870","https://openalex.org/W2032557572","https://openalex.org/W2046613541","https://openalex.org/W2050187629","https://openalex.org/W2070223459","https://openalex.org/W2120951650","https://openalex.org/W2125889680","https://openalex.org/W2128466029","https://openalex.org/W2132491257","https://openalex.org/W2134176539","https://openalex.org/W2144528247","https://openalex.org/W2148238464","https://openalex.org/W2150395559","https://openalex.org/W2151996389","https://openalex.org/W2180107243","https://openalex.org/W3151121979","https://openalex.org/W3213422946","https://openalex.org/W4229980650","https://openalex.org/W6630813498","https://openalex.org/W6635177364"],"related_works":["https://openalex.org/W4367596435","https://openalex.org/W2110558181","https://openalex.org/W2917376359","https://openalex.org/W2947613800","https://openalex.org/W2144604707","https://openalex.org/W4233990643","https://openalex.org/W2751926149","https://openalex.org/W2047288939","https://openalex.org/W2395593080","https://openalex.org/W2146804991"],"abstract_inverted_index":{"Build":[0],"systems,":[1,11],"the":[2,17,61,78,89,117,138,148,160],"tools":[3],"responsible":[4],"for":[5,39,127],"compiling,":[6],"testing,":[7],"and":[8,29,63,104,125],"packaging":[9],"software":[10,18,111],"play":[12],"a":[13,53,101,107,132,164],"vital":[14],"role":[15],"in":[16],"development":[19],"process.":[20],"It":[21],"is":[22,65,113,120],"therefore":[23],"important":[24],"that":[25,106,146],"they":[26],"be":[27,37],"maintained":[28],"kept":[30],"up-to-date,":[31],"which":[32],"has":[33,82],"been":[34],"shown":[35],"to":[36,41,59,68,150],"required":[38],"up":[40],"27%":[42],"of":[43,73,80,91,110,140,144,159,163,166],"source":[44,175],"code":[45],"changes.":[46],"Make,":[47],"one":[48],"such":[49,87],"build":[50,62],"tool,":[51],"uses":[52],"declarative":[54],"language":[55],"based":[56,136],"on":[57,84,137],"Makefiles":[58,81,169],"specify":[60],"thus":[64],"not":[66],"amenable":[67],"traditional":[69],"complexity":[70,79,134,162],"metrics.":[71],"Because":[72],"this,":[74],"most":[75],"research":[76],"into":[77],"focused":[83],"simple":[85],"measures":[86],"as":[88],"number":[90,139],"lines,":[92],"targets,":[93],"or":[94],"dependencies.":[95],"In":[96],"this":[97],"paper,":[98],"we":[99,130],"take":[100],"different":[102],"approach":[103],"observe":[105],"large":[108],"component":[109],"maintenance":[112],"about":[114],"understanding.":[115],"Since":[116],"understanding":[118],"task":[119],"dominated":[121],"by":[122],"following":[123],"links":[124],"searching":[126],"related":[128],"parts,":[129],"propose":[131],"new":[133],"metric":[135],"indirections":[141],"(i.e.":[142],"instances":[143],"features":[145],"require":[147],"reader":[149],"look":[151],"somewhere":[152],"else).":[153],"We":[154],"present":[155],"an":[156],"empirical":[157],"study":[158],"indirection":[161],"set":[165],"almost":[167],"20,000":[168],"from":[170],"more":[171],"than":[172],"150":[173],"open":[174],"projects.":[176]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
