Skip to content
Go back

Can a domain-specific language improve program structure comprehension of data pipelines? A mixed-methods study

Our paper “Can a domain-specific language improve program structure comprehension of data pipelines? A mixed-methods study” was published in Empirical Software Engineering (EMSE).

Abstract

In many application domains, domain-specific languages can allow domain experts to contribute to collaborative projects more correctly and efficiently. To do so, they must be able to understand program structure from reading existing source code. With high-quality data becoming an increasingly important resource, the creation of data pipelines is an important application domain for domain-specific languages. We execute a mixed-method study consisting of a controlled experiment and a follow-up descriptive survey among the participants to understand the effects of a domain-specific language on bottom-up program understanding and generate hypotheses for future research. During the experiment, participants (n=57n = 57) need the same time (Wilcoxon signed-rank test, W=750W = 750, p=.546p = .546, RBC = .093) to solve program structure comprehension tasks, but submit significantly more correct solutions (McNemar’s test, X12\Chi^{2}_{1}, p=<.001p =< .001, OR = 4.8) when using the domain-specific language. In the descriptive survey, participants describe reasons related to the programming language itself, such as a better pipeline overview, more enforced code structure, and a closer alignment to the mental model of a data pipeline. In addition, human factors such as less required programming experience and the ability to reuse experience from other data engineering tools are discussed. Based on these results, domain-specific languages are a promising tool for creating data pipelines that can increase correct understanding of program structure and lower barriers to entry for domain experts. Open questions exist to make more informed implementation decisions for domain-specific languages for data pipelines in the future.

Downloads

Paper local copy

Paper at EMSE


About Me

I research open data and collaborative data engineering. In another life, I build custom software and consult on data science and software engineering. Sometimes, I create (mostly digital) projects for fun.
For freelance work, project ideas or feedback, email me: philip@heltweg.org.
Subscribe for more writing like this:

Powered by Buttondown ↗


Share this post on:

Next Post
Open Collaborative Data Engineering With Subject-Matter Experts Using Domain-Specific Languages