{"id":"https://openalex.org/W2008250898","doi":"https://doi.org/10.1145/253228.253432","title":"Hooking into object-oriented application frameworks","display_name":"Hooking into object-oriented application frameworks","publication_year":1997,"publication_date":"1997-01-01","ids":{"openalex":"https://openalex.org/W2008250898","doi":"https://doi.org/10.1145/253228.253432","mag":"2008250898"},"language":"en","primary_location":{"id":"doi:10.1145/253228.253432","doi":"https://doi.org/10.1145/253228.253432","is_oa":true,"landing_page_url":"https://doi.org/10.1145/253228.253432","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/253228.253432","source":{"id":"https://openalex.org/S4210203175","display_name":"ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","issn_l":"0270-5257","issn":["0270-5257","1558-1225"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","norway-2"],"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":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 19th international conference on Software engineering - ICSE '97","raw_type":"proceedings-article"},"volume":null,"type":"conference-paper","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/253228.253432","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Gary Froehlich","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I154425047","display_name":"University of Alberta","ror":"https://ror.org/0160cpw27","country_code":"CA","type":"education","lineage":["https://openalex.org/I154425047"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Gary Froehlich","raw_affiliation_strings":["Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","Department of Computing Science, University of Alberta"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","institution_ids":["https://openalex.org/I154425047"]},{"raw_affiliation_string":"Department of Computing Science, University of Alberta","institution_ids":["https://openalex.org/I154425047"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5066858573","display_name":"H. James Hoover","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I154425047","display_name":"University of Alberta","ror":"https://ror.org/0160cpw27","country_code":"CA","type":"education","lineage":["https://openalex.org/I154425047"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"H. James Hoover","raw_affiliation_strings":["Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","institution_ids":["https://openalex.org/I154425047"]},{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#","institution_ids":["https://openalex.org/I154425047"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100343959","display_name":"Ling Liu","orcid":"https://orcid.org/0009-0006-2433-8219","observed_orcids":["https://orcid.org/0009-0006-2433-8219"]},"institutions":[{"id":"https://openalex.org/I154425047","display_name":"University of Alberta","ror":"https://ror.org/0160cpw27","country_code":"CA","type":"education","lineage":["https://openalex.org/I154425047"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ling Liu","raw_affiliation_strings":["Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","institution_ids":["https://openalex.org/I154425047"]},{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#","institution_ids":["https://openalex.org/I154425047"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5109911325","display_name":"Paul G. Sorenson","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I154425047","display_name":"University of Alberta","ror":"https://ror.org/0160cpw27","country_code":"CA","type":"education","lineage":["https://openalex.org/I154425047"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Paul Sorenson","raw_affiliation_strings":["Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB., T6G 2H1","institution_ids":["https://openalex.org/I154425047"]},{"raw_affiliation_string":"Department of Computing Science, University of Alberta, Edmonton, AB T6G 2H1#TAB#","institution_ids":["https://openalex.org/I154425047"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I154425047"],"apc_list":null,"apc_paid":null,"fwci":3.9539,"has_fulltext":true,"cited_by_count":118,"citation_normalized_percentile":{"value":0.94870087,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":87,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"491","last_page":"501"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.98580002784729,"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"}},"topics":[{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.98580002784729,"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"}},{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.006500000134110451,"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/T10260","display_name":"Software Engineering Research","score":0.005799999926239252,"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/object-oriented-framework","display_name":"object-oriented framework","score":0.9399999976158142},{"id":"https://openalex.org/keywords/hooks","display_name":"hooks","score":0.8799999952316284},{"id":"https://openalex.org/keywords/framework-documentation","display_name":"framework documentation","score":0.8270000219345093},{"id":"https://openalex.org/keywords/framework-reuse","display_name":"framework reuse","score":0.5680000185966492},{"id":"https://openalex.org/keywords/design-patterns","display_name":"design patterns","score":0.3610000014305115}],"concepts":[{"id":"https://openalex.org/C2778805511","wikidata":"https://www.wikidata.org/wiki/Q1713","display_name":"Citation","level":2,"score":0.705337643623352},{"id":"https://openalex.org/C161191863","wikidata":"https://www.wikidata.org/wiki/Q199655","display_name":"Library science","level":1,"score":0.5262141227722168},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.46914592385292053},{"id":"https://openalex.org/C2778631480","wikidata":"https://www.wikidata.org/wiki/Q17143022","display_name":"Research Object","level":2,"score":0.4258146286010742},{"id":"https://openalex.org/C144024400","wikidata":"https://www.wikidata.org/wiki/Q21201","display_name":"Sociology","level":0,"score":0.22290176153182983},{"id":"https://openalex.org/C148383697","wikidata":"https://www.wikidata.org/wiki/Q1781695","display_name":"Regional science","level":1,"score":0.07053780555725098}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/253228.253432","doi":"https://doi.org/10.1145/253228.253432","is_oa":true,"landing_page_url":"https://doi.org/10.1145/253228.253432","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/253228.253432","source":{"id":"https://openalex.org/S4210203175","display_name":"ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","issn_l":"0270-5257","issn":["0270-5257","1558-1225"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","norway-2"],"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":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 19th international conference on Software engineering - ICSE '97","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.47.6072","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.47.6072","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://web.cs.ualberta.ca/~garry/research/icse97.ps","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.71.554","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.71.554","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.cs.ualberta.ca/~softeng/papers/icse10.pdf","raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/253228.253432","doi":"https://doi.org/10.1145/253228.253432","is_oa":true,"landing_page_url":"https://doi.org/10.1145/253228.253432","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/253228.253432","source":{"id":"https://openalex.org/S4210203175","display_name":"ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","issn_l":"0270-5257","issn":["0270-5257","1558-1225"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","norway-2"],"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":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 19th international conference on Software engineering - ICSE '97","raw_type":"proceedings-article"},"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2008250898.pdf","grobid_xml":"https://content.openalex.org/works/W2008250898.grobid-xml"},"referenced_works_count":25,"referenced_works":["https://openalex.org/W41699526","https://openalex.org/W1481271685","https://openalex.org/W1578497444","https://openalex.org/W1616782664","https://openalex.org/W1649645444","https://openalex.org/W1754883368","https://openalex.org/W1936484861","https://openalex.org/W1996974848","https://openalex.org/W2013142212","https://openalex.org/W2041659000","https://openalex.org/W2081052864","https://openalex.org/W2086970510","https://openalex.org/W2094228499","https://openalex.org/W2097521823","https://openalex.org/W2099293367","https://openalex.org/W2108216688","https://openalex.org/W2166956188","https://openalex.org/W2180009790","https://openalex.org/W2986348978","https://openalex.org/W3189142755","https://openalex.org/W4230619173","https://openalex.org/W4235539463","https://openalex.org/W4237641370","https://openalex.org/W4245598819","https://openalex.org/W4252803935"],"related_works":["https://openalex.org/W7095793636","https://openalex.org/W31474579","https://openalex.org/W7097339593","https://openalex.org/W7095658125","https://openalex.org/W1977071681","https://openalex.org/W2065176286","https://openalex.org/W7098306369","https://openalex.org/W70659876","https://openalex.org/W194250478","https://openalex.org/W2902659615"],"abstract_inverted_index":{"An":[0],"object-oriented":[1],"application":[2,41],"framework":[3,33,51,56,66,91],"provides":[4,124],"a":[5,9,13,50,109,121,125,129,160],"generic":[6],"design":[7,46,75],"within":[8,134,181],"given":[10],"domain":[11],"and":[12,37,47,58,62,92,113,152,172],"reusable":[14],"implementation":[15,48],"of":[16,44,49,76,89,106,111,120,137,154,165,175],"that":[17,25],"design.Frameworks":[18],"have":[19],"great":[20],"potential":[21,26],"for":[22,72,140,178],"reuse,":[23],"but":[24,79],"can":[27,34,52,144],"only":[28],"be":[29,35,98,145],"achieved":[30],"if":[31],"the":[32,45,55,65,74,77,87,90,104,117,135,138,163,170,173,179,182],"understood":[36],"used":[38,167],"effectively":[39],"by":[40,147],"developers.The":[42],"complexity":[43],"make":[53],"understanding":[54],"difficult,":[57],"so":[59],"good":[60],"documentation":[61],"guidance":[63,115],"to":[64,97,128,168],"user":[67],"is":[68,95,157],"needed.Several":[69],"methods":[70],"exist":[71],"documenting":[73,86,112],"framework,":[78],"less":[80],"work":[81],"has":[82],"been":[83],"done":[84],"on":[85,116,162],"purpose":[88],"how":[93],"it":[94],"intended":[96,118],"used.In":[99],"this":[100],"paper,":[101],"we":[102],"introduce":[103],"concept":[105],"hooks":[107,156],"as":[108],"means":[110,153],"providing":[114],"use":[119],"framework.Each":[122],"hook":[123],"concise":[126],"solution":[127,180],"focused":[130],"requirement":[131,171],"or":[132],"problem":[133],"context":[136],"framework.Solutions":[139],"more":[141],"complex":[142],"requirements":[143],"provided":[146,177],"combining":[148],"several":[149],"hooks.A":[150],"discussion":[151],"describing":[155],"given,":[158],"with":[159],"focus":[161],"method":[164],"adaption":[166],"fulfill":[169],"level":[174],"support":[176],"framework.":[183]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":4},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":3},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":4}],"updated_date":"2026-11-12T12:28:57.059296","created_date":"2016-06-24T00:00:00"}
