66. CONTINUOUS SEMANTIC INSPECTION FOR SOFTWARE EVOLUTION
Name: Yan Yan
Grad Year: 2016
Massimiliano Menarini, email@example.com
Software developers mainly write tests for detecting bugs and preventing the recurrence of bugs. We propose to complement software testing with a more proactive approach, Continuous Semantic Inspection (CSI). Specifically, CSI infers semantic changes between two versions of a system, such as between the most recent check-in to version control and the previous check-in. In particular, our tools detect the runtime invariants for each version of the system using the existing Daikon invariant detector, and then calculates the difference the two sets of invariants. These differences are displayed in the version control system's code-differencing view, helping the developer to reflect on whether the changes in the invariants are consistent with the developer's objectives for the most recent check-in. In this way, bugs missed by testing can be discovered earlier.
Industry Application Area(s)