{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T07:19:20Z","timestamp":1740122360624,"version":"3.37.3"},"reference-count":51,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2024,8,29]],"date-time":"2024-08-29T00:00:00Z","timestamp":1724889600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2024,8,29]],"date-time":"2024-08-29T00:00:00Z","timestamp":1724889600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"funder":[{"DOI":"10.13039\/501100000038","name":"NSERC","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100000038","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100003151","name":"Fonds de recherche du Qu\u00e9bec \u2013 Nature et technologies","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100003151","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2024,11]]},"DOI":"10.1007\/s10664-024-10535-8","type":"journal-article","created":{"date-parts":[[2024,8,29]],"date-time":"2024-08-29T13:02:20Z","timestamp":1724936540000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Data-access performance anti-patterns in data-intensive systems"],"prefix":"10.1007","volume":"29","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-8861-9526","authenticated-orcid":false,"given":"Biruk Asmare","family":"Muse","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kawser Wazed","family":"Nafi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Foutse","family":"Khomh","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Giuliano","family":"Antoniol","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2024,8,29]]},"reference":[{"key":"10535_CR1","doi-asserted-by":"crossref","unstructured":"Ahmed, TM, Bezemer CP, Chen TH, Hassan AE, Shang W (2016) Studying the effectiveness of application performance management (apm) tools for detecting performance regressions for web applications: an experience report. In: 2016 IEEE\/ACM 13th Working Conference on Mining Software Repositories (MSR), pp. 1\u201312. IEEE","DOI":"10.1145\/2901739.2901774"},{"key":"10535_CR2","doi-asserted-by":"crossref","unstructured":"Benats P, Gobert M, Meurice L, Nagy C, Cleve A (2021) An empirical study of (multi-) database models in open-source projects. In: International Conference on Conceptual Modeling, pp. 87\u2013101. Springer","DOI":"10.1007\/978-3-030-89022-3_8"},{"issue":"4","key":"10535_CR3","doi-asserted-by":"publisher","first-page":"1056","DOI":"10.1145\/1114244.1114250","volume":"30","author":"IT Bowman","year":"2005","unstructured":"Bowman IT, Salem K (2005) Optimization of query streams using semantic prefetching. ACM Transactions on Database Systems (TODS) 30(4):1056\u20131101","journal-title":"ACM Transactions on Database Systems (TODS)"},{"key":"10535_CR4","unstructured":"Chaudhuri S, Narasayya V, Syamala M (2007) Bridging the application and dbms profiling divide for database application developers. In: Proceedings of the 33rd international conference on Very large data bases, pp. 1252\u20131262"},{"key":"10535_CR5","doi-asserted-by":"crossref","unstructured":"Chen B, Jiang ZM, Matos P, Lacaria M (2019) An industrial experience report on performance-aware refactoring on a database-centric web application. In: 2019 34th IEEE\/ACM International Conference on Automated Software Engineering (ASE), pp. 653\u2013664. IEEE","DOI":"10.1109\/ASE.2019.00066"},{"key":"10535_CR6","doi-asserted-by":"crossref","unstructured":"Chen TH, Shang W, Hassan AE, Nasser M, Flora P (2016) Cacheoptimizer: Helping developers configure caching frameworks for hibernate-based database-centric web applications. In: Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 666\u2013677","DOI":"10.1145\/2950290.2950303"},{"key":"10535_CR7","doi-asserted-by":"crossref","unstructured":"Chen TH, Shang W, Jiang ZM, Hassan AE, Nasser M, Flora P (2014) Detecting performance anti-patterns for applications developed using object-relational mapping. In: Proceedings of the 36th International Conference on Software Engineering, pp. 1001\u20131012","DOI":"10.1145\/2568225.2568259"},{"issue":"12","key":"10535_CR8","doi-asserted-by":"publisher","first-page":"1148","DOI":"10.1109\/TSE.2016.2553039","volume":"42","author":"TH Chen","year":"2016","unstructured":"Chen TH, Shang W, Jiang ZM, Hassan AE, Nasser M, Flora P (2016) Finding and evaluating the performance impact of redundant data access for applications that are developed using objectrelational mapping frameworks. IEEE Trans Software Eng 42(12):1148\u20131161","journal-title":"IEEE Trans Software Eng"},{"key":"10535_CR9","doi-asserted-by":"crossref","unstructured":"Cheung A, Arden O, Madden S, Myers AC (2012) Automatic partitioning of database applications. arXiv:1208.0271","DOI":"10.14778\/2350229.2350262"},{"issue":"8","key":"10535_CR10","doi-asserted-by":"publisher","first-page":"110","DOI":"10.1109\/MC.2010.227","volume":"43","author":"A Cleve","year":"2010","unstructured":"Cleve A, Mens T, Hainaut J (2010) Data-intensive system evolution. Computer 43(8):110\u2013112. https:\/\/doi.org\/10.1109\/MC.2010.227","journal-title":"Computer"},{"key":"10535_CR11","doi-asserted-by":"crossref","unstructured":"de\u00a0Almeida\u00a0Filho FG, Martins ADF, Vinuto TdS, Monteiro JM, de\u00a0Sousa \u00cdP, de\u00a0Castro\u00a0Machado J, Rocha LS (2019) Prevalence of bad smells in pl\/sql projects. In: Proceedings of the 27th International Conference on Program Comprehension, pp. 116\u2013121. IEEE Press","DOI":"10.1109\/ICPC.2019.00025"},{"key":"10535_CR12","doi-asserted-by":"crossref","unstructured":"Dintyala P, Narechania A, Arulraj J (2020) Sqlcheck: automated detection and diagnosis of sql anti-patterns. In: Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, pp. 2331\u20132345","DOI":"10.1145\/3318464.3389754"},{"key":"10535_CR13","doi-asserted-by":"publisher","unstructured":"Foidl H, Felderer M, Biffl S (2019) Technical debt in data-intensive software systems. In: 2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pp. 338\u2013341. https:\/\/doi.org\/10.1109\/SEAA.2019.00058","DOI":"10.1109\/SEAA.2019.00058"},{"key":"10535_CR14","doi-asserted-by":"crossref","unstructured":"Fontana FA, Ferme V, Marino A, Walter B, Martenka P (2013) Investigating the impact of code smells on system\u2019s quality: An empirical study on systems of different application domains. In: 2013 IEEE International Conference on Software Maintenance, pp. 260\u2013269","DOI":"10.1109\/ICSM.2013.37"},{"key":"10535_CR15","doi-asserted-by":"publisher","unstructured":"Hummel O, Eichelberger H, Giloj A, Werle D, Schmid K (2018) A collection of software engineering challenges for big data system development. In: 2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pp. 362\u2013369. https:\/\/doi.org\/10.1109\/SEAA.2018.00066","DOI":"10.1109\/SEAA.2018.00066"},{"key":"10535_CR16","doi-asserted-by":"crossref","unstructured":"Iammarino M, Zampetti F, Aversano L, Di\u00a0Penta M (2019) Self-admitted technical debt removal and refactoring actions: Co-occurrence or more? In: 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 186\u2013190. IEEE","DOI":"10.1109\/ICSME.2019.00029"},{"issue":"6","key":"10535_CR17","doi-asserted-by":"publisher","first-page":"77","DOI":"10.1145\/2345156.2254075","volume":"47","author":"G Jin","year":"2012","unstructured":"Jin G, Song L, Shi X, Scherpelz J, Lu S (2012) Understanding and detecting real-world performance bugs. ACM SIGPLAN Notices 47(6):77\u201388","journal-title":"ACM SIGPLAN Notices"},{"key":"10535_CR18","doi-asserted-by":"crossref","unstructured":"Johannes D, Khomh F, Antoniol G (2019) A large-scale empirical study of code smells in javascript projects. Software Quality Journal pp. 1\u201344","DOI":"10.1007\/s11219-019-09442-9"},{"key":"10535_CR19","unstructured":"Karwin B (2010) SQL Antipatterns: Avoiding the pitfalls of database programming. Pragmatic Bookshelf"},{"key":"10535_CR20","doi-asserted-by":"crossref","unstructured":"Khomh F, Di\u00a0Penta M, Gueheneuc YG (2009) An exploratory study of the impact of code smells on software change-proneness. In: 2009 16th Working Conference on Reverse Engineering, pp. 75\u201384. IEEE","DOI":"10.1109\/WCRE.2009.28"},{"key":"10535_CR21","first-page":"199","volume-title":"2017 18th IEEE\/ACIS International Conference on Software Engineering","author":"P Khumnin","year":"2017","unstructured":"Khumnin P, Senivongse T (2017) Sql antipatterns detection and database refactoring process. 2017 18th IEEE\/ACIS International Conference on Software Engineering. Artificial Intelligence, Networking and Parallel\/Distributed Computing (SNPD), pp 199\u2013205"},{"key":"10535_CR22","unstructured":"Kleppmann M (2017) Designing data-intensive applications: The big ideas behind reliable, scalable, and maintainable systems. \u201cO\u2019Reilly Media, Inc.\u201d"},{"key":"10535_CR23","doi-asserted-by":"crossref","unstructured":"Liu Y, Xu C, Cheung SC (2014) Characterizing and detecting performance bugs for smartphone applications. In: Proceedings of the 36th international conference on software engineering, pp. 1013\u20131024","DOI":"10.1145\/2568225.2568229"},{"key":"10535_CR24","doi-asserted-by":"crossref","unstructured":"Lyu Y, Alotaibi A, Halfond WG (2019) Quantifying the performance impact of sql antipatterns on mobile applications. In: 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 53\u201364. IEEE","DOI":"10.1109\/ICSME.2019.00015"},{"key":"10535_CR25","doi-asserted-by":"crossref","unstructured":"Lyu Y, Volokh S, Halfond WG, Tripp O (2021) Sand: a static analysis approach for detecting sql antipatterns. In: Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis, pp. 270\u2013282","DOI":"10.1145\/3460319.3464818"},{"key":"10535_CR26","doi-asserted-by":"crossref","unstructured":"Muse BA, Khomh F, Antoniol G (2022) Do developers refactor data access code? an empirical study. arXiv:2202.03270","DOI":"10.1109\/SANER53432.2022.00014"},{"key":"10535_CR27","doi-asserted-by":"publisher","unstructured":"Muse BA, Nafi KW, Khomh F, Antoniol G (2022) Replication package for Data_acess_performance_ant ipatterns_in_data_intensive_systems . https:\/\/doi.org\/10.5281\/zenodo.7450089","DOI":"10.5281\/zenodo.7450089"},{"key":"10535_CR28","doi-asserted-by":"crossref","unstructured":"Muse BA, Nagy C, Cleve A, Khomh F, Antoniol G (2022) Fixme: Synchronize with database an empirical study of data access self-admitted technical debt. arXiv:2201.02180","DOI":"10.1007\/s10664-022-10119-4"},{"key":"10535_CR29","doi-asserted-by":"crossref","unstructured":"Muse BA, Rahman MM, Nagy C, Cleve A, Khomh F, Antoniol G (2020) On the prevalence, impact, and evolution of sql code smells in data-intensive systems. In: Proceedings of the 17th International Conference on Mining Software Repositories, pp. 327\u2013338","DOI":"10.1145\/3379597.3387467"},{"key":"10535_CR30","doi-asserted-by":"crossref","unstructured":"Naeem M, Jamal T, Diaz-Martinez J, Butt SA, Montesano N, Tariq MI, De-la Hoz-Franco E, De-La-Hoz-Valdiris E (2022) Trends and future perspective challenges in big data. In: Advances in Intelligent Data Analysis and Applications, pp. 309\u2013325. Springer","DOI":"10.1007\/978-981-16-5036-9_30"},{"key":"10535_CR31","doi-asserted-by":"crossref","unstructured":"Nagy C, Cleve A (2017) A static code smell detector for SQL queries embedded in Java code. In: 2017 IEEE 17th International Working Conference on Source Code Analysis and Manipulation (SCAM), pp. 147\u2013152. IEEE","DOI":"10.1109\/SCAM.2017.19"},{"key":"10535_CR32","doi-asserted-by":"crossref","unstructured":"Nagy C, Cleve A (2018) SQLInspect: A static analyzer to inspect database usage in Java applications. In: Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings, pp. 93\u201396. ACM","DOI":"10.1145\/3183440.3183496"},{"key":"10535_CR33","doi-asserted-by":"crossref","unstructured":"Nistor A, Jiang T, Tan L (2013) Discovering, reporting, and fixing performance bugs. In: 2013 10th working conference on mining software repositories (MSR), pp. 237\u2013246. IEEE","DOI":"10.1109\/MSR.2013.6624035"},{"key":"10535_CR34","doi-asserted-by":"crossref","unstructured":"Nistor A, Song L, Marinov D, Lu S (2013) Toddler: Detecting performance problems via similar memory-access patterns. In: 2013 35th International Conference on Software Engineering (ICSE), pp. 562\u2013571. IEEE","DOI":"10.1109\/ICSE.2013.6606602"},{"issue":"3","key":"10535_CR35","doi-asserted-by":"publisher","first-page":"1188","DOI":"10.1007\/s10664-017-9535-z","volume":"23","author":"F Palomba","year":"2018","unstructured":"Palomba F, Bavota G, Di Penta M, Fasano F, Oliveto R, De Lucia A (2018) On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation. Empir Softw Eng 23(3):1188\u20131221","journal-title":"Empir Softw Eng"},{"key":"10535_CR36","doi-asserted-by":"publisher","first-page":"259","DOI":"10.1007\/978-981-15-4851-2_28","volume-title":"Next Generation Information Processing System","author":"B Park","year":"2021","unstructured":"Park B, Rao DL, Gudivada VN (2021) Dangers of bias in data-intensive information systems. In: Deshpande P, Abraham A, Iyer B, Ma K (eds) Next Generation Information Processing System. Springer Singapore, Singapore, pp 259\u2013271"},{"issue":"2","key":"10535_CR37","doi-asserted-by":"publisher","first-page":"531","DOI":"10.1109\/TKDE.2014.2334302","volume":"27","author":"K Ramachandra","year":"2014","unstructured":"Ramachandra K, Chavan M, Guravannavar R, Sudarshan S (2014) Program transformations for asynchronous and batched query submission. IEEE Trans Knowl Data Eng 27(2):531\u2013544","journal-title":"IEEE Trans Knowl Data Eng"},{"key":"10535_CR38","doi-asserted-by":"crossref","unstructured":"Scully Z, Chlipala A (2017) A program optimization for automatic database result caching. In: Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, pp. 271\u2013284","DOI":"10.1145\/3009837.3009891"},{"key":"10535_CR39","doi-asserted-by":"crossref","unstructured":"Selakovic M, Pradel M (2016) Performance issues and optimizations in javascript: an empirical study. In: Proceedings of the 38th International Conference on Software Engineering, pp. 61\u201372","DOI":"10.1145\/2884781.2884829"},{"key":"10535_CR40","doi-asserted-by":"crossref","unstructured":"Shao S, Qiu Z, Yu X, Yang W, Jin G, Xie T, Wu X (2020) Database-access performance antipatterns in database-backed web applications. In: 2020 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 58\u201369. IEEE","DOI":"10.1109\/ICSME46990.2020.00016"},{"key":"10535_CR41","doi-asserted-by":"crossref","unstructured":"Sharma T, Fragkoulis M, Rizou S, Bruntink M, Spinellis D (2018) Smelly relations: Measuring and understanding database schema quality. In: 2018 IEEE\/ACM 40th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP), pp. 55\u201364","DOI":"10.1145\/3183519.3183529"},{"key":"10535_CR42","doi-asserted-by":"crossref","unstructured":"Sharma T, Fragkoulis M, Rizou S, Bruntink M, Spinellis D (2018) Smelly relations: measuring and understanding database schema quality. In: Proceedings of the 40th International Conference on Software Engineering: Software Engineering in Practice, pp. 55\u201364","DOI":"10.1145\/3183519.3183529"},{"issue":"6","key":"10535_CR43","doi-asserted-by":"publisher","first-page":"1498","DOI":"10.1016\/j.jss.2012.12.052","volume":"86","author":"E Tom","year":"2013","unstructured":"Tom E, Aurum A, Vidgen R (2013) An exploration of technical debt. J Syst Softw 86(6):1498\u20131516","journal-title":"J Syst Softw"},{"key":"10535_CR44","doi-asserted-by":"publisher","first-page":"93","DOI":"10.1016\/j.is.2017.04.002","volume":"69","author":"\u00c1 Vathy-Fogarassy","year":"2017","unstructured":"Vathy-Fogarassy \u00c1, Hugy\u00e1k T (2017) Uniform data access platform for sql and nosql database systems. Inf Syst 69:93\u2013105","journal-title":"Inf Syst"},{"key":"10535_CR45","doi-asserted-by":"crossref","unstructured":"Wohlin C, Runeson P, H\u00f6st M, Ohlsson MC, Regnell B, Wessl\u00e9n A (2012) Experimentation in software engineering. Springer Science & Business Media","DOI":"10.1007\/978-3-642-29044-2"},{"key":"10535_CR46","doi-asserted-by":"crossref","unstructured":"Xiao X, Han S, Zhang D, Xie T (2013) Context-sensitive delta inference for identifying workload-dependent performance bottlenecks. In: Proceedings of the 2013 International Symposium on Software Testing and Analysis, pp. 90\u2013100","DOI":"10.1145\/2483760.2483784"},{"key":"10535_CR47","doi-asserted-by":"crossref","unstructured":"Yamashita A, Moonen L (2013) Exploring the impact of inter-smell relations on software maintainability: An empirical study. In: Proceedings of the 2013 International Conference on Software Engineering, ICSE \u201913, p. 682\u2013691. IEEE Press","DOI":"10.1109\/ICSE.2013.6606614"},{"key":"10535_CR48","doi-asserted-by":"crossref","unstructured":"Yan C, Cheung A, Yang J, Lu S (2017) Understanding database performance inefficiencies in real-world web applications. In: Proceedings of the 2017 ACM on Conference on Information and Knowledge Management, pp. 1299\u20131308","DOI":"10.1145\/3132847.3132954"},{"key":"10535_CR49","unstructured":"Yang J, Yan C, Subramaniam P, Lu S, Cheung A (2018) How not to structure your database-backed web applications: a study of performance bugs in the wild. In: 2018 IEEE\/ACM 40th International Conference on Software Engineering (ICSE), pp. 800\u2013810. IEEE"},{"key":"10535_CR50","doi-asserted-by":"crossref","unstructured":"Yang J, Yan C, Subramaniam P, Lu S, Cheung A (2018) Powerstation: Automatically detecting and fixing inefficiencies of database-backed web applications in ide. In: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp. 884\u2013887","DOI":"10.1145\/3236024.3264589"},{"key":"10535_CR51","doi-asserted-by":"crossref","unstructured":"Yang J, Yan C, Wan C, Lu S, Cheung A (2019) View-centric performance optimization for database-backed web applications. In: 2019 IEEE\/ACM 41st International Conference on Software Engineering (ICSE), pp. 994\u20131004. IEEE","DOI":"10.1109\/ICSE.2019.00104"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-024-10535-8.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-024-10535-8\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-024-10535-8.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,11,6]],"date-time":"2024-11-06T04:51:01Z","timestamp":1730868661000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-024-10535-8"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,8,29]]},"references-count":51,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2024,11]]}},"alternative-id":["10535"],"URL":"https:\/\/doi.org\/10.1007\/s10664-024-10535-8","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"type":"print","value":"1382-3256"},{"type":"electronic","value":"1573-7616"}],"subject":[],"published":{"date-parts":[[2024,8,29]]},"assertion":[{"value":"22 July 2024","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"29 August 2024","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors have no competing interests to declare that are relevant to the content of this article.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflicts of interest"}}],"article-number":"144"}}