Mobile cloud computing (MCC) has recently emerged as a state-of-the-art technology for mobile systems. MCC enables portable and context-aware computation via mobile devices by exploiting virtually unlimited hardware and software resources offered by cloud computing servers. Software architecture helps to abstract the complexities of system design, development, and evolution phases to implement MCC systems effectively and efficiently. This paper aims to identify, taxonomically classify, and systematically map the state of the art on architecting MCC-based software. We have used an evidence-based software engineering (EBSE) approach to conduct a systematic mapping study (SMS) based on 121 qualitatively selected research studies published from 2006 to 2019. The results of the SMS highlight that architectural solutions for MCC systems are mainly focused on supporting (i) software as a service for mobile computing, (ii) off-loading mobile device data to cloud-servers, (iii) internet of things, edge, and fog computing along with various aspects like (iv) security and privacy of mobile device data. The emerging research focuses on the existing and futuristic challenges that relate to MCC-based internet of things (IoTs), mobile-cloud edge systems, along with green and energy-efficient computing. The results of the SMS facilitate knowledge transfer that could benefit researchers and practitioners to understand the role of software architecture to develop the next generation of mobile-cloud systems to support internet-driven computing.
This is an open access article distributed under the Creative Commons Attribution License
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited