Increasing Maintainability for Android Applications : Implementation and Evaluation of Three Software Architectures on the Android Framework
Abstract: Developing maintainable Android applications has been a difficult area ever since the first android smartphone was released. With better hardware and an ever growing community of open source contributors, Android development has seen drastic changes over the past years. Because of this, applications continue to grow more complex and the need to develop maintainable software is increasing. Model View Controller, Model View Presenter and Model View View-Model are three popular and well-studied software architectures which are widely used in GUI-heavy applications, these architectures have now also emerged in Android development. Together with functional and qualitative requirements from a sample application these architectures are implemented in the Android framework. The sample applications are evaluated based on modifiability, testability and performance and compared to each other in order to come to a conclusion with respect to maintainability and under what circumstances aparticular architecture should be used. Evaluation results show that Model View Controller is preferable for smaller, less complex projects where modifiability and testability are not prioritized qualitative properties for the application. Model View Presenter and Model View ViewModel both show good testability as well as modifiable properties and are well suited for applications where these properties are important.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)