**2. Cloud Computing**

Cloud infrastructures comprise the front end and back end. The front end refers to the end users' devices (e.g., pc, tablets, or smartphones), an Internet connection, and a web browser or similar application indispensable to accessing the Cloud Computing environment. Two different types of users can benefit from the front end: (i) the user of the final Cloud service; (ii) the developer and owner of the provided Cloud service. Through the front end, the provider ensures the final users that data on its hosts are always available through Internet connections. Simultaneously, developers can always have access to enhance and maintain their services by interacting with the Cloud system through terminals-scripts, RESTfull services [11], and even using traditional browsers. The back end includes the data center resources providing security, storage capacity, and computing power necessary to keep all the Cloud ecosystems available to the users.

#### *2.1. Service Models of Cloud Computing*

Cloud Computing includes different standardized service models, among which are the following:


control the beneath-Cloud infrastructure, whereas having control of the operating systems, storage, deployed applications, and limited control on some select networking components, e.g., host firewalls or bridges.

Over the years, in addition to the essential service models, new Cloud service models have been added, including the following:


A critical aspect of each Cloud services model is the Multi-Tenancy (MT). MT is the Cloud platforms' power to satisfy multiple user requests concurrently, providing the highest separation between run time environment and data. MT is achieved by virtualizing the applications' run time environment and/or operating system, allowing users' applications to run on different Virtual Machines (VM). MT differs from multi-user operations, where multiple users share the same application. Still, the user applications and run time data, also known as user context, are only logically separated, e.g., held in different files or directories on the same physical storage.

#### *2.2. Deployment Models of Cloud Computing*

Deployment models have been developed alongside cloud service models to support users' business workloads. Today, business applications and processes rely on a complex ecosystem of hardware and services, each with its prerequisites in terms of privacy, availability, and scalability. Over the last decade, Cloud Computing has been embraced to improve business processes, and its models have been extended to meet the challenges in various scientific areas, including healthcare.

The Cloud Computing deployment models include the following:



To sum up, the Public Cloud is suitable for use cases in which it is necessary to scale up quickly, execute short-term jobs, and mitigate the request for computational resources. The Private Cloud is ideal for use cases in which it is mandatory to protect sensitive information, including patents, meet data compliance requirements, ensuring high availability. The Federated Cloud infrastructure enables application scalability and workload optimization requirements through a federation paradigm between Public and Private Clouds. Hybrid Cloud is ideal for combining Public and Private Cloud services on-site in a unique integrated architecture. Multicloud is ideal for using multiple Cloud services, even from different providers. Multicloud can also incorporate physical and virtual infrastructures in a single heterogeneous Cloud environment. Intercloud is ideal for implementing more specific but customized common control and managemen<sup>t</sup> functions for creating a virtual Private Cloud with restricted access based on federated access.

Table 1 shows the advantages and disadvantage of Deployment models.

**Table 1.** The table summarises the advantages and disadvantages of Cloud Deployment Models. In the table DM are the initials of Deployment Models; CP refers to Computational Power; S indicates the Security; AS introduces the Applications Scalability; AP denotes the Applications Portability; ToJ refers to Type of Job; HS refers to Heterogeneous Service; C refers to the Costs; EU indicates the Exclusive Use; T is the Trustness; sj, cj, and gj are the initials of short, critical, and general job, finally, the √ indicate feature availability, while × indicates absence of the feature.

