Comparing Complexity of API Designs: An Exploratory Experiment on DSL-based Framework Integration
Stefan Sobernig, Patrick Gaubatz, Mark Strembeck and Uwe Zdun
Abstract:
Embedded, textual DSLs are often provided as an API wrapped
around object-oriented application frameworks to ease framework
integration. While literature presents claims that DSL-based application development is beneficial, empirical evidence for this is rare.
We present the results of an experiment comparing the complexity of three different object-oriented framework APIs and an embedded, textual DSL. For this comparative experiment, we implemented the same, non-trivial application scenario using these four
different APIs. Then, we performed an Object-Points (OP) analysis, yielding indicators for the API complexity specific to each API
variant. The main observation for our experiment is that the embedded, textual DSL incurs the smallest API complexity. Although
the results are exploratory, as well as limited to the given application scenario and a single embedded DSL, our findings can direct
future empirical work. The experiment design is applicable for similar API design evaluations.