You are on page 1of 35

1

ASSIGNMENT 1 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title Unit 16: Cloud computing

Submission date 06/04/2020 Date Received 1st submission

Re-submission Date 30/04/2020 Date Received 2nd submission

Student Name Lam Thai Duy Student ID GCD 18477

Class GCD 0703 Assessor name Tran Trong Minh

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 Duy

Grading grid

P1 P2 P3 P4 M1 M2 D1
2

❒ Summative Feedback: ❒ Resubmission Feedback:

Grade: Assessor Signature: Date:


Signature & Date:
3

Assignment 1
Cloud Computing

Name: Lam Thai Duy


Class: GCD0703
ID: GCD18477
Teacher: Tran Trong Minh
4

Table of Contents
Table of Contents....................................................................................................................................4

Table of Figures.......................................................................................................................................6

Table of Tables........................................................................................................................................ 6

I. Introduction......................................................................................................................................... 7

II. Cloud Computing Fundamentals.........................................................................................................8

1. Defining Cloud Computing.................................................................................................................. 8

2. Principles of Cloud computing............................................................................................................ 9

2.1. Essential Characteristics of Cloud Computing Systems........................................................... 9

2.2. Four Cloud Deployment Models............................................................................................ 11

2.3. Three Service Offering Models.............................................................................................. 11

3. Cloud Ecosystem............................................................................................................................... 12

4. Cloud architecture............................................................................................................................ 13

5. Requirements for Cloud Services......................................................................................................14

6. Cloud Application.............................................................................................................................. 15

III. The evolution of cloud computing in the modern world.................................................................16

IV. Benefits of cloud computing............................................................................................................16

VI. Explain the suitability of the solution to ATN..................................................................................18

VII. Architectural design........................................................................................................................20

1. Architecture diagram........................................................................................................................ 20

2. Description Architectural Diagram................................................................................................... 21

VIII. Detailed design.............................................................................................................................. 22

1. Deployment model........................................................................................................................... 22

1.1. Public Cloud............................................................................................................................22

1.2. Private Cloud..........................................................................................................................23

1.3. Community Cloud.................................................................................................................. 23

1.4. Hybrid Cloud.......................................................................................................................... 24

2. Compare models............................................................................................................................... 25

3. Service Models.................................................................................................................................. 26
5

3.1. SaaS - Software as a Service...................................................................................................26

3.2. PaaS - Platform as a Service...................................................................................................27

3.3. IaaS – Infrastracture as a Service........................................................................................... 28

3.4. Choose service models for ATN............................................................................................. 29

4. Programing language/web server/database server......................................................................... 30

4.1. Programing language............................................................................................................. 30

4.2. Web server.............................................................................................................................30

4.3. Database server..................................................................................................................... 31

IX. References....................................................................................................................................... 35
6

Table of Figures
Figure 1 : A cloud is used in network diagrams to depict the Internet.......................................... 8

Figure 2 : Overview of the cloud.....................................................................................................9

Figure 3 : The essential characteristics of cloud computing.........................................................10

Figure 4 : Actors with some of their possible roles in a cloud ecosystem....................................12

Figure 5 : Layers of cloud architecture......................................................................................... 13

Figure 6 : Original design.............................................................................................................. 18

Figure 7 : Design of the solution................................................................................................... 19

Figure 8 : Architectural design...................................................................................................... 20

Figure 9 : Steps to deploy a cloud application.............................................................................. 20

Figure 10 : Component of the deployed app................................................................................21

Figure 11 : Example of public cloud.............................................................................................. 22

Figure 12 : XAMPP.........................................................................................................................31

Figure 13 : PostgreSQL.................................................................................................................. 32

Figure 14 : Git................................................................................................................................33

Figure 15 : Heroku.........................................................................................................................34

Table of Tables
Table 1 : Compare models............................................................................................................ 25
7

I. Introduction

Based on the given scenario, we developed a newspaper to demonstrate the concept of


cloud computing and looked for ways to apply it as a solution for ATN. The report will have
two main parts: the first part will introduce cloud computing as well as their architecture;
The next section will be to review the selected model, service model and control
technologies and their performance when applied to the scenario.
8

