• Corpus ID: 7082137

On the Interaction of Relational Database Access Technologies in Open Source Java Projects

  title={On the Interaction of Relational Database Access Technologies in Open Source Java Projects},
  author={Alexandre Decan and Mathieu Goeminne and Tom Mens},
  booktitle={Seminar on Advanced Techniques and Tools for Software Evolution},
This article presents an empirical study of how the use of relational database access technologies in open source Java projects evolves over time. Our observations may be useful to project managers to make more informed decisions on which technologies to introduce into an existing project and when. We selected 2,457 Java projects on GitHub using the low-level JDBC technology and higher-level object relational mappings such as Hibernate XML configuration files and JPA annotations. At a coarse… 

Figures and Tables from this paper

Empirical study on the usage of graph query languages in open source Java projects

The results show, that the usage of graph query languages in open-source projects increased over the last years, with SPARQL and Cypher being by far the most popular.

Evaluating Performance of Hibernate ORM Based Applications Using HQL Query Optimization

It is proposed in this paper that Object relational Modeling (ORM) relates each object of object oriented languages to corresponding rows in the table to simplify and make the mapping of objects in object-oriented programming languages more flexible, efficient and easy to use.

Joint Source and Schema Evolution: Insights from a Study of 195 FOSS Projects

This paper exploits a data set of 195 publicly available schema histories of FOSS projects hosted in Github to address the problem of the co-evolution of Free Open Source Software projects with the relational schemata that they encompass.

Analyzing the evolution of testing library usage in open source Java projects

  • Ahmed ZeroualiT. Mens
  • Computer Science
    2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER)
  • 2017
It is found that some libraries are considerably more popular than their competitors, while some libraries become more popular over time, and many projects tend to use multiple libraries together.

An Empirical Study of Local Database Usage in Android Applications

The results of a large scale empirical study on 1,000 top ranked apps from the Google Play app store are reported, presenting a detailed look into the practices, costs, and potential problems associated with local database usage in deployed apps.

Eloquent object relational mapping models for biodiversity information system

The results of the implementation explain that the six concepts of association owned by Eloquent ORM can facilitate complex data relationships such as BIS by simplifying complex code writing to relate between tables by relating the class model so that it can be a solution to deal with complex data cases such asBIS.

External Factors in Sustainability of Open Source Software

This dissertation explores effects of external factors in OSS sustainability, the mechanisms behind them, and proposes tools to make certain risk factors more visible and shows that in many cases simple tools can be used to detect less visible sustainability factors, such as competition and surrounding communities.

Design and Implementation of Intelligent Analysis and Matching System for Automobile Sales

The collaborative filtering algorithm is integrated with automobile sales, and an automobile sales Intelligent Analysis and customer matching system is proposed that can well reduce the error rate of sales business, and customize a list of intended vehicle sources for each customer through intelligent analysis and matching.

Schema evolution and foreign keys: a study on usage, heartbeat of change and relationship of foreign keys to table activity

The findings verify previous results that schemata grow in the long run in terms of tables, and discover that foreign keys appear to be fairly scarce in the projects that are studied and they do not necessarily grow in sync with table growth.



Towards a survival analysis of database framework usage in Java projects

  • M. GoeminneT. Mens
  • Computer Science
    2015 IEEE International Conference on Software Maintenance and Evolution (ICSME)
  • 2015
Whether certain database frameworks co-occur frequently, and whether some database frameworks get replaced over time by others are analysed, to provide useful evidence to software developers about which frameworks can be used successfully in combination and which combinations should be avoided.

How do Developers Document Database Usages in Source Code? (N)

This paper surveyed open source developers to understand their practices on documenting database usages in source code, and mined a large set of open source projects to measure to what extent database-related methods are commented and if these comments are updated during evolution.

Mining source code repositories at massive scale using language modeling

This paper builds the first giga-token probabilistic language model of source code, based on 352 million lines of Java, and proposes new metrics that measure the complexity of a code module and the topical centrality of a module to a software project.

Localizing SQL faults in database applications

A new fault-localization technique designed for applications that interact with a relational database that uses dynamic information specific to the application's database, such as Structured Query Language (SQL) commands, to provide a fault-location diagnosis.

Automatic discovery of function mappings between similar libraries

This work introduces an approach that analyzes source code changes from software projects that already underwent a given library migration to extract mappings between functions and demonstrates the applicability of this approach on several library migrations performed on the Java open source software projects.

Static checking of dynamically generated queries in database applications

A sound, static, program analysis technique to verify the correctness of dynamically generated query strings and describes the details of a prototype tool based on the algorithm and presents several illustrative defects found in senior software-engineering student-team projects, online tutorial examples, and a real-world purchase order system.

The promises and perils of mining git

This work focuses on git, a very popular DSCM used in high-profile projects and aims to help researchers interested in DSCMs avoid perils when mining and analyzing git data.

On the variation and specialisation of workload—A case study of the Gnome ecosystem community

A new series of workload and involvement metrics, as well as a novel approach—$\widetilde{\mathbf{T}}$-graphs—for reporting the results of comparing multiple distributions are defined to statistically study how workload and involved of ecosystem contributors varies across projects and across activity types.

Mining Library Migration Graphs

This paper proposes an approach that identifies sets of similar libraries and that produces what they call library migration graphs that show how existing projects have performed migrations among them, to ease the discovery and selection of library replacements.

How is Life for a Table in an Evolving Relational Schema? Birth, Death and Everything in Between

The findings indicate that most tables live quiet lives; few top-changers adhere to a profile of long duration, early birth, medium schema size at birth; and early periods of the database life demonstrate a higher level of evolutionary activity compared to later ones.