Service Models: Amity School of Engineering & Technology

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 37

Amity School of Engineering & Technology

Module 3

Service Models
Amity School of Engineering & Technology

Categories of service model


The service models are categorized into three
basic models:

1) Software-as-a-Service (SaaS)
2) Platform-as-a-Service (PaaS)
3) Infrastructure-as-a-Service (IaaS)
Amity School of Engineering & Technology
Software-as-a-Service (SaaS)
Amity School of Engineering & Technology

• SaaS is known as 'On-Demand Software'.


• It is a software distribution model. In this model, the
applications are hosted by a cloud service provider and
publicized to the customers over internet.
• In SaaS, associated data and software are hosted centrally on
the cloud server.
• User can access SaaS by using a thin client through a web
browser.
• CRM, Office Suite, Email, games, etc. are the software
applications which are provided as a service through Internet.
• The companies like Google, Microsoft provide their applications
as a service to the end users.
Advantages of SaaS
Amity School of Engineering & Technology

• SaaS is easy to buy because the pricing of SaaS is


based on monthly or annual fee and it allows the
organizations to access business functionalities at
a small cost, which is less than licensed
applications.
• SaaS needed less hardware, because the software
is hosted remotely, hence organizations do not
need to invest in additional hardware.
• Less maintenance cost is required for SaaS and do
not require special software or hardware versions.
Amity School of Engineering & Technology

Disadvantages of SaaS
• SaaS applications are totally dependent on
Internet connection. They are not usable without
Internet connection.
• It is difficult to switch amongst the SaaS vendors.
Amity School of Engineering & Technology

Platform-as-a-Service (PaaS)
• PaaS is a programming platform for developers.
This platform is generated for the programmers to
create, test, run and manage the applications.
• A developer can easily write the application and
deploy it directly into PaaS layer.
• PaaS gives the runtime environment for
application development and deployment tools.
• Google Apps Engine(GAE), Windows Azure,
SalesForce.com are the examples of PaaS.
Advantages of PaaS
Amity School of Engineering & Technology

• PaaS is easier to develop. Developer can


concentrate on the development and innovation
without worrying about the infrastructure.
• In PaaS, developer only requires a PC and an
Internet connection to start building applications.
Disadvantages of PaaS
Amity School of Engineering & Technology

One developer can write the applications as per the


platform provided by PaaS vendor hence the
moving the application to another PaaS vendor is a
problem.
Infrastructure-as-a-Service
Amity School of Engineering & Technology

(IaaS)
• IaaS is a way to deliver a cloud computing
infrastructure like server, storage, network and
operating system.
• The customers can access these resources over
cloud computing platform i.e Internet as an on-
demand service.
• In IaaS, you buy complete resources rather than
purchasing server, software, datacenter space or
network equipment.
Amity School of Engineering & Technology

• IaaS was earlier called as Hardware as a


Service(HaaS). It is a Cloud computing platform
based model.
• HaaS differs from IaaS in the way that users have
the bare hardware on which they can deploy their
own infrastructure using most appropriate
software.
Advantages of IaaS
Amity School of Engineering & Technology

• In IaaS, user can dynamically choose a CPU,


memory storage configuration according to need.
• Users can easily access the vast computing power
available on IaaS Cloud platform.
Disadvantages of IaaS
Amity School of Engineering & Technology

• IaaS cloud computing platform model is


dependent on availability of Internet and
virtualization services.
Amity School of Engineering & Technology

Difference between IaaS, PaaS, and SaaS


IaaS Paas SaaS
It provides a virtual data center It provides virtual platforms and It provides web software and
to store information and create tools to create, test, and deploy apps to complete business tasks.
platforms for app development, apps.
testing, and deployment.

It provides access to resources It provides runtime environments It provides software as a service


such as virtual machines, virtual and deployment tools for to the end-users.
storage, etc. applications.

It is used by network architects. It is used by developers. It is used by end users.

IaaS provides only PaaS provides SaaS provides Infrastructure +


Infrastructure. Infrastructure+Platform. Platform +Software.
Amity School of Engineering & Technology

Cloud Computing Architecture


