{"id":"https://openalex.org/W4323891822","doi":"https://doi.org/10.1109/access.2023.3255984","title":"Is JavaScript Call Graph Extraction Solved Yet? A Comparative Study of Static and Dynamic Tools","display_name":"Is JavaScript Call Graph Extraction Solved Yet? A Comparative Study of Static and Dynamic Tools","publication_year":2023,"publication_date":"2023-01-01","ids":{"openalex":"https://openalex.org/W4323891822","doi":"https://doi.org/10.1109/access.2023.3255984"},"language":"en","primary_location":{"id":"doi:10.1109/access.2023.3255984","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2023.3255984","pdf_url":"https://ieeexplore.ieee.org/ielx7/6287639/6514899/10066273.pdf","source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://ieeexplore.ieee.org/ielx7/6287639/6514899/10066273.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5030219597","display_name":"G\u00e1bor Antal","orcid":"https://orcid.org/0000-0002-3002-8624"},"institutions":[{"id":"https://openalex.org/I227486990","display_name":"University of Szeged","ror":"https://ror.org/01pnej532","country_code":"HU","type":"education","lineage":["https://openalex.org/I227486990"]}],"countries":["HU"],"is_corresponding":true,"raw_author_name":"G\u00e1bor Antal","raw_affiliation_strings":["Department of Software Engineering, University of Szeged, Szeged, Hungary"],"raw_orcid":"https://orcid.org/0000-0002-3002-8624","affiliations":[{"raw_affiliation_string":"Department of Software Engineering, University of Szeged, Szeged, Hungary","institution_ids":["https://openalex.org/I227486990"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5021558521","display_name":"P\u00e9ter Heged\u0171s","orcid":"https://orcid.org/0000-0003-4592-6504"},"institutions":[{"id":"https://openalex.org/I227486990","display_name":"University of Szeged","ror":"https://ror.org/01pnej532","country_code":"HU","type":"education","lineage":["https://openalex.org/I227486990"]}],"countries":["HU"],"is_corresponding":false,"raw_author_name":"P\u00e9ter Heged\u0171s","raw_affiliation_strings":["Department of Software Engineering, University of Szeged, Szeged, Hungary"],"raw_orcid":"https://orcid.org/0000-0003-4592-6504","affiliations":[{"raw_affiliation_string":"Department of Software Engineering, University of Szeged, Szeged, Hungary","institution_ids":["https://openalex.org/I227486990"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5066971377","display_name":"Zolt\u00e1n Herczeg","orcid":null},"institutions":[{"id":"https://openalex.org/I227486990","display_name":"University of Szeged","ror":"https://ror.org/01pnej532","country_code":"HU","type":"education","lineage":["https://openalex.org/I227486990"]}],"countries":["HU"],"is_corresponding":false,"raw_author_name":"Zolt\u00e1n Herczeg","raw_affiliation_strings":["Department of Software Engineering, University of Szeged, Szeged, Hungary"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Software Engineering, University of Szeged, Szeged, Hungary","institution_ids":["https://openalex.org/I227486990"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5031997418","display_name":"G\u00e1bor L\u00f3ki","orcid":"https://orcid.org/0000-0002-2843-827X"},"institutions":[{"id":"https://openalex.org/I227486990","display_name":"University of Szeged","ror":"https://ror.org/01pnej532","country_code":"HU","type":"education","lineage":["https://openalex.org/I227486990"]}],"countries":["HU"],"is_corresponding":false,"raw_author_name":"G\u00e1bor L\u00f3ki","raw_affiliation_strings":["Department of Software Engineering, University of Szeged, Szeged, Hungary"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Software Engineering, University of Szeged, Szeged, Hungary","institution_ids":["https://openalex.org/I227486990"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5019664412","display_name":"Rudolf Feren\u0107","orcid":"https://orcid.org/0000-0001-8897-7403"},"institutions":[{"id":"https://openalex.org/I227486990","display_name":"University of Szeged","ror":"https://ror.org/01pnej532","country_code":"HU","type":"education","lineage":["https://openalex.org/I227486990"]}],"countries":["HU"],"is_corresponding":false,"raw_author_name":"Rudolf Ferenc","raw_affiliation_strings":["Department of Software Engineering, University of Szeged, Szeged, Hungary"],"raw_orcid":"https://orcid.org/0000-0001-8897-7403","affiliations":[{"raw_affiliation_string":"Department of Software Engineering, University of Szeged, Szeged, Hungary","institution_ids":["https://openalex.org/I227486990"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5030219597"],"corresponding_institution_ids":["https://openalex.org/I227486990"],"apc_list":{"value":1850,"currency":"USD","value_usd":1850},"apc_paid":{"value":1850,"currency":"USD","value_usd":1850},"fwci":3.11,"has_fulltext":true,"cited_by_count":7,"citation_normalized_percentile":{"value":0.9239166,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":"11","issue":null,"first_page":"25266","last_page":"25284"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9983000159263611,"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.9983000159263611,"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9970999956130981,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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.993399977684021,"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.8226125836372375},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.7536154389381409},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5557632446289062},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.49169260263442993},{"id":"https://openalex.org/keywords/call-graph","display_name":"Call graph","score":0.48317232728004456},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.44455063343048096},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.4433095157146454},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3788295388221741}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8226125836372375},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.7536154389381409},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5557632446289062},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.49169260263442993},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.48317232728004456},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.44455063343048096},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.4433095157146454},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3788295388221741}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1109/access.2023.3255984","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2023.3255984","pdf_url":"https://ieeexplore.ieee.org/ielx7/6287639/6514899/10066273.pdf","source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},{"id":"pmh:oai:publicatio.bibl.u-szeged.hu:28179","is_oa":true,"landing_page_url":null,"pdf_url":"http://publicatio.bibl.u-szeged.hu/28179/1/Is_JavaScript_Call_Graph_Extraction_Solved_Yet_A_Comparative_Study_of_Static_and_Dynamic_Tools.pdf","source":{"id":"https://openalex.org/S4306400436","display_name":"SZTE Publicatio Repozit\u00f3rium (University of Szeged)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I227486990","host_organization_name":"University of Szeged","host_organization_lineage":["https://openalex.org/I227486990"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"","raw_type":"Foly\u00f3iratcikk"},{"id":"pmh:oai:doaj.org/article:8aa556cb15d14a7986f0f875dbbac3b4","is_oa":true,"landing_page_url":"https://doaj.org/article/8aa556cb15d14a7986f0f875dbbac3b4","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","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":"repository"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"IEEE Access, Vol 11, Pp 25266-25284 (2023)","raw_type":"article"}],"best_oa_location":{"id":"doi:10.1109/access.2023.3255984","is_oa":true,"landing_page_url":"https://doi.org/10.1109/access.2023.3255984","pdf_url":"https://ieeexplore.ieee.org/ielx7/6287639/6514899/10066273.pdf","source":{"id":"https://openalex.org/S2485537415","display_name":"IEEE Access","issn_l":"2169-3536","issn":["2169-3536"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Access","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G2100831339","display_name":null,"funder_award_id":"RRF-2.3.1-21-2022-00004","funder_id":"https://openalex.org/F4320338080","funder_display_name":"European Social Fund"},{"id":"https://openalex.org/G2953162778","display_name":null,"funder_award_id":"TKP2021-NVA","funder_id":"https://openalex.org/F4320335908","funder_display_name":"Nemzeti Kutat\u00e1si, Fejleszt\u00e9si \u00e9s Innovaci\u00f3s Alap"},{"id":"https://openalex.org/G298428782","display_name":null,"funder_award_id":"TKP2021","funder_id":"https://openalex.org/F4320335908","funder_display_name":"Nemzeti Kutat\u00e1si, Fejleszt\u00e9si \u00e9s Innovaci\u00f3s Alap"},{"id":"https://openalex.org/G3241820797","display_name":null,"funder_award_id":"RRF-2.3.1-21-2022-00004","funder_id":"https://openalex.org/F4320320300","funder_display_name":"European Commission"},{"id":"https://openalex.org/G3912725102","display_name":null,"funder_award_id":"RRF-2.3.1-21-2022-00004","funder_id":"https://openalex.org/F4320335908","funder_display_name":"Nemzeti Kutat\u00e1si, Fejleszt\u00e9si \u00e9s Innovaci\u00f3s Alap"},{"id":"https://openalex.org/G4614621299","display_name":null,"funder_award_id":"TKP2021-NVA-09","funder_id":"https://openalex.org/F4320335908","funder_display_name":"Nemzeti Kutat\u00e1si, Fejleszt\u00e9si \u00e9s Innovaci\u00f3s Alap"},{"id":"https://openalex.org/G8251372944","display_name":null,"funder_award_id":"TKP2021-NVA-09","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"},{"id":"https://openalex.org/F4320322192","display_name":"Magyar Tudom\u00e1nyos Akad\u00e9mia","ror":"https://ror.org/02ks8qq67"},{"id":"https://openalex.org/F4320329149","display_name":"Szegedi Tudom\u00e1nyegyetem","ror":"https://ror.org/01pnej532"},{"id":"https://openalex.org/F4320335908","display_name":"Nemzeti Kutat\u00e1si, Fejleszt\u00e9si \u00e9s Innovaci\u00f3s Alap","ror":null},{"id":"https://openalex.org/F4320338080","display_name":"European Social Fund","ror":"https://ror.org/00k4n6c32"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4323891822.pdf","grobid_xml":"https://content.openalex.org/works/W4323891822.grobid-xml"},"referenced_works_count":41,"referenced_works":["https://openalex.org/W202191487","https://openalex.org/W1553801604","https://openalex.org/W1598567364","https://openalex.org/W1691204536","https://openalex.org/W1959797194","https://openalex.org/W1965142824","https://openalex.org/W1966862293","https://openalex.org/W2006575153","https://openalex.org/W2024818492","https://openalex.org/W2027264060","https://openalex.org/W2041637512","https://openalex.org/W2061640969","https://openalex.org/W2067786443","https://openalex.org/W2089554624","https://openalex.org/W2095802649","https://openalex.org/W2109427294","https://openalex.org/W2117831564","https://openalex.org/W2139150351","https://openalex.org/W2140792139","https://openalex.org/W2461708070","https://openalex.org/W2587272350","https://openalex.org/W2678953409","https://openalex.org/W2788565238","https://openalex.org/W2901936332","https://openalex.org/W2947687068","https://openalex.org/W3023595663","https://openalex.org/W3027728914","https://openalex.org/W3117175757","https://openalex.org/W3122488687","https://openalex.org/W3161685529","https://openalex.org/W3180903877","https://openalex.org/W4229596932","https://openalex.org/W4240995061","https://openalex.org/W4247387602","https://openalex.org/W4249777822","https://openalex.org/W4256386389","https://openalex.org/W4293767581","https://openalex.org/W6604517001","https://openalex.org/W6740380446","https://openalex.org/W6760925213","https://openalex.org/W6773416988"],"related_works":["https://openalex.org/W2461078469","https://openalex.org/W123790205","https://openalex.org/W2085515337","https://openalex.org/W3102852402","https://openalex.org/W2527850347","https://openalex.org/W2910694811","https://openalex.org/W3177786601","https://openalex.org/W2164440115","https://openalex.org/W3192008692","https://openalex.org/W4377971494"],"abstract_inverted_index":{"Code":[0],"analysis":[1,176],"is":[2,9],"more":[3],"important":[4],"than":[5],"ever":[6],"because":[7],"JavaScript":[8,82],"increasingly":[10],"popular":[11],"and":[12,19,61,71,88,97,100,131,154,160,172,245],"actively":[13],"used,":[14],"both":[15],"on":[16,34,92,104,144,178],"the":[17,35,40,145,155,170,185,201,222,243,288,294],"client":[18],"server":[20],"sides.":[21],"Most":[22],"algorithms":[23],"for":[24,80,136,285],"analyzing":[25],"vulnerabilities,":[26],"finding":[27],"coding":[28],"issues,":[29],"or":[30],"inferring":[31],"type":[32],"depend":[33],"call":[36,83,120,182,225,253],"graph":[37],"representation":[38],"of":[39,169,212,252,264],"underlying":[41],"program.":[42],"Luckily,":[43],"there":[44,277],"are":[45,271,278,282],"quite":[46],"a":[47,166,173,217,249,261],"few":[48],"tools":[49,110,203,239],"to":[50,221,230,247],"get":[51],"this":[52,74],"job":[53],"done":[54],"already.":[55],"However,":[56],"their":[57],"performance":[58],"in":[59,63,296],"vitro":[60],"especially":[62],"vivo":[64],"has":[65],"not":[66,190,266,292],"yet":[67],"been":[68],"extensively":[69],"compared":[70,220],"evaluated.":[72],"In":[73],"paper,":[75],"we":[76],"compare":[77],"several":[78],"approaches":[79,91,103,257,270],"building":[81],"graphs,":[84],"namely":[85],"five":[86],"static":[87,99,114,202,238],"two":[89,98,101],"dynamic":[90,102,141,195,224,256,269],"26":[93],"WebKit":[94],"SunSpider":[95,186],"programs,":[96,187],"12":[105],"real-world":[106,231],"Node.js":[107,152,232],"programs.":[108],"The":[109],"under":[111],"examination":[112],"using":[113],"techniques":[115],"were":[116,300],"<italic":[117,132,146,156],"xmlns:mml=\"http://www.w3.org/1998/Math/MathML\"":[118,133,147,157],"xmlns:xlink=\"http://www.w3.org/1999/xlink\">npm":[119],"graph,":[121],"IBM":[122],"WALA,":[123],"Google":[124],"Closure":[125],"Compiler,":[126],"Approximate":[127],"Call":[128],"Graph</i>":[129],",":[130],"xmlns:xlink=\"http://www.w3.org/1999/xlink\">Type":[134],"Analyzer":[135],"JavaScript</i>":[137],".":[138,163],"We":[139,164],"performed":[140,205],"analyzes":[142],"relying":[143],"xmlns:xlink=\"http://www.w3.org/1999/xlink\">nodejs-cg</i>":[148],"tool":[149],"(a":[150],"customized":[151],"runtime)":[153],"xmlns:xlink=\"http://www.w3.org/1999/xlink\">NodeProf":[158],"instrumentation":[159],"profiling":[161],"framework</i>":[162],"provide":[165],"quantitative":[167],"evaluation":[168,235],"results,":[171],"result":[174],"quality":[175],"based":[177],"941":[179],"manually":[180],"validated":[181],"edges.":[183],"On":[184],"which":[188,297],"do":[189],"take":[191],"any":[192],"inputs,":[193],"so":[194],"extraction":[196],"could":[197],"be":[198],"complete,":[199],"all":[200,213],"also":[204,272,279],"well.":[206],"For":[207],"example,":[208],"TAJS":[209],"found":[210],"93%":[211],"edges":[214,254,265,280],"while":[215],"having":[216],"97%":[218],"precision":[219],"precise":[223],"graph.":[226],"When":[227],"it":[228],"comes":[229],"modules,":[233],"our":[234],"shows":[236],"that":[237,255,281],"struggle":[240],"with":[241],"parsing":[242],"code":[244],"fail":[246],"detect":[248],"significant":[250,262],"amount":[251],"can":[258],"capture.":[259],"Nonetheless,":[260],"number":[263],"detected":[267],"by":[268],"reported.":[273],"Among":[274],"these,":[275],"however,":[276],"real,":[283],"but":[284],"some":[286],"reason":[287],"unit":[289],"tests":[290],"did":[291],"execute":[293],"branches":[295],"these":[298],"calls":[299],"included.":[301]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":1}],"updated_date":"2026-05-06T08:25:59.206177","created_date":"2025-10-10T00:00:00"}
