Finding Regressions in Projects under Version Control Systems

Jaroslav Bendík, Nikola Beneš, Ivana Černá

2018

Abstract

Version Control Systems (VCS) are frequently used to support development of large-scale software projects. A typical VCS repository can contain various intertwined branches consisting of a large number of commits. If some kind of unwanted behaviour (e.g. a bug in the code) is found in the project, it is desirable to find the commit that introduced it. Such commit is called a regression point. There are two main issues regarding the regression points. First, detecting whether the project after a certain commit is correct can be very expensive and it is thus desirable to minimise the number of such queries. Second, there can be several regression points preceding the actual commit and in order to fix the actual commit it is usually desirable to find the latest regression point. Contemporary VCS contain methods for regression identification, see e.g. the git bisect tool. In this paper, we present a new regression identification algorithm that outperforms the current tools by decreasing the number of validity queries. At the same time, our algorithm tends to find the latest regression points which is a feature that is missing in the state-of-the-art algorithms. The paper provides an experimental evaluation on a real data set.

Download


Paper Citation


in Harvard Style

Bendík J., Beneš N. and Černá I. (2018). Finding Regressions in Projects under Version Control Systems.In Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT, ISBN 978-989-758-320-9, pages 152-163. DOI: 10.5220/0006864401520163


in Bibtex Style

@conference{icsoft18,
author={Jaroslav Bendík and Nikola Beneš and Ivana Černá},
title={Finding Regressions in Projects under Version Control Systems},
booktitle={Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT,},
year={2018},
pages={152-163},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006864401520163},
isbn={978-989-758-320-9},
}


in EndNote Style

TY - CONF

JO - Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT,
TI - Finding Regressions in Projects under Version Control Systems
SN - 978-989-758-320-9
AU - Bendík J.
AU - Beneš N.
AU - Černá I.
PY - 2018
SP - 152
EP - 163
DO - 10.5220/0006864401520163