scholarly journals A Brief History of Cloud Application Architectures: From Deployment Monoliths via Microservices to Serverless Architectures and Possible Roads Ahead

Author(s):  
Nane Kratzke

This paper presents a review of cloud application architectures and its evolution. It reports observations being made during the course of a research project that tackled the problem to transfer cloud applications between different cloud infrastructures. As a side effect we learned a lot about commonalities and differences from plenty of different cloud applications which might be of value for cloud software engineers and architects. Throughout the course of the research project we analyzed industrial cloud standards, performed systematic mapping studies of cloud-native application related research papers, performed action research activities in cloud engineering projects, modeled a cloud application reference model, and performed software and domain specific language engineering activities. Two major (and sometimes overlooked) trends can be identified. First, cloud computing and its related application architecture evolution can be seen as a steady process to optimize resource utilization in cloud computing. Second, this resource utilization improvements resulted over time in an architectural evolution how cloud applications are being build and deployed. A shift from monolithic servce-oriented architectures (SOA), via independently deployable microservices towards so called serverless architectures is observable. Especially serverless architectures are more decentralized and distributed, and make more intentional use of independently provided services. In other words, a decentralizing trend in cloud application architectures is observable that emphasizes decentralized architectures known from former peer-to-peer based approaches. That is astonishing because with the rise of cloud computing (and its centralized service provisioning concept) the research interest in peer-to-peer based approaches (and its decentralizing philosophy) decreased. But this seems to change. Cloud computing could head into future of more decentralized and more meshed services.

2018 ◽  
Vol 8 (8) ◽  
pp. 1368 ◽  
Author(s):  
Nane Kratzke

This paper presents a review of cloud application architectures and its evolution. It reports observations being made during a research project that tackled the problem to transfer cloud applications between different cloud infrastructures. As a side effect, we learned a lot about commonalities and differences from plenty of different cloud applications which might be of value for cloud software engineers and architects. Throughout the research project, we analyzed industrial cloud standards, performed systematic mapping studies of cloud-native application-related research papers, did action research activities in cloud engineering projects, modeled a cloud application reference model, and performed software and domain-specific language engineering activities. Two primary (and sometimes overlooked) trends can be identified. First, cloud computing and its related application architecture evolution can be seen as a steady process to optimize resource utilization in cloud computing. Second, these resource utilization improvements resulted over time in an architectural evolution of how cloud applications are being built and deployed. A shift from monolithic service-oriented architectures (SOA), via independently deployable microservices towards so-called serverless architectures, is observable. In particular, serverless architectures are more decentralized and distributed, and make more intentional use of separately provided services. In other words, a decentralizing trend in cloud application architectures is observable that emphasizes decentralized architectures known from former peer-to-peer based approaches. This is astonishing because, with the rise of cloud computing (and its centralized service provisioning concept), the research interest in peer-to-peer based approaches (and its decentralizing philosophy) decreased. However, this seems to change. Cloud computing could head into the future of more decentralized and more meshed services.


Author(s):  
Rajinder Sandhu ◽  
Adel Nadjaran Toosi ◽  
Rajkumar Buyya

Cloud computing provides resources using multitenant architecture where infrastructure is created from one or more distributed datacenters. Scheduling of applications in cloud infrastructures is one of the main research area in cloud computing. Researchers have developed many scheduling algorithms and evaluated them using simulators such as CloudSim. Their performance needs to be validated in real-time cloud environments to improve their usefulness. Aneka is one of the prominent PaaS software which allows users to develop cloud application using various programming models and underline infrastructure. This chapter presents a scheduling API developed for the Aneka software platform. Users can develop their own scheduling algorithms using this API and integrate it with Aneka to test their scheduling algorithms in real cloud environments. The proposed API provides all the required functionalities to integrate and schedule private, public, or hybrid cloud with the Aneka software.


2012 ◽  
Vol 9 (3) ◽  
pp. 67-83 ◽  
Author(s):  
Stephen S. Yau ◽  
Ho G. An ◽  
Arun Balaji Buduru

In current cloud computing systems, because users’ data is stored and processed by computing systems managed and operated by various service providers, users are concerned with the risks of unauthorized usage of their sensitive data by various entities, including service providers. The current cloud computing systems protect users’ data confidentiality from all entities, except service providers. In this paper, an approach is presented for improving the protection of users’ data confidentiality in cloud computing systems from all entities, including service providers. The authors’ approach has the following features: (1) separation of cloud application providers, data processing service providers and data storage providers, (2) anonymization of users’ identities, (3) grouping cloud application components and distributing their execution to distinct cloud infrastructures of data processing service providers, and (4) use of data obfuscation and cryptography for protecting the sensitive data from unauthorized access by all entities, including service providers. The proposed approach ensures that users’ sensitive data can be protected from their service providers even if the users do not have full cooperation from their service providers.


passer ◽  
2019 ◽  
Vol 3 (2) ◽  
pp. 187-193
Author(s):  
Nigar Mahmoud Shafiq ◽  
Mohammed Y. Shakor