II. Cloud Computing Fundamentals

1. Defining Cloud Computing

Cloud computing gets its name as a metaphor for the Internet. Typically, the Internet is
represented in network diagrams as a cloud, as shown in Figure 1. The cloud icon
represents “all that other stuff” that makes the network work. It’s kind of like “etc.” for the
rest of the solution map. It also typically means an area of the diagram or solution that is
someone else’s concern.

So if we return to the question of what cloud computing really is, it refers to the sharing
of resources, software and information over the network. In this case, via 'Internet' or more
precisely an Internet connection. Information and data are stored on physical or virtual
servers, maintained and controlled by cloud providers, such as Amazon and their AWS
products. As a personal or business cloud user, you access your stored information on the
'cloud', via an Internet connection.

Figure 1: A cloud is used in network diagrams to depict the Internet.

Note (Figure 1): Anthony T. Velte,Toby J. Velte ,Robert Elsenpeter et al(2009).Cloud Computing: A Practical Approach
9

Figure 2: Overview of the cloud

Ref figure: https://en.wikipedia.org/wiki/Cloud_computing

2. Principles of Cloud computing

2.1. Essential Characteristics of Cloud Computing Systems

 Self-management on demand:

Cloud computing resources can be provided without human interaction from the
service provider. In other words, a production organization can provide additional
computing resources as needed without going through the cloud service provider.
This could be a storage space, virtual machine cases, database instances, etc.

 Wide system:

Capabilities are available over the network and accessed through standard
mechanisms that promote use by heterogeneous thin or thick client platforms (for
example, mobile phones, workstations and PDAs).

 Multi-tenancy and resource pooling:

Cloud resources are designed to support the multi-tenant model. Multi-tenancy


allows multiple customers to share the same application or the same physical
10

infrastructure while preserving the privacy and confidentiality of their information. It


is similar to people living in an apartment building, sharing the same infrastructure of
the building but they still have a private apartment with full privacy and security in
that infrastructure.

Supplier registrations are pooled to serve multiple buyers using the multi-resident
model, with many physical and virtual assets strongly allocated and reassigned at the
buyer's request. . For the most part, there is a sense of regional freedom where the
customer does not have control or information over the careful area of ​ ​ the given
assets being able to identify the area at a higher level of reflection ( for example,
country, state or data center)

 Quick flexibility:

The ability can be flexibly supplied and discharged, now and naturally, the rate
quickly turned out and the internal rate with interest. For buyers, all accounts
accessible to regular offers seem to be limitless and can be occupied with any amount
of time at any time.

 Estimated administration

Cloud systems automatically control and optimize resource usage by leveraging


metering capabilities at an abstraction level appropriate to the type of service (e.g.
capacity, processing, and data transmission). Data and dynamic customer accounts).
The use of the property can be observed, controlled and detailed, bringing
straightforwardness and transparency to both the government sellers and buyers
who have used it.

Figure 3: The essential characteristics of cloud computing.

Note (Figure 2): K. Chandrasekaran(2014). Essentials of CLOUD COMPUTING.(page 14)


11

2.2. Four Cloud Deployment Models

Deployment models describe the ways with which the cloud services can be deployed
or made available to its customers, depending on the organization structure and the
provisioning location.

Four deployment models are usually distinguished, namely, public, private,


community, and hybrid cloud service usage.

 Private cloud: The cloud infrastructure is provisioned for exclusive use by a single
organization comprising multiple consumers (e.g., business units). It may be owned,
managed, and operated by the organization, a third party, or some combination of
them, and it may exist on or off premises

 Public cloud: The cloud infrastructure is provisioned for open use by the general public.
It may be owned, managed, and operated by a business, academic, or government
organization, or some combination of them. It exists on the premises of the cloud
provider

 Community cloud: The cloud infrastructure is shared by several organizations and


supports a specific community that has shared concerns. It may be managed by the
organizations or a third party and may exist on premise or off premise

 Hybrid cloud: The cloud infrastructure is a composition of two or more distinct cloud
infrastructures (private, community, or public) that remain unique entities but are
bound together by standardized or proprietary technology that enables data and
application portability

2.3. Three Service Offering Models

The three kinds of services with which the cloud-based computing resources are
available to end customers are as follows:

 Cloud SaaS

The capability provided to the consumer is to use the provider’s applications running on
a cloud infrastructure, including network, servers, operating systems, storage, and even
individual application capabilities, with the possible exception of limited user-specific
application configuration settings.
12

 Cloud PaaS

Consumer capability is to deploy on user-created cloud infrastructure or acquire


applications that are supported by vendor-supported programming languages, libraries,
services, and tools.

Consumers will not manage or control the underlying cloud infrastructure but have
control over the deployed applications and can configure the application storage
environment.

 Cloud IaaS

The capability provided to the consumer is to provision processing, storage, networks,


and other fundamental computing resources on a pay-per-use basis where he or she is able
to deploy and run arbitrary software, which can include operating systems and applications.

The consumer does not manage or control the underlying cloud infrastructure but has
control over the operating systems, storage, and deployed applications and possibly limited
control of select networking components

3. Cloud Ecosystem

The cloud ecosystem is a complex environment that includes unpredictable


arrangements of related segments, all working together to empower cloud authorities; the
complex entities include the traditional elements of cloud. computing such as software
(SaaS), hardware (PaaS and / or IaaS), other infrastructure (eg, network, storage) and also
stakeholders like cloud clients, cloud engineers, advisors, integrators and accomplices.

Figure 4: Actors with some of their possible roles in a cloud ecosystem.


13

Note (Figure 2): K. Chandrasekaran(2014). Essentials of CLOUD COMPUTING.(page 18)

4. Cloud architecture

Cloud Architecture refers to the different components of databases, software


capabilities, applications, etc. designed to leverage the power of cloud resources to solve
business problems. Cloud architecture identifies the components as well as the
relationships between them.

Figure 5: Layers of cloud architecture

Ref figure 5:https://www.researchgate.net/figure/Cloud-Computing-Architecture-39_fig4_257402460

The various components of Cloud Architecture are:

 On premise resources

 Cloud resources

 Software components and services

 Middleware

The entire cloud architecture aims to provide users with high bandwidth, allowing users
to access data and applications uninterrupted, fast network on demand capable of moving
quickly and efficiently between servers or even between clouds and most importantly
network security.
14

5. Requirements for Cloud Services

 Security and Customer Support

Security will be the top concern of businesses when choosing cloud service providers.
Because the cloud may contain important documents and sensibilities of businesses.
Supplier must provide strong security. Ensure vendors use firewalls, backup storage,
antivirus and encryption software, as well as custom rights and security settings. Make sure
the supplier has an administrator control panel accessible to easily contact the supplier's
technical support.

 Easy to administer

Ensure that cloud storage providers provide an intuitive service that is easy to learn,
understand, and implement. If a secure, powerful platform is not easy to use, it will
consume time, money and effort to use, it will take away many advantages of cloud-based
platforms.

 Backup, Storage and Retrieval

Cloud storage providers must provide appropriate data backup in case of emergencies,
corruption and other forms of data loss such as espionage or hackers. Choose a cloud
storage service provider with an extended backup system. Data storage and ease of access
are important components of cloud storage systems. Without effective storage, processing,
retrieval, and access to data, cloud storage is not a viable option.

 Ability of extension

An expandable cloud storage platform will ensure that the business has the exact system
capabilities it needs every time. Choose a cloud storage provider that provides storage
flexibility, functionality, and system expansion. A good cloud storage service provider will
allow customers to expand or shrink services as needed, resulting in an efficient and
convenient expansion process.

 Interoperability

It is expected to have available well-documented and well-tested specifications that


allow heterogeneous systems in cloud environments to work together

 Multitenancy

Multitasking is an essential feature of cloud systems that provide isolation to different


users of cloud systems (tenants) while maximizing resource sharing.
15

 Reliability

The most important concern businesses face when choosing a cloud storage provider is
reliability. The system must consistently be capable, functional, and operational. The most
advanced, intuitive cloud storage program will basically be useless if not consistently usable
and accessible.

 Portability

It is expected that a cloud service supports the portability of its features over various
underlying resources and that CSPs should be able to accommodate cloud workload
portability (e.g., VM portability) with limited service disruption.

6. Cloud Application

Cloud application is an Internet-based program in which some or all of the data


processing and storage logic is processed in the cloud. Users interact with the application
via a web browser or mobile application, and data processing is managed by a combination
of local devices and cloud computing solutions.

Cloud Application Designs: Cloud applications are usually designed in one of three ways:

 A local device running the browser and application looks like a classic web solution
using HTML sent by the cloud server to the local device. A famous example of such an
application is DropBox.

 The local device runs the browser, but when it starts the application, it downloads a
browser-based application, such as javascript, that runs locally for the device. The local
application then processes some processing and makes API calls to the cloud servers
for additional processing and data. An example of this is Google Docs.

 The local device running the native application handles some processing, and the
native application uses the API to send and receive data to the application on the cloud
server. An example of this is when a smartphone app loaded into your phone runs most
of the program logic.
16

III. The evolution of cloud computing in the modern world

Over the past decade, the adoption of cloud computing has seen explosive growth - at
both the consumer and enterprise levels. The legacy software vendors such as Microsoft,
Oracle and Adobe have put a lot of effort and coordination to encourage users to provide
their on-site software to upgrade to cloud equivalent.

At the same time, we have seen a lot of cloud service providers - like Zendesk, Workday
and ServiceNow - appear with Software as Service (SaaS) services available only in the cloud.
it is not just Software as a Service that has appeared, but also the Platform is Service (PaaS),
Infrastructure is Service (IaaS), Backup as a Service (BaaS) and Disaster Recovery as a
Service (DRaaS). Nearly everything as a Service (or XaaS, as it is sold by companies like
Google and Microsoft that provide such comprehensive resources) is now available.

Over the years, cloud computing has grown from becoming something that service
providers recommend to companies they should apply, now it is the lifeblood that runs
through most Modern enterprise. As a result, organizations have become increasingly
familiar with the cloud payment model and now see IT purchases as a daily expense,
instead of one-off investments that will trapped them in the future.

In fact, the numbers have shown somewhat about the importance of cloud computing.
451 Research has found that 90% of organizations will use some form of cloud computing
service in the next two years, with 60% saying that most of their IT will have no premise.
Moreover, 49% of organizations have adopted the first cloud-based approach to deploy
new applications. The 451 study also predicts the cloud market will reach $ 53.3 billion by
2021 - up from $ 28.1 billion in 2017.

Therefore, it becomes an important element of their organization's competitiveness and


they discover which services, activities and services they will be better served by moving
them to the cloud.

IV. Benefits of cloud computing

In recent years, cloud computing has revolutionized the computer industry. Accordingly,
the way of using resources, operating structure and especially the storage and distribution
of information changed completely. The popularity of cloud computing is increasing at a
dizzying pace, radically changing the way businesses do business. In a recent survey of 1800
IT professionals, the results showed that 52% of the demand for cloud computing when
setting up new applications and services.

 Cost savings
17

With cloud computing, businesses can reduce or completely cut down on the initial
investment because there is no need for on-site data centers (no server installation,
hardware, software, equipment depreciation, etc.). In addition, the power used in server
operation and cooling has decreased, contributing to increased environmental friendliness.

 Instant access anytime anywhere

Data can easily be stored, downloaded, restored, or processed with just a few clicks.
Users can access their accounts on the go, 24/7, via any device, anywhere in the world as
long as you're still connected to the internet.

 Adaptability

Besides endless transformations, cloud computing can adapt to any change. For example,
businesses may choose to increase the number of website users support from 2,000 to
8,000 people a day during the promotion.

 The ability to transform endlessly

The application of cloud computing is extremely rich, often classified by features and
belongs to one of the following three types of services:

• Software as a service (SaaS)

• Infrastructure as a service (IaaS)

• Platform as a service (PaaS)

 Sustainable cooperation, not disturbance

With cloud computing, files are centrally and consistently stored, accessed anywhere,
creating a virtual space where people directly discuss, share a file and get feedback. instant.
This makes productivity significantly improved, minimizes trouble, increases customer
satisfaction, and more.

 Data security

Service providers must always ensure that the security system is updated continuously
and at the same time with all new features through rigorous testing. All operations on the
cloud will be regularly monitored and audited by third parties to ensure that safety
standards are met.
18

V. Proposed solution

 Scenario

ATN is a Vietnamese company which is selling toys to teenagers in many provinces all
over Vietnam. The company has the revenue over 500.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

 Solution

In this case, to reduce the load, minimize the time spent on the store and the director's
work, we designed an alternative system, in which: now the entire database will move to
the cloud and only The director has complete control over it. Each store must access an
application designed to provide daily transactions to the cloud database with a unique ID.
At the end of the day, the director has direct access to the cloud system to retrieve all the
data from the stores according to each individual index to summarize. In addition, directors
can also monitor and update information storage anytime, anywhere.

VI. Explain the suitability of the solution to ATN

Below is the design of the ATN system before the solution:

Figure 6: Original design


19

Design from the solution:

Figure 7: Design of the solution

Previously, each store had to send sales data to the board director monthly and the
board director needed a lot of time to summarize the data. This process was repeated daily
and if If there is a problem in the data, the only way to fix it is to go back to the missing
place of repair and recovery. This is very time consuming for collecting data and
summarizing data.

But now with the arrival of cloud computing, work has been minimized. All data will be
gathered into a cloud database under the control of the director. All stores have access to
insert their own sales and sales reports and update / delete them. Each action will be saved
in real time. Therefore, stores do not need to gather data and management will not need to
waste time organizing the data.
20

VII. Architectural design

1. Architecture diagram

 Main architectural design

Figure 8: Architectural design

 Component of ATN to build cloud

Figure 9: Steps to deploy a cloud application


21

Figure 10: Component of the deployed app

2. Description Architectural Diagram

 With Figure 8, stores and managers can access the web application. They can use
features to process the data they have updated to the Cloud, such as Insert / Update /
Delete / Edit / View can handle data on the cloud when the director and store need to
fix the report.

 ATN component to build the cloud: The user interface (user interface) will be
implemented in PHP, the programming language, the back-end (database) will be
implemented in the Postgres Query language. Use XAMPP to build the application's IP,
GIT to upload data, and Heroku to store data.
22

VIII. Detailed design

1. Deployment model

1.1. Public Cloud

A public cloud or a public cloud is a service model based on cloud computing,


provided by a third party to users via the public internet.

Server infrastructures belong to the service providers that manage them and manage
group resources, so the needs of companies who buy and maintain their own hardware
will be eliminated. Providers provide resources as free or pay-per-use services through
an Internet connection.

Target: Public cloud is not limited to users, it can be anyone from individual to
enterprise.

Figure 11: Example of public cloud

Ref figure 11 :https://www.hybridict.com.au/corporate-cloud-services/cloud-computing/public-cloud/

Advantages

 Low cost

 No need maintenance

 Scalability is almost unlimited, always ready to meet all business needs


23

Disadvantages

 Security is an issue.
 Privacy and organizational autonomy are not possible.
 Compromised reliability
 The lack of individual approach

1.2. Private Cloud


Private cloud is a cloud computing model that provides a dedicated cloud
environment for an organization. It can be operated internally by an internal IT team,
behind that organization's firewall, so an organization has more control over its
computing resources.

Target users: Large businesses use and manage internal information

Many service providers - including Amazon, IBM, Cisco, Dell and Red Hat - also
build private solutions

Advantages:
 The cloud is small in size and is easy to maintain.
 It provides a high level of security and privacy to the user.
 It is controlled by the organization.
 Storage and network components are customizable
 High control of company information

Disadvantages

 High cost

 Scalability is limited

 Limited active area

1.3. Community Cloud

A community cloud deployment model is like a privacy model to a great extent; The
only difference is the user set. While a particular category implies that only one company
owns the server, in the case of a community, some organizations with similar
backgrounds share the infrastructure and related resources.

Organizations with uniform security, privacy, and performance requirements, this


multi-tenant data center architecture helps companies achieve their specific business
goals. That is why a community model is particularly suitable for organizations working
on joint project
24

Companies can decide on community solutions that Google, Red Hat, IBM, Microsoft
or others provide.

