{"id":"https://openalex.org/W2964817188","doi":"https://doi.org/10.4230/lipics.ecoop.2019.21","title":"MagpieBridge: A General Approach to Integrating Static Analyses into IDEs and Editors (Tool Insights Paper)","display_name":"MagpieBridge: A General Approach to Integrating Static Analyses into IDEs and Editors (Tool Insights Paper)","publication_year":2019,"publication_date":"2019-01-01","ids":{"openalex":"https://openalex.org/W2964817188","doi":"https://doi.org/10.4230/lipics.ecoop.2019.21","mag":"2964817188"},"language":"en","primary_location":{"id":"pmh:oai:drops-oai.dagstuhl.de:10813","is_oa":true,"landing_page_url":"https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2019.21","pdf_url":null,"source":{"id":"https://openalex.org/S4377196569","display_name":"DROPS (Schloss Dagstuhl \u2013 Leibniz Center for Informatics)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I2799853480","host_organization_name":"Schloss Dagstuhl \u2013 Leibniz Center for Informatics","host_organization_lineage":["https://openalex.org/I2799853480"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"","raw_type":"InProceedings"},"type":"article","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2019.21","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5022152776","display_name":"Linghui Luo","orcid":"https://orcid.org/0000-0003-2054-0373"},"institutions":[{"id":"https://openalex.org/I206945453","display_name":"Paderborn University","ror":"https://ror.org/058kzsd48","country_code":"DE","type":"education","lineage":["https://openalex.org/I206945453"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Luo, Linghui","raw_affiliation_strings":["Heinz Nixdorf Institute, Paderborn University, Paderborn, Germany","Paderborn University, Paderborn, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Heinz Nixdorf Institute, Paderborn University, Paderborn, Germany","institution_ids":["https://openalex.org/I206945453"]},{"raw_affiliation_string":"Paderborn University, Paderborn, Germany","institution_ids":["https://openalex.org/I206945453"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5012855077","display_name":"Julian Dolby","orcid":"https://orcid.org/0000-0002-6658-2678"},"institutions":[{"id":"https://openalex.org/I1341412227","display_name":"IBM (United States)","ror":"https://ror.org/05hh8d621","country_code":"US","type":"company","lineage":["https://openalex.org/I1341412227"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Dolby, Julian","raw_affiliation_strings":["IBM Research, New York, USA","IBM (United States), Armonk, United States"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IBM Research, New York, USA","institution_ids":[]},{"raw_affiliation_string":"IBM (United States), Armonk, United States","institution_ids":["https://openalex.org/I1341412227"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5076678278","display_name":"Eric Bodden","orcid":"https://orcid.org/0000-0003-3470-3647"},"institutions":[{"id":"https://openalex.org/I206945453","display_name":"Paderborn University","ror":"https://ror.org/058kzsd48","country_code":"DE","type":"education","lineage":["https://openalex.org/I206945453"]},{"id":"https://openalex.org/I4210093498","display_name":"Fraunhofer Institute for Mechatronic Systems Design","ror":"https://ror.org/004nttc42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I4210093498","https://openalex.org/I4923324"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Bodden, Eric","raw_affiliation_strings":["Heinz Nixdorf Institute, Paderborn University, Paderborn, Germany","Fraunhofer IEM, Paderborn, Germany","Paderborn University, Paderborn, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Heinz Nixdorf Institute, Paderborn University, Paderborn, Germany","institution_ids":["https://openalex.org/I206945453"]},{"raw_affiliation_string":"Fraunhofer IEM, Paderborn, Germany","institution_ids":["https://openalex.org/I4210093498"]},{"raw_affiliation_string":"Paderborn University, Paderborn, Germany","institution_ids":["https://openalex.org/I206945453"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.236,"has_fulltext":true,"cited_by_count":15,"citation_normalized_percentile":{"value":0.80801178,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9793000221252441,"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"}},"topics":[{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9793000221252441,"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.972100019454956,"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/T12034","display_name":"Digital and Cyber Forensics","score":0.9573000073432922,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/plug-in","display_name":"Plug-in","score":0.8253331780433655},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.822028636932373},{"id":"https://openalex.org/keywords/generality","display_name":"Generality","score":0.6676986813545227},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6552414298057556},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6171998977661133},{"id":"https://openalex.org/keywords/usable","display_name":"USable","score":0.6152598857879639},{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.6054008603096008},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.590207040309906},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5880717635154724},{"id":"https://openalex.org/keywords/workflow","display_name":"Workflow","score":0.5229345560073853},{"id":"https://openalex.org/keywords/world-wide-web","display_name":"World Wide Web","score":0.2921326458454132},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.20418161153793335}],"concepts":[{"id":"https://openalex.org/C4924752","wikidata":"https://www.wikidata.org/wiki/Q184148","display_name":"Plug-in","level":2,"score":0.8253331780433655},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.822028636932373},{"id":"https://openalex.org/C2780767217","wikidata":"https://www.wikidata.org/wiki/Q5532421","display_name":"Generality","level":2,"score":0.6676986813545227},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6552414298057556},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6171998977661133},{"id":"https://openalex.org/C2780615836","wikidata":"https://www.wikidata.org/wiki/Q2471869","display_name":"USable","level":2,"score":0.6152598857879639},{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.6054008603096008},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.590207040309906},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5880717635154724},{"id":"https://openalex.org/C177212765","wikidata":"https://www.wikidata.org/wiki/Q627335","display_name":"Workflow","level":2,"score":0.5229345560073853},{"id":"https://openalex.org/C136764020","wikidata":"https://www.wikidata.org/wiki/Q466","display_name":"World Wide Web","level":1,"score":0.2921326458454132},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.20418161153793335},{"id":"https://openalex.org/C542102704","wikidata":"https://www.wikidata.org/wiki/Q183257","display_name":"Psychotherapist","level":1,"score":0.0},{"id":"https://openalex.org/C15744967","wikidata":"https://www.wikidata.org/wiki/Q9418","display_name":"Psychology","level":0,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"pmh:oai:drops-oai.dagstuhl.de:10813","is_oa":true,"landing_page_url":"https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2019.21","pdf_url":null,"source":{"id":"https://openalex.org/S4377196569","display_name":"DROPS (Schloss Dagstuhl \u2013 Leibniz Center for Informatics)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I2799853480","host_organization_name":"Schloss Dagstuhl \u2013 Leibniz Center for Informatics","host_organization_lineage":["https://openalex.org/I2799853480"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"","raw_type":"InProceedings"},{"id":"doi:10.4230/lipics.ecoop.2019.21","is_oa":true,"landing_page_url":"https://doi.org/10.4230/lipics.ecoop.2019.21","pdf_url":null,"source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"ConferencePaper"}],"best_oa_location":{"id":"pmh:oai:drops-oai.dagstuhl.de:10813","is_oa":true,"landing_page_url":"https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2019.21","pdf_url":null,"source":{"id":"https://openalex.org/S4377196569","display_name":"DROPS (Schloss Dagstuhl \u2013 Leibniz Center for Informatics)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I2799853480","host_organization_name":"Schloss Dagstuhl \u2013 Leibniz Center for Informatics","host_organization_lineage":["https://openalex.org/I2799853480"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"","raw_type":"InProceedings"},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9","score":0.5699999928474426}],"awards":[],"funders":[{"id":"https://openalex.org/F4320320879","display_name":"Deutsche Forschungsgemeinschaft","ror":"https://ror.org/018mejw64"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W795078684","https://openalex.org/W2997460115","https://openalex.org/W2278151521","https://openalex.org/W3169832545","https://openalex.org/W3125299103","https://openalex.org/W2610948442","https://openalex.org/W2273196620","https://openalex.org/W3036785783","https://openalex.org/W22256838","https://openalex.org/W2974820489","https://openalex.org/W2731321953","https://openalex.org/W2122422054","https://openalex.org/W2157266110","https://openalex.org/W3207079465","https://openalex.org/W2171694122","https://openalex.org/W3014659028","https://openalex.org/W3122752779","https://openalex.org/W2795148395","https://openalex.org/W3161702724","https://openalex.org/W3100615735"],"abstract_inverted_index":{"In":[0],"the":[1,35,48,51,64,145,192],"past,":[2],"many":[3],"static":[4,55,72,124,137],"analyses":[5,24,56,65,73,125,138,152,190],"have":[6,17,31,42,80,119],"been":[7],"created":[8],"in":[9,21,34,87,110],"academia,":[10,111],"but":[11],"only":[12,118],"a":[13,107,132],"few":[14],"of":[15,37,149,164,194,233],"them":[16],"found":[18],"widespread":[19],"use":[20,47],"industry.":[22],"Those":[23],"which":[25,40],"are":[26,99,115,198],"adopted":[27],"by":[28,178,235],"developers":[29,41,60],"usually":[30],"IDE":[32],"support":[33],"form":[36],"plugins,":[38,95],"without":[39],"no":[43],"convenient":[44],"mechanism":[45],"to":[46,53,59,62,92,135,156],"analysis.":[49],"Hence,":[50],"key":[52],"making":[54],"more":[57,126],"accessible":[58],"is":[61,76,90],"integrate":[63],"into":[66,74,139,153,186],"IDEs":[67,75,79,140,155,239],"and":[68,84,96,117,141,162,184,207,218,221,227,240,250,253],"editors.":[69,142],"However,":[70],"integrating":[71,136,150,179],"non-trivial:":[77],"different":[78,81,201,212,222],"UI":[82],"workflows":[83],"APIs,":[85],"expertise":[86],"those":[88],"matters":[89],"required":[91],"write":[93],"such":[94,242],"analysis":[97,113,161,203],"experts":[98],"not":[100],"typically":[101],"familiar":[102],"with":[103],"doing":[104],"this.":[105],"As":[106],"result,":[108],"especially":[109],"most":[112],"tools":[114],"headless":[116],"command-line":[120],"interfaces.":[121],"To":[122],"make":[123],"usable,":[127],"we":[128],"propose":[129],"MagpieBridge":[130,143,172,234],"-":[131,205,210,215,220,225],"general":[133],"approach":[134,177],"reduces":[144],"mxn":[146],"complexity":[147,158],"problem":[148],"m":[151],"n":[154],"m+n":[157],"because":[159],"each":[160],"type":[163],"plugin":[165],"need":[166],"be":[167],"done":[168],"just":[169],"once":[170],"for":[171,211],"itself.":[173],"We":[174,229],"demonstrate":[175],"our":[176],"two":[180,189],"existing":[181],"analyses,":[182],"Ariadne":[183],"CogniCrypt,":[185],"IDEs;":[187],"these":[188],"illustrate":[191],"generality":[193,232],"MagpieBridge,":[195],"as":[196,243],"they":[197],"based":[199],"on":[200],"program":[202],"frameworks":[204],"WALA":[206],"Soot":[208],"respectively":[209],"application":[213],"areas":[214],"machine":[216],"learning":[217],"security":[219],"programming":[223],"languages":[224],"Python":[226],"Java.":[228],"show":[230],"further":[231],"using":[236],"multiple":[237],"popular":[238],"editors,":[241],"Eclipse,":[244],"IntelliJ,":[245],"PyCharm,":[246],"Jupyter,":[247],"Sublime":[248],"Text":[249],"even":[251],"Emacs":[252],"Vim.":[254]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":4},{"year":2019,"cited_by_count":1}],"updated_date":"2026-07-28T07:46:37.118299","created_date":"2025-10-10T00:00:00"}
