The emergence of agile methods and practices has not only changed the development processes but might also have affected how companies conduct software process improvement (SPI).Through a set of complementary studies, we aim to understand how SPI has changed in times of agile software development. Specifically, we aim (a) to identify and characterize the set of publications that connect elements of agility to SPI, (b) to explore to which extent agile methods/practices have been used in the context of SPI, and (c) to understand whether the topics addressed in the literature are relevant and useful for industry professionals. To study these questions, we conducted an in-depth analysis of the literature identified in a previous mapping study, an interview study, and an analysis of the responses given by industry professionals to SPI-related questions stemming from an independently conducted survey study. Regarding the first question, we identified 55 publications that focus on both SPI and agility of which 48 present and discuss how agile methods/practices are used to steer SPI initiatives. Regarding the second question, we found that the two most frequently mentioned agile methods in the context of SPI are Scrum and Extreme Programming (XP), while the most frequently mentioned agile practices are integrate often, test-first, daily meeting, pair programming, retrospective, on-site customer, and product backlog. Regarding the third question, we found that a majority of the interviewed and surveyed industry professionals see SPI as a continuous activity. They agree with the agile SPI literature that agile methods/practices play an important role in SPI activities but that the importance given to specific agile methods/practices does not always coincide with the frequency with which these methods/practices are mentioned in the literature.
KEYWORDSagile methods, software process improvement, SPI, systematic review
INTRODUCTIONSoftware has become the key driver in many industry sectors, and software development processes face increasing demands for flexibility, customer-and value-orientation, short time-to-market cycles, and high quality. As a consequence, companies are challenged with finding appropriate software development methods that, on the one hand, allow for flexible project operation and, on the other hand, allow for creating high-quality products. To define, adapt, evaluate, and improve their software processes, companies implement software process improvement (SPI) initiatives. According to Humphrey 1 and Münch et al, 2 SPI comprises a variety of tasks, ie, scoping, assessment, design and realization, and continuous improvement. Furthermore, SPI is considered relevant to companies 3 regardless of their size and industry sector.SPI has been around for decades, 4 and numerous approaches to conduct SPI have been proposed. 5,6 The different SPI approaches range from formal/prescriptive/de-facto (commercial) standards, such as the Capability Maturity Model Integration (CMMI) or ISO/IEC 15504, which are often critic...