Friday, September 14, 2018

Shortest-path algorithms applied to software engineering: A tale of cross fertilization within CS

These days, it looks as if many of us are supposed to undertake, or are expected to promise to carry out, interdisciplinary research. However, I have sometimes witnessed first-hand a lack of curiosity even to cross  the (often artificial) boundaries between areas of research within (theoretical) computer science and/or mathematics. This conservative attitude is reasonable at times, and at various stages of one's academic career, and is partly justified by the pressure to produce research output that most of us feel. I freely admit, though, that  I felt a bit uneasy when a colleague from "volume A TCS" told me at an ICALP conference that he was not going to attend  an invited talk delivered by a "volume B researcher" because that would be like going to a talk in the life sciences. (By the way, that invited talk was excellent and was delivered by a charismatic scientist. The colleague in question missed an intellectual treat.)

Perhaps naively, I feel that one of the reasons why we are in academia is that we are intellectually curious and that we should try to explain what we do to one another at least across the various disciplines within CS. Hence, I was very pleased to see this paper, which will appear in the prestigious IEEE Transactions on Software Engineering (behind the usually hefty paywall of the IEEE, alas). The paper stems from discussions between Mattia D'Emidio (a researcher in algorithmics) and Ludovico Iovino (a researcher in software engineering) who were sharing a basement office at the Gran Sasso Science Institute at the time. Those exchanges of ideas led eventually to the development of a framework that uses classic shortest-path algorithms in the selection of optimal chains of model transformations in model-driven SE. More specifically, those colleagues of mine show how to reduce the problem of computing chains of model transformations
that maximize the coverage to a shortest-path problem on weighted graphs. Moreover, they evaluate the practical effectiveness of the proposed approach by applying their automated methodology to a large set of experiments.

IMHO, this is a pleasing example of the kind of serendipitous collaboration that can arise when we are willing to have an open mind and look for possible applications to our techniques in other fields. Kudos to Ludovico, Mattia and their co-authors for going all the way and for publishing their article in a coveted outlet. I look forward to seeing more examples of cross fertilization within CS@GSSI.

Addendum 26/9/2018: Ludovico and Mattia kindly sent me two photos they took while the work was ongoing. (The all-important coffee machine is not pictured.)



No comments: