{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,11]],"date-time":"2024-09-11T15:15:20Z","timestamp":1726067720324},"publisher-location":"Cham","reference-count":29,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030402228"},{"type":"electronic","value":"9783030402235"}],"license":[{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2020]]},"DOI":"10.1007\/978-3-030-40223-5_14","type":"book-chapter","created":{"date-parts":[[2020,2,8]],"date-time":"2020-02-08T05:02:50Z","timestamp":1581138170000},"page":"286-302","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Towards the Efficient Use of Dynamic Call Graph Generators of Node.js Applications"],"prefix":"10.1007","author":[{"given":"Zolt\u00e1n","family":"Herczeg","sequence":"first","affiliation":[]},{"given":"G\u00e1bor","family":"L\u00f3ki","sequence":"additional","affiliation":[]},{"given":"\u00c1kos","family":"Kiss","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2020,2,9]]},"reference":[{"key":"14_CR1","unstructured":"Apple: SunSpider benchmark suite. \nhttps:\/\/webkit.org\/perf\/sunspider\/sunspider.html"},{"issue":"8","key":"14_CR2","doi-asserted-by":"publisher","first-page":"243","DOI":"10.1016\/j.jlap.2013.05.001","volume":"82","author":"N Bielova","year":"2013","unstructured":"Bielova, N.: Survey on JavaScript security policies and their enforcement mechanisms in a web browser. J. Log. Algebraic Program. 82(8), 243\u2013262 (2013). \nhttps:\/\/doi.org\/10.1016\/j.jlap.2013.05.001","journal-title":"J. Log. Algebraic Program."},{"key":"14_CR3","unstructured":"Ecma International: ECMAScript Language specification 5.1 edition (2011). \nhttps:\/\/www.ecma-international.org\/ecma-262\/5.1"},{"key":"14_CR4","unstructured":"Ecma International: ECMAScript 2017 language specification (2017). \nhttps:\/\/www.ecma-international.org\/ecma-262\/8.0"},{"key":"14_CR5","doi-asserted-by":"publisher","first-page":"283","DOI":"10.3844\/ajassp.2012.283.288","volume":"9","author":"A Elhadi","year":"2012","unstructured":"Elhadi, A., Maarof, M., Hamza Osman, A.: Malware detection based on hybrid signature behaviour application programming interface call graph. Am. J. Appl. Sci. 9, 283\u2013288 (2012)","journal-title":"Am. J. Appl. Sci."},{"key":"14_CR6","doi-asserted-by":"crossref","unstructured":"Feldthaus, A., Sch\u00e4fer, M., Sridharan, M., Dolby, J., Tip, F.: Efficient construction of approximate call graphs for JavaScript IDE services. In: Proceedings of the 2013 International Conference on Software Engineering (ICSE 2013), pp. 752\u2013761. IEEE Press (2013)","DOI":"10.1109\/ICSE.2013.6606621"},{"key":"14_CR7","unstructured":"Fink, S., Dolby, J.: WALA-The TJ Watson Libraries for Analysis (2012). \nhttp:\/\/wala.sourceforge.net"},{"key":"14_CR8","doi-asserted-by":"publisher","unstructured":"Gascon, H., Yamaguchi, F., Arp, D., Rieck, K.: Structural detection of Android malware using embedded call graphs. In: Proceedings of the 2013 ACM Workshop on Artificial Intelligence and Security (AISec 2013), pp. 45\u201354. ACM (2013). \nhttps:\/\/doi.org\/10.1145\/2517312.2517315","DOI":"10.1145\/2517312.2517315"},{"key":"14_CR9","unstructured":"Google: V8 JavaScript engine. \nhttps:\/\/developers.google.com\/v8\/"},{"key":"14_CR10","first-page":"78","volume":"10","author":"S Guarnieri","year":"2009","unstructured":"Guarnieri, S., Livshits, V.B.: Gatekeeper: mostly static enforcement of security and reliability policies for JavaScript code. USENIX Secur. Symp. 10, 78\u201385 (2009)","journal-title":"USENIX Secur. Symp."},{"key":"14_CR11","doi-asserted-by":"crossref","unstructured":"Gyimesi, P., et al.: BugsJS: a benchmark of JavaScript bugs. In: 12th IEEE International Conference on Software Testing, Verification and Validation (2019). \nhttps:\/\/github.com\/bugsjs","DOI":"10.1109\/ICST.2019.00019"},{"key":"14_CR12","doi-asserted-by":"publisher","unstructured":"Herczeg., Z., L\u00f3ki., G.: Evaluation and comparison of dynamic call graph generators for JavaScript. In: Proceedings of the 14th International Conference on Evaluation of Novel Approaches to Software Engineering - (ENASE 2019), vol. 1, pp. 472\u2013479. INSTICC, SciTePress (2019). \nhttps:\/\/doi.org\/10.5220\/0007752904720479","DOI":"10.5220\/0007752904720479"},{"key":"14_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"238","DOI":"10.1007\/978-3-642-03237-0_17","volume-title":"Static Analysis","author":"SH Jensen","year":"2009","unstructured":"Jensen, S.H., M\u00f8ller, A., Thiemann, P.: Type analysis for JavaScript. In: Palsberg, J., Su, Z. (eds.) SAS 2009. LNCS, vol. 5673, pp. 238\u2013255. Springer, Heidelberg (2009). \nhttps:\/\/doi.org\/10.1007\/978-3-642-03237-0_17"},{"key":"14_CR14","unstructured":"Joyent: Node.js JavaScript runtime. \nhttps:\/\/nodejs.org\/"},{"key":"14_CR15","unstructured":"L\u00f3ki, G., Herczeg, Z.: Dynamic call graph generators for JavaScript. \nhttps:\/\/github.com\/szeged\/js-call-graphs\/tree\/call-graphs\n\n (2019)"},{"key":"14_CR16","doi-asserted-by":"crossref","unstructured":"Madsen, M., Livshits, B., Fanning, M.: Practical static analysis of JavaScript applications in the presence of frameworks and libraries. In: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, pp. 499\u2013509. ACM (2013)","DOI":"10.1145\/2491411.2491417"},{"issue":"10","key":"14_CR17","doi-asserted-by":"publisher","first-page":"505","DOI":"10.1145\/2858965.2814272","volume":"50","author":"M Madsen","year":"2015","unstructured":"Madsen, M., Tip, F., Lhot\u00e1k, O.: Static analysis of event-driven node.js JavaScript applications. SIGPLAN Not. 50(10), 505\u2013519 (2015). \nhttps:\/\/doi.org\/10.1145\/2858965.2814272","journal-title":"SIGPLAN Not."},{"key":"14_CR18","unstructured":"Maier, F.: Iroh a dynamic code analysis for JavaScript (2017). \nhttps:\/\/maierfelix.github.io\/Iroh\/"},{"key":"14_CR19","unstructured":"npm Inc.: npm public registry. \nhttps:\/\/www.npmjs.com\/"},{"key":"14_CR20","doi-asserted-by":"publisher","unstructured":"Ren, X., Ryder, B.G.: Heuristic ranking of java program edits for fault localization. In: Proceedings of the 2007 International Symposium on Software Testing and Analysis (ISSTA 2007), pp. 239\u2013249. ACM, New York (2007). \nhttps:\/\/doi.org\/10.1145\/1273463.1273495","DOI":"10.1145\/1273463.1273495"},{"key":"14_CR21","doi-asserted-by":"publisher","first-page":"216","DOI":"10.1109\/TSE.1979.234183","volume":"5","author":"B Ryder","year":"1979","unstructured":"Ryder, B.: Constructing the call graph of a program. IEEE Trans. Softw. Eng. 5, 216\u2013226 (1979). \nhttps:\/\/doi.org\/10.1109\/TSE.1979.234183","journal-title":"IEEE Trans. Softw. Eng."},{"key":"14_CR22","unstructured":"Samsung, University of Szeged: JerryScript: A JavaScript engine for internet of things. \nhttps:\/\/jerryscript.net\/"},{"key":"14_CR23","unstructured":"Sen, K., Sridharan, M., Adamsen, C.Q.: Jalangi2 dynamic analyses framework for JavaScript (2015). \nhttps:\/\/github.com\/Samsung\/jalangi2"},{"key":"14_CR24","unstructured":"Stack Overflow: Stack Overflow annual developer survey (2019). \nhttps:\/\/insights.stackoverflow.com\/survey\/2019"},{"key":"14_CR25","doi-asserted-by":"publisher","unstructured":"Sun, H., Bonetta, D., Humer, C., Binder, W.: Efficient dynamic analysis for node.js. In: Proceedings of the 27th International Conference on Compiler Construction (CC 2018), pp. 196\u2013206. ACM (2018). \nhttps:\/\/doi.org\/10.1145\/3178372.3179527","DOI":"10.1145\/3178372.3179527"},{"key":"14_CR26","doi-asserted-by":"publisher","unstructured":"Toma, T.R., Islam, M.S.: An efficient mechanism of generating call graph for JavaScript using dynamic analysis in web application. In: 2014 International Conference on Informatics, Electronics Vision, pp. 1\u20136, May 2014. \nhttps:\/\/doi.org\/10.1109\/ICIEV.2014.6850807","DOI":"10.1109\/ICIEV.2014.6850807"},{"key":"14_CR27","doi-asserted-by":"publisher","unstructured":"Turhan, B., Kocak, G., Bener, A.: Software defect prediction using call graph based ranking (cgbr) framework. In: Proceedings of the 2008 34th Euromicro Conference Software Engineering and Advanced Applications (SEAA 2008), pp. 191\u2013198. IEEE Computer Society, Washington, DC, USA (2008). \nhttps:\/\/doi.org\/10.1109\/SEAA.2008.52","DOI":"10.1109\/SEAA.2008.52"},{"key":"14_CR28","doi-asserted-by":"publisher","first-page":"662","DOI":"10.1145\/3140587.3062381","volume":"52","author":"T Wuerthinger","year":"2017","unstructured":"Wuerthinger, T., et al.: Practical partial evaluation for high-performance dynamic language runtimes. ACM SIGPLAN Not. 52, 662\u2013676 (2017). \nhttps:\/\/doi.org\/10.1145\/3140587.3062381","journal-title":"ACM SIGPLAN Not."},{"issue":"1","key":"14_CR29","doi-asserted-by":"publisher","first-page":"237","DOI":"10.1145\/1190215.1190252","volume":"42","author":"D Yu","year":"2007","unstructured":"Yu, D., Chander, A., Islam, N., Serikov, I.: JavaScript instrumentation for browser security. SIGPLAN Not. 42(1), 237\u2013249 (2007). \nhttps:\/\/doi.org\/10.1145\/1190215.1190252","journal-title":"SIGPLAN Not."}],"container-title":["Communications in Computer and Information Science","Evaluation of Novel Approaches to Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-40223-5_14","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,2,8]],"date-time":"2020-02-08T05:06:43Z","timestamp":1581138403000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-40223-5_14"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"ISBN":["9783030402228","9783030402235"],"references-count":29,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-40223-5_14","relation":{},"ISSN":["1865-0929","1865-0937"],"issn-type":[{"type":"print","value":"1865-0929"},{"type":"electronic","value":"1865-0937"}],"subject":[],"published":{"date-parts":[[2020]]},"assertion":[{"value":"9 February 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ENASE","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Evaluation of Novel Approaches to Software Engineering","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Heraklion, Crete","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Greece","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"4 May 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"5 May 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"14","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"enase2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.enase.org\/?y=2019","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Double-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"PRIMORIS","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"102","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"19","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"19% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}