Advantages

 It allows establishing a low-cost private cloud.

 It allows collaborative work on the cloud.

 It allows sharing of responsibilities among the organization.

 It has better security than the public cloud.

Disadvantages

 Autonomy of an organization is lost.

 Security features are not as good as the private cloud.

 It is not suitable if there is no collaboration.

 Higher cost than that of a public one

 Sharing of fixed storage and bandwidth capacity

 It is not widespread so far

1.4. Hybrid Cloud

Hybrid cloud is a cloud computing model that combines one or more public cloud
environments and private cloud through secure connection such as VPN connection or
leased line, allowing data and application sharing. between different cloud environments.

It not only protects and controls strategically important assets, but also does so in the
most cost-effective and case-specific manner. In addition, this method facilitates data
and application portability.

The hybrid cloud deployment model is only meaningful if companies can split their
data into important and insensitive tasks.

Advantages

 Improved security and privacy

 Enhanced scalability and flexibility

 Reasonable price

 It gives the power of both the private and public clouds.

 It provides better security than the public cloud.


25

Disadvantages

 The security features are not as good as the public cloud.

 Managing a hybrid cloud is complex.

2. Compare models

To get a better overview of the models, we make a general comparison of the


features of the models and find the most suitable model for the scenario.

Public Cloud Private Cloud Community Cloud Hybrid Cloud

Setup and use Easy Requires IT Requires IT Requires IT proficiency


proficiency proficiency

Data control Little High Comparatively High Comparatively Hig

Data security and Low High Comparatively High High


privacy

Reliability Vulnerable High Comparatively High High

Scalability and High High Fixed capacity High


flexibility

Demand for hardware No Depends Depends Depends


in the home

Cost Cheapest The most Share among Cheaper than a private


expensive community members model but more
expensive than a public
model

Table 1: Compare models

Through model comparisons we recommend choosing the Private cloud model for the
scenario. This is because monthly stores will transfer large amounts of data including
customer information, sales orders, income, etc. Therefore a high security and privacy
system is needed to compete with peers.

Although the cost of Private cloud is very high, this is necessary to increase the influence
and competitiveness in the market.
26

3. Service Models

3.1. SaaS - Software as a Service

Definition:

SaaS is understood as software as a service, otherwise known as application of cloud


computing technology. Users who need an application will rent it and will use it directly
via the internet. Most SaaS applications run directly through the web browser, and do
not require downloading or installing anything from the user.

SaaS distribution:

Because SaaS's distribution model is web-based, SaaS eliminates the need for IT staff
to download and install applications on each individual computer. With SaaS, vendors
manage all potential technical issues, such as data, middleware, servers, and storage,
allowing businesses to manage and support online.

Features:

 Service management from a central location

 Put on the remote server

 Stored on the server, secure on data

 Accessible via the internet

 Users are not responsible for hardware or application software updates.

Advantages:

 Reduce time for installing applications, managing and upgrading software.

 Help businesses focus more on business rather than handling issues, system
administration.

Suitable for:

 Small startups, need to run website services for quick marketing.

 Suitable for short-term projects that require collaborators to work remotely.

 Non-regular applications such as tax software, etc.

 Suitable for mobile and web applications

 If you use applications that do not require frequent use, such as tax software.

Example:

 Google Apps, Dropbox, Salesforce, Cisco WebEx, Concur, GoToMeeting.


27

3.2. PaaS - Platform as a Service

Definition:

PaaS provides a framework for developers that they can build and use to create
applications that can be adapted and further developed. They do not need to care about
the network, storage, server, and operating systems below. All servers, storage and
networking are managed by the enterprise or a third-party provider, while developers
can maintain the management of applications.

PaaS distribution:

PaaS's distribution model is similar to SaaS, except that instead of distributing software
over the internet, PaaS provides a platform for creating applications. The platform is
distributed over the web, and provides developers with free deployment, able to focus on
building software while not having to worry about or worry about operating systems,
updates, or updates. software updates, or infrastructure.

Features:

 Built on virtualization technology, meaning that resources can easily be increased or


decreased when demand changes.

 Provide a variety of services to support application development, testing, and


deployment.

 Multiple users can access the same application developed

 Integrated web services and databases