The global spread of Covid-19 has enhanced the adoption of virtual education and the use of technology in order to reduce the risk of contagion. Recently, the academics have turn out to be more technology-orientated and the educational establishments continue to seek opportunities in order to adopt an environment where all researchers could have access to high-quality scientific resources at anytime and anywhere in the world. Cloud computing is a model, which provides the users with services and application software on-demand, using the Internet. While the use of cloud computing applications is growing, there are ongoing research challenges related to guaranteeing security, privacy and the integration of the cloud applications. To the extent of our knowledge, the present study is the first from this type to thoroughly present the impacts of the COVID-19 pandemic on cloud computing environment in higher education institutions in Iraqi universities. This study will critically analysis the views of the faculty staff and researchers in Iraqi universities on cloud computing. It also tries to take a quick look at how Iraqi university staff responded to the epidemic in terms of research activities. The results shows that about 99% of the respondents considered the cloud applications to have great role in encouraging the research works in their institutes. Concerning the benefits of cloud services, the availability and saving cost were selected as most important factors that encouraging the adoption of cloud services. On the other hand, issues related to performance, lack of user control were selected as major problems in applying cloud services in Iraqi institutions Finally, it can be concluding that reducing the risks of the security, authorization, control and providing better performance of cloud services can enhance the use of cloud applications by researchers at Iraqi universities.


Author(s):  
Nitasha Hasteer ◽  
Abhay Bansal ◽  
B. K. Murthy

Cloud computing provides organizations the dynamic capability to deploy applications quickly on self-provision development platforms. In adopting a cloud-computing paradigm, the software development process leverages the use of cloud native features. This article highlights a cloud-based health insurance solution that enables consumers to purchase packages online with the objective of identifying attributes in the context of the development process while analyzing the association among the attributes. Exploratory factor analysis is used to identify the latent attributes. Their associations, in terms of causal relationship analysis, are investigated via DEMATEL. Results of factor analysis imply that agility, availability and adaptability are the underlying factors for cloud application development. The findings of the DEMATEL reveal that co-creative and collaborative development process, which embrace quick discovery and assembly of services in the cloud, are significant attributes that influence other attributes within the context of the cloud-based software development process.


Author(s):  
Guisheng Fan ◽  
Huiqun Yu ◽  
Liqiong Chen

Cloud computing has become an important, useful paradigm for building applications with cloud services. However, cloud services exist in heterogeneous environments on the Internet. It is challenging to guarantee the reliability of cloud applications. Although there are efforts studying cloud and grid service reliability, very few have considered the modeling and analysis of the reliability of cloud applications. To address this emerging, important problem, we propose the first systematic approach that considers both cloud application elements and their running environment so as to faithfully model the dynamics of cloud computing. First, we present a formal description language to model the different components of a cloud application, and use it to analyze the static and dynamic factors affecting the reliability of cloud applications. Second, we propose reliability assurance strategies to ensure that cloud applications dynamically meet their required reliability. Third, Computation Tree Logic (CTL) is used to convert the reliability assurance strategy into the CTL formulas. We present operational semantics and related theories of Petri nets for establishing the correctness of our proposed method. Finally, a series of simulations are performed to evaluate the efficiency of our proposed approach.


Author(s):  
Dong Kwan Kim

With the proliferation of cloud computing technologies, smartphone users are able to use a variety of cloud computing-based mobile services such as games, education, entertainment, and social networking. Despite the popularity of such a mobile cloud computing, the complicated multi-tier system configuration of the mobile application must be one of the major impediments to develop mobile cloud applications. This paper presents development processes and procedures for developing mobile cloud applications by effectively applying Unified Modeling Language (UML), a representative object-oriented modeling language. The paper is intended to enhance the development productivity of the mobile cloud application and to improve the effectiveness of communication between software developers. In addition, we used the Android mobile platform and Amazon Web Service for cloud computing in order to demonstrate the applicability of the proposed approach to systematically apply the UML profiles and diagrams for cloud-based mobile applications.


2015 ◽  
pp. 1915-1932
Author(s):  
Tariq M. King ◽  
Annaji S. Ganti ◽  
David Froslie

In cloud computing, applications are hosted, deployed, and delivered as services over the Internet. New cloud application services can be developed by tailoring existing ones, while hiding the complexity of the underlying implementation. Cloud applications may be able to adapt to changes in their environment, which should be secure and reliable. The infrastructure on which cloud applications are built is characterized by power, storage, and virtualization. But how does all of this affect the ability to adequately test cloud applications? This chapter investigates the testability of cloud application services. It focuses on the specific problem of reduced controllability and observability of software services hosted in the cloud, and proposes a novel solution referred to as Test Support as-a-Service (TSaaS). A prototype of TSaaS is also presented, and is used to discuss the feasibility, challenges, and benefits of the approach.


Author(s):  
Tariq M. King ◽  
Annaji S. Ganti ◽  
David Froslie

In cloud computing, applications are hosted, deployed, and delivered as services over the Internet. New cloud application services can be developed by tailoring existing ones, while hiding the complexity of the underlying implementation. Cloud applications may be able to adapt to changes in their environment, which should be secure and reliable. The infrastructure on which cloud applications are built is characterized by power, storage, and virtualization. But how does all of this affect the ability to adequately test cloud applications? This chapter investigates the testability of cloud application services. It focuses on the specific problem of reduced controllability and observability of software services hosted in the cloud, and proposes a novel solution referred to as Test Support as-a-Service (TSaaS). A prototype of TSaaS is also presented, and is used to discuss the feasibility, challenges, and benefits of the approach.


Sign in / Sign up

Export Citation Format

Share Document