Software Architecture for Mobile Cloud Computing Systems
Abstract
:1. Introduction
- We taxonomically classify the collective impact of existing research to highlight (i) predominant research themes and challenges and (ii) architectural solutions and patterns for architecting MCC systems.
- We holistically map the progression and maturation of research that has emerged overtime to highlight existing, emerging, and futuristic trends of research.
- Researchers who aim to understand the state of the art to derive new hypotheses to be tested, analyze innovative solutions, and identify areas of future research.
- Practitioners who want to understand the reported solutions in terms of architectural solution, reusable architectural patterns, and the extent to which the academic research and development can be exploited to tackle the industrial challenges pertaining to the MCC systems.
2. Background and Related Research
2.1. Software Architecture for Mobile Cloud Computing Systems
2.2. Related Research
2.2.1. State of the Art and Open Challenges for MCC Systems
2.2.2. Mobile Data Offloading to Cloud-Based Servers
2.2.3. Literature Review on Security for MCC Systems
3. Research Methodology and Questions
- Demography and Classification of Published SolutionsRQ-1: What is the frequency and types of publications over the years in the area of software architecture for MCC systems?Objective(s): To analyze the progression of research in terms of publication frequencies over the years. Moreover, we also present the types of publications (e.g., conference proceedings, journal article) to assess the types of research contributions.RQ-2: What are the existing research themes and how the themes can be classified and mapped for architectural solutions?Objective(s): To investigate the impacts of the existing research, there is a need to classify and categorize the proposed research solutions into distinct or overlapping research themes and their sub-themes. Research themes allow us to map the research themes with proposed solutions and their significance in the progression and maturation of research.
- Architectural Challenges and Solutions for MCC SystemsRQ-3: What are the prominent challenges for MCC systems, and what architectural solutions are provided to address them?Objective(s): To identify and present the architectural patterns that may exist in the proposed solutions. The identified patterns and their presentation can help to propose patterns as reusable knowledge and best practices to architect MCC systems.RQ-4: What architectural patterns exist for MCC systems?Objective(s): To investigate the impacts of the existing research, there is a need to classify and categorize the proposed research solutions into distinct or overlapping research themes and their sub-themes. Research themes allow us to map the research themes with proposed solutions and their significance in the progression and maturation of research.
- Active and Futuristic Research on Architecting MCC SystemsRQ-5: What are the active trends of research on software architecture for MCC systems?Objective(s): To identify the existing research and its impact (based on classification—RQ-2) on architecture-centric solution for MCC systems.RQ-6: What are the emerging trends of research on software architecture for MCC systems?Objective(s): To identify the most recent research themes and contributions that are in emergence. Identification of the emerging themes can help to present the potential dimensions of futuristic research.
4. Frequency, Classification, and Mapping of the Existing Research
4.1. Frequency and Types of Publications
4.2. Taxonomical Classification of Existing Research Themes
- Generic Classification provides a high-level categorization of the existing research based on the collective contributions of a number of studies. Specifically, the generic classification highlights four main types of research contributions that highlight the role of software architecture to support (1) software as a service (SaaS) for Mobile Computing (17 studies, approximately 14% of total reviewed studies), (2) Mobile to Cloud Data Offloading (76 studies, 63%), (3) Internet of Things, Edge, and Fog Computing (14 studies, 11.5%), and (4) Data Security and Miscellaneous (14 studies, 11.5%).
- Thematic Classification provides an extension to the generic classification above by adding details about the focus of the research in a collection of related studies. Specifically, we have used the thematic analysis approach to identify the recurring themes (repeated architectural solutions) as the basis for thematic classification of the existing research [26]. For example, the thematic analysis suggests that a collection of studies such as [S7, S10, S30, S33] represent a repeated solution for offloading data to achieve storage efficiency and performing data analytics by exploiting the cloud computing servers. Thematic classification presents a fine-grained refinement of the generic classification.
4.3. Taxonomical Classification of Existing Research Themes
- Contribution facet: It is based on thematic classification of Figure 4 highlighting the specific contributions of research on y-axis as the contribution facet of mapping.
- Temporal distribution facet: It represents the temporal distribution of evidence on the x-axis (right) that is referred to as a temporal distribution facet of mapping.
- What research themes got the most and least attention in the last five years? By analyzing the research mapping in Figure 5 and combining the publications years and research (sub-) themes in the last three years (2017–2019), most of the studies focused on (a) computational efficiency of a mobile device with studies including but not limited to [S8, S21, S78, S90, S98] and (b) storage efficiency and data analytics [S33, S83, S97] by offloading its data to cloud servers. There is less research on SaaS for mobile computing and security and privacy of mobile data.
- What years are reflected as the most progressive based on the number of research publications and what was the focus of research during those years? By analyzing the temporal distribution facet or publication frequency (x-axis, left), we can identify 2013 to 2018 as the most progressive years in terms of total publications (93 published studies). During these years, the studies focused on all identified themes and their sub-themes. The most focused area of research during these years was offloading mobile device data to cloud-based servers. Most recently, mobile cloud computing has been exploited for internet of things-based systems.
5. Challenges and Architectural Solutions for MCC Systems
- Problem View: How to achieve computational efficiency while maintaining the portability and performance of a resource-constrained mobile device.
- Solution View: The proposed architectural solutions to address this problem are adaptive and cloudlets-based off-loading of computationally intensive data from a mobile device to cloud-based server. Software architecture provides a layered approach for the proposed solution (see Figure 1). The resource-constrained mobile device (as the front-end layer) represents a portable and context-aware user interface. On the other hand, the cloud-based server (as the back-end layer) provides computation and storage software as a service (SaaS) for mobile devices. The architecture includes the necessary logic to support the offloading decisions, i.e., what, when, and how to offload from a mobile device to the cloud-based server.
- Related Studies support solutions for adaptive and cloudlet-based offloading includes [S4], [S6], [S11], [S14], [S17], [S25], and [S29].
- Reference Architecture represents a high-level and generic view of the solution to address the challenges that relate to a particular research theme. A reference architecture provides an architecture-centric point of reference with an overview of the architectural components and connectors. The reference architecture provides a blueprint for architecture-centric development of the software systems.
6. Architectural Patterns for Mobile Cloud Computing Software
- Pattern Name: Provides a unique and self-explanatory name for the pattern.
- Pattern Intent: Describes the motivation or the known uses of the given pattern.
- Design Problem and Solution: Highlights the problem solution view that the patterns aim to address.
- Architecture Elements: The artefacts of the system to which a pattern can be applied.
- Reuse Design Knowledge: Design rationale supported by the pattern that can be frequently reused.
- Quality Characteristics: Attributes of quality (non-functional properties) affected by the pattern.
- Reference Diagram: Provides overview of the pattern also known as pattern thumbnail.
7. Past and Emerging Trends of Research on Architecting Mobile Cloud Software
- Foundation Phase (2006–2009) represents the earliest phase during which the research on software architecture for MCC started to emerge. During the foundation phase, a total of five studies were published (approximately 4% of total studies) that can be considered as an inception of research on SaaS for mobile computing systems.
- Maturation Phase (2010–2013) represents the duration of research for the next four years corresponding to the foundation phase of research. During this phase, the research from the initial years gained momentum and started to mature. During this phase, a total of 34 studies were published that represent approximately 28% of the reviewed studies. During these years, the majority of the research focused on architectural solutions that can alleviate the resource poverty of a mobile device by offloading its computation and memory-intensive data to cloud-based servers.
- Active and Futuristic Phase (2014 and beyond) represents the most recent years of research and its possible advancement in the future. During this phase (2014–2019), a total of 82 studies have been published that represent more than 68% of total studies that have been reviewed. During these years, active trends still focus on computation offloading, however some emerging topics such as mobile edge computing, mobile IoTs, and others are fast emerging as potential areas of futuristic research.
7.1. Past Trends of Research on Architecture for MCC Software
7.2. Emerging and Futuristic Trends of Research
8. Discussion and Conclusions of Mapping
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
Appendix A. List of Studies Selected for Review and Inclusion in the Systematic Mapping Study
[S1] Y. Natchetoi, V. Kaufman, A. Shapiro. Service-oriented Architecture for Mobile Applications. In 1st International Workshop on Software Architectures and Mobility. [Year = 2008, Type = Workshop and Symposium Paper] |
[S2] Kakadia Dharmesh, Prasad Saripalli, Vasudeva Varma. MECCA: Mobile, Efficient Cloud Computing Workload Adoption Framework Using Scheduler Customization and Workload Migration Decisions. In 1st International Workshop on Mobile Cloud Computing & Networking. [Year = 2013, Type = Workshop and Symposium Paper] |
[S3] Sujit Dey, Yao Liu, Shaoxuan Wang, Yao Lu. Addressing Response Time of Cloud-Based Mobile Applications. In First International Workshop on Mobile Cloud Computing & Networking. [Year = 2013, Type = Work shop and Symposium Paper] |
[S4] Young-Woo Kwon, Eli Tilevich. Facilitating the Implementation of Adaptive Cloud Offloading to Improve the Energy Efficiency of Mobile Applications. In 2nd ACM International Conference on Mobile Software Engineering and Systems. [Year = 2015 Type = Conference Proceedings] |
[S5] Jagan Sankaranarayanan, Hakan Hacıgümüş. A Platform for Seamless Context Transfers in the Mobile Cloud. In 12th International ACM Workshop on Data Engineering for Wireless and Mobile Access. [Year = 2013, Type = Workshop and Symposium Paper] |
[S6] Tim Verbelen, Pieter Simoens, Filip De Turck, Bart Dhoedt. Cloudlets: Bringing the Cloud to the Mobile User. In 3rd ACM workshop on Mobile Cloud Computing and Services. [Year = 2012, Type = Workshop and Symposium Paper] |
[S7] Rasool Fakoor, Mayank Raj, Azade Nazi, Mario Di Francesco, Sajal K. Das. An Integrated Cloud-based Framework for Mobile Phone Sensing. In 1st Edition of the MCC Workshop on Mobile Cloud Computing. [Year = 2012, Type = Workshop and Symposium Paper] |
[S8] Wei Cai, Conghui Zhou, Minchen Li, Xiuhua Li, Victor C.M. Leung. MCG Test-bed: An Experimental Test-bed for Mobile Cloud Gaming. In 2nd Workshop on Mobile Gaming. [Year = 2015, Type = Workshop and Symposium Paper] |
[S9] Roberto Bifulco, Marcus Brunner, Roberto Canonico, Peer Hasselmeyer, Faisal Mir. Scalability of a Mobile Cloud Management System. In 1st Edition of the MCC Workshop on Mobile Cloud Computing. [Year = 2012, Type = Workshop and Symposium Paper] |
[S10] Ivana Podnar Zarko, Aleksandar Antonic, Krešimir Pripužic. Publish/Subscribe Middleware for Energy-efficient Mobile Crowd-sensing. In 2013 ACM Conference on Pervasive and Ubiquitous Computing Adjunct Publication. [Year = 2013, Type = Conference Proceedings] |
[S11] Ioana Giurgiu, Oriana Riva, Dejan Juric, Ivan Krivulev, Gustavo Alonso. Calling the Cloud: Enabling Mobile Phones as Interfaces to Cloud Applications. In ACM/IFIP/USENIX 10th International Conference on Middleware. [Year = 2009, Type = Conference Proceedings] |
[S12] Evangelos Sakkopoulos, Poulia Adamopoulou, A. K. Tsakalidis, Spyros Sioutas. Personalized Selection of Web Services for Mobile Environments: The m-scroutz Solution. In International Conference on Management of Emergent Digital EcoSystems. [Year = 2009, Type = Conference Proceedings] |
[S13] Huber Flores, Satish Srirama. Adaptive Code Offloading for Mobile Cloud Applications: Exploiting Fuzzy Sets and Evidence-based Learning. In 4th ACM Work shop on Mobile Cloud Computing and Services. [Year=2013, Type=Workshop and Symposium Paper] |
[S14] Francesco Di Cerbo, Doliere Francis Some, Laurent Gomez. PPLv2.0: Uniform Data Access and Usage Control on Cloud and Mobile. In 1st International Work shop on Technical and Legal aspects of data Privacy and Security. [Year=2015, Type = Workshop and Symposium Paper] |
[S15] Tianyi Xing, Dijiang Huang, Shingo Ata. MobiCloud: A Geo-distributed Mobile Cloud Computing Platform. In 8th International Conference and 2012 Workshop on Systems Virtualization Management. [Year = 2012, Type = Conference Proceedings] |
[S16] StevenBohez, EliasDeConinck, TimVerbelen, PieterSimoens, BartDhoedt. Enabling Component-based Mobile Cloud Computing with the AIOLOS Middleware. In 13th Workshop on Adaptive and Reflective Middleware. [Year = 2014, Type = Workshop and Symposium Paper] |
[S17] Arijit Banerjee, Xu Chen, Jeffrey Erman, Vijay Gopalakrishnan, Seungjoon Lee, Jacobus Van der Merwe. MOCA: A Lightweight Mobile Cloud Offloading Architecture. In 8th ACM International Workshop on Mobility in the Evolving Internet Architecture. [Year = 2013, Type = Workshop and Symposium Paper] |
[S18] Xinwen Zhang, Joshua Schiffman, Simon Gibbs, Anugeetha Kunjithapatham, Sangoh Jeong. Securing Elastic Applications on Mobile Devices for Cloud Computing. In 2009 ACM Workshop on Cloud Computing Security. [Year = 2009, Type = Workshop and Symposium Paper] |
[S19] Lei Yang, Jiannong Cao, Yin Yuan, Tao Li, Andy Han, Alvin Chan. A Framework for Partitioning and Execution of Data Stream Applications in Mobile Cloud Computing. In 2012 IEEE 5th International Conference on Cloud Computing. [Year = 2013, Type = Conference Proceedings] |
[S20] Marko Höyhtyä, Marko Palola, Marja Matinmikko, Marcos Katz. Cognitive Engine: Design Aspects for Mobile Clouds. In International Conference on Cognitive Radio and Advanced Spectrum Management. [Year = 2011, Type = Conference Proceedings] |
[S21] Kaiqiang Wang, Minwei Shen, Junguk Cho, Arijit Banerjee, Jacobus Van der Merwe, Kirk Webb. MobiScud: A Fast Moving Personal Cloud in the Mobile Network. In 5th Workshop on All Things Cellular: Operations, Applications and Challenges. [Year = 2015, Type = Workshop and Symposium Paper] |
[S22] Niko Mäkitalo, Jari Pääkkö, Mikko Raatikainen, Varvana Myllärniemi, Timo Aaltonen, Tapani Leppänen, Tomi Männistö, Tommi Mikkonen. Social Devices: Collaborative Co-located Interactions in a Mobile Cloud. In 11th International Conference on Mobile and Ubiquitous Multimedia. [Year = 2012, Type = Conference Proceedings] |
[S23] Junguk Cho, Binh Nguyen, Arijit Banerjee, Robert Ricci, Jacobus Van der Merwe, Kirk Webb. SMORE: Software-defined Networking Mobile Offloading Architecture. In 4th Workshop on All Things Cellular: Operations, Applications, and Challenges. [Year = 2014, Type = Workshop and Symposium Paper] |
[S24] Farshad A. Samimi, Philip K. McKinley, S. Masoud Sadjadi. Mobile Service Clouds: A Self-managing Infrastructure for Autonomic Mobile Computing Services. In Second IEEE International Conference on Self-Managed Networks, Systems, and Services. [Year = 2006, Type = Conference Proceedings] |
[S25] Richard K. Lomotey, Ralph Deters. Using a Cloud-centric Middleware to Enable Mobile Hosting of Web Services: mHealth Use Case. In Journal, Personal and Ubiquitous Computing. [Year = 2014, Type = Journal Article] |
[S26] Bo Yin, Wenlong Shen, Lin X. Cai, Yu Cheng. A Mobile Cloud Computing Middleware for Low Latency Offloading of Big Data. In 2015 Workshop on Mobile Big Data. [Year = 2015, Type = Workshop and Symposium Paper] |
[S27] Pedro Maurício Costa, Jeremy Pitt João Falcão e Cunha, Teresa Galvão Dias. Cloud2Bubble: Enhancing Quality of Experience in Mobile Cloud Computing Settings. In 3rd ACM Workshop on Mobile Cloud Computing and Services. [Year = 2012, Type = Workshop and Symposium Paper] |
[S28] Jagan Sankaranarayanan, Hakan Hacigumus, Junichi Tatemura. COSMOS: A Platform for Seamless Mobile Services in the Cloud. In 2011 IEEE 12th International Conference on Mobile Data Management. [Year = 2011, Type = Conference Proceedings] |
[S29] Yu Wu, Lei Ying. A Cloudlet-based Multi-Lateral Resource Exchange Framework for Mobile Users. In 2015 IEEE Conference on Computer Communications (INFOCOM). [Year = 2015, Type = Conference Proceedings] |
[S30] Muhammad Shiraz, Abdullah Gani, Azra Shamim, Suleman Khan, Raja Wasim Ahmad. Energy Efficient Computational Offloading Framework for Mobile Cloud Computing. In Journal of Grid Computing. [Year= 2015, Type= Journal Article] |
[S31] Wenzhong Li, Yanchao Zhao, Sanglu Lu. Mechanisms and Challenges on Mobility-augmented Service Provisioning for Mobile Cloud Computing. In IEEE Communications Magazine. [Year = 2015, Type = Journal Article] |
[S32] Hyun Jung La, Soo Dong Kim. A Conceptual Framework for Provisioning Context-aware Mobile Cloud Services. In 2010 IEEE 3rd International Conference on Cloud Computing. [Year = 2010, Type = Conference Proceedings] |
[S33] Lihui Lei, Sabyasachi Sengupta, Tarini Pattanaik. MCloudDB: A Mobile Cloud Database Service Framework. In 3rd IEEE International Conference on Big Data Computing Services and Applications. [Year = 2015, Type = Conference Proceedings] |
[S34] Zohreh Sanaei, Saeid Abolfazli, Abdullah Gani, Muhammad Shiraz. SAMI: Service-based Arbitrated Multi-tier Infrastructure for Mobile Cloud Computing. In 2012 1st IEEE International Conference on Communications in China Workshops (ICCC). [Year = 2012, Type = Conference Proceedings] |
[S35] Zhiming Cai, Chongcheng Chen, Qinmin Wang. Architecture Design of Mobile Cloud and Prototype Test. In 8th International Conference on Communications and Networking in China. [Year = 2013, Type = Conference Proceedings] |
[S36] Chi-Sheng Shih, Yu-Hsin Wang, Norman Chang. Multi-tier Elastic Computation Framework for Mobile Cloud Computing. In 3rd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering. [Year = 2015, Type = Conference Proceedings] |
[S37] Hayat Routaib, Elarbi Badidi, Mouna Elmachkour. Modeling and Evaluating a Cloudlet-based Architecture for Mobile Cloud Computing. In 9th International Conference on Intelligent Systems: Theories and Applications. [Year = 2014, Type = Conference Proceedings] |
[S38] Rahnuma Kazi, Ralph Deters. A Cloud-hosted Hybrid Framework for Consuming Web Services on Mobile Devices. In International Conference on Selected Topics in Mobile and Wireless Networking. [Year = 2013, Type = Conference Proceedings] |
[S39] Dijiang Huang, Xinwen Zhang, Myong Kang. MobiCloud: Building Secure Cloud Framework for Mobile Computing and Communication. In 5th IEEE International Symposium on Service Oriented System Engineering. [Year=2010, Type = Workshop and Symposium Paper] |
[S40] Pelin Angin, Bharat Bhargava, Zhongjun Jin. A Self-Cloning Agents-Based Model for High-Performance Mobile-Cloud Computing. In IEEE 8th International Conference on Cloud Computing. [Year = 2015, Type = Conference Proceedings] |
[S41] Jeongho Kwak, Yeongjin Kim, Joohyun Lee. DREAM: Dynamic Resource and Task Allocation for Energy Minimization in Mobile Cloud Systems. In IEEE Journal on Selected Areas in Communications. [Year = 2015, Type = Journal Article] |
[S42] Bingchuan Yuan, John Herbert. A Cloud-Based Mobile Data Analytics Framework: Case Study of Activity Recognition Using Smartphone. In 2nd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering. [Year = 2014, Type = Conference Proceedings] |
[S43] Arlindo Flavio da Conceição, Jimmy Sànchez, Tiago Barabasz. Open Architecture for Mobile Data Collection Using Cloud Computing. In IEEE 14th International Conference on Mobile Data Management. [Year= 2013, Type= Conference Proceedings] |
[S44] Heungsik Eom, Pierre St. Juste, Renato Figueiredo. OpenCL-Based Remote Offloading Framework for Trusted Mobile Cloud Computing. In IEEE International Conference on Parallel and Distributed Systems. [Year = 2013, Type = Conference Proceedings] |
[S45] Yong Li, Wei Gao. Code Offload with Least Context Migration in the Mobile Cloud. In IEEE Conference on Computer Communications. [Year = 2015, Type = Conference Proceedings] |
[S46] Tolga Soyata, Rajani Muraleedharan, Colin Funai. Cloud-Vision: Realtime Face Recognition Using a Mobile-cloudlet-cloud Acceleration Architecture. In IEEE Symposium on Computers and Communications. [Year=2012, Type=Workshop and Symposium Paper] |
[S47] Marwa Ayad, Mohamed Taher, Ashraf Salem. Real-Time Mobile Cloud Computing: A Case Study in Face Recognition. In 28th International Conference on Advanced Information Networking and Applications Workshops. [Year = 2014, Type = Conference Proceedings] |
[S48] Vassiliki Koufi, Flora Malamateniou, George Vassilacopoulos. An Android Enabled Mobile Framework for Ubiquitous Access to Cloud Emergency Medical Services. In Second Symposium on Network Cloud Computing and Applications. [Year = 2012, Type = Workshop and Symposium Paper] |
[S49] Bin Pan, Xiaofei Wang, Enmin Song. CAMSPF: Cloud-assisted Mobile Service Provision Framework Supporting Personalized User Demands in Pervasive Computing Environment. In 9th International Wireless Communications and Mobile Computing Conference. [Year = 2013, Type = Conference Proceedings] |
[S50] Khalid Elgazzar, Patrick Martin, Hossam S. Hassanein. Cloud-Assisted Computation Offloading to Support Mobile Services. In IEEE Transactions on Cloud Computing (TCC). [Year = 2014, Type = Journal Article] |
[S51] A. Tzanakaki, M. P. Anastasopoulos, S. Peng. A Converged Network Architecture for Energy Efficient Mobile Cloud Computing. In International Conference on Optical Network Design and Modeling. [Year = 2014, Type = Conference Proceedings] |
[S52] Abdalla Artail, Karim Frenn, Haidar Safa. A Framework of Mobile Cloudlet Centers Based on the Use of Mobile Devices as Cloudlets. In IEEE 29th International Conference on Advanced Information Networking and Applications. [Year = 2015, Type = Conference Proceedings] |
[S53] Cristian Borcea, Xiaoning Ding, Narain Gehani. Avatar: Mobile Distributed Computing in the Cloud. In 3rd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering. [Year = 2014 Type = Conference Proceedings] |
[S54] Khalid Elgazzar, Ali Ejaz, Hossam S Hassanein. AppaaS: Offering Mobile Applications as a Cloud Service. In Journal of Internet Services and Applications. [Year = 2013, Type = Journal Article] |
[S55] A. Cuomo, M. Rak, S. Venticinque, U. Villano. Enhancing an Autonomic Cloud Architecture with Mobile Agents. In International Conference on Parallel Processing. [Year = 2012, Type = Conference Proceedings] |
[S56] Anne-Laure Jousselme, Kevin Huggins, Nicolas Lèchevin, Patrick Maupin, DominicLarkin. Vulnerability-Aware Architecture for a Tactical, Mobile Cloud. In Complex Networks. [Year = 2013, Type = Book Chapter] |
[S57] Javier Miranda, JoaquLìn GuillLèn, Javier Berrocal, Jose Garcia Alonso, Juan Manuel Murillo, Carlos Canal. Architecting Infrastructures for Cloud-Enabled Mobile Devices. In European Conference on Service-Oriented and Cloud Computing. [Year = 2013, Type = Conference Proceedings] |
[S58] Jibitesh Mishra, Sanjit Kumar Dash, Sweta Dash. Mobile-Cloud: A Framework of Cloud Computing for Mobile Application. In International Conference on Computer Science and Information Technology. [Year = 2012, Type = Conference Proceedings] |
[S59] Dong Bum Seo, In-Yong Jung, Jong Hyuk Park, Chang-Sung Jeong. Ubiquitous Mobile Computing on Cloud Infrastructure. In Advances in Computer Science and its Applications. [Year = 2014, Type = Book Chapter] |
[S60] Sohini De, Suddhasil De. Uncoupling of Mobile Cloud Computing Services: An Architectural Perspective. In Intelligent Computing, Networking, and Informatics. [Year = 2014, Type = Book Chapter] |
[S61] Nam-Uk Kim, Jung-Ho Eom, Sung-Hwan Kim, Tai-Myoung Chung. The Architecture of User-End Client for Mobile Cloud Service. In International Conference on Hybrid Information Technology. [Year = 2012, Type = Conference Proceedings] |
[S62] Soumya Simanta, Grace A. Lewis, Ed Morris. A Reference Architecture for Mobile Code Offload in Hostile Environments. In Joint Working IEEEIFIP Conference on Software Architecture and European Conference on Software Architecture. [Year = 2012, Type = Conference Proceedings] |
[S63] Hyeyoung Jeon, SungYul Rhew. Mobile Software Architecture Technique and Application for Using Business Logic and View. In International Conference on Hybrid Information Technology. [Year = 2012, Type = Conference Proceedings] |
[S64] Giovanni Merlino, Stamatis Arkoulis, Salvatore Distefano, Chrysa Papagianni, Antonio Puliafito, Symeon Papavassiliou. Mobile Crowd-sensing as a Service: A Platform for Applications on Top of Sensing Clouds. In Future Generation Computer Systems. [Year = 2015, Type = Journal Article] |
[S65] Chathura M. Sarathchandra Magurawalage, KunYang, LiangHu, Jianming Zhang. Energy-efficient and Network-aware Offloading Algorithm for Mobile Cloud. In the International Journal of Computer and Telecommunications Networking. [Year = 2014, Type = Journal Article] |
[S66] Huber Flores, Satish Narayana Srirama. Mobile Cloud Middleware. In Journal of Systems and Software. [Year = 2014, Type = Journal Article] |
[S67] Francisco Rodrigo Duro, Javier Garcia Blas, Daniel Higuero, Oscar Perez, JesusCarretero. CoSMiC: A Hierarchical Cloudlet-based Storage Architecture for Mobile Clouds. In Simulation Modelling Practice and Theory. [Year = 2015, Type = Journal Article] |
[S68] David MartÃŋn, Carlos Lamsfus, Aurkene Alzua-Sorzabal. A Cloud-based Platform to Develop Context-aware Mobile Applications by Domain Experts. In Computer Standards & Interface. [Year = 2015, Type = Journal Article] |
[S69] Tommi Mikkonen, Arto Salminen. Implementing Mobile Mashware Architecture: Downloadable Components as On-Demand Services. In Procedia Computer Science. [Year = 2012 Type = Journal Article] |
[S70] Chunsheng Zhu, Hai Wang, Xiulong Liu. A Novel Sensory Data Processing Framework to Integrate Sensor Networks With Mobile Cloud. In IEEE Systems Journal. [Year = 2016, Type = Journal Article] |
[S71] Bowen Zhou, Amir Vahid Dastjerdi. mCloud: A Context-aware Offloading Framework for Heterogeneous Mobile Cloud. In IEEE Transactions on Services Computing. [Year = 2015, Type = Journal Article] |
[S72] Gabriel Guerrero-Contreras, Jose Luis Garrido, Sara Balderas-Diaz. A Context-Aware Architecture Supporting Service Availability in Mobile Cloud Computing. In IEEE Transactions on Services Computing. [Year = 2016, Type = Journal Article] |
[S73] Richard K. Lomotey, JoAnn Nilson, Kathy Mulder. Mobile Medical Data Synchronization on Cloud-Powered Middleware Platform. In IEEE Transactions on Services Computing. [Year = 2016, Type = Journal Article] |
[S74] Mohammad A. Khan, Hillol Debnath, Nafize R. Paiker. Moitree: A Middleware for Cloud-Assisted Mobile Distributed Apps. In 4th IEEE International Conference on Mobile Cloud Computing, Services, and Engineering. [Year = 2016, Type = Conference Proceedings] |
[S75] Michael J. OSullivan, Dan Grigoras. Context Aware Mobile Cloud Services: A User Experience Oriented Middleware for Mobile Cloud Computing. In 4th IEEE International Conference on Mobile Cloud Computing, Services, and Engineering. [Year = 2016, Type = Conference Proceedings] |
[S76] Liang Tong, Yong Li, Wei Gao. A Hierarchical Edge Cloud Architecture for Mobile Computing. In the 35th Annual IEEE International Conference on Computer Communications. [Year = 2016, Type = Conference Proceedings] |
[S77] Tongguang Zhang, Shuai Zhao, Budan Wu. Lightweight SOA-Based Twin Engine Architecture for Enterprise Systems in Fixed and Mobile Environments. In China Communications. [Year = 2013, Type = Journal Article] |
[S78] Thinh Le Vinh, Reddy Pallavali, Fatiha Houacine. Energy Efficiency in Mobile Cloud Computing Architectures. In IEEE International Conference on Future Internet of Things and Cloud Workshops. [Year = 2016, Type = Conference Proceedings] |
[S79] Richard K. Lomotey, Joseph C. Pry, Sriramoju Sumanth. Using CloudBased Middleware to Enable Mobile Medical Data Management. In IEEE International Conference on Mobile Services. [Year = 2016, Type = Conference Proceedings] |
[S80] Gabriel Orsini, Dirk Bade, Winfried Lamersdorf. CloudAware: A Context-adaptive Middleware for Mobile Edge and Cloud Computing Applications. In IEEE International Workshops on Foundations and Applications of Self* Systems. [Year = 2016, Type = Workshop and Symposium Paper] |
[S81] Aleksandar Antonic, Kristijan Rozankovic, Martina Marjanovic, Kresimir Pripuzic, Ivana Podnar Zarko. A Mobile Crowd Sensing Ecosystem Enabled by CUPUS: Cloud-based Publish/Subscribe Middleware for Internet of Things. In Future Generation Computer Systems. [Year = 2016, Type = Journal Article] |
[S82] Abdullah Yousafzai, Abdullah Gani, Rafidah Md Noor, Anjum Naveed, Raja Wasim Ahmad, Victor Chang. Computational Offloading Mechanism for Native and Android Runtime Based Mobile Applications. In Journal of Systems and Software. [Year = 2016, Type = Journal Article] |
[S83] Keke Gai, Meikang Qiu, Hui Zhao, Lixin Tao, Ziliang Zong. Dynamic Energy-aware Cloudlet-based Mobile Cloud Computing Model for Green Computing. In Journal of Network and Computer Applications. [Year = 2016, Type = Journal Article] |
[S84] Giovanni Merlino, Stamatios Arkoulis, Salvatore Distefano, Chrysa A. Papagianni, Antonio Puliafito, Symeon Papavassiliou. Mobile Crowd sensing as a Service: A Platform for Applications on Top of Sensing Clouds. In Future Generation Computer Systems. [Year = 2016, Type = Journal Article] |
[S85] Valeria Cardellini, Vittoria De Nitto Persone, Valerio Di Valerio, Francisco Facchinei, Vincenzo Grassi, Francesco Lo Presti, Veronica Piccialli. A Game-theoretic Approach to Computation Offloading in Mobile Cloud Computing. In Mathematical Programming. [Year = 2016, Type = Journal Article] |
[S86] William Tärneberg, Amardeep Mehta, Eddie Wadbro, Johan Tordsson, Johan Eker, Maria Kihl, Erik Elmroth. Dynamic application placement in the Mobile Cloud Network. In Future Generation Computer Systems. [Year = 2017, Type = Journal Article] |
[S87] Hassan Raei, Nasser Yazdani. Performability Analysis of Cloudlet in Mobile Cloud Computing. In Information Sciences. [Year = 2017, Type = Journal Article] |
[S88] Suleman Khan, Muhammad Shiraz, Laleh Boroumand, Abdullah Gani. Towards port-knocking authentication methods for mobile cloud computing. In Journal of Network and Computer Applications. [Year = 2017, Type = Journal Article] |
[S89] Majdi Rawashdeh, Awny Alnusair. Models for Multimedia Mobile Cloud in Smart Cities. In Multimedia Systems. [Year = 2017, Type = Journal Article] |
[S90] Majdi Rawashdeh, Awny Alnusair, Nasser Mustafa, Mahmoud Migdadi, MULTIMEDIA MOBILE CLOUD COMPUTING: APPLICATION MODELS FORPERFORMANCE ENHANCEMENT. In 2016 IEEE International Conference on Multimedia & Expo Workshops. [Year = 2017, Type = Conference Proceedings] |
[S91] Venkatraman Balasubramanian, Ahmed Karmouch. An Infrastructure as a Service for Mobile Ad-hoc Cloud. In Computing and Communication Workshop and Conference. [Year = 2017, Type = Workshop and Symposium Paper] |
[S92] Vikas S. Shah. Deterministic Consumer Applications Enabled Policy Architecture of Mobile Edge Computing Ecosystem. In Computing and Communication Workshop and Conference. [Year = 2017, Type = Workshop and Symposium Paper] |
[S93] Daniela Mazza, Daniele Tarchi, and Giovanni E. Corazza. A Unified Urban Mobile Cloud Computing Offloading Mechanism for Smart Cities. In IEEE Communications Magazine. [Year = 2017, Type = Journal Article] |
[S94] Awais Ahmad, Anand Paul, Muard Khan, Sohail Jabbar, Muhammad Mazhar Ullah Rathore, Naveen Chilamkurti. Energy Efficient Hierarchical Resource Management for Mobile Cloud Computing. In IEEE Transactions on Sustainable Computing. [Year = 2017, Type = Journal Article] |
[S95] Abdul Razaque, Syed S. Rizvi, Meer J. Khan, Qassim B. Hani, Julius P. Dichter, Reza M. Parizi. Secure and Quality-of-service-supported Service-oriented Architecture for Mobile Cloud Handoff process. In Computers & Security. [Year = 2017, Type = Journal Article] |
[S96] Gabriel Orsini, Dirk Bade, Winfried Lamersdorf. CloudAware: Empowering context-aware self-adaptation for mobile applications. In Transactions on Emerging Telecommunications Technologies. [Year = 2017, Type = Journal Article] |
[S97] Meikang Qiu, Zhi Chen, Zhong Ming, Xiao Qin, Jianwei Niu. Energy Aware Data Allocation with Hybrid Memory for Mobile Cloud Systems. In IEEE Systems Journal. [Year = 2017, Type = Journal Article] |
[S98] P. Venkata Krishna, Sudip Misra, V. Saritha, Dasari Naga Raju, Mohammad S. Obaidat. An Efficient Learning Automata based Task offloading in Mobile Cloud Computing Environments. In 2017 IEEE International Conference on Communications (ICC). [Year = 2017, Type = Conference Proceedings] |
[S99] Samuel J. Chinenyeze, Xiaodong Liu, Ahmed Al-Dubai. BEFTIGRE: Behaviour-driven full-tier Green Evaluation of Mobile Cloud Applications. In Journal of Software: Evolution and Process. [Year = 2017, Type = Journal Article] |
[S100] C. Rossi, M. H. Heyi, F. Scullino. A Service Oriented Cloud-based Architecture for Mobile Geolocated Emergency Services. In Concurrency and Computation: Practice and Experience. [Year = 2017, Type = Journal Article] |
[S101] Yibin Li, Min Chen, Wenyun Dai, Meikang Qiu. Energy Optimization with Dynamic Task Scheduling Mobile Cloud Computing. In IEEE Systems Journal. [Year = 2017, Type = Journal Article] |
[S102] Raffaele Gravina, Congcong Ma, Pasquale Pace, Gianluca Aloi, Wilma Russo, Wenfeng Li, Giancarlo Fortinob. Cloud-based Activity-aaService cyber-physical Framework for Human Activity Monitoring in Mobility. In Future Generation Computer Systems. [Year = 2017, Type = Journal Article] |
[S103] M. Chen and Y. Hao, Task Offloading for Mobile Edge Computing in Software Defined Ultra-Dense Network. In IEEE Journal on Selected Areas in Communications [Year = 2018, Type = Journal] |
[S104] Wang, Kai and Yin, Hao and Quan, Wei and Min, Geyong. Enabling Collaborative Edge Computing for Software Defined Vehicular Networks. IEEE Network. [Year = 2018, Type = Journal] |
[S105] Aazam, Mohammad and Zeadally, Sherali and Harras, Khaled A. Fog Computing Architecture, Evaluation, and Future Research Directions In IEEE Communications Magazine. [Year = 2018, Type = Journal] |
[S106] Cai, Hongming and Gu, Yizhi and Vasilakos, Athanasios V and Xu, Boyi and Zhou, Jun. Model-driven Development Patterns for Mobile Service in Cloud of Things. In IEEE Transactions on Cloud Computing. [Year = 2018, Type = Journal] |
[S107] Bing Lin, Fangning Zhu, Jianshan Zhang, Jiaqing Chen, Xing Chen, Naixue N. Xiong, Jaime Lloret Mauri. A Time-Driven Data Placement Strategy for a Scientific Workflow Combining Edge Computing and Cloud Computing. In IEEE Transactions on Industrial Informatics. [Year = 2019, Type = Journal] |
[S108] Kaur, Kuljeet and Garg, Sahil and Aujla, Gagangeet Singh and Kumar, Neeraj and Rodrigues, Joel JPC and Guizani, Mohsen Edge Computing in the Industrial Internet of Things Environment: Software-Defined-Networks-Based Edge Cloud Interplay. In IEEE Communications Magazine. [Year = 2018, Type = Journal] |
[S109] Zhang, Weiwen and Wen, Yonggang and Zhang, Xinwen Towards Virus Scanning as a Service in Mobile Cloud Computing: Energy-Efficient Dispatching Policy Under N-Version Protection. In IEEE Transactions on Emerging Topics in Computing. [Year = 2018, Type = Journal] |
[S110] Mouradian, Carla and Yangui, Sami and Glitho, Roch H. Robots as-aservice in Cloud Computing: Search and Rescue in Large-scale Disasters Case Study. In 15th IEEE Annual Consumer Communications & Networking Conference (CCNC). [Year = 2018, Type = Conference] |
[S111] Enayet, Asma and Razzaque, Md Abdur and Hassan, Mohammad Mehedi and Alamri, Atif and Fortino, Giancarlo. A Mobility-aware Optimal Resource Allocation Architecture for Big Data Task Execution on Mobile Cloud in Smart Cities. In IEEE Communications Magazine. [Year = 2018, Type = Journal] |
[S112] Stergiou, Christos and Psannis, Kostas E and Kim, Byung-Gyu and Gupta, Brij. Secure Integration of IoT and Cloud Computing. In Future Generation Computer Systems. [Year = 2018, Type = Journal] |
[S113] Gai, Keke and Qiu, Meikang and Zhao, Hui. Energy-aware Task Assignment for Mobile Cyber-enabled Applications in Heterogeneous Cloud Computing. In Journal of Parallel and Distributed Computing. [Year = 2018, Type = Journal] |
[S114] Alam, Md Golam Rabiul and Hassan, Mohammad Mehedi and Uddin, Md Zia and Almogren, Ahmad and Fortino, Giancarlo. Autonomic Computation Offloading in Mobile Edge for IoT Applications. In Future Generation Computer Systems. [Year = 2019, Type = Journal] |
[S115] Lyu, Xinchen and Tian, Hui and Jiang, Li and Vinel, Alexey and Maharjan, Sabita and Gjessing, Stein and Zhang, Yan. Selective Offloading in Mobile Edge Computing for the Green Internet of Things. In IEEE Network. [Year = 2018 Type = Journal] |
[S116] Tsakos, Konstantinos and Petrakis, Euripides GM. Service Oriented Architecture for Interconnecting LoRa Devices with the Cloud. In International Conference on Advanced Information Networking and Applications. [Year = 2019, Type = Conference] |
[S117] Myrizakis, George and Petrakis, Euripides GM. iHome: Smart Home Management as a Service in the Cloud and the Fog. In International Conference on Advanced Information Networking and Applications. [Year = 2019, Type = Conference] |
[S118] Almajali, Sufyan and Dhiah el Diehn, I and Salameh, Haythem Bany and Ayyash, Moussa and Elgala, Hany. A Distributed Multi-layer MEC-cloud Architecture for Processing Large scale IoT-based Multimedia Applications. In Multimedia Tools and Applications. [Year = 2018, Type = Journal] |
[S119] Kim, Seokhoon and Kim, Dae-Young and Park, Jong Hyuk. Traffic Management in the Mobile Edge Cloud to Improve the Quality of Experience of Mobile Video. In Computer Communications. [Year = 2018, Type = Journal] |
[S120] Udendhran, R and Muthuramlingam, K. An Effective Framework to Enhance Intelligent Transport Systems using Cloud Computing. In 2018 International Conference on Current Trends towards Converging Technologies (ICCTCT). [Year = 2018, Type = Conference] |
[S121] Navaz, Alramzana Nujum and Serhani, Mohamed Adel and Al-Qirim, Nabeel and Gergely, Marton. Towards an Efficient and Energy-Aware Mobile Big Health Data Architecture. In Computer Methods and Programs in Biomedicine. [Year = 2018, Type = Journal] |
Appendix B. Selection and Qualitative Analysis of Studies for SMS
Collecting Data for the Study
- Step I—Identify the Primary Studies Based on the RQsBased on the RQs, we search and select the relevant studies (peer-reviewed) published research to collect and synthesize the data. The RQs helped us to formulate the search string as illustrated in Figure A1.Figure A1. Overview of the literature search process (identify primary studies).Based on a multi-step search process as highlighted in Figure A1, the search string resulted in 9678 hits (searched in July 2019) as potentially relevant studies for the review. As per the guidelines to conduct the mapping studies [15], we used six digital libraries/database to search the literature including IEEE Xplore, ACM DL, Springer Link, Science Direct, Scopus, and Google Scholar. However, based on analyzing the study titles, a significant number of these studies proved irrelevant to the outlined RQs and were eliminated for any further processing.Based on the guidelines in [20], the terms in Figure A1 such as hits, retrieved, screened, and included are standard terms for literature search. These terms refer to identifying, analyzing, and selecting the most relevant literature/studies for data collection. After the study screening and qualitative assessment of the extracted studies, finally, a total of 121 studies—covering more than a decade of published research (2006 to 2019)—were included in the data collection process to synthesize the results for the SMS.
- Step II—Assess the Relevance and QualityThe last step in the selection of the primary studies relates to the assessment of the relevance and quality of the primary studies, also referred to as screening, and qualitative assessment in Table A1. More specifically, the qualitative assessment criteria in Table A1 helps us to include or exclude the studies for SMS. The quality assessment checklist in Table A1 is complemented by the formula to compute the quality of the individual studies, as given below. The quality assessment criteria (QAC) represents five factors as assessment criteria, providing a maximum score of 1. The list of 121 selected studies that are included in the SMS is presented in Appendix A.Quality Assessment Criteria = (QAC1 + QAC2 + QAC3 + QAC4 + QAC5)/5
Step I – Study Screening | |
Is the study in English language? | YES or NO |
Is the study a scientific peer-reviewed published research? | |
Is the study not a secondary study? | |
Is the study not a book? | |
Is the study not focused on software architecture for mobile cloud computing systems? | |
If [YES] to all four criteria then go to Step II, otherwise exclude study | |
Step II – Qualitative Assessment of Studies | |
Quality Assessment Criteria (QAC) | YES = 0 PARTIAL = 0.5 NO = 0 |
QAC1: Contribution: Are problem definition and proposed solution presented? | |
QAC2: Context: Is the environment/context of the study properly explained? | |
QAC3: Methodology: Is the research methodology clearly stated? | |
QAC4: Evaluation: Are the contributions of the study properly evaluated? | |
QAC5: Synthesis: Are the limitations and future research explicitly mentioned? |
References
- Dinh, H.T.; Lee, C.; Niyato, D.; Wang, P. A survey of mobile cloud computing: Architecture, applications, and approaches. Wirel. Commun. Mob. Comput. 2013, 13, 1587–1611. [Google Scholar] [CrossRef]
- Noor, T.H.; Zeadally, S.; Alfazi, A.; Sheng, Q.Z. Mobile cloud computing: Challenges and future research directions. J. Netw. Comput. Appl. 2018, 115, 70–85. [Google Scholar] [CrossRef]
- Lewis, G.A.; Lago, P.; Procaccianti, G. Architecture strategies for cyber-foraging: Preliminary results from a systematic literature review. In European Conference on Software Architecture; Springer: Cham, Switzerland, 2014; pp. 154–169. [Google Scholar]
- Kwon, Y.-W.; Tilevich, E. Facilitating the implementation of adaptive cloud offloading to improve the energy efficiency of mobile applications. In Proceedings of the 2015 2nd International Conference on Mobile Software Engineering and Systems, Florence, Italy, 16–17 May 2015; pp. 94–104. [Google Scholar]
- Mell, P.; Grance, T. The Nist Definition of Cloud Computing. Available online: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf (accessed on 12 November 2019).
- Elgazzar, K.; Martin, P.; Hassanein, H.S. Cloud-assisted computation offloading to support mobile services. IEEE Trans. Cloud Comput. 2016, 4, 279–292. [Google Scholar] [CrossRef]
- Taleb, T.; Dutta, S.; Ksentini, A.; Iqbal, M.; Flinck, H. Mobile edge computing potential in making cities smarter. IEEE Commun. Mag. 2017, 55, 38–43. [Google Scholar] [CrossRef]
- Schmerl, B.; Garlan, D. Acmestudio: Supporting style-centered architecture development. In Proceedings of the 26th International Conference on Software Engineering, Edinburgh, UK, 23–28 May 2004; IEEE Computer Society: Washington, DC, USA, 2004; pp. 704–705. [Google Scholar]
- Medvidovic, N.; Taylor, R.N. A classification and comparison framework for software architecture description languages. IEEE Trans. Softw. Eng. 2000, 26, 70–93. [Google Scholar] [CrossRef]
- Lewis, G.; Novakouski, M.; Sánchez, E. A reference architecture for group-context-aware mobile applications. In International Conference on Mobile Computing, Applications, and Services; Springer: Berlin/Heidelberg, Germany, 2012; pp. 44–63. [Google Scholar]
- Soyata, T.; Muraleedharan, R.; Funai, C.; Kwon, M.; Heinzelman, W. Cloud-vision: Real-time face recognition using a mobile-cloudlet cloud acceleration architecture. In Proceedings of the 2012 IEEE Symposium on Computers and Communications, Cappadocia, Turkey, 1–4 July 2012; pp. 000059–000066. [Google Scholar]
- Yuan, B.; Herbert, J. A cloud-based mobile data analytics framework: Case study of activity recognition using smartphone. In Proceedings of the 2014 2nd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering, Oxford, UK, 8–11 April 2014; pp. 220–227. [Google Scholar]
- Kovachev, D.; Cao, Y.; Klamma, R. Mobile cloud computing: A comparison of application models. arXiv 2011, arXiv:1107.4940. [Google Scholar]
- Brereton, P.; Kitchenham, B.A.; Budgen, D.; Turner, M.; Khalil, M. Lessons from applying the systematic literature review process within the software engineering domain. J. Syst. Softw. 2007, 80, 571–583. [Google Scholar] [CrossRef]
- Petersen, K.; Feldt, R.; Mujtaba, S.; Mattsson, M. Systematic Mapping Studies in Software Engineering. In Proceedings of the 12th International Conference on Evaluation and Assessment in Software Engineering, Bari, Italy, 26–27 June 2008; Volume 8, pp. 68–77. [Google Scholar]
- GSMA Intelligence. Definitive Data and Analysis for the Mobile Industry. Available online: https://www.gsma.com/services/wp-content/uploads/2019/06/GSMAIntelligence_Product_Brochure_2019.pdf (accessed on 12 November 2019).
- Satyanarayanan, M. Mobile computing: The next decade. In Proceedings of the 1st ACM Workshop on Mobile Cloud Computing & Services: Social Networks and Beyond, San Francisco, CA, USA, 15–18 June 2010; p. 5. [Google Scholar]
- Sajjad, M.; Abbasi, A.A.; Malik, A.; Altamimi, A.B.; Alseadoon, I.M. Classification and mapping of adaptive security for mobile computing. In IEEE Transactions on Emerging Topics in Computing; IEEE: Washington, DC, USA, 2018. [Google Scholar]
- France, R.; Rumpe, B. Model-driven development of complex software: A research roadmap. In Future of Software Engineering; IEEE Computer Society: Washington, DC, USA, 2007; pp. 37–54. [Google Scholar]
- Rahimi, M.R.; Ren, J.; Liu, C.H.; Vasilakos, A.V.; Venkatasubramanian, N. Mobile cloud computing: A survey, state of art and future directions. Mob. Netw. Appl. 2014, 19, 133–143. [Google Scholar] [CrossRef]
- Abolfazli, S.; Sanaei, Z.; Sanaei, M.; Shojafar, M.; Gani, A. Mobile cloud computing: The-state-of-the-art, challenges, and future research. In Encyclopedia of Cloud Computing; Wiley: Hoboken, NJ, USA, 2015. [Google Scholar]
- Fernando, N.; Loke, S.W.; Rahayu, W. Mobile cloud computing: A survey. Future Gener. Comput. Syst. 2013, 29, 84–106. [Google Scholar] [CrossRef]
- Aminzadeh, N.; Sanaei, Z.; Ab Hamid, S.H. Mobile storage augmentation in mobile cloud computing: Taxonomy, approaches, and open issues. Simul. Model. Pract. Theory 2015, 50, 96–108. [Google Scholar] [CrossRef]
- Khan, A.N.; Kiah, M.M.; Khan, S.U.; Madani, S.A. Towards secure mobile cloud computing: A survey. Future Gener. Comput. Syst. 2013, 29, 1278–1299. [Google Scholar] [CrossRef]
- Ahmad, A.; Tamimi, A.; Saeed, N.; Hamayun, M.; Fraz, M. Research Protocol of Software Architecture for Mobile Cloud Systems: A Mapping Study; Technical Report; College of Computer Science and Engineering, University of Ha’il: Ha’il, Saudi Arabia, 2017. [Google Scholar]
- Boyatzis, R.E. Transforming Qualitative Information: Thematic Analysis and Code Development; SAGE: Thousand Oaks, CA, USA, 1998. [Google Scholar]
- Chen, K.-Z. Integration of design method software for concurrent engineering using axiomatic design. Integr. Manuf. Syst. 1998, 9, 242–252. [Google Scholar] [CrossRef]
- Buschmann, F.; Henney, K.; Schimdt, D. Pattern-Oriented Software Architecture: On Patterns and Pattern Language; John Wiley & Sons: Hoboken, NJ, USA, 2007; Volume 5. [Google Scholar]
- Pahl, C.; Giesecke, S.; Hasselbring, W. Ontology-based modelling of architectural styles. Inf. Softw. Technol. 2009, 51, 1739–1749. [Google Scholar] [CrossRef]
- Harrison, N.B.; Avgeriou, P.; Zdun, U. Using patterns to capture architectural decisions. IEEE Softw. 2007, 24, 38–45. [Google Scholar] [CrossRef][Green Version]
- Svahnberg, M.; Wohlin, C.; Lundberg, L.; Mattsson, M. A method for understanding quality attributes in software architecture structures. In Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering, Ischia Island, Italy, 15–19 July 2002; ACM: New York, NY, USA, 2002; pp. 819–826. [Google Scholar]
- Ahmad, A.; Alseadoon, I.; Alkhalil, A.; Sultan, K. A Framework for the Evolution of Legacy Software towards Context-aware and Portable Mobile Computing Applications. In Proceedings of the International Conference on Software Engineering Research and Practice (SERP), Las Vegas, NV, USA, 29 July–1 August 2019; pp. 3–9. [Google Scholar]
- Evans, D. The Internet of Things: How the Next Evolution of the Internet is Changing Everything. Available online: https://pdfs.semanticscholar.org/e434/2d4687233ae12aa689407f97502d87a9f27b.pdf?_ga=2.6056051.1184386924.1573532264-231942018.1567670099 (accessed on 12 November 2019).
Primary Challenge I - Provisioning Software as a Service for Mobile Computing (SaaS for Mobile) | |
Problem View | Software Architecture Solution |
Sub-challenge A: Supporting Enterprise Software Services for Mobile Computing | |
Challenge: How to provide the enterprise software as dynamically composable services that can be discovered and consumed by mobile devices. | Solution: Model and automate the enterprise processes as software services that are deployed (published) over cloud-based servers and executed on (subscribed by) mobile devices to support portable enterprise software. |
Related Studies [S1, S24, S60, S66, S69] | |
Sub-challenge B: Provisioning of Recommendation as a Services for Mobile Computing (RaaS for Mobile) | |
Challenge: How to exploit the portability and context-awareness of mobile devices to support portable and context-aware recommendation services. | Solution: Context-aware and location-sensitive mobile services are published by the services providers that are subscribed and consumed by service requester—following publish–subscribe mechanism. |
Related Studies [S12, S31, S34, S38, S49, S54, S57] | |
Reference Architecture Reference Architecture of SaaS for Mobile Computing | |
Primary Challenge II - Supporting Mobile Data Offloading to Cloud-based Servers | |
Sub-challenge A: Achieving Computational Efficiency for Mobile Devices | |
Challenge: How to achieve computational efficiency while maintaining the portability and performance of a resource- constrained mobile device. | Solution: Computationally intensive data is offloaded to the cloud server that performs all the complex computations to provide the results to the mobile device. |
Related Studies [S2, S3, S5, S8, S11, S13, S15, S16, S17, S19, S21, S23, S25, S26, S27] | |
Sub-challenge B: Supporting Energy Efficiency for Mobile devices | |
Challenge: How to optimize the energy efficiency (prolonging the life of charged battery) of a mobile device. | Solution: Adaptive offloading of data and computation from mobile device to cloud-based server—by monitoring and estimating energy consumption—to optimize the energy efficiency of mobile device. |
Related Studies [S4, S30, S41, S51, S65] | |
Sub-challenge C: Supporting Storage Efficiency and Cloud Analytics for Mobile Device Data | |
Challenge: How to utilize a mobile device for sensing contextual data and information and perform analysis of the collected data. | Solution: A layered architecture where the mobile device acts as context-aware and portable front-end technology for sensing the data, whereas cloud computing acts as a resourceful back-end server for data storage and analytics. |
Related Studies [S7, S10, S33, S42, S43, S46, S47, S53, S64, S67] | |
Reference Architecture Reference Architecture of Mobile to Cloud Data Offloading | |
Primary Challenge III: Supporting Privacy and Security of Mobile Data | |
Sub-challenge I: Supporting Security of Mobile Device Data | |
Challenge: How to leverage the cloud computing resources to enable security of the mobile device data. | Solution: Security as a service for data between mobile device and cloud-based servers. |
Related Studies [S14, S18, S39] | |
Reference Architecture Reference Architecture of Security as a Service for Mobile Cloud Computing | |
Primary Challenges IV: Architecting Internet of Things, Edge, and Fog Computing Systems | |
Sub-challenge A: Enabling Mobile Cloud-based Internet of Things | |
Challenge: How to develop context-sensitive and resource sufficient network of interconnected mobile devices. | Solutions: Mobile devices can be considered as context-sensitive (computation and storage intensive) interconnected things that communicate and process data via a central cloud-based server. |
Related Research [S106, S110, S112, S114, S120] | |
Sub-challenge B: Supporting Mobile Edge and Fog Computing | |
Challenge: How to enable the processing of data at the edge of a network. | Solutions: Interconnected mobile devices as computation nodes can generate and process data closer to data usage without the needs for transmitting data to the central processor at a remote location in the network. Fog computing standardizes the operationalization of the edge computing. |
Related Research – Edge Computing [S103, S104, S107, S108, S115, S118, S119] Related Research – Fog Computing [S105, S117] | |
Reference Architecture Reference Architecture for Mobile-based IoTs. |
Pattern I - Adaptive Offloading |
---|
1. Pattern Intent: To enable a mobile device to dynamically determine what, how and where to offload its data to enhance efficiency of mobile computing. |
2. Design Problem: How to enable a (resource-constrained) mobile device to delegate its memory and computational-intensive data and tasks to (resource-sufficient) computers. |
3. Solution: Integrate the off-loading logic between Mobile Computing and Cloud Computing Layers. Such an integrated logic enables a mobile device to exploit dynamic parameters—such as energy efficiency, computational overhead, and storage requirements—to determine and offload data and tasks to cloud computing servers. |
4. Architecture Elements: Mobile Computing Layer with (resource-constrained) mobile devices and Cloud Computing Layer (resource sufficient) server are integrated with offloading knowledge. |
5. Reuse Design Knowledge: Integration of offloading logic/knowledge to delegate mobile computing data and tasks to cloud-based servers. |
6. Quality Characteristics: - Elasticity of cloud services (acquiring and releasing resources) based on dynamically determined offloading. - QoS-driven Offloading to ensure that dynamic parameters such as energy, storage, and computational efficiency. |
7. Reference Diagram:Figure 6a Pattern Instantiation represents a concrete instance of the abstract pattern representation in Figure 6a Pattern Abstraction. Specifically, Figure 6a Pattern Abstraction illustrates a scenario of pattern application where mobiles devices are used as portable computers to capture contextual images that needs analytics and processing to gather information as detailed in [S46]. The image processing must be delegated to the cloud servers that have image databases to match and process the image. The offloading logic is integrated between the mobile device and cloud server to enable a mobile device to selectively and dynamically offload the images to the appropriate cloud-based server based on energy, computational, or storage eefficiency. |
Pattern II - Mobile Cloudlets |
---|
1. Pattern Intent: To enable a mobile device in a hostile environment to frequently offload data to servers that are in close proximity of mobile devices that they serve. |
2. Design Problem: How to minimize the offloading latency (on remote server) to a single-hop network while maximizing the performance and QoS for mobile computing tasks. |
3. Solution: The proposed architecture integrates an intermediate layer (based on localized cloud known as cloudlets) between the enterprise cloud and the mobile device. The solution assumes that connectivity to the main cloud (enterprise) cloud is either not reliable or commonly unavailable. |
4. Reference Diagram: As illustrated in Figure 6b, this architecture inserts an intermediate layer between the central core (i.e., enterprise cloud) and the mobile devices. At the edges of this architecture are offload elements for mobile devices. These elements, or cloudlets, are dispersed and located close to the mobile devices they serve. |
Pattern III - Context Sensing |
---|
1. Pattern Intent: To exploit the context-sensitive mobile device to capture contextual data that is sent to the cloud-server for data processing and analytics. |
2. Design Problem: How to gather the contextual information that can be processed and analyzed to perform decisions. |
3. Solution: The proposed architecture presents a two-layered architecture, namely the mobile sensing and cloud analytics layer. Specifically, the mobile layers enable the capturing of the contextual information (e.g., environmental condition, trafficc congestion) and send it to the cloud-based server. The cloud server runs the algorithms to analyze data and provide decision support on processed data. Mobile sensing and cloud analytics represent a typical example of front-end mobile devices that can offload computation-intensive tasks to backend server. Specifically, the mobile sensing layer exploits context-sensitive mobile devices as portable user interface to sense the contextual information such as traffic conditions, environment, and crowd-sensing. The contextual information is stored, processed, and analyzed at the back-end cloud server. |
4. Reference Diagram: As illustrated in Figure 6c. This architecture aims to exploit the mobile device as a front-end interface to capture the contextual data and information on the go. The captured data are analyzed on the cloud-based server to alleviate the resource poverty of a mobile device. |
Pattern IV – Mobility-driven Internet of Things |
---|
1. Pattern Intent: To exploit portable and context-sensitive mobile devices as computation and memory-based things to support interconnect things |
2. Design Problem: How to interconnect and manage mobile devices as interconnected things in internet of things architecture. |
3. Solution: The proposed architecture provides a cloud-based server as a mediator that is responsible for managing all the communication along with computation and memory-intensive tasks that are offloaded form interconnected things (mobile devices). Mobile devices interact with each other via the central cloud in the internet of things architecture. |
4. Reference Diagram: As illustrated in Figure 6d, mobile devices and sensors of interconnected things such as heterogeneous (front-end) are managed and operationalized by the central (back-end) cloud. |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Alreshidi, A.; Ahmad, A.; B. Altamimi, A.; Sultan, K.; Mehmood, R. Software Architecture for Mobile Cloud Computing Systems. Future Internet 2019, 11, 238. https://doi.org/10.3390/fi11110238
Alreshidi A, Ahmad A, B. Altamimi A, Sultan K, Mehmood R. Software Architecture for Mobile Cloud Computing Systems. Future Internet. 2019; 11(11):238. https://doi.org/10.3390/fi11110238
Chicago/Turabian StyleAlreshidi, Abdulrahman, Aakash Ahmad, Ahmed B. Altamimi, Khalid Sultan, and Rashid Mehmood. 2019. "Software Architecture for Mobile Cloud Computing Systems" Future Internet 11, no. 11: 238. https://doi.org/10.3390/fi11110238