Releasing Fast and Slow

Characterizing Rapid Releases in a Large Software-Driven Organization

More Info
expand_more

Abstract

The appeal of delivering new features faster has led many software projects to change their development processes towards rapid release models. Even though rapid releases are increasingly being adopted in open-source and commercial software, it is not well understood what the effects are of this practice. This thesis presents an exploratory case study of rapid releases at ING, a large banking company that develops software solutions in-house, to characterize rapid releases. Since 2011, ING has shifted to a rapid release model. This switch has resulted in a mixed environment of 611 teams releasing relatively fast and slow. We followed a mixed-methods approach in which we conducted a survey with 461 participants and corroborated their perceptions with two years of code quality data and one year of release delay data. Our research shows that: rapid releases can be beneficial in terms of code reviewing and user-perceived quality; rapidly released software tends to have a higher code churn, higher test coverage and lower average complexity; rapid releases are perceived to be, and are in fact, more commonly delayed than their non-rapid counterparts; however, rapid releases are correlated with shorter delays (median: 6 days) than non-rapid releases (median: 16 days); challenges in rapid releases are related to managing dependencies and certain code aspects, e.g. design debt. Based on our findings we present challenging areas that require further attention, both in practice and in research, in order to move the practice of rapid releases forward.