You are on page 1of 36

UNIT 19

Cloud computing
ASSIGNMENT 1
No.1

Learner’s name: Hua Tan Kiet, Mai Trần


Nguyên Khôi, Nguyễn Nhật Đức

Assessor name: Nguyễn Ngọc Tú

Class: GCS0805B

Learner’s ID: GCS18671


Subject’s ID:

Assignment due:

Assignment submitted:
Article I. ASSIGNMENT 1 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title Unit 16: Cloud computing

Submission date Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name HUA TAN KIET Student ID GCS18671

Class GCS0805B Assessor name NGUYEN NGOC TU

Student declaration

I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand
that making a false declaration is a form of malpractice.

Student’s signature KIET

Grading grid

P1 P2 P3 P4 M1 M2 D1
 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date:


Internal Verifier’s Comments:

Signature & Date:

Page 3
ASSIGNMENT 1 BRIEF
Qualification BTEC Level 5 HND Diploma in Computing

Unit number Unit 16: Cloud computing

Assignment title Cloud Computing Solutions

Academic Year 2021 – 2022

Unit Tutor DO Quoc Binh

Issue date Submission date

IV name and date

Submission Format:

Format: The submission is in the form of 1 document


You must use font Calibri size 12, set number of the pages and use multiple line spacing at
1.3. Margins must be: left: 1.25 cm; right: 1 cm; top: 1 cm and bottom: 1 cm. The reference
follows Harvard referencing system.
Submission Students are compulsory to submit the assignment in due date and in a way requested by
the Tutors. The form of submission will be a soft copy posted on
http://cms.greenwich.edu.vn/
Note: The Assignment must be your own work, and not copied by or from another student or from
books etc. If you use ideas, quotes or data (such as diagrams) from books, journals or other sources, you
must reference your sources, using the Harvard style. Make sure that you know how to reference properly,
and that understand the guidelines on plagiarism. If you do not, you definitely get failed

Unit Learning Outcomes:

LO1 Demonstrate an understanding of the fundamentals of Cloud Computing and its architectures.

LO2 Evaluate the deployment models, service models and technological drivers of Cloud Computing and
validate their use.

Assignment Brief and Guidance:

Scenario

Page 4
ATN is a Vietnamese company which is selling toys to teenagers in many provinces all over Vietnam. The
company has the revenue over 700.000 dollars/year. Currently each shop has its own database to store
transactions for that shop only. Each shop has to send the sale data to the board director monthly and
the board director need lots of time to summarize the data collected from all the shops. Besides the
board can’t see the stock information update in real time.

The table of contents in your technical report should be as follows:

1. As a developer, explain to the board director thefundamentals of cloud computing and how it is
popular nowadays(about 2500 words)
2. Proposed solution (higher level solution description – around 700 words) and explain the
appropriateness of the solution for the scenario (about 400 words with images and
diagrams)which might include:
a. Architectural design (architectural diagram and description).
b. Detailed design:
i. Deployment model (discussion on why that model was chosen).
ii. Service model (discussion on why that model was chosen).
iii. Programming language/ webserver/database server chosen.
3. Summary.

General guidelines:

• Instead of providing definitions but also provide with examples.


• Provide more own arguments instead of definitions
• Making use of academic references instead of web tutorials
• For a cloud architecture look at the bottom of this document

Page 5
Learning Outcomes and Assessment Criteria

Pass Merit Distinction

LO1 Demonstrate an understanding of the fundamentals of Cloud


Computing and its architectures
LO1 & 2
P1 Analyse the evolution and M1 Discuss why an organisation
D1 Justify the tools chosen to
fundamental concepts of Cloud should migrate to a Cloud
realise a Cloud Computing
Computing. Computing solution.
solution.

P2 Design an appropriate
architectural Cloud Computing
framework for a given scenario.

LO2 Evaluate the deployment models, service models and


technological drivers of Cloud Computing and validate their use

P3 Define an appropriate M2 Demonstrate these


deployment model for a given deployment models with real
scenario. world examples.

P4 Compare the service models


for choosing an adequate model
for a given scenario.

Page 6
Contents
Table of Contents
Article I. ASSIGNMENT 1 FRONT SHEET ...................................................................................................................... 2
Article II. TABLE OF FIGURES ....................................................................................................................................... 9
Article III. TABLE OF CONTENTS............................................................................................................................... 10
I. Introduction ......................................................................................................................................................... 11
II. Analyse the evolution and fundamental concepts of Cloud Computing (P1) ............................................................ 11
1. Explain to the board director the fundamentals of cloud computing and how it is popular nowadays ..................... 11
1.1 Explain different computer models ....................................................................................................................... 11
1.1.2 Peer to Peer model (P2P) ........................................................................................................................... 11
1.1.3 Gird computing model ............................................................................................................................... 12
1.1.4 Cloud computing model ............................................................................................................................. 13
1.2 Explain five main characteristics of Cloud Computing ............................................................................................ 13
1.2.1 On – demand self-services ......................................................................................................................... 13
1.2.2 Broad network access ................................................................................................................................ 14
1.2.3 Resource pooling ....................................................................................................................................... 14
1.2.4 Rapid elasticity .......................................................................................................................................... 14
1.2.5 Measured service ...................................................................................................................................... 14
2. Persuade the board director to use Cloud Computing in ATN ................................................................................. 14
2.1 What cloud services can be used for ATN? ............................................................................................................. 14
2.1.1 Infrastructure as a service (IaaS) ................................................................................................................ 15
2.1.2 Platform as a service (PaaS) ....................................................................................................................... 15
2.1.3 Software as a service (SaaS) ....................................................................................................................... 15
2.2 The advantages of using cloud for ATN .................................................................................................................. 15
2.3 The disadvantages of cloud for ATN ...................................................................................................................... 16
3. Proposed solution ................................................................................................................................................ 18
3.1 Explain different components of IaaS .................................................................................................................... 18
3.2 Explain different components of PaaS ................................................................................................................... 19
3.3 Explain different components of SaaS ................................................................................................................... 19
4. Explain the appropriateness of the solution for the scenario .................................................................................. 20
4.1 How infrastructure is migrated to cloud ................................................................................................................ 21
4.2 How platform is migrated to cloud ........................................................................................................................ 21
4.3 How software is migrated to cloud ........................................................................................................................ 21
III. Design an appropriate architectural Cloud Computing framework for a given scenario (P2) .................................... 22

