T. Krismayer, M. Vierhauser, R. Rabiser, P. Grünbacher: Comparing Constraints Mined From Execution Logs to Understand Software Evolution, Proceedings of the 35th International Conference on Software Maintenance and Evolution, Cleveland, OH, USA, September 30-October 4, 2019. Doi: 10.1109/ICSME.2019.00082
Complex software systems evolve frequently, e.g., when introducing new features or fixing bugs during maintenance. However, understanding the impact of such changes on system behavior is often difficult. Many approaches have thus been proposed that analyze systems before and after changes, e.g., by comparing source code, model-based representations, or system execution logs. In this paper, we propose an approach for comparing run-time constraints, synthesized by a constraint mining algorithm, based on execution logs recorded before and after changes. Specifically, automatically mined constraints define the expected timing and order of recurring events and the values of data elements attached to events. Our approach presents the differences of the mined constraints to users, thereby providing a higher-level view on software evolution and supporting the analysis of the impact of changes on system behavior.