Advantages:

 Make developing and deploying applications simpler and more cost effective.

 Easy scalability

 High availability

 Gives developers the ability to create custom applications without the need for
headaches in maintaining software.

 Significant reduction in the number of lines of code

 Automated business policies

 Allows easy integration with hybrid models.

 The environment supports many different languages: Node.js, Java, Ruby, C #, Go,
Python, or PHP, although it is a cloud solution provider.

 Flexible use for libraries and frameworks.


28

Suitable for:

 Tech startups are in need of a quick build and scaling system.

 Software businesses need to develop applications quickly and easily.

Example:

 Google App Engine, Elastic Beanstalk – Amazon, Cloud Services – Azure, Openshift,ect.

3.3. IaaS – Infrastracture as a Service

Definition:

Cloud infrastructure services, known as Infrastructure as a Service (IaaS), are created


from highly scalable and automated computing resources. IaaS is completely self-serving to
access and monitor everything such as computers, networking, storage, and other services,
and it allows businesses to purchase resources on demand and on demand.

PaaS distribution:

IaaS distributes cloud computing infrastructure, including everything like servers,


networks, operating systems, and storage, through virtualization technology. These specific
cloud services are provided to the organization through a control panel or an API, an IaaS
customer has complete control over the entire infrastructure.

IaaS provides technologies and capabilities as a traditional storage center, without


having to maintain or manage the hardware of all those components. IaaS customers may
still be able to access their servers and storage directly, but all are hired by external
partners via virtual data centers in the cloud.

Features:

 There are usually multiple users on a specific hardware

 Resources are available as a service

 Cost varies according to usage

 Service highly scalable

 Provides complete control of infrastructure for organizations

 Dynamic and flexible based on cloud computing.

Advantages:

 Easily enable storage deployment, networking, servers, and automated processing


power
29

 Additional hardware may be purchased based on usage

 Provide customers with complete control of their infrastructure

 Resources can be purchased as needed

 Easy to expand high

Suitable for:

 A startup or a small company, IaaS is an option so you don't have to spend time or
money trying to create hardware.

 IaaS is also beneficial for large organizations who want full control over their
applications and infrastructure.

 Companies have a huge need for computing power.

Example:

 DigitalOcean, Linode, Compute Engine - Google, Amazon EC2, Azure Virtual Machine

3.4. Choose service models for ATN

By comparing features between service models. In this scenario, we will choose the PaaS
service model:
- Use the platform for the company provided by Amazon, Google, ect (Heroku is also part
of that). ATN is provided with a very powerful platform that can deploy one or more
applications. In addition, PaaS helps reduce capital costs, enabling an IT environment to
focus more on strategy than on hardware maintenance. And ATN is a new and growing
company so reducing costs at all stages is possible, which is the company's top priority.

We can summarize the benefits that PaaS brings to ATN as follows

 Cut the cost

 Faster time to market: With PaaS, all ATN has to do is write code and test the
application, leaving the rest for the PaaS provider to take care of.

 An end-to-end environment: PaaS allows ATN developers to build, test, debug, store
and update their applications on the same environment.

 Copyright issues: PaaS providers will take care of the entire licensing section for the
operating system, development tools, and any other components on their platform.
30

4. Programing language/web server/database server

4.1. Programing language

In the scenario we chose the PHP language as the dominant programming language
because PHP is an open source scripting language used to develop server writing
applications. PHP files contain text, HTML, CSS, Javascript and PHP scripts. PHP is
increasingly used widely and popularly.

Characteristics that indicate the appropriateness of PHP:

 PHP is an open source programming language, you can develop all versions of PHP but
you do not have to pay any cost.

 PHP is extendible.

 Good with servers like IIS and APACHE.

 PHP easily integrates with some popular databases such as MySQL, PostgreSQL, Oracle,
Sybase, Informix and Microsoft SQL Server.

 PHP has the database maintained.

4.2. Web server

In the scenario we use XAMPP as a web server. XAMPP software is a fairly common
software application and is often used by developers to build and develop PHP based
website projects. XAMPP is often used to create web server (web server) with built-in
Apache, PHP, MySQL, FTP Server, Mail Server and tools like phpMyAdmin.