Page 7
1. Use case diagrams ................................................................................................................................................ 22
2. Architectural Design ............................................................................................................................................. 22
3. Deploy Application on Cloud Computing Diagrams ................................................................................................ 23
4. Sitemap ............................................................................................................................................................... 23
IV. Define an appropriate deployment model for a given scenario (P3) ........................................................................ 24
1. Public Cloud ......................................................................................................................................................... 24
2. Private Cloud ........................................................................................................................................................ 25
3. Community Cloud ................................................................................................................................................. 25
4. Hybrid Cloud ........................................................................................................................................................ 26
❖ FOR ATN company: ............................................................................................................................................... 27
V. Compare the service models for choosing an adequate model for a given scenario (P4) .......................................... 27
1. What are SaaS, PaaS, and IaaS? .................................................................................................................................... 27
2. What is SaaS? .................................................................................................................................................................. 28
2.1 Benefits of SaaS ................................................................................................................................................................ 29
2.2 SaaS use cases ................................................................................................................................................................... 29
3 What is PaaS? .................................................................................................................................................................. 29
3.1 Benefits of PaaS ................................................................................................................................................................ 30
3.2 PaaS use cases ................................................................................................................................................................... 30
4 What is IaaS? ................................................................................................................................................................... 31
4.1 Benefits of IaaS ................................................................................................................................................................. 31
4.2 IaaS use cases .................................................................................................................................................................... 32
5 SaaS, PaaS, and IaaS comparison................................................................................................................................. 32
6 IaaS vs PaaS vs SaaS: Which Cloud Service Is Suitable for me? ............................................................................. 35
7 References ........................................................................................................................................................... 35

Page 8
Article II. TABLE OF FIGURES
Figure 1: Client - server model ......................................................................................................................................... 11
Figure 2: P2P model ......................................................................................................................................................... 12
Figure 3: Gird computing model ...................................................................................................................................... 12
Figure 4: Cloud computing model .................................................................................................................................... 13
Figure 5: Five main characteristics................................................................................................................................... 13
Figure 6: Proposed solution ............................................................................................................................................. 18
Figure 7: Use case diagram user ...................................................................................................................................... 22
Figure 8: Use case diagram admin ................................................................................................................................... 22
Figure 9: Architectural design .......................................................................................................................................... 23
Figure 10: Deploy Application on Cloud Computing Diagrams ........................................................................................ 23
Figure 11: Sitemap ........................................................................................................................................................... 24
Figure 12: Public cloud..................................................................................................................................................... 24
Figure 13: Private cloud ................................................................................................................................................... 25
Figure 14: Community Cloud ........................................................................................................................................... 26
Figure 15: Hybrid Cloud ................................................................................................................................................... 26
Figure 16: programming languages ................................................................................................................................. 29
Figure 17: Web server...................................................................................................................................................... 30
Figure 18: Database server .............................................................................................................................................. 30

Page 9
Article III. TABLE OF CONTENTS
Table 1: The advantages of using cloud for ATN ............................................................................................................. 15
Table 2: The disadvantages of cloud for ATN .................................................................................................................. 16
Table 3: Compare the service model ............................................................................................................................... 27

Page 10
I. Introduction
Cloud computing is expanding the reach of the IT landscape. Driven by a number of converging
and complementary factors, cloud computing is evolving as a viable IT service delivery model at
an astounding rate. And as a developer for the company ATN, I needed to do a report explaining
to the board of directors and the board the fundamentals of cloud computing and how it is
prevalent today. In my report it is necessary to provide a proposed solution and explain its
suitability for the scenario.
II. Analyse the evolution and fundamental concepts of Cloud Computing (P1)
1. Explain to the board director the fundamentals of cloud computing and how it is popular
nowadays
1.1 Explain different computer models
1.1.1 Client-server model

Figure 1: Client - server model

The client-server model describes how a server provides resources and services to one
or more clients. Each of these servers provide resources to client devices, such as
desktop computers, laptops, tablets, and smartphones. Most servers have a one-to-
many relationship with clients, meaning a single server can provide resources to
multiple clients at one time. When a client requests a connection to a server, the server
can either accept or reject the connection. If the connection is accepted, the server
establishes and maintains a connection with the client over a specific protocol [1].
Note: The client-server model may be contrasted to the Peer to Peer model, in which
clients connect directly to each other. In a Peer to Peer connection, there is no central
server required, since each machine acts as both a client and a server [1].
1.1.2 Peer to Peer model (P2P)

Page 11
Figure 2: P2P model

In a peer-to-peer network, all “Peer” means all computers linked together through the
internet. The P2P network does not have any central server, so each user can share
any type of file on any peer-to-peer network over this network. Every peer-to-peer
application on this P2P N/W acts as a server as well as a client [2].
In P2P network, three methods are used for connecting multiple computer systems
like as basic method is to use USB (universal serial bus) to make connection between
two peers, second method is to use copper wires to make connection for more
computers, and finally method is to use protocols which help to control all connections
between several terminals on the internet [2].
1.1.3 Gird computing model

Figure 3: Gird computing model

Grid computing is a distributed structure of a large number of computers connected


to solve a complicated problem. In grid computing, servers and computers run
independently and are loosely connected by the Internet. Computers may connect
directly or through scheduling systems. Grid Computing involves a large number of
computer which are connected parallel and makes a computer cluster. Grid computing
is used in various types of applications such as mathematical, scientific, and
educational tasks via various computing resources [3].
Grid computing is a processor architecture that integrates computer resources from
various domains to achieve a primary goal. The computers on the network will work
together in grid computing on a project, thus acting as a supercomputer. Grid systems
are mainly designed for resource sharing by Distributed and cluster computing on a

Page 12
large scale. It divides the complex tasks into smaller pieces that are distributed to the
CPUs and keeps in the grid [3].
1.1.4 Cloud computing model

