Continuous Deployment for Android Applications:Dive in or stay away
Examensarbete för masterexamen
Software engineering and technology (MPSOF), MSc
VALGEIRSSON, PÁLMI ÞÓR
Software development companies need to react quickly to customer requirements due to fast-changing and unpredictable markets. The methodology of continuously deploying software allows companies to shorten the feedback loop and the development cycles. However, there is little empirical data on the adoption of continuous deployment in industry. In order to fill this gap, this study investigates the challenges, risks and the information need to successfully adopt to continuous deployment for mobile applications that lack automated testing. Thus, the objective is find out if the introduction automated acceptance tests can be considered enough for continuously deploying software. An action research was conducted in collaboration with an Android team in a small software development company located in Gothenburg. Few applications were considered but the implementation was done for a small application which is not in active development. The study involved finding a solution for continuous deployment,configuring continuous deployment and implementing acceptance tests. Moreover,processes and tools were introduced to support the adoption of continuous deployment. The application studied was successfully deployed automatically. The developers were confident to continue deploying the application automatically with the implemented automated acceptance tests if automated tests would be added along with new features. However for a bigger, more business critical applications they felt that there was a need for including manual testing in the process. The case company, the team, and the application are small. Further, the application under study is not in active development. Thus, the generalization of the results is limited. The tools and methods introduced increase the productivity of the developers and show that continuous deployment can be implemented successfully by introducing automated acceptance tests in a context as the one the study was performed in.
Data- och informationsvetenskap , Computer and Information Science