Design of development environment for mobile applications
Permanent address of the item is
Kehitysympäristön suunnittelu mobiiliapplikaatiokehitykseen
A well-designed and functioning development environment is crucial for every software company to push the productivity of the development team to the max. With the appropriate development environment, the limited time of the development team can be used for productive work. In this thesis, a successful development environment for mobile application development is designed and implemented for the Finnish company called Piceasoft. Piceasoft has been increasingly investing in the development of mobile applications over the last few years. The mobile application development team has identified problems with the development environment. In this thesis, these flaws of the development environment are pinpointed and solved. The thesis declares a whole new Version Control System (VCS) and branching model for the mobile applications codebase. This VCS is deployed with self-hosted Gitlab instance that runs in the internal network and integrates with existing Lightweight Directory Access Protocol (LDAP) authentication system. With integrated Continuous Integration and Continuous Delivery (CI/CD) system of Gitlab, a fully automated CI/CD pipeline for mobile applications is created. The transition to the new system from old Subversion VCS is described. The system implemented in this thesis turned out to be well suited for Piceasoft. The system was evaluated by interviewing the developers from the mobile application development team and PC development team as well as Quality Assurance (QA) engineers from the testing department. Additionally, data about integrated alpha builds of the applications during development was collected. The data shows a significant increase in deliverables available for integration and testing.