In particular, Xampp has a fairly convenient management interface, allowing users to


actively enable or disable server services at any time. This software is also set up and
developed based on open source code.
31

Figure 12: XAMPP

Benefits of using XAMPP

 XAMPP can be run on all operating systems: From Cross-platform, Window, MacOS and
Linux.

 XAMPP has a simple configuration as well as many useful functions for users. Typical
include: Server emulator, Mail Server emulator, SSL support on Localhost.

 Open source: Unlike Appserv, XAMPP has a convenient management interface. As a


result, users can actively turn on or off server services

4.3. Database server

In the scenario we use PostgreSQL as the database for the system. PostgreSQL is a
general-purpose object-relational database management system, the most advanced
open source database system available today.

PostgreSQL is a free and open source software. The source code for the software is
available under PostgreSQL license, a free and open source license. Accordingly, you will
be free to use, modify and distribute PostgreSQL in any form.

PostgreSQL is designed to run on similar UNIX platforms. However, PostgreSQL was


later flexibly adjusted to be able to run on various platforms such as Mac OS X, Solaris
and Windows.
32

Figure 13: PostgreSQL

Benefits of using PostgreSQL

 Full featured and easy to expand

 Reliability and standards compliance

 Open source
33

5. Choose tools to implement

5.1. GIT

Git is the name of a Distributed Version Management System (DVCS) which is one of
the most popular distributed version management systems today.

DVCS means that the system makes it possible for each computer to store different
versions of a clone from a repository, each change to the source code on the computer
will be able to commit (commit) and then put on the server where the main repository is
located.

Figure 14: Git

Benefit:

 Manage source code easily

 Github is a great resource repository

 Easy to deploy products.

 GIT easy to use, safe and fast.

 Members can still work offline, they can still commit and update on their local or even
together without going through the server.

5.2. Heroku

Heroku is a Cloud Platform based container application as a Service (PaaS).


Developers use Heroku to deploy, manage and extend modern applications. Their
platform is flexible and easy to use, giving developers the simplest way to get their
applications to market.

Heloku is a cloud platform that allows individuals and businesses to build build and
develop applications. Using Heroku is the fastest way to move from idea to URL,
bypassing all the confusing infrastructure.
34

Figure 15: Heroku

Benefits of using Heroku

 Heroku is easy to use

 Heroku has a low cost and can be used for free

 Ability to integrate with PostgreSQL


35

IX. References

 Bradley (December 20, 2019). What Is Cloud Computing? .

[Online] Available at: https://www.lifewire.com/what-is-cloud-computing-817770


[Access 1 April 2020]

 Anthony T. Velte,Toby J. Velte, Robert Elsenpeter(2009).Cloud Computing: A Practical


Approach,McGraw Hill Professional.

 K. Chandrasekaran(2014). Essentials of CLOUD COMPUTING, CRC Press, 6000


Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742.

 GORAN NOVKOVIC (AUGUST 11, 2017).Five characteristics of cloud computing.

[Online] Available at:https://www.controleng.com/articles/five-characteristics-of-


cloud-computing/ [Access 1 April 2020]

 Zach Barton (April 18, 2018).What is a Cloud Application?.

[Online] Available at:https://www.cloudbakers.com/blog/what-is-a-cloud-application


[Access 1 April 2020]

 William Goddard.The Evolution of Cloud Computing – Where’s It Going Next?.

[Online] Available at:https://itchronicles.com/cloud/the-evolution-of-cloud-computing-


wheres-it-going-next/ [Access 1 April 2020]

 YULIYA SHAPTUNOVA(August 15, 2017).4 Most Popular Cloud Deployment Models You
Need to Know.

[Online] Available at:https://www.sam-solutions.com/blog/four-best-cloud-


deployment-models-you-need-to-know/ [Access 1 April 2020]

 Quang Vũ (May 23, 2019).Phân biệt SaaS, PaaS và IaaS – cách lựa chọn dịch vụ hợp lý.

[Online] Available at:https://blog.vu-review.com/phan-biet-saas-paas-iaas.html#2-saas-


software-as-a-service [Access 1 April 2020]

You might also like