Management of historical data in continuous integration systems - Gustafsson, Anders; Lergell, Jonas (My University, 2015)
Continuous integration is an agile software practice where code is checked in frequently and subsequently built and tested automatically. Due to the maturity of this practice at the company Ericsson, the frequency of these automated builds is increasing at the company and as such, much more data about the development process is generated. However, the software systems that gather and present this data was not designed to scale with the current data growth. This has led to several problems surrounding the continuous integration process and the evolution of the software systems that support this process. This master’s thesis reports on the design and evaluation of two different prototypes for management of historical data in continuous integration systems. One of these prototypes uses a NoSQL database for storing historical data and one uses a relational database. The constructed prototypes where designed specifically to address problems related to scalability and performance of the current continuous integration systems in use at Ericsson. Evaluation shows that the prototypes solve scalability problems and increase performance of current systems by separating live and historical data. The value of the prototypes is further motivated by investigating how historical data in a continuous integration system can be utilized for the benefit of the company that has this data.
Keywords: Informations- och kommunikationsteknik; Data- och informationsvetenskap; Information & Communication Technology; Computer and Information Science