{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,3]],"date-time":"2026-04-03T22:18:38Z","timestamp":1775254718241,"version":"3.50.1"},"publisher-location":"Cham","reference-count":31,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030793814","type":"print"},{"value":"9783030793821","type":"electronic"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-79382-1_14","type":"book-chapter","created":{"date-parts":[[2021,6,23]],"date-time":"2021-06-23T09:06:33Z","timestamp":1624439193000},"page":"229-245","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Challenges and Perils of Testing Database Manipulation Code"],"prefix":"10.1007","author":[{"given":"Maxime","family":"Gobert","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Csaba","family":"Nagy","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Henrique","family":"Rocha","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Serge","family":"Demeyer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Anthony","family":"Cleve","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,6,24]]},"reference":[{"key":"14_CR1","unstructured":"Repl. pkg. https:\/\/github.com\/csnagy\/caise2021-db-manipulation-testing"},{"key":"14_CR2","doi-asserted-by":"crossref","unstructured":"Alsharif, A., et al.: What factors make SQL test cases understandable for testers? a human study of automated test data generation techniques. In: ICSME (2019)","DOI":"10.1109\/ICSME.2019.00076"},{"key":"14_CR3","doi-asserted-by":"crossref","unstructured":"Arcuri, A., Fraser, G., Just, R.: Private API access and functional mocking in automated unit test generation. In: Proceedings of ICST (2017)","DOI":"10.1109\/ICST.2017.19"},{"key":"14_CR4","doi-asserted-by":"crossref","unstructured":"Beller, M., Gousios, G., Panichella, A., Zaidman, A.: When, how, and why developers (do not) test in their ides. In: Proc. ESEC\/FSE (2015)","DOI":"10.1145\/2786805.2786843"},{"key":"14_CR5","doi-asserted-by":"crossref","unstructured":"Castelein, J., Aniche, M., Soltani, M., Panichella, A., van Deursen, A.: Search-based test data generation for SQL queries. In: Proceedings of ICSE (2018)","DOI":"10.1145\/3180155.3180202"},{"key":"14_CR6","doi-asserted-by":"crossref","unstructured":"Chays, D., Dan, S., Frankl, P.G., Vokolos, F.I., Weber, E.J.: A framework for testing database applications. In: Proceedings of ISSTA (2000)","DOI":"10.1145\/347324.348954"},{"key":"14_CR7","doi-asserted-by":"crossref","unstructured":"Chen, T.H., Shang, W., Hassan, A.E., Nasser, M., Flora, P.: Detecting problems in the database access code of large scale systems. In: Proceedings of ICSE (2016)","DOI":"10.1145\/2889160.2889228"},{"key":"14_CR8","doi-asserted-by":"crossref","unstructured":"Cleve, A., Brogneaux, A., Hainaut, J.: A conceptual approach to database applications evolution. In: Proceedings of ER (2010)","DOI":"10.1007\/978-3-642-16373-9_10"},{"key":"14_CR9","doi-asserted-by":"crossref","unstructured":"Delplanque, J., Etien, A., Anquetil, N., Ducasse, S.: Recommendations for evolving relational databases. In: Proceedings of CAiSE (2020)","DOI":"10.1007\/978-3-030-49435-3_31"},{"key":"14_CR10","doi-asserted-by":"crossref","unstructured":"Deng, Y., Frankl, P., Wang, J.: Testing web database applications. SIGSOFT Softw. Eng. Notes 29(5), 1\u201310 (2004)","DOI":"10.1145\/1022494.1022528"},{"key":"14_CR11","doi-asserted-by":"crossref","unstructured":"Garg, D., Datta, A.: Test case prioritization due to database changes in web applications. In: Proceedings of ICST (2012)","DOI":"10.1109\/ICST.2012.163"},{"key":"14_CR12","doi-asserted-by":"crossref","unstructured":"Gonzalez, D., Santos, J.C.S., Popovich, A., Mirakhorli, M., Nagappan, M.: A large-scale study on the usage of testing patterns that address maintainability attributes: patterns for ease of modification, diagnoses, and comprehension. In: MSR (2017)","DOI":"10.1109\/MSR.2017.8"},{"key":"14_CR13","unstructured":"Gonz\u00e1lez, J.R.C., Romero, J.J.F., Guerrero, M.G., Calder\u00f3n, F.: Multi-class multi-tag classifier system for stackoverflow questions. In: Proceedings of ROPEC (2015)"},{"key":"14_CR14","doi-asserted-by":"crossref","unstructured":"Ivankovi\u0107, M., Petrovi\u0107, G., Just, R., Fraser, G.: Code coverage at Google. In: Proceedings of ESEC\/FSE (2019)","DOI":"10.1145\/3338906.3340459"},{"key":"14_CR15","doi-asserted-by":"crossref","unstructured":"Kapfhammer, G.M., Soffa, M.L.: Database-aware test coverage monitoring. In: Proceedings of the 1st India Software Engineering Conference (2008)","DOI":"10.1145\/1342211.1342228"},{"key":"14_CR16","doi-asserted-by":"crossref","unstructured":"Maule, A., Emmerich, W., Rosenblum, D.: Impact analysis of database schema changes. In: Proceedings of ICSE 2008 (2008)","DOI":"10.1145\/1368088.1368150"},{"key":"14_CR17","doi-asserted-by":"crossref","unstructured":"Meurice, L., Nagy, C., Cleve, A.: Detecting and preventing program inconsistencies under database schema evolution. In: Proceedings of QRS (2016)","DOI":"10.1109\/QRS.2016.38"},{"key":"14_CR18","doi-asserted-by":"crossref","unstructured":"Meurice, L., Nagy, C., Cleve, A.: Static analysis of dynamic database usage in java systems. In: Proceedings of CAiSE (2016)","DOI":"10.1007\/978-3-319-39696-5_30"},{"key":"14_CR19","doi-asserted-by":"crossref","unstructured":"Pasternak, B., Tyszberowicz, S., Yehudai, A.: Genutest: a unit test and mock aspect generation tool. In: Hardware and Software: Verification and Testing (2008)","DOI":"10.1007\/s10009-009-0115-4"},{"key":"14_CR20","doi-asserted-by":"crossref","unstructured":"Petersen, K., Vakkalanka, S., Kuzniarz, L.: Guidelines for conducting systematic mapping studies in software engineering: an update. IST 64, 1\u201318 (2015)","DOI":"10.1016\/j.infsof.2015.03.007"},{"key":"14_CR21","doi-asserted-by":"crossref","unstructured":"Qiu, D., Li, B., Su, Z.: An empirical analysis of the co-evolution of schema and code in database applications. In: Proceedings of ESEC\/FSE (2013)","DOI":"10.1145\/2491411.2491431"},{"key":"14_CR22","doi-asserted-by":"crossref","unstructured":"Ran, L., et al.: Building test cases and oracles to automate the testing of web database applications. Inf. Softw. Technol. 51(2), 460\u2013477 (2009)","DOI":"10.1016\/j.infsof.2008.05.016"},{"key":"14_CR23","doi-asserted-by":"crossref","unstructured":"Riaz, M., Mendes, E., Tempero, E.: Towards maintainability prediction for relational database-driven software applications: evidence from software practitioners. In: Proceedings of Advances in Software Engineering (2010)","DOI":"10.1007\/978-3-642-17578-7_12"},{"key":"14_CR24","doi-asserted-by":"crossref","unstructured":"Rosero, R.H., G\u00f3mez, O.S., Rafael, G.D.R.: Regression testing of database applications under an incremental software development setting. IEEE Access 5, 18419\u201318428 (2017)","DOI":"10.1109\/ACCESS.2017.2749502"},{"issue":"3","key":"14_CR25","doi-asserted-by":"publisher","first-page":"1461","DOI":"10.1007\/s10664-018-9663-0","volume":"24","author":"D Spadini","year":"2018","unstructured":"Spadini, D., Aniche, M., Bruntink, M., Bacchelli, A.: Mock objects for testing java systems. Empirical Softw. Eng. 24(3), 1461\u20131498 (2018). https:\/\/doi.org\/10.1007\/s10664-018-9663-0","journal-title":"Empirical Softw. Eng."},{"key":"14_CR26","unstructured":"Stonebraker, M., Deng, D., Brodie, M.L.: Application-database co-evolution: a new design and development paradigm. In: New England Database Day (2017)"},{"key":"14_CR27","doi-asserted-by":"crossref","unstructured":"Trautsch, F., Grabowski, J.: Are there any unit tests? an empirical study on unit testing in open source python projects. In: Proceedings of ICST (2017)","DOI":"10.1109\/ICST.2017.26"},{"key":"14_CR28","doi-asserted-by":"crossref","unstructured":"Tuya, J., Su\u00e1rez-Cabal, M.J., de la Riva, C.: Full predicate coverage for testing SQL database queries. Softw. Testing, Verification Reliab. 20, 237\u2013288 (2010)","DOI":"10.1002\/stvr.424"},{"key":"14_CR29","doi-asserted-by":"crossref","unstructured":"Usman, M., Britto, R., B\u00f6rstler, J., Mendes, E.: Taxonomies in software engineering: a systematic mapping study and a revised taxonomy development method. Inf. Softw. Technol. 85, 43\u201359 (2017)","DOI":"10.1016\/j.infsof.2017.01.006"},{"key":"14_CR30","doi-asserted-by":"crossref","unstructured":"Vasilescu, B., Filkov, V., Serebrenik, A.: Stackoverflow and github: Associations between software development and crowdsourced knowledge. In: Proceedings of ICSC (2013)","DOI":"10.1109\/SocialCom.2013.35"},{"key":"14_CR31","doi-asserted-by":"crossref","unstructured":"Vassiliadis, P., Zarras, A.V.: Survival in schema evolution: Putting the lives of survivor and dead tables in counterpoint. In: Proceedings of CAiSE (2017)","DOI":"10.1007\/978-3-319-59536-8_21"}],"container-title":["Lecture Notes in Computer Science","Advanced Information Systems Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-79382-1_14","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,6,23]],"date-time":"2021-06-23T23:15:14Z","timestamp":1624490114000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-79382-1_14"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030793814","9783030793821"],"references-count":31,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-79382-1_14","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"24 June 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"CAiSE","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Advanced Information Systems Engineering","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Melbourne, VIC","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Australia","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28 June 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2 July 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"33","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"caise2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/caise21.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"33","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":"0","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":"0% - 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":"6","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":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"In addition, 18 contributions were accepted for the CAiSE 2021 Forum, and 15 papers from the Workshops. The conference was held online due to the COVID-19 pandemic.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}