{"id":"https://openalex.org/W1963949965","doi":"https://doi.org/10.1145/2025113.2025205","title":"Join point interfaces for modular reasoning in aspect-oriented programs","display_name":"Join point interfaces for modular reasoning in aspect-oriented programs","publication_year":2011,"publication_date":"2011-09-06","ids":{"openalex":"https://openalex.org/W1963949965","doi":"https://doi.org/10.1145/2025113.2025205","mag":"1963949965"},"language":"en","primary_location":{"id":"doi:10.1145/2025113.2025205","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2025113.2025205","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering","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/A5110073513","display_name":"Milton Inostroza","orcid":null},"institutions":[{"id":"https://openalex.org/I69737025","display_name":"University of Chile","ror":"https://ror.org/047gc3g35","country_code":"CL","type":"education","lineage":["https://openalex.org/I69737025"]}],"countries":["CL"],"is_corresponding":true,"raw_author_name":"Milton Inostroza","raw_affiliation_strings":["University of Chile, Darmstadt, Chile","University of Chile, Darmstadt, Chile#TAB#"],"affiliations":[{"raw_affiliation_string":"University of Chile, Darmstadt, Chile","institution_ids":["https://openalex.org/I69737025"]},{"raw_affiliation_string":"University of Chile, Darmstadt, Chile#TAB#","institution_ids":["https://openalex.org/I69737025"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5074606459","display_name":"\u00c9ric Tanter","orcid":"https://orcid.org/0000-0002-7359-890X"},"institutions":[{"id":"https://openalex.org/I69737025","display_name":"University of Chile","ror":"https://ror.org/047gc3g35","country_code":"CL","type":"education","lineage":["https://openalex.org/I69737025"]}],"countries":["CL"],"is_corresponding":false,"raw_author_name":"\u00c9ric Tanter","raw_affiliation_strings":["Computer Science Department (DCC), University of Chile, Chile"],"affiliations":[{"raw_affiliation_string":"Computer Science Department (DCC), University of Chile, Chile","institution_ids":["https://openalex.org/I69737025"]}]},{"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/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Eric Bodden","raw_affiliation_strings":["Technische Universit\u00e4t Darmstadt, Darmstadt, Germany"],"affiliations":[{"raw_affiliation_string":"Technische Universit\u00e4t Darmstadt, Darmstadt, Germany","institution_ids":["https://openalex.org/I31512782"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5110073513"],"corresponding_institution_ids":["https://openalex.org/I69737025"],"apc_list":null,"apc_paid":null,"fwci":13.76,"has_fulltext":false,"cited_by_count":28,"citation_normalized_percentile":{"value":0.98436579,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"508","last_page":"511"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994999766349792,"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.9994999766349792,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9994000196456909,"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"}},{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.9969000220298767,"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/aspect-oriented-programming","display_name":"Aspect-oriented programming","score":0.8478782176971436},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8159486651420593},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6839313507080078},{"id":"https://openalex.org/keywords/join","display_name":"Join (topology)","score":0.6676346063613892},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5973097085952759},{"id":"https://openalex.org/keywords/aspectj","display_name":"AspectJ","score":0.5384134650230408},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.44692912697792053},{"id":"https://openalex.org/keywords/base","display_name":"Base (topology)","score":0.4328601658344269},{"id":"https://openalex.org/keywords/point","display_name":"Point (geometry)","score":0.4288111925125122},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.15040814876556396},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.09350687265396118}],"concepts":[{"id":"https://openalex.org/C60051680","wikidata":"https://www.wikidata.org/wiki/Q30267","display_name":"Aspect-oriented programming","level":3,"score":0.8478782176971436},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8159486651420593},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6839313507080078},{"id":"https://openalex.org/C2776124973","wikidata":"https://www.wikidata.org/wiki/Q3183033","display_name":"Join (topology)","level":2,"score":0.6676346063613892},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5973097085952759},{"id":"https://openalex.org/C2781009160","wikidata":"https://www.wikidata.org/wiki/Q735604","display_name":"AspectJ","level":4,"score":0.5384134650230408},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.44692912697792053},{"id":"https://openalex.org/C42058472","wikidata":"https://www.wikidata.org/wiki/Q810214","display_name":"Base (topology)","level":2,"score":0.4328601658344269},{"id":"https://openalex.org/C28719098","wikidata":"https://www.wikidata.org/wiki/Q44946","display_name":"Point (geometry)","level":2,"score":0.4288111925125122},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.15040814876556396},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.09350687265396118},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"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/C157915830","wikidata":"https://www.wikidata.org/wiki/Q2928001","display_name":"Bubble","level":2,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C129307140","wikidata":"https://www.wikidata.org/wiki/Q6795880","display_name":"Maximum bubble pressure method","level":3,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2025113.2025205","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2025113.2025205","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.639.231","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.639.231","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.bodden.de/pubs/itb11jpi.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":7,"referenced_works":["https://openalex.org/W1532926224","https://openalex.org/W1602914846","https://openalex.org/W2003758811","https://openalex.org/W2092658016","https://openalex.org/W2116244845","https://openalex.org/W2126225516","https://openalex.org/W4298691655"],"related_works":["https://openalex.org/W1553451134","https://openalex.org/W4240435256","https://openalex.org/W2038093010","https://openalex.org/W2146356030","https://openalex.org/W2277843704","https://openalex.org/W1585507594","https://openalex.org/W378982846","https://openalex.org/W2182403552","https://openalex.org/W2146740093","https://openalex.org/W1529395937"],"abstract_inverted_index":{"While":[0],"aspect-oriented":[1,88,101],"programming":[2,15,102],"supports":[3,198],"the":[4,38,48,58,76,98],"modular":[5,22],"definition":[6,71],"of":[7,75,87,100],"crosscutting":[8],"concerns,":[9],"most":[10],"approaches":[11],"to":[12,17,37,79,107,145,168,216],"aspect-":[13],"oriented":[14],"fail":[16],"improve,":[18],"or":[19,61],"even":[20],"preserve,":[21],"reasoning.":[23],"The":[24],"main":[25],"problem":[26],"is":[27,90],"that":[28,130,149,209],"aspects":[29,112,121],"usually":[30],"carry,":[31],"through":[32,135],"their":[33],"pointcuts,":[34,163],"explicit":[35],"references":[36],"base":[39,49,77,109,123,169],"code.":[40,124],"These":[41],"dependencies":[42],"make":[43],"programs":[44,89],"fragile.":[45],"Changes":[46],"in":[47,68,94,192],"code":[50,78,110,126,170],"can":[51,127,143,179,189],"unwittingly":[52],"break":[53],"a":[54,66,69,136,152,175,193,204,211],"pointcut":[55,70],"definition,":[56],"rendering":[57],"aspect":[59,142,159,217],"ineffective":[60],"causing":[62],"spurious":[63],"matches.":[64],"Conversely,":[65,140],"change":[67],"may":[72],"cause":[73],"parts":[74],"be":[80,190],"advised":[81],"without":[82],"notice.":[83],"Therefore":[84],"separate":[85,108],"development":[86],"largely":[91],"compromised,":[92],"which":[93,117],"turns":[95],"seriously":[96],"hinders":[97],"adoption":[99],"by":[103],"practitioners.":[104],"We":[105,202],"propose":[106],"and":[111,122,164,185,213],"using":[113],"Join":[114,137,154,182,186],"Point":[115,138,155,183,187],"Interfaces,":[116,184],"are":[118],"contracts":[119],"between":[120],"Base":[125],"define":[128],"pointcuts":[129],"expose":[131],"selected":[132],"join":[133,147,177,199],"points":[134,148],"Interface.":[139,156],"an":[141],"offer":[144],"advise":[146],"pro-":[150],"vide":[151],"given":[153,176],"Crucially,":[157],"however,":[158],"themselves":[160],"cannot":[161,166],"contain":[162],"hence":[165],"refer":[167],"elements.":[171],"In":[172],"addition,":[173],"because":[174],"point":[178,200],"provide":[180],"several":[181],"Interfaces":[188],"organized":[191],"subtype":[194],"hierarchy,":[195],"our":[196],"approach":[197,215],"polymorphism.":[201],"describe":[203],"novel":[205],"advice":[206],"dispatch":[207],"mechanism":[208],"offers":[210],"flexible":[212],"type-safe":[214],"reuse.":[218]},"counts_by_year":[{"year":2022,"cited_by_count":1},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":7},{"year":2013,"cited_by_count":5},{"year":2012,"cited_by_count":5}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
