{"id":"https://openalex.org/W2140368099","doi":"https://doi.org/10.1145/2351676.2351749","title":"SYMake: a build code analysis and refactoring tool for makefiles","display_name":"SYMake: a build code analysis and refactoring tool for makefiles","publication_year":2012,"publication_date":"2012-09-03","ids":{"openalex":"https://openalex.org/W2140368099","doi":"https://doi.org/10.1145/2351676.2351749","mag":"2140368099"},"language":"en","primary_location":{"id":"doi:10.1145/2351676.2351749","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2351676.2351749","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"type":"conference-paper","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/A5048875476","display_name":"Ahmed Tamrawi","orcid":null},"institutions":[{"id":"https://openalex.org/I173911158","display_name":"Iowa State University","ror":"https://ror.org/04rswrd78","country_code":"US","type":"education","lineage":["https://openalex.org/I173911158"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ahmed Tamrawi","raw_affiliation_strings":["Iowa State University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Iowa State University, USA","institution_ids":["https://openalex.org/I173911158"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5044339946","display_name":"Hoan Anh Nguyen","orcid":"https://orcid.org/0000-0002-6194-7930"},"institutions":[{"id":"https://openalex.org/I173911158","display_name":"Iowa State University","ror":"https://ror.org/04rswrd78","country_code":"US","type":"education","lineage":["https://openalex.org/I173911158"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Hoan Anh Nguyen","raw_affiliation_strings":["Iowa State University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Iowa State University, USA","institution_ids":["https://openalex.org/I173911158"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5103551242","display_name":"Hung Viet Nguyen","orcid":null},"institutions":[{"id":"https://openalex.org/I173911158","display_name":"Iowa State University","ror":"https://ror.org/04rswrd78","country_code":"US","type":"education","lineage":["https://openalex.org/I173911158"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Hung Viet Nguyen","raw_affiliation_strings":["Iowa State University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Iowa State University, USA","institution_ids":["https://openalex.org/I173911158"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5089000736","display_name":"Tien N. Nguyen","orcid":"https://orcid.org/0009-0006-7962-6090"},"institutions":[{"id":"https://openalex.org/I173911158","display_name":"Iowa State University","ror":"https://ror.org/04rswrd78","country_code":"US","type":"education","lineage":["https://openalex.org/I173911158"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tien N. Nguyen","raw_affiliation_strings":["Iowa State University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Iowa State University, USA","institution_ids":["https://openalex.org/I173911158"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I173911158"],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":26,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"366","last_page":"369"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"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.9998999834060669,"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.9983999729156494,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9980999827384949,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/code-refactoring","display_name":"Code refactoring","score":0.9728149175643921},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8331703543663025},{"id":"https://openalex.org/keywords/kpi-driven-code-analysis","display_name":"KPI-driven code analysis","score":0.7362734079360962},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6967374682426453},{"id":"https://openalex.org/keywords/code-smell","display_name":"Code smell","score":0.6926590204238892},{"id":"https://openalex.org/keywords/static-program-analysis","display_name":"Static program analysis","score":0.6207940578460693},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.6125432848930359},{"id":"https://openalex.org/keywords/software-maintenance","display_name":"Software maintenance","score":0.5490614771842957},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5216130018234253},{"id":"https://openalex.org/keywords/code-review","display_name":"Code review","score":0.5149567723274231},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.5140739679336548},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.48879048228263855},{"id":"https://openalex.org/keywords/task","display_name":"Task (project management)","score":0.4838261008262634},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.4757658839225769},{"id":"https://openalex.org/keywords/codebase","display_name":"Codebase","score":0.4312421679496765},{"id":"https://openalex.org/keywords/variable","display_name":"Variable (mathematics)","score":0.4236811101436615},{"id":"https://openalex.org/keywords/software-evolution","display_name":"Software evolution","score":0.41216227412223816},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.40822654962539673},{"id":"https://openalex.org/keywords/software-quality","display_name":"Software quality","score":0.30303463339805603},{"id":"https://openalex.org/keywords/software-construction","display_name":"Software construction","score":0.2777860760688782},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.09321132302284241},{"id":"https://openalex.org/keywords/systems-engineering","display_name":"Systems engineering","score":0.07424107193946838}],"concepts":[{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.9728149175643921},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8331703543663025},{"id":"https://openalex.org/C121957198","wikidata":"https://www.wikidata.org/wiki/Q14365593","display_name":"KPI-driven code analysis","level":5,"score":0.7362734079360962},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6967374682426453},{"id":"https://openalex.org/C133237599","wikidata":"https://www.wikidata.org/wiki/Q2295111","display_name":"Code smell","level":5,"score":0.6926590204238892},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.6207940578460693},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.6125432848930359},{"id":"https://openalex.org/C101317890","wikidata":"https://www.wikidata.org/wiki/Q940053","display_name":"Software maintenance","level":4,"score":0.5490614771842957},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5216130018234253},{"id":"https://openalex.org/C150292731","wikidata":"https://www.wikidata.org/wiki/Q1342704","display_name":"Code review","level":5,"score":0.5149567723274231},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5140739679336548},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.48879048228263855},{"id":"https://openalex.org/C2780451532","wikidata":"https://www.wikidata.org/wiki/Q759676","display_name":"Task (project management)","level":2,"score":0.4838261008262634},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.4757658839225769},{"id":"https://openalex.org/C51929080","wikidata":"https://www.wikidata.org/wiki/Q2425187","display_name":"Codebase","level":3,"score":0.4312421679496765},{"id":"https://openalex.org/C182365436","wikidata":"https://www.wikidata.org/wiki/Q50701","display_name":"Variable (mathematics)","level":2,"score":0.4236811101436615},{"id":"https://openalex.org/C202105479","wikidata":"https://www.wikidata.org/wiki/Q265013","display_name":"Software evolution","level":5,"score":0.41216227412223816},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.40822654962539673},{"id":"https://openalex.org/C117447612","wikidata":"https://www.wikidata.org/wiki/Q1412670","display_name":"Software quality","level":4,"score":0.30303463339805603},{"id":"https://openalex.org/C186846655","wikidata":"https://www.wikidata.org/wiki/Q3398377","display_name":"Software construction","level":4,"score":0.2777860760688782},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.09321132302284241},{"id":"https://openalex.org/C201995342","wikidata":"https://www.wikidata.org/wiki/Q682496","display_name":"Systems engineering","level":1,"score":0.07424107193946838},{"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/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2351676.2351749","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2351676.2351749","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/10","display_name":"Reduced inequalities","score":0.6299999952316284}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":7,"referenced_works":["https://openalex.org/W2002647862","https://openalex.org/W2070223459","https://openalex.org/W2120951650","https://openalex.org/W2144528247","https://openalex.org/W2148238464","https://openalex.org/W6668181601","https://openalex.org/W6678012959"],"related_works":["https://openalex.org/W3177447400","https://openalex.org/W4382562158","https://openalex.org/W2986478207","https://openalex.org/W4312706861","https://openalex.org/W4384026574","https://openalex.org/W1982871693","https://openalex.org/W2150625980","https://openalex.org/W2108523483","https://openalex.org/W2338725043","https://openalex.org/W656101134"],"abstract_inverted_index":{"Software":[0],"building":[1],"is":[2,16,47],"an":[3],"important":[4],"task":[5],"during":[6],"software":[7],"development.":[8],"However,":[9],"program":[10,36],"analysis":[11,37,92],"support":[12],"for":[13,20,41],"build":[14,21,42,74,106],"code":[15,22,43,54,75,107],"still":[17],"limited,":[18],"especially":[19],"written":[23],"in":[24,44,108],"a":[25,34,109],"dynamic":[26],"language":[27],"such":[28,58],"as":[29,59],"Make.":[30],"We":[31],"introduce":[32],"SYMake,":[33],"novel":[35],"and":[38,56,98,111],"refactoring":[39],"tool":[40],"Makefiles.":[45],"SYMake":[46,89],"capable":[48],"of":[49,53],"detecting":[50],"several":[51],"types":[52],"smells":[55],"errors":[57],"cyclic":[60],"dependencies,":[61],"rule":[62,78],"inclusion,":[63],"duplicate":[64],"prerequisites,":[65,97],"recursive":[66],"variable":[67],"loops,":[68],"etc.":[69,86],"It":[70],"also":[71],"supports":[72],"automatic":[73],"refactoring,":[76],"e.g.":[77],"extraction/removal,":[79],"target":[80],"creation,":[81],"target/variable":[82],"renaming,":[83],"prerequisite":[84],"extraction,":[85],"In":[87],"addition,":[88],"provides":[90],"the":[91],"on":[93],"defined":[94],"rules,":[95],"targets,":[96],"associated":[99],"information":[100],"to":[101],"help":[102],"developers":[103],"better":[104],"understand":[105],"Makefile":[110],"its":[112],"included":[113],"files.":[114]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":4},{"year":2022,"cited_by_count":2},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":5}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
