Understanding the links between application programs and their database is useful in various contexts such as migrating information systems towards a new database platform, evolving the database schema, or assessing the overall system quality. However, data-intensive applications nowadays tend to access their underlying database in an increasingly dynamic way. The queries that they send to the database server are usually built at runtime, through String concatenation, or Object-Relational- Mapping (ORM) frameworks. This level of dynamicity significantly complicates the task of adapting programs to an evolving database schema.
We present DAHLIA 2.0, an interactive visualization tool that allows the developer to analyze the database usage in order to support data-intensive software evolution and more precisely, program-database co-evolution.
Below, we present a 3D city visualization of several real-world systems that we observed during our study. For each system, we show a dual visualization composed of the database city (left) and the code city (right).