Abstract
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. In the case of Java systems, identifying which portion of the source code accesses which portion of the database may prove challenging. Indeed, Java programs typically access their database in a dynamic way. The queries they send to the database server are built at runtime, through String concatenations, or Object- Relational Mapping frameworks like Hibernate and JPA. This paper presents a static analysis approach to program-database links recovery, specifically designed for Java systems. The approach allows developers to automatically identify the source code locations accessing given database tables and columns. It focuses on the combined analysis of JDBC, Hibernate and JPA invocations. We report on the use of our approach to analyse three real-life Java systems.
Original language | English |
---|---|
Title of host publication | Advanced Information Systems Engineering - 28th International Conference, CAiSE 2016, Proceedings |
Publisher | Springer Verlag |
Pages | 491-506 |
Number of pages | 16 |
Volume | 9694 |
ISBN (Print) | 9783319396958 |
DOIs | |
Publication status | Published - 2016 |
Event | 28th International Conference on Advanced Information Systems Engineering, CAiSE 2016 - Ljubljana, Slovenia Duration: 13 Jun 2016 → 17 Jun 2016 |
Publication series
Name | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
---|---|
Volume | 9694 |
ISSN (Print) | 03029743 |
ISSN (Electronic) | 16113349 |
Conference
Conference | 28th International Conference on Advanced Information Systems Engineering, CAiSE 2016 |
---|---|
Country/Territory | Slovenia |
City | Ljubljana |
Period | 13/06/16 → 17/06/16 |
Keywords
- Database access recovery
- Java
- ORM
- Static analysis
Fingerprint
Dive into the research topics of 'Static analysis of dynamic database usage in java systems'. Together they form a unique fingerprint.Student theses
-
Analyzing, Understanding and Supporting the Evolution of Dynamic and Heterogeneous Data-Intensive Software Systems
Meurice, L. (Author), Cleve, A. (Supervisor), Englebert, V. (President), Lanza, M. (Jury), Mens, T. (Jury), Frenay, B. (Jury) & Vanhoof, W. (Jury), 22 Jun 2017Student thesis: Doc types › Doctor of Sciences
File