2025/11/26 by Torben Eckwert, Michael Guckert, Gabriele Taentzer · 1 voice
Computer Science · #Advanced Database Systems and Queries #Model-Driven Software Engineering Techniques #Semantic Web and Ontologies
paper · pdf · doi:10.1007/s10270-025-01341-x
openalex publication_date 2025/11/26 · openalex created_date 2025/11/27 · openalex updated_date 2026/07/23
Abstract Requirements for software applications continuously evolve throughout the entire product lifecycle. As a result, the constant adaptation of software often has an impact on its domain model and requires changes to the underlying database. In consequence, data stored in the database must also be adapted accordingly, a well-known problem known as schema evolution. Manual schema evolution using low-level SQL scripts involves both time-consuming and error-prone routine tasks, as well as complicated operations that require expert knowledge. Automation promises significant leverage for cost savings and quality improvements. To date, the most advanced solutions have focused primarily on operator-based approaches. However, these approaches often lack flexibility and prescribe the exact sequence of operations, which can be restrictive. In this paper, we present EvolveDB, a novel approach to model-driven schema evolution in relational databases. EvolveDB enables database administrators to evolve a database by comparing two versions of a model representing the database schema. Both models can be extracted from existing databases by reverse-engineering the data dictionary, or the target version can be created by freely editing the representation of the source schema. By comparing two model versions, EvolveDB identifies the differences and generates executable data migration scripts. Our experimental evaluation, conducted on the MediaWiki database schema, showed promising results, confirming the usability of our approach. A screencast demonstrating EvolveDB is available at https://youtu.be/k57NUi3blbg .