• Cloud computing architecture consists of many
loosely coupled cloud components.
• The architecture is mainly dividing the cloud
architecture into two parts:
1) Front End
2) Back End
• Each end is connected to others through a
network, generally to the Internet.
Amity School of Engineering & Technology

Graphical View of Cloud Computing


Architecture
Amity School of Engineering & Technology

Front End
• The front end is the side of computer user or
client.
• It involves the interfaces and the applications that
are necessary to access the Cloud Computing
system.
Amity School of Engineering & Technology

Back End
• The back end is the cloud section of the system.
• It involves all the resources which are necessary
to give Cloud computing services.
• It includes huge data storage, virtual machines,
security mechanism, services, deployment
models, servers etc.
• To give built-in security mechanism, traffic control
and protocols is the responsibility of the back end.
Amity School of Engineering & Technology

Components of Cloud Computing Architecture


1. Client Infrastructure
• Client Infrastructure is a Front end component. It provides GUI
(Graphical User Interface)  to interact with the cloud.
2. Application
• The application may be any software or platform that a client
wants to access.
3. Service
• A Cloud Services manages that which type of service you
access according to the client’s requirement.
Amity School of Engineering & Technology

4. Runtime Cloud
• Runtime Cloud provides the execution and runtime environment to the virtual
machines.
5. Storage
• Storage is one of the most important components of cloud computing. It
provides a huge amount of storage capacity in the cloud to store and manage
data.
6. Infrastructure
• It provides services on the host level, application level, and network level.
Cloud infrastructure includes hardware and software components such as
servers, storage, network devices, virtualization software, and other storage
resources that are needed to support the cloud computing model.
Amity School of Engineering & Technology

7. Management
• Management is used to manage components such as
application, service, runtime cloud, storage, infrastructure, and
other security issues in the backend and establish coordination
between them.
8. Security
• Security is an in-built back end component of cloud computing.
It implements a security mechanism in the back end.
9. Internet
• The Internet is medium through which front end and back end
can interact and communicate with each other.
Amity School of Engineering & Technology

Service-Oriented Architecture (SOA)


• Service-Oriented Architecture (SOA) allows organizations to
access on-demand cloud-based computing solutions according
to the change of business needs. It can work without or with
cloud computing. The advantages of using SOA is that it is easy
to maintain, platform independent, and highly scalable.
• Service Provider and Service consumer are the two major roles
within SOA.
Applications
Amity School of Engineering & Technology

There are the following applications of Service-Oriented


Architecture -
• It is used in the healthcare industry.
• It is used to create many mobile applications and games.
• In the air force, SOA infrastructure is used to deploy situational
awareness systems.
Amity School of Engineering & Technology

Service-Oriented Architecture
Advantages
Amity School of Engineering & Technology

• Service Reusability: These applications are built from


existing services. Thus, services can be re-used to create
many other applications.
• Platform Independent: The services are platform-
independent as people can interact with separate
applications over a common language.
• Easy Maintenance: As services are independent of each
other, they can be updated and transformed easily without
harming other services.
Amity School of Engineering & Technology

• Availability: These facilities are effortlessly available to


anyone on demand.
• Parallel Development: This architecture supports the
layer-based design; it gives parallel development.
• Reliability: These applications are extra secure because it
is simple to test short code rather than large codes
• Scalability: Services can work on various servers within
an environment, this improves scalability.
Disadvantages Amity School of Engineering & Technology

• SOA depends on the implementation of standards. Without


standards, communication between applications requires a lot of
time and code.
• SOA is not for: applications with a high level of data transfer,
applications that do not require the implementation of the
request/response type, and applications that have a short life span.
• Increasingly it becomes difficult and expensive to be able to comply
with protocols and speak to service.
• It implies knowing the business processes, classifying them,
extracting the functions that are common to them, standardizing
them, and forming with them layers of services that will be required
by any business process.
Amity School of Engineering & Technology

Web Services
• Web service is a standardized medium to propagate
communication between the client and server applications
on the WWW (World Wide Web). A web service is a software
module that is designed to perform a certain set of tasks.
• Web services in cloud computing can be searched for over the
network and can also be invoked accordingly.
• When invoked, the web service would be able to provide the
functionality to the client, which invokes that web service.
Amity School of Engineering & Technology

