ZIAUDDIN UNIVERSITY
Faculty of Engineering Science & Technology
(ZUFEST)
Department of Software Engineering
Course Code/ Title: ASSESSMENT ACTIVITY: Semester: Batch-2019
(CS-454) Cloud Computing Assignment -01 (Semester-VI)
Final Dated: OBE Target: Weight of Marks:
CLO-1, PLO-1 and C1
Student Name: Kiran Teacher:
Score:
Jamil Abdul Salam
Student ID:
4-23/2019/003
Question # 01
Discuss the following in detail:
o Software as a Services (SaaS)
o Platform as a Services (PaaS)
o Infrastructure as a Services (IaaS)
Question # 02
Write the difference between Cluster, Grid and Cloud Computing.
Examiner Signature: Student
Score:
Question:1
Software as a Services (SaaS)
SaaS stands for software as a service, which means software is hosted by a third-party
provider and delivered to customers over the internet as a service. While most SaaS products
are aimed at business users, some products have proved popular with individual consumers,
like note-taking app Evernote or personal finance tools like TurboTax and Mint.
In business settings, users access productivity applications or enterprise software from a
service provider instead of from their company’s private data center. Microsoft 365 and
Salesforce are common examples of such SaaS software used in business that had been
previously hosted and distributed by businesses’ own data centers.
SaaS is a marked difference to the old model of making a one-off purchase of software that
must be hosted, implemented, and maintained by the buyers themselves.
The SaaS delivery model is enabled by a multitenant architecture, where a service provider
can distribute multiple versions of the same software from a single physical server. Each user
or business has its own version of the application, with the associated customizations, data,
and access controls, but from a shared code base that can be patched, updated, and
maintained centrally.
As a result, software can be purchased by individuals or for a select group of users and paid
for on a monthly or annual subscription basis per “seat,” instead of making a large upfront
investment in a perpetual (permanent) license, starting a lengthy implementation, and
committing to years of maintenance, upgrades, and support contracts.
Platform as a Services (PaaS)
PaaS (platform-as-a-service) is a form of cloud computing that enables software developers
to build, run, and manage software applications easily, without worrying about underlying
infrastructure. The advent of cloud computing opened the door for vendors to bundle
together the key building blocks required to create an application, with the aim of simplifying
or even automating many of the trickier and more repetitive tasks required to deploy code.
As with other cloud services such as infrastructure as a service (IaaS) and software as a service
(SaaS), a PaaS is typically accessed over the internet but can also be deployed on-premises or
in a hybrid mode.
The underlying infrastructure that applications eventually run on is fully managed by the
service provider. In many cases, the customer can decide where the application is hosted and
is given a choice over how performant or secure that environment is, often at an additional
cost.
The building blocks of a typical PaaS include:
Managed infrastructure: The provider manages the servers, storage, data centers, and
networking resources required to run your application.
Design, testing, and development tools: An integrated development environment brings
together the tools required to actually build software, including a source code editor,
compiler, and debugger. Some providers also include collaboration tools that let developers
share and contribute to each other’s work.
Middleware: A PaaS often includes the tools required to integrate various operating systems
and user applications.
Operating systems and databases: A PaaS provide the operating systems for applications to
run on, as well as a variety of managed database options.
Infrastructure as a Services (IaaS)
IaaS (infrastructure as a service) is a type of cloud computing that offers virtualized compute,
storage, and networking wrapped together as a self-service platform upon which customers
can deploy and run applications with minimal fuss.
Key to the value of IaaS is the ability to provision and scale up virtualized resources on
demand for any workload. Organizations that use IaaS can self-provision infrastructure
services and pay for them on a per-use basis. Fees are typically paid by the hour, week, or
month, depending on the service contract. In some cases, providers charge clients for
infrastructure services based on the amount of virtual machine (VM) capacity they’re using
over time.
Atop that virtualized infrastructure, the leading IaaS clouds have cultivated vast ecosystems of
services, from globally distributed relational databases to data warehouses to machine
learning libraries to IoT management solutions. Today, a frequent motivation to choose an
IaaS provider is to gain access to new, innovative technology that would be difficult to spin up
on premises. Some of these advanced services are developed and delivered by the provider,
while others are proffered by third-party tenants on the IaaS platform—again, on a per-use
basis.
IaaS platforms provide access to highly scalable IT resources that can be adjusted as demand
for capacity changes. This makes the IaaS model ideal for companies that experience
temporarily high workloads, such as what many retailers face during the holiday shopping
season. It’s also well suited to small and mid-size businesses that expect to see growth in
demand on a steady basis.
IaaS is offered in three models: public, private, and hybrid cloud. The private cloud implies
that the infrastructure resides at the customer-premise. In the case of public cloud, it is
located at the cloud computing platform vendor's data center, and the hybrid cloud is a
combination of the two in which the customer selects the best of both public cloud or private
cloud.
Question:2
Cluster Computing Grid Computing Cloud Computing
Basic Idea Aggregation of Segregation of Consolidation of
resources. Resources. Resources.
Depends on
service
Same processes run on Job is divided into sub-
provisioning. Which
Running all computers over the jobs each is assigned
Processes computer offers a
cluster at the same to an idle CPU so they
service and
time. all run concurrently.
provisions it to the
requesting clients.
All nodes must run No restriction is made No restriction is
Operating
System the same operating on the operating made on the
system. system. operating system.
Execution is scalable
Execution depends on
in a way that moves
Job Execution job scheduling. So, jobs the execution of a job Self-Managed.
wait unit it’s assigned a
to an idle processor
runtime.
(node).
Cascading tasks. If On-demand
Suitable for Not suitable for
Apps one tasks depends on
cascading tasks.
another one. service provisioning.
Distributed
Location of Physically in the same Location doesn’t
nodes geographically all over
location matter
the globe.
Homo/ Homogenous Heterogeneous Heterogeneous
Heterogeneity
Virtualization None None Virtualization is a key
High, but doesn’t reach
Security Lower than both
High the level of cluster
types.
computing.
industrial sector, industrial sector,
Banking, Insurance,
research centers, research centers,
Weather Forecasting,
Application health care, and health care, and
Domains Space Exploration,
centers that offer centers that offer
Business, IaaS, PaaS,
services on the nation- services on the nation-
SaaS
wide level wide level