ANALYSIS OF THE IMPLEMENTATION OF MVVM ARCHITECTURE PATTERN ON PERFORMANCE OF IOS MOBILE-BASED APPLICATIONS

Deri Indrawan
Dana Sulistyo Kusumo
Shinta Yulia Puspitasari


DOI: https://doi.org/10.29100/jipi.v8i1.3293

Abstract


Performance efficiency is important in mobile application development because mobile devices have limitations in terms of power and resources. Performance efficiency can be improved by applying architecture patterns. In this paper, we use the Model View ViewModel (MVVM) architecture. The application of the architecture is carried out to analyze how practical the application of the MVVM architecture pattern is in increasing performance efficiency in the mobile application. Performance efficiency is measured based on CPU usage, memory usage, and execution Time. The case study shows that the CPU usage and execution Time on MVVM are smaller than Base architecture pattern from the AR Ruler. This is due to the third-party library RxSwift in the MVVM architecture that increases the application's response so that CPU usage and execution time is better than Base architecture pattern. However, the existence of the third-party library RxSwift has a negative impact on memory usage, resulting in higher memory usage than the Base Architecture Pattern. The MVVM pattern is highly recommended for mobile application development to improve performance efficiency.

Keywords


Architecture Pattern; Mobile Application; MVVM; Performance efficiency; RxSwift

Full Text:

PDF

Article Metrics :

References


Statista, Mobile app downloads worldwide from 2018 to 2025, by store. https://www.statista.com/statistics/1010716/apple-app-store-google-play-app-downloads-forecast (accessed Oct. 26, 2021).

Statista, Mobile operating systems market share worldwide from January 2012 to June 2021. https://www.statista.com/statistics/272698/global-market-share-held-by-mobile-operating-systems-since-2009 (accessed Oct. 26, 2021).

Doug Sillars, High performance android apps: Improve ratings with speed, optimizations, and testing. Sebastopol, CA: O'Reilly, 2015.

Rsler, F., Nitze, A., & Schmietendorf, A. Towards a mobile application performance benchmark In International Conference on Internet and Web Applications and Services. (2014). (Vol. 9, pp. 55-59).

ISO/IEC 25010 (2012) System and Software Quality Requirements and Evaluation (SQuaRE) System and Software Quality Models, Canadian Standards Association.

T. Lou, A comparison of Android Native App Architecture MVC, MVP and MVVM, M.S. thesis, Service Design and Engineering, Aalto University, Findland, 2016.

L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice Third Edition. 2015.

B. Wisnuadhi, G. Munawar, and U. Wahyu, Performance Comparison of Native Android Application on MVP and MVVM, In Proceedings of the International Seminar of Science and Applied Technology (ISSAT 2020), 2020.

Appstore, AR Ruler App data appstore. https://www.apple.com/id/search/ar-ruler?src=globalnav (accessed Nov. 16, 2021).

A.-R. Baek, K. Lee, and H. Choi, CPU and GPU parallel processing for mobile augmented reality, 2013 6th International Congress on Image and Signal Processing (CISP), 2013.

Developer Apple, Framework - ARKit. https://developer.apple.com/documentation/arkit/verifying_device_support_and_user_permission (accessed Feb. 21, 2022).

Stone, H. S. A logic-in-memory computer. IEEE Transactions on Computers, C-19(1), 7378. https://doi.org/10.1109/tc.1970.5008902, 1970.

Berryman, D. R. (2012). Augmented reality: A Review. Medical Reference Services Quarterly, 31(2), 212218. https://doi.org/10.1080/02763869.2012.670604.

Ohrimenko, O., Costa, M., Fournet, C., Gkantsidis, C., Kohlweiss, M., & Sharma, D. Observing and preventing leakage in mapreduce In Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015.

Garofalo, R, Building Enterprise Applications with Windows Presentation Foundation and the MVVM Model View ViewModel Pattern. 2011.