Types of Web Services


• There are mainly two types of web services.
1.SOAP web services.
2.RESTful web services.
Amity School of Engineering & Technology

SOAP web services.


SOAP is known as a transport-independent messaging protocol.
SOAP is based on transferring XML data as SOAP Messages.
Each message has something which is known as an XML
document. Only the structure of the XML document follows a
specific pattern, but not the content. The best part of Web
services and SOAP is that its all sent via HTTP, which is the
standard web protocol.
Amity School of Engineering & Technology

RESTful web services


Amity School of Engineering & Technology

Web Service Advantages


1. Exposing Business Functionality on the network - A web service is a unit of managed code that
provides some sort of functionality to client applications or end users. This functionality can be
invoked over the HTTP protocol which means that it can also be invoked over the internet.
Nowadays all applications are on the internet which makes the purpose of Web services more
useful. That means the web service can be anywhere on the internet and provide the necessary
functionality as required.
2. Interoperability amongst applications - Web services allow various applications to talk to each
other and share data and services among themselves. All types of applications can talk to each
other. So instead of writing specific code which can only be understood by specific applications,
you can now write generic code that can be understood by all applications
3. A Standardized Protocol which everybody understands - Web services use standardized
industry protocol for the communication. All the four layers (Service Transport, XML Messaging,
Service Description, and Service Discovery layers) uses well-defined protocols in the web services
protocol stack.
4. Reduction in cost of communication - Web services use SOAP over HTTP protocol, so you can use your
existing low-cost internet for implementing web services.
Amity School of Engineering & Technology

Web Services Architecture


Every framework needs some sort of architecture to make sure the entire framework
works as desired, similarly, in web services. The Web Services Architecture consists
of three distinct roles as given below :
1. Provider - The provider creates the web service and makes it available to client
application who want to use it.
2. Requestor - A requestor is nothing but the client application that needs to contact
a web service. The client application can be a .Net, Java, or any other language
based application which looks for some sort of functionality via a web service.
3. Broker - The broker is nothing but the application which provides access to the
UDDI. The UDDI, as discussed in the earlier topic enables the client application to
locate the web service.
Amity School of Engineering & Technology

1. Publish - A provider informs the


broker (service registry) about the
existence of the web service by using
the broker's publish interface to make
the service accessible to clients
2. Find - The requestor consults the
broker to locate a published web
service
3. Bind - With the information it gained
from the broker(service registry)
about the web service, the requestor
is able to bind, or invoke, the web
service.
Amity School of Engineering & Technology

Web service Characteristics


1. They are XML-Based - Web Services uses XML to represent the data at the representation and data
transportation layers. Using XML eliminates any networking, operating system, or platform sort of
dependency since XML is the common language understood by all.

2. Loosely Coupled – Loosely coupled means that the client and the web service are not bound to
each other, which means that even if the web service changes over time, it should not change the
way the client calls the web service. Adopting a loosely coupled architecture tends to make
software systems more manageable and allows simpler integration between different systems.

3. Synchronous or Asynchronous functionality - Synchronicity refers to the binding of the client to


the execution of the service. In synchronous operations, the client will actually wait for the web
service to complete an operation. An example of this is probably a scenario wherein a database
read and write operation are being performed. If data is read from one database and subsequently
written to another, then the operations have to be done in a sequential manner. Asynchronous
operations allow a client to invoke a service and then execute other functions in parallel. This is
one of the common and probably the most preferred techniques for ensuring that other services
are not stopped when a particular operation is being carried out.
Amity School of Engineering & Technology

4. Ability to support Remote Procedure Calls (RPCs) - Web


services enable clients to invoke procedures, functions, and
methods on remote objects using an XML-based protocol.
Remote procedures expose input and output parameters that a
web service must support.
5. Supports Document Exchange - One of the key benefits of
XML is its generic way of representing not only data but also
complex documents. These documents can be as simple as
representing a current address, or they can be as complex as
representing an entire book.
Amity School of Engineering & Technology

Thank You

You might also like