SEAug 6, 2018

Executable Trigger-Action Comments

arXiv:1808.01729v11 citationsHas Code
Originality Incremental advance
AI Analysis

This addresses the issue of forgotten or outdated developer comments in software development, offering an incremental improvement by automating manual tasks.

The authors tackled the problem of natural language todo comments becoming irrelevant in evolving software projects by introducing TrigIt, the first technique to make trigger-action comments executable, automatically performing actions when triggers are met, and they successfully migrated 20 comments from 8 projects with minimal overhead.

Natural language elements, e.g., todo comments, are frequently used to communicate among the developers and to describe tasks that need to be performed (actions) when specific conditions hold in the code repository (triggers). As projects evolve, development processes change, and development teams reorganize, these comments, because of their informal nature, frequently become irrelevant or forgotten. We present the first technique, dubbed TrigIt, to specify triggeraction todo comments as executable statements. Thus, actions are executed automatically when triggers evaluate to true. TrigIt specifications are written in the host language (e.g., Java) and are evaluated as part of the build process. The triggers are specified as query statements over abstract syntax trees and abstract representation of build configuration scripts, and the actions are specified as code transformation steps. We implemented TrigIt for the Java programming language and migrated 20 existing trigger-action comments from 8 popular open-source projects. We evaluate the cost of using TrigIt in terms of the number of tokens in the executable comments and the time overhead introduced in the build process.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes