Studying the Characteristics of SQL-related Development Tasks: An Empirical Study

01/24/2023
by   Daniel Alencar da Costa, et al.
0

A key function of a software system is its ability to facilitate the manipulation of data, which is often implemented using a flavour of the Structured Query Language (SQL). To develop the data operations of software (i.e, creating, retrieving, updating, and deleting data), developers are required to excel in writing and combining both SQL and application code. The problem is that writing SQL code in itself is already challenging (e.g., SQL anti-patterns are commonplace) and combining SQL with application code (i.e., for SQL development tasks) is even more demanding. Meanwhile, we have little empirical understanding regarding the characteristics of SQL development tasks. Do SQL development tasks typically need more code changes? Do they typically have a longer time-to-completion? Answers to such questions would prepare the community for the potential challenges associated with such tasks. Our results obtained from 20 Apache projects reveal that SQL development tasks have a significantly longer time-to-completion than SQL-unrelated tasks and require significantly more code changes. Through our qualitative analyses, we observe that SQL development tasks require more spread out changes, effort in reviews and documentation. Our results also corroborate previous research highlighting the prevalence of SQL anti-patterns. The software engineering community should make provision for the peculiarities of SQL coding, in the delivery of safe and secure interactive software.

READ FULL TEXT
research
01/06/2022

On the Prevalence, Impact, and Evolution of SQL Code Smells in Data-Intensive Systems

Code smells indicate software design problems that harm software quality...
research
09/07/2019

Compiling PL/SQL Away

"PL/SQL functions are slow," is common developer wisdom that derives fro...
research
02/08/2018

SQL Query Completion for Data Exploration

Within the big data tsunami, relational databases and SQL are still ther...
research
08/29/2023

Natural language to SQL in low-code platforms

One of the developers' biggest challenges in low-code platforms is retri...
research
09/21/2022

T5QL: Taming language models for SQL generation

Automatic SQL generation has been an active research area, aiming at str...
research
03/14/2019

LIKE Patterns and Complexity

We investigate the expressive power and complexity questions for the LIK...
research
02/07/2022

Do Developers Refactor Data Access Code? An Empirical Study

Developers often refactor code to improve the maintainability and compre...

Please sign up or login with your details

Forgot password? Click here to reset