Figure 4: Cloud computing model

Cloud Computing is defined as the on-demand facility of computer power, database


storage, applications, and other IT resources through the internet. It provides a
solution for IT infrastructure at a low price. In simple words, cloud computing means
storing and accessing the data via the internet instead of the computer’s hard drive.
And It's a pay-per-use model [3].
1.2 Explain five main characteristics of Cloud Computing
Cloud computing has five essential characteristics. Without any of these characteristics, it's
not cloud computing.

Figure 5: Five main characteristics

1.2.1 On – demand self-services


Cloud computing resources can be provisioned without human interaction from the
service provider. In other words, a manufacturing organization can provision
additional computing resources as needed without going through the cloud service
provider. This can be a storage space, virtual machine instances, database instances,
and so on.
Manufacturing organizations can use a web self-service portal as an interface to access
their cloud accounts to see their cloud services, their usage, and also to provision and
de-provision services as they need to [4].

Page 13
1.2.2 Broad network access
Cloud computing resources are available over the network and can be accessed by
diverse customer platforms. It other words, cloud services are available over a
network—ideally high broadband communication link—such as the internet, or in the
case of a private clouds it could be a local area network (LAN).
Network bandwidth and latency are very important aspects of cloud computing and
broad network access, because they relate to the quality of service (QoS) on the
network. This is particularly important for serving time sensitive manufacturing
applications [4].
1.2.3 Resource pooling
Resource pooling means that multiple customers are serviced from the same physical
resources. Providers’ resource pool should be very large and flexible enough to service
multiple client requirements and to provide for economy of scale. When it comes to
resource pooling, resource allocation must not impact performances of critical
manufacturing applications [4].
1.2.4 Rapid elasticity
Rapid elasticity allows users to automatically request additional space in the cloud or
other types of services. Because of the setup of cloud computing services, provisioning
can be seamless for the client or user. The fact that providers still need to allocate and
de-allocate resources is often irrelevant on the client or user's side. This is a very
essential aspect of cloud technology. In a sense, cloud computing resources appear to
be infinite or automatically available. That’s much different from older systems, where
the limits of storage or memory were immediately visible to a user.
The idea of rapid elasticity does raise some concerns in practical cloud computing
situations. Those who administer these kinds of systems explain that many different
allocation or de-allocation requests can have an impact on the system. Requests that
come from multiple sources can also be demanding and require precise
administration. Some of those who provide guidelines for cloud computing
recommend tools like monitoring and audit trails to tightly control all of the diverse
requests and transactions that happen in the provision of cloud services, and the rapid
elasticity that provides so much benefit to those who use the cloud [5].
1.2.5 Measured service
Cloud computing resources usage is metered and manufacturing organizations pay
accordingly for what they have used. Resource utilization can be optimized by
leveraging charge-per-use capabilities. This means that cloud resource usage—
whether virtual server instances that are running or storage in the cloud—gets
monitored, measured and reported by the cloud service provider. The cost model is
based on “pay for what you use”—the payment is variable based on the actual
consumption by the manufacturing organization [4].
2. Persuade the board director to use Cloud Computing in ATN
2.1 What cloud services can be used for ATN?

Page 14
The cloud is a hot topic for small businesses all the way to global enterprises, but remains a
broad concept that covers a lot of online territory. As you begin to consider switching your
business to the cloud, whether it be for application or infrastructure deployment, it is more
important than ever to understand the differences and advantages of the various cloud
services:
2.1.1 Infrastructure as a service (IaaS)
Infrastructure as a service (IaaS) is a cloud computing offering in which a vendor
provides users access to computing resources such as storage, networking, and
servers. Organizations use their own platforms and applications within a service
provider’s infrastructure [6].
2.1.2 Platform as a service (PaaS)
Platform as a service (PaaS) is a cloud computing offering that provides users with a
cloud environment in which they can develop, manage, and deliver applications. In
addition to storage and other computing resources, users are able to use a suite of
prebuilt tools to develop, customize, and test their own applications [6].
2.1.3 Software as a service (SaaS)
Software as a service (SaaS) is a cloud computing offering that provides users with
access to a vendor’s cloud-based software. Users do not install applications on their
local devices. Instead, the applications reside on a remote cloud network accessed
through the web or an API. Through the application, users can store and analyze data
and collaborate on projects [6].
2.2 The advantages of using cloud for ATN
Table 1: The advantages of using cloud for ATN

ADVANTAGES
IaaS The most flexible cloud computing model
Easy to automate deployment of storage, networking, servers, and processing power
Hardware purchases can be based on consumption
Clients retain complete control of their infrastructure
Resources can be purchased as-needed
Highly scalable [6].
PaaS Simple, cost-effective development and deployment of apps
Scalable
Highly available
Developers can customize apps without the headache of maintaining the software
Significant reduction in the amount of coding needed
Automation of business policy
Easy migration to the hybrid model [6].

Page 15
SaaS SaaS provides numerous advantages to employees and companies by greatly
reducing the time and money spent on tedious tasks such as installing, managing,
and upgrading software. This frees up plenty of time for technical staff to spend on
more pressing matters and issues within the organization [6].

2.3 The disadvantages of cloud for ATN


Table 2: The disadvantages of cloud for ATN

DISADVANTAGES
IaaS Interoperability: Integration with existing apps and services can be a major concern
if the SaaS app is not designed to follow open standards for integration.
Vendor lock-in: Vendors may make it easy to join a service and difficult to get out of
it.
Lack of integration support: Many organizations require deep integrations with on-
premise apps, data, and services. The complexity of integrations can further limit
how the SaaS app or other dependent services can be used.
Data security: Large volumes of data may have to be exchanged to the backend data
centers of SaaS apps in order to perform the necessary software functionality.
Transferring sensitive business information to public-cloud based SaaS service may
result in compromised security and compliance in addition to significant cost for
migrating large data workloads.
Customization: SaaS apps offer minimal customization capabilities. Since a one-size-
fits-all solution does not exist, users may be limited to specific functionality,
performance, and integrations as offered by the vendor. In contrast, on-premise
solutions that come with several software development kits (SDKs) offer a high
degree of customization options.
Lack of control: SaaS solutions involves handing control over to the third-party
service provider. These controls are not limited to the software–in terms of the
version, updates, or appearance–but also the data and governance.
Feature limitations: Since SaaS apps often come in a standardized form, the choice
of features may be a compromising tradeoff against security, cost, performance, or
other organizational policies. Furthermore, vendor lock-in, cost, or security concerns
may mean it’s not viable to switch vendors or services to serve new feature
requirements in the future.
Performance and downtime: Because the vendor controls and manages the SaaS
service, your customers now depend on vendors to maintain the service’s security
and performance. Planned and unplanned maintenance, cyber-attacks, or network

Page 16
issues may impact the performance of the SaaS app despite adequate service level
agreement (SLA) protections in place [6].
PaaS Data security: Organizations can run their own apps and services using PaaS
solutions, but the data residing in third-party, vendor-controlled cloud servers poses
security risks and concerns. Your security options may be limited as customers may
not be able to deploy services with specific hosting policies.
Integrations: The complexity of connecting the data stored within an onsite data
center or off-premise cloud is increased, which may affect which apps and services
can be adopted with the PaaS offering. Particularly when not every component of a
legacy IT system is built for the cloud, integration with existing services and
infrastructure may be a challenge.
Vendor lock-in: Business and technical requirements that drive decisions for a
specific PaaS solution may not apply in the future. If the vendor has not provisioned
convenient migration policies, switching to alternative PaaS options may not be
possible without affecting the business.
Customization of legacy systems: PaaS may not be a plug-and-play solution for
existing legacy apps and services. Instead, several customizations and configuration
changes may be necessary for legacy systems to work with the PaaS service. The
resulting customization can result in a complex IT system that may limit the value of
the PaaS investment altogether.
Runtime issues: In addition to limitations associated with specific apps and services,
PaaS solutions may not be optimized for the language and frameworks of your
choice. Specific framework versions may not be available or perform optimally with
the PaaS service. Customers may not be able to develop custom dependencies with
the platform.
Operational limitation: Customized cloud operations with management automation
workflows may not apply to PaaS solutions, as the platform tends to limit operational
capabilities for end users. Although this is intended to reduce the operational burden
on end users, the loss of operational control may affect how PaaS solutions are
managed, provisioned, and operated [6].
SaaS Security: While the customer is in control of the apps, data, middleware, and the OS
platform, security threats can still be sourced from the host or other virtual machines
(VMs). Insider threat or system vulnerabilities may expose data communication
between the host infrastructure and VMs to unauthorized entities.

Page 17
Legacy systems operating in the cloud: While customers can run legacy apps in the
cloud, the infrastructure may not be designed to deliver specific controls to secure
the legacy apps.
Internal resources and training: Additional resources and training may be required
for the workforce to learn how to effectively manage the infrastructure. Customers
will be responsible for data security, backup, and business continuity. Due to
inadequate control into the infrastructure however, monitoring and management of
the resources may be difficult without adequate training and resources available
inhouse.
Multi-tenant security: Since the hardware resources are dynamically allocated
across users as made available, the vendor is required to ensure that other
customers cannot access data deposited to storage assets by previous customers.
Similarly, customers must rely on the vendor to ensure that VMs are adequately
isolated within the multitenant cloud architecture [6].

3. Proposed solution

Figure 6: Proposed solution

3.1 Explain different components of IaaS


When an organization purchases an IaaS cloud computing service, it is renting or leasing access
to compute, data storage, networking, and virtualization capabilities owned by another
company. Each component of the cloud infrastructure plays a role in helping these
organizations successfully deploy and deliver applications and other services:
• Networking: Cloud resources are often delivered to users over the internet, so third-
party service providers are needed to build and maintain the network infrastructure
that makes this possible . This infrastructure includes physical wiring, switches, load

Page 18
balancers, and routers that help ensure the cloud infrastructure is available to
customers when needed.
• Server: A server is simply a computer or device that has been programmed to provide
services to clients or users. There are web servers that serve HTML or PHP files using
the HTTP protocol, file servers that store large volumes of information, mail servers
that send e-mails over the internet, and a few others. In a private cloud deployment,
organizations can use dedicated servers to store information, while public cloud
providers use a multi-tenant model and can use the same machine. to provide services
to many customers.
• Storage: Cloud storage services allow organizations to store and manage data on file
servers off-site instead of building their own physical data centers. Third-party cloud
storage providers such as Amazon Simple Storage Service (S3), Microsoft Azure, and
Google Cloud Storage can manage and maintain data and backups remotely. Data
stored in the cloud can be accessed over the internet or queried by other applications
deployed in the cloud. Cold data (data that is not actively used) can also be stored in
the cloud infrastructure.
• Virtualization: Virtualization is possibly the most important aspect of cloud
infrastructure. Virtualization software removes available data storage and computing
power from the actual hardware, allowing users to interact with their cloud
infrastructure through a graphical user interface. Computing resources and data
storage are often virtualized in the cloud, making it easier for users to use these
resources with simplicity and less waste.
3.2 Explain different components of PaaS
With PaaS, you can build applications into cloud infrastructure using support for multiple
programming languages (Java, PHP, Ruby, .NET) and Platform/Tool (Web server, Application
server, database). This helps users/organizations to focus on their business. Maintain
application instead of worrying about resource management, Platform, version. PaaS resides
inside the space between IaaS and SaaS. IaaS provides the ability to handle network, storage,
compute (eg Amazon EC2, Window azure VM Role, RackSpace cloud server). SaaS provides
the ability to deliver a business application like a CRM.
3.3 Explain different components of SaaS
Leasing Model: Leasing is a type of software architecture in which the implementation of a
software application serves multiple customers. Each customer is called a tenant. Tenants can
be given the ability to customize certain parts of the application, today applications are
designed in such a way that each tenant, storage area is segregated by having completely
different databases. whole or have a different package inside a single database or the same
database with discriminators.

Page 19
Automated provisioning: Users will have quick access to SaaS applications, which means that
the process of providing services to users needs to be automated. SaaS applications are
commonly used by B2B/B2C customers and this requires the creation of companies/users
simply by calling web services and providing access credentials. Most SaaS applications
provide this important feature, and a great example is Microsoft's CREST API. The Cloud
Service Broker (CSB) platform can automate this process to provide access to on-demand SaaS
applications. Another important feature is the ability to deauthorize - remove access from the
user/organization whenever the customer decides not to use the Software as a Service
application.
The only sign above: An enterprise organization wants a unique identification system to
authenticate the different systems that will be used by users. In addition, it is important for
businesses to have a single page to provide login credentials and access all Software as a
Service applications made available to their respective users.
Subscription-based billing: The price of SaaS applications is unrelated to the complexity of
license costs and upgrade costs, etc. In general, Software as a Service applications are
subscription-based and this allows customers to purchase SaaS applications whenever they
require it and stop continuing whenever the business decides that they do not need it.
necessary anymore. SaaS applications typically follow a seat-based billing model - the amount
purchased determines the amount to be paid. It can have various pricing models and billing
cycles like fixed monthly/quarterly/semi-annual/annual etc.
High Availability: SaaS applications are shared by many tenants, and availability of application
types is expected to be really high the entire time.
Elastic infrastructure: Usage of SaaS applications is often unpredictable, consumption can
change significantly over a number of months. The infrastructure on the deployed applications
must be truly able to scale/shrink the resources used behind the program. Today, SaaS
applications are designed in such a way that it defines the behavior of the infrastructure.The
monitoring agents reside in a deployment resource that is intimate with the respective
management server for the accessibility of the resource.
Data Security: Ensuring that business data/information is protected from corruption and
unauthorized access is very important in today's world. Since Software as a Service
applications are designed to be shared by different tenants, it is extremely important to know
how well the data is secured. Certain types of data must be enabled with encrypted storage
for a specific tenant, and other tenants are not allowed to access this data.
4. Explain the appropriateness of the solution for the scenario
Cloud migration is a top priority for businesses across the globe.
Despite that many migration projects end up failing due to poor strategy or planning.

Page 20
Apart from outright failing, many cloud migrations wind up going over budget and take much
longer than expected.
Planning ahead by having the right people involved and a clearly outlined steps for cloud
migration aligned with the business direction can help businesses avoid common pitfalls.
4.1 How infrastructure is migrated to cloud
Steps to move from infrastructure to cloud:
• Survey, consulting: Clarifying input requirements, problems encountered with IT
infrastructure including unlimited network coverage, security, servers, storage,
applications, facilities data…
• Verification: Selecting the right cloud computing technology and services for the
Client's problem. The right solutions and tools to perform the migration with the goal
of minimizing service interruption time as well as without changing the core
architectures that are working effectively in the system.
• Transfer: Implement the best and most suitable execution plans and plans for the
Client. The replication process with encrypted transmission over the Internet
environment is preferred as one of the advantages of the solution to minimize the risk
of data loss and service interruption.
4.2 How platform is migrated to cloud
Steps to move from platform to cloud:
• Check your business processes
• Define success
• Make a timetable
• Prioritize data and product migration
• Organize your SEO
• Make time for training
• Check in early and often
• Create a safety net for yourself
• Keep your customers in the loop
• Transparent performance tracking
4.3 How software is migrated to cloud
8 Cloud Migration Steps for Moving Software to the Cloud:
• Outline Reasons for Moving to the Cloud
• Get the Right People Involved: Form a Cloud Migration Team
• Determine Organizational Cloud-Readiness
• Choose a Cloud Vendor and Design Your Environment
• Create a Cloud Roadmap
• Get Your Software Cloud-Ready
Page 21
• Migrate Your Data
• Testing and Switching to Production
III. Design an appropriate architectural Cloud Computing framework for a given scenario (P2)
1. Use case diagrams
User

Figure 7: Use case diagram user

Admin

Figure 8: Use case diagram admin

2. Architectural Design

Page 22
Figure 9: Architectural design

Admin has access to the database to edit and view products and make requests or change the
database to best serve users.
3. Deploy Application on Cloud Computing Diagrams

Figure 10: Deploy Application on Cloud Computing Diagrams

Once the Construction of the Application is completed, the Admin has the right to publish the
Application to the Website through the Apache platform.
4. Sitemap
User:

Page 23
Figure 11: Sitemap

This is ATN's homepage map, users can switch to other pages to search for products, visit the
store page to view products and can view information about ATN on another page.
IV. Define an appropriate deployment model for a given scenario (P3)
1. Public Cloud
Definition: Are services provided by a 3rd party (seller). They exist outside of corporate firewalls
and are managed by the cloud provider. It is built for public use, users will register with the
provider and pay a usage fee based on the provider's pricing policy. Public cloud is the most
commonly used deployment model of cloud computing today.

Figure 12: Public cloud

Page 24
Target users: Including users outside the internet. The managed object is a service provider.
Advantages:
• Serve more users, not limited by space and time.
• Saving server systems, electricity and labor for businesses.
Disadvantages:
• Supplier-dependent businesses do not have full control.
• Having difficulty in storing documents and internal information.
However, Public Cloud has one obstacle, which is the loss of data control and data security issues.
In this model, all data is on the Cloud service, protected and managed by that Cloud service
provider. This makes customers, especially large companies, feel unsafe for their important data
when using Cloud services [8].
2. Private Cloud
Definition: Private cloud are cloud computing services provided in enterprises. These “clouds”
exist inside corporate firewalls and are directly managed by businesses. This is an inevitable trend
for businesses to optimize information technology infrastructure.

Figure 13: Private cloud

Target users: Internal enterprise use and management


Advantages: Actively using, upgrading, managing, reducing costs, good security, ...
Disadvantages:
• Difficulties in technology when deploying and the cost of building and maintaining the
system.
• Limited use within the enterprise, external users can not use [8].
3. Community Cloud

Page 25
Community Cloud is a hybrid form of private cloud. They are multi-tenant platforms that enable
different organizations to work on a shared platform.

Figure 14: Community Cloud

The purpose of this concept is to allow multiple customers to work on joint projects and
applications that belong to the community, where it is necessary to have a centralized cloud
infrastructure. In other words, Community Cloud is a distributed infrastructure that solves the
specific issues of business sectors by integrating the services provided by different types of cloud
solutions.
Community Cloud computing facilitates its users to identify and analyze their business demands
better. Community Cloud may be hosted in a data center, owned by one of the tenants, or by a
third-party cloud services provider and can be either on-site or off-site [7].
4. Hybrid Cloud
Definition: Hybird Cloud is a combination of private cloud and public cloud. Allows us to exploit
the strengths of each model as well as provide the optimal usage method for users. These “clouds”
are typically created by the enterprise, and management is split between the enterpriseand the
public cloud provider.

Figure 15: Hybrid Cloud

Page 26
Target users: Enterprises and suppliers managed by agreement. Users can use the
services ofthe provider and the company's own services.
Advantages: Enterprises can use many services at once without
limitation.Disadvantages: Difficult to deploy and manage. Cost a lot
[8].
❖ FOR ATN company:
Our recommendation is: Public cloud
• Low cost: Using Public Cloud helps ATN save money on information technology because
it does not have to invest in initial costs for hardware devices, virtualized servers and
providedby vendors. Service Provider. ATN can customize the necessary configuration
parameters and only need to pay the actual cost of use. ATN also does not need to hire
IT staff to operate the system; This work has been taken care of by the cloud providers.
• Maintenance-free: Cloud services are operated and maintained by the provider, so
ATN doesn't need to worry about this. Using Public Cloud means not owning
hardware devices,ATN only initiates and manages services using software tools.
• Virtually unlimited scalability, always ready to meet all ATN business needs.
• High reliability with a huge server network.
V. Compare the service models for choosing an adequate model for a given scenario (P4)

1. What are SaaS, PaaS, and IaaS?


- IaaS, PaaS and SaaS are the three most popular types of cloud service offerings. (They are
sometimesreferred to as cloud service models or cloud computing service models.)
• IaaS, or infrastructure as a service, is on-demand access to cloud-hosted physical and virtual servers,
storage and networking - the backend IT infrastructure for running applications and workloads in
thecloud.
• PaaS, or platform as a service, is on-demand access to a complete, ready-to-use, cloud-hosted
platform for developing, running, maintaining and managing applications.
• SaaS, or software as a service, is on-demand access to ready-to-use, cloud-hosted application
software.
- IaaS, PaaS and SaaS are not mutually exclusive. Many mid-sized businesses use more than one, and
mostlarge enterprises use all three.
- 'As a service' refers to the way IT assets are consumed in these offerings - and to the essential
differencebetween cloud computing and traditional IT. In traditional IT, an organization consumes IT
assets –
hardware, system software, development tools, applications - by purchasing them, installing them,

Page 27
managing them and maintaining them in its own on-premises data center. In cloud computing, the cloud
service provider owns, manages and maintains the assets; the customer consumes them via an Internet
connection, and pays for them on a subscription or pay-as-you-go basis.
- So the chief advantage of IaaS, PaaS, SaaS or any 'as a service' solution is economic: A customer can
access and scale the IT capabilities it needs for a predictable cost, without the expense and overhead of
purchasing and maintaining everything in its own data center. But there are additional advantages
specificto each of these solutions.

2. What is SaaS?
- SaaS (sometimes called cloud application services) is cloud-hosted, ready-to-use application software.
Users pay a monthly or annual fee to use a complete application from within a web browser, desktop
clientor mobile app. The application and all of the infrastructure required to deliver it - servers, storage,
networking, middleware, application software, data storage - are hosted and managed by the SaaS
vendor.
- The vendor manages all upgrades and patches to the software, usually invisibly to customers.
Typically,the vendor ensures a level of availability, performance and security as part of a service level
agreement (SLA). Customers can add more users and data storage on demand at additional cost.
- Today, anyone who uses a or mobile phone almost certainly uses some form of SaaS. Email, social
media, and cloud file storage solutions (such as Dropbox or Box) are examples of SaaS applications people
use every day in their personal lives. Popular business or enterprise SaaS solutions include Salesforce
(customerrelationship management software), HubSpot (marketing software), Trello (workflow
management), Slack

Page 28
(collaboration and messaging), and Canva (graphics). Many applications designed originally for the
desktop(e.g., Adobe Creative Suite) are now available as SaaS (e.g., Adobe Creative Cloud).

2.1 Benefits of SaaS


- The main benefit of SaaS is that it offloads all infrastructure and application management to the SaaS
vendor. All the user has to do is create an account, pay the fee and start using the application. The
vendorhandles everything else, from maintaining the server hardware and software to managing user
access andsecurity, storing and managing data, implementing upgrades and patches and more.
- Other benefits of SaaS include:
• Minimal risk: Many SaaS products offer a free trial period, or low monthly fees that let customers
try the software to see if it will meet their needs, with little or no financial risk.
• Anytime/anywhere productivity: Users can work with SaaS apps on any device with a browser and
an internet connection.
• Easy scalability: Adding users is as simple as registering and paying for new seats; customers can
purchase more data storage for a nominal charge.
- Some SaaS vendors even enable customization of their product by providing a companion PaaS
solution.One well-known example is Heroku, a PaaS solution for Salesforce.

2.2 SaaS use cases


- Today, just about any personal or employee productivity application is available as SaaS; specific use
casesare too numerous to mention (some are listed above). If an end user or organization can find a SaaS
solution with the required functionality, in most cases it will provide a significantly simpler, more scalable
and more cost-effective alternative to on-premises software.

3 What is PaaS?
- PaaS provides a cloud-based platform for developing, running, managing applications.  The cloud
servicesprovider hosts, manages and maintains all the hardware and software included in the platform -
servers (for development, testing and deployment), operating system (OS) software, storage,
networking, databases, middleware, runtimes, frameworks, development tools - as well as related
services for security,operating system and software upgrades, backups and more.
- Users access the PaaS through a graphical user interface (GUI), where development or DevOps teams
cancollaborate on all their work across the entire application lifecycle including coding, integration,
testing, delivery, deployment, and feedback.

Page 29
- Examples of PaaS solutions include  AWS Elastic Beanstalk, Google App Engine, Microsoft Windows Azure,
and Red Hat OpenShift on IBM Cloud.

3.1 Benefits of PaaS


- The primary benefit of PaaS  is that it allows customers to build, test, deploy run, update and scale
applications more quickly and cost-effectively than they could if they had to build out and manage
theirown on-premises platform. Other benefits include:
• Faster time to market: PaaS enables development teams to spin-up development, testing and
production environments in minutes, vs. weeks or months.
• Low- to no-risk testing and adoption of new technologies: PaaS platforms typically include access to
a wide range of the latest resources up and down the application stack. This allows companies to
test new operating systems, languages, and other tools without having to make substantial
investments in them, or in the infrastructure required to run them.
• Simplified collaboration: As a cloud-based service, PaaS provides a shared software
development environment, giving development and operations teams access to all the tools they
need, from anywhere with an Internet connection.
• A more scalable approach: With PaaS, organizations can purchase additional capacity for building,
testing, staging and running applications whenever they need it.
• Less to manage: PaaS  offloads infrastructure management, patches, updates and other
administrative tasks to the cloud service provider.

3.2 PaaS use cases


- PaaS can advance a number of development and IT initiatives including:
• API development and management: With its built-in frameworks, PaaS makes it easier for teams to
develop, run, manage and secure APIs for sharing data and functionality between applications.
• Internet of Things (IoT):  PaaS supports a range of programming languages (Java, Python, Swift,
etc.), tools and application environments used for IoT application development and real-time
processing of data from IoT devices.
• Agile development and DevOps: PaaS solutions typically cover all the requirements of a DevOps
toolchain and provide built-in automation to support continuous integration and continuous
delivery(CI/CD).
• Cloud-native development and hybrid cloud strategy: PaaS solutions support cloud-native
development technologies - microservices, containers, Kubernetes, serverless computing -
that

Page 30
enable developers to build once, then deploy and manage consistently across private cloud, public
cloud and on-premises environments.

4 What is IaaS?
- IaaS is on-demand access to cloud-hosted computing infrastructure - servers, storage capacity and
networking resources - that customer can provision, configure and use in much the same way as they use on-
premises hardware. The difference is that the cloud service provider hosts, manages and maintains the
hardware and computing resources in its own data centers. IaaS customers use the hardware via an internet
connection and pay for that use on a subscription or pay-as-you-go basis.
- Typically IaaS customers can choose between virtual machines (VMs) hosted on shared physical hardware
(the cloud service provider manages virtualization) or bare metal servers on dedicated (unshared) physical
hardware. Customers can provision, configure and operate the servers and infrastructure resources via a
graphical dashboard, or programmatically through application programming interfaces (APIs).
- IaaS can be thought of as the original 'as a service' offering: Every major cloud service provider - Amazon
Web Services, Google Cloud, IBM Cloud, Microsoft Azure - began by offering some form of IaaS.

4.1 Benefits of IaaS


- Compared to traditional IT, IaaS gives customers more flexibility builds out computing resources as
needed, and to scale them up or down in response to spikes or slow-downs in traffic. IaaS lets customers
avoid the up-front expense and overhead of purchasing and maintaining its own on-premises data center.It
also eliminates the constant trade-off between the waste of purchasing excess on-premises capacity to
accommodate spikes, versus the poor performance or outages that can result from not having enough
capacity for unanticipated traffic bursts or growth.
- Other benefits of IaaS include:
• Higher availability: With IaaS a company can create redundant servers easily, and even create themin
other geographies to ensure availability during local power outages or physical disasters.
• Lower latency, improved performance. Because  IaaS providers typically operate data centers in
multiple geographies, IaaS customers can locate apps and services closer to users to minimize
latency and maximize performance.
• Improved responsiveness. Customers can provision resources in a matter of minutes, test new ideas
quickly and quickly roll out new ideas to more users.
• Comprehensive security. With a high-level of security on-site, at data centers, and via encryption,
organizations can often take advantage of more advanced security and protection they could
provide if they hosted the cloud infrastructure in-house.

Page 31
• Faster access to best-of-breed technology. Cloud providers compete with each other by providingthe
latest technologies to their users, IaaS customers can take advantage of these technologies much
earlier (and at far less cost) than they can implement them on premises.

4.2 IaaS use cases


- Common uses of IaaS include:
• Disaster recovery:  Instead of setting up redundant servers in multiple locations, IaaS can deploy its
disaster recovery solution to the cloud provider's existing geographically dispersed infrastructure.
• Ecommerce:  IaaS is an excellent option for online retailers that frequently see spikes in traffic. The
ability to scale up during periods of high demand and high-quality security are essential in today’s 24-
7 retail industry. 
• Internet of Things (IoT), event processing, artificial intelligence (AI): IaaS makes it easier to set up and
scale up data storage and computing resources for these and other applications that work with huge
volumes of data.
• Startups: Startups can't afford to sink capital into on-premises IT infrastructure. IaaS gives them access
to enterprise-class data center capabilities without the up-front investment in hardware and
management overhead.
• Software development: With IaaS, the infrastructure for testing and development environments canbe
set up much more quickly than on-premises. (However, this use case is better suited to PaaS, as you'll
read in the next section.)

5 SaaS, PaaS, and IaaS comparison


- Cross-Concept Matrix of the Three Classifications of Cloud Computing
When
Paradigm Characteristic Disadvantag
Key terms Advantages not to
shift s es and risks
use
Infrastructu Usually Grid Avoid Business When
re as an platform – computing capital efficiency capital
Infrastructu
asset independent; utility expenditur and budget
re as a
infrastructure computing, e on productivity is
Service
costs are compute hardware largely greater
(IaaS)
shared and instance, and human depends on than
thus reduced; hypervisor, resources; the vendor’s operatin

Page 32
service level cloudburstin reduced capabilities; g
agreements g, multi – ROI risk; potentially budget
(SLAs); pay by tenant low barriers greater long-
usage; self - computing, to entry; term cost;
scaling resource streamlined centralizatio
pooling and n requires
automated new/
scaling different
security
measures
License Consumes Solution Streamline Centralizatio N/A
purchasing cloud stack d version n requires
Platform as infrastructure deploymen new/
a Service ; caters to t different
(PaaS) agile project security
management measures
methods
Software as SLAs; UI Thin client; Avoid Centralizatio N/A
an asset powered by client – capital n of data
(business “thin client” server expenditur requires
and applications; application e on new/
consumer) cloud software different
components; and security
Software as communicati developme measures
a Service on via APIs; nt
(SaaS) stateless; resources;
loosely reduced
coupled; ROI risk;
modular; streamlined
semantic and
interoperabili iterative
ty updates

Page 33
- The comparison table the different attributes of three classifications of Cloud Computing
SaaS PaaS IaaS
Software as a Service Platform as a Service Infrastructure as a
Full Form
Service
Business Users Developers and System managers
General Users
Deployers
Email, Office Service and application Virtual machines,
automation, CRM, test, development, operating systems,
Services available
website testing, Virtual integration and network, storage,
desktop deployment backup services
To complete business Create and deploy Create platform for
Business Justification tasks service and service and application
applications for users test, development
Complete abstraction Abstraction of Abstraction of
underlying hardware, underlying hardware
Abstraction
software and resources
application services
PayPal, Salesforce.com Azure Service platform, Amazon EC2, GoGrid
Examples
Fore.com
Highest degree of Good degree of control Minimal degree of
Control
control and flexibility and flexibility control and flexibility
Operational cost Minimal Lower Highest
Portability No portability Lower Best
Risk of Vendor Highest Medium Lowest
Interlock
Requires transparency Additional security is Should consider Virtual
in service provider’s required to make sure and physical servers
security policies to be rogue applications security policy
Security
able to determine the don’t exploit conformity
degree of sensitive vulnerabilities in
corporate data software platform

Page 34
6 IaaS vs PaaS vs SaaS: Which Cloud Service Is Suitable for me?
- ATN Company concentrates solely on storing and processing distant economic data, which implies that store
branches throughout Vietnam's provinces will report revenue via a web cloud. This makes it easier for
managers to see, collect, and extract economic data. With the SaaS service model, ATN will not be responsible
for constructing a data system; instead, the supplier will manage it, and the provider will also protect the
company's data security.
- The PaaS management application service will then be stored on the internet, which is particularly handyfor
remote access and the scope of ATN's retail chain. Establishments use the application via a web browser and
log in with the account provided to enter transaction data for their own stores. Meanwhile, the board of
directors uses a web browser to access the program, which allows them to easily view, extract, and
synthesize data from the store.
- Then, if you want to keep track of your company's stack of real-time print data, SaaS is a great option
because it allows you to access web sites using applications that run on a web browser. This is limitless, and it
is available at all times, 24 hours a day, seven days a week.
- Finally, because the SaaS model relies on a managed service provider, organizations don't have to worry
about upgrades or maintenance. As a result, organizations may concentrate on their core competencies
rather than processing and system administration concerns. Furthermore, organizations will save time in
terms of installing apps on devices, as well as managing and upgrading equipment to meet the software.
→ The SaaS service model is the most dependable solution for a corporation with basic processes and many
manual tasks, such as ATN.

7 References

Page 35
[1] Techterms.com. 2021. Client-Server Model Definition. [online] Available at:
<https://techterms.com/definition/client-server_model>
[2] DigitalThinkerHelp. 2021. What is Peer to Peer (P2P) Network? With Architecture, Types,
Examples. [online] Available at: <https://digitalthinkerhelp.com/what-is-peer-to-peer-
p2p- network-with-architecture-types-examples/>
[3] Tutorial And Example. 2021. Grid Computing vs Cloud Computing - Tutorial And Example.
[online] Available at: <https://www.tutorialandexample.com/grid-computing-vs-cloud-
computing/>
[4] Control Engineering. 2021. Control Engineering | Five characteristics of cloud computing.
[online] Available at: <https://www.controleng.com/articles/five-characteristics-of-
cloud- computing/>
[5] Techopedia.com. 2021. What is Rapid Elasticity? - Definition from Techopedia. [online]
Available at: <https://www.techopedia.com/definition/29526/rapid-elasticity>
[6] BMC Blogs. 2021. SaaS vs PaaS vs IaaS: What’s The Difference & How To Choose. [online]
Available at: <https://www.bmc.com/blogs/saas-vs-paas-vs-iaas-whats-the-difference-and-
how-to-choose/>
[7] Morioh.com. 2021. Social Network for Programmers and Developers. [online] Available at:
<https://morioh.com/p/d848c488317d>
[8] Netsa.vn. 2021. [online] Available at: <https://netsa.vn/4-mo-hinh-dich-vu-cloud-
computing- dien-toan-dam-may/>
[9] Khurana, S. and Verma, A., 2021. Comparison of Cloud Computing Service Models: SaaS,
PaaS, IaaS. [online] Semanticscholar.org. Available at:
<https://www.semanticscholar.org/paper/Comparison-of-Cloud-Computing-Service-
Models%3A-SaaS%2C-Khurana-
Verma/fabe9beaff63b625b47c269e861981b5654e7c18/figure/1>
[10] En.wikipedia.org. 2021. Programming language - Wikipedia. [online] Available at:
<https://en.wikipedia.org/wiki/Programming_language>
[11] Codecademy News. 2021. What is a programming language?. [online] Available at:
<https://www.codecademy.com/resources/blog/programming-languages/>
[12] vnsys. 2021. Web server là gì và cách nó làm việc. [online] Available at:
<https://vnsys.wordpress.com/2016/12/16/web-server-la-gi-va-cach-no-lam-viec/>
[13] Bizflycloud.vn. 2021. Database server là gì? Chức năng, hoạt động và lợi ích của Database
server. [online] Available at: <https://bizflycloud.vn/tin-tuc/database-server-la-gi-
20181009092956562.htm>

Page 36

You might also like