0% found this document useful (0 votes)
9 views

Part 5

management of software systems

Uploaded by

u2203162
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Part 5

management of software systems

Uploaded by

u2203162
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

MANAGEMENT OF SOFTWARE SYSTEMS

CLOUD
BASED
SOFTWARE
CONTENT
INTRODUCTION
VIRTUALIZATION
CONTAINERS IAAS
PAAS
SAAS
Introduction
•The cloud is a very large number of remote servers that are
offered for rent by companies that own these servers.
•You can rent as many servers as you need, run your software
on these servers, and make them available to your customers.
•The remote servers are “virtual servers,” which means they are
implemented in software rather than hardware.
•Many virtual servers can run simultaneously on each cloud
hardware node, using virtualization support that is built in to the
hardware.
Introduction

•Running multiple servers has very little effect on server


performance.
•Cloud companies such as Amazon and Google provide cloud
management software that makes it easy to acquire and
release servers on demand.
•The cloud servers that you rent can be started up and shut down
as demand changes. This means that software that runs on the
cloud can be scalable, elastic, and resilient
Scalability Elasticity
Maintain performance Adapt the server
as load increases configuration
to changing demands

Cloud Software
characterisitcs

Resilience
Maintain service in the
event of server failure
Benefits of using the cloud for software development
Factor Benefit

Cost You avoid the initial capital costs of hardware


procurement.

You don’t have to wait for hardware to be delivered before


Startup time you can start work. Using the cloud, you can have servers up
and running in a few minutes.

If you find that the servers you are renting are not powerful
Server choice enough, you can upgrade to more powerful systems. You can add
servers for short-term requirements, such as load testing

If you have a distributed development team, working from


Distributed development different locations, all team members have the same
development environment and can seamlessly share all
information.
VIRTUALIZATION
Virtualization refers to the creation of a virtual resource such as a server, desktop,
operating system, file, storage or network.

Virtualization creates a virtual computing environment.

A single physical computer or server is divided into several virtual machines.


Each virtual machine can interact independently and run different operating
systems while sharing the resources of a single host machine.
PARAMETERS
VIRTUAL MACHINE VIRTUAL SERVER

A virtual machine is a software similar to a physical A server is a device or a software that can provide
DEFINITION computer that can run an operating system and services requested by the other computers or clients
related applications. in the network.

A server is a stand-alone system that can run on any


VM’s run on physical server hardware, and can be hardware in the cloud.A virtual server has no
FUNCTIONALITY used to implement virtual servers. external dependencies.All cloud servers are virtual
servers.

A virtual machine provides the functionality similar A server provides different services to other
USAGE to a physical computer. computers or clients.

A virtual machine can be powered off. Generally, a server is not powered off
POWER

The servers can be categorized according to their


There is no categorization of virtual machines functionalities such as file server,web server,mail
CATEGORIZATION server etc.
Implementing a Virtual Server using a Virtual Machine

Hypervisor
A hypervisor, also known as a virtual machine monitor or VMM,
is software that creates and runs virtual machines. A hypervisor
allows one host computer to support multiple guest VMs by
virtually sharing its resources, such as memory and processing.
Guest OS
It is the operating system installed on either a virtual machine
(VM) or partitioned disk.

The hypervisor provides a hardware emulation that simulates the


operation of the underlying hardware. Several of these hardware
emulators share the physical hardware and run in parallel. We can
run an operating system and then install server software on each
hardware emulator.
Issues with Implementing Virtual Servers on top of
VMs
Virtual machines suffer from a small overhead as
Performance the machine instructions are translated from
guest to host OS.

Sharing libraries,files etc between guests and


Isolation between guests and hosts are not possible.

Startup time VM’s take a few minutes to boot up.(2-5 min)

VM’s take more storage than containers as the


Storage whole OS kernel and its associated programs
have to be installed and run.
CONTAINERS
• Using containers dramatically speeds up the process of deploying virtual servers on the
cloud.
• Containers are usually megabytes in size, whereas VMs are gigabytes.
• Containers can be started up and shut down in a few seconds rather than the few minutes
required for a VM.
• Containers are an operating system virtualization technology that allows independent
servers to share a single operating system. They are particularly useful for providing
isolated application services where each user sees their own version of an application.
• Containers are a lightweight mechanism for running applications in the cloud and are
particularly effective for running small applications such as stand-alone services.
• Containers were first introduced in the mid-2000s with developments in the Linux
operating system.
• Several companies, such as Google and Amazon, developed and used their own version of
containers to manage large server clusters.
CONTAINERS

• Using containers dramatically speeds up the process of deploying virtual servers on the
cloud.
• Containers are usually megabytes in size, whereas VMs are gigabytes.
• Containers can be started up and shut down in a few seconds rather than the few minutes
required for a VM.
• Containers are an operating system virtualization technology that allows independent
servers to share a single operating system. They are particularly useful for providing
isolated application services where each user sees their own version of an application.
• Containers are a lightweight mechanism for running applications in the cloud and are
particularly effective for running small applications such as stand-alone services.
• Containers were first introduced in the mid-2000s with developments in the Linux
operating system.
• Several companies, such as Google and Amazon, developed and used their own version of
containers to manage large server clusters.
BENEFITS OF CONTAINERS

• They solve the problem of software dependencies. You don’t have to worry about the
libraries and other software on the application server being different from those on your
development server. Instead of shipping your product as stand-alone software, you can ship
a container that includes all of the support software that your product needs.
• 2. They provide a mechanism for software portability across different clouds. Docker
containers can run on any system or cloud provider where the Docker daemon is available.
• 3.They provide an efficient mechanism for implementing software services and so support
the development of service-oriented architectures,
• 4. They simplify the adoption of DevOps. This is an approach to software support where the
same team is responsible for both developing and supporting operational software
EVERYTHING
AS A SERVICE
XAAS
• The idea of service which is rented rather than owned is fundamental to cloud computing.
So, instead of owning a hardware, you can rent hardware you need from cloud provider.
• If you have a software product, you can use that rented hardware to deliver the product to
your customers.
• In cloud computing ,this has been developed into the idea of ‘Everything-as-a-Service’ .
• For software product developers, there are currently three levels where everything as a
service is most relevant.
• Infrastructure as a service (IaaS) : This is a basic service level that all major cloud
providers offer. They provide different kinds of infrastructure service, such as a compute
service, a network service, and a storage service.
• Platform as a service (PaaS): This is an intermediate level where you use libraries
and frameworks provided by the cloud provider to implement your software.
• Software as a service (SaaS): Your software product runs on the cloud and is accessed
by users through a web browser or mobile app.
XAAS
•It is a basic service provided by all cloud providers .
•“IaaS” is a form of cloud computing that delivers fundamental
compute ,network and storage resources to consumers on –
demand over the internet .
•It can be used to implement virtual cloud based services .
IAAS •Although many preconfigured packages are available ,you are
responsible for installing and managing the database ,the system
security ,and the application .
INFRASTRUCTURE •Using the cloud provider’s control panel, you can easily add more
AS A SERVICE servers if you need to as the load on your system increases.
•If we are running a small or medium sized product development
company ,it is not cost – effective to buy server hardware . So if
you need development and testing servers ,these can be
implemented using infrastructure services .
ADVANTAGES OF IAAS
1. Cost Saving
IaaS makes an economical option for start-ups and businesses testing new ideas as it saves the organization
from sudden business spikes.
2. On-demand Scalability
It can be scaled up and down quickly in response to a company’s requirements. IaaS providers have the most
powerful storage, networking technology, and servers to accommodate the needs of their clients.
3. Have the flexibility you need
It provides more flexibility to work as employees can access their files and data offsite also in need, they can
connect to the virtual office easily and quickly.
4. Focus on business growth
With the growing business, you need to hire more staff to maintain the technology infrastructure.But with the IaaS,
you need not worry because it uses up-to-date technology that easily scales up or scales down to meet your business’
needs.
5. It can also run when the server goes down
DISADVANTAGES OF IAAS
1. Security
The enterprise does not have any control over cloud security in an IaaS environment.
2.Over Dependency
Having IaaS in your organization means have a full dependency on the provider or
third party for your data
3.Virtualization Services & User-Privacy
IaaS depends on virtualization services. Also, restricts user-privacy & customization.
• Platform as a service (PaaS) is a cloud computing
platform where a third party offers the necessary
software and hardware resources.
PAAS • The offerings enable clients to develop, run, and
manage business applications without maintaining
the infrastructure required for such software
development processes.
Platform • PaaS solutions cope with modern business
as a requirements while considerably reducing costs
and complexities of buying, installing, and
Service managing in- house hardware and software.
• Using PaaS makes it easy to develop auto-scaling
software.
HOW PAAS WORKS
EXAMPLES OF PAAS COMPANIES
SAP Cloud
Microsoft Azure
Salesforce Lightning
AWS Lambda
Google App Engine
Pivotal Cloud Foundry
AWS Elastic Beanstalk
IBM Cloud Foundry
Red Hat OpenShift
Oracle Cloud Platform
KEY CHARACTERISTICS OF PLATFORM AS A SERVICE

• Development tools
These include a source code editor, debugger, compiler, and other essential tools that assist in
writing, deploying, debugging, and managing code.
• Middleware
Middleware is similar to an invisible entity (i.e., software) that allows users to interact with the
software. It acts as an intermediate bridge between user-facing applications and machine operating
systems.
• Operating system (OS)
PaaS provides any or all operating systems that developers need to work on and on which applications
run.
• Databases
PaaS allows developers to create, query, and maintain databases needed to develop and deploy
applications.
• Infrastructure:
In PaaS, all infrastructure components, including storage and servers, are taken care of while developing
and deploying applications
ADVANTAGES OF PAAS

1. Cost
All the companies which uses PaaS enjoy low investment cost since it does not require hardware and
software.

2. Availability
PaaS is made available to all the professionals irrespective of the location. As a result, the employees of an
organization can communicate with each others using a single environment.

3. Scalability
The environment used in a PaaS is highly scalable with resources and tools. The structure is flexible
enough to allow business to expand without high investment.
ADVANTAGES OF PAAS
4. Productivity
The work environment provided by the PaaS is already existing. They offer a pre-defined business plan.
Meaning, each project needs not to be implemented from the beginning

5. Upgradeability
Updates are really necessary for PaaS solutions to keep up with the competition. If the updates are not
given time to time, the users could constantly miss out new features and improvements. These updates
always ensure that the applications are running in their latest versions.

6. Platform Support
It is crucial for a business to develop apps that support wide range of devices and operating systems. PaaS
developers always make sure that their apps are supported by different platform types
DISADVANTAGES OF PAAS

1. Security
All the data of applications are stored inside the provider's cloud database. This brings up confidential
issues since the private and sensitive information can be viewed by the provider.

2. Control
Users lack some controls over a PaaS solution. It is dependent on the provider’s capabilities.
Therefore, it is important to choose your PaaS provider wisely.

3. Reliability
PaaS solutions often face reliability concerns. When using PaaS, users must be ready to face frequent
downtimes. As a result, the users must perform their own backups to avoid data losses.
DISADVANTAGES OF PAAS
4. Compatibility
Not all the components are cloud enabled. Whatever the products offered by the PaaS provider is
customized themselves. Due to this the infrastructures may face compatibility issues in a new
environment.

5. Integration
Similar to compatibility, each and every PaaS provider has their own integration process. Two different
PaaS solutions cannot be integrated with each other. If tried contradictions can be seen. Moreover, once
there is integration issues it is not an easy task to change the PaaS provider.

6. Locked-in Features
Some of the features offered by the PaaS may be completely irrelevant to the user. It can be a program,
language or an interface that is locked-in. The users have no authority to change it.
• When software products were introduced, it had to be
installed on each individual computers of the customers and
sometimes they had to configure it to fit their operating
environment and deal with software updates.

SAAS • But if you deliver your software product as a service, you run
the software on your servers, which you may rent from a cloud
provider. Customers don’t have to install software, and they
access the remote system through a web browser or dedicated
SOFTWARE mobile app
AS • SaaS uses the Internet to deliver subscription software services,
A which are managed by a third-party vendor. Well-known SaaS
examples include Dropbox, Google Workspace, and Salesforce.
SERVICE • Many software providers deliver their software as a cloud
service, but also allow users to download a version of the
software so that they can work without a network connection.
Example: Adobe Lightroom
SAAS

• SaaS is usually provided as a


subscription where the users have
pay a fee at a regular interval.
• Customers benefit from SaaS by
avoiding large up-front payments for
software and always having access to
the latest version.
• In SaaS, assuming that a software
vendor is running the system on a
cloud, the software vendor manages the
application. Everything else is the cloud
provider’s responsibility.
SAAS
ADVANTAGES OF SAAS
1. Mobile, Laptop and Desktop access
People can access the software from any devices whenever they want. It is universally accessible.

2. No upfront cost for software or server


Customers don't need to pay any upfront costs for the software or the server because it is run by the
software providers. They usually only have to pay a monthly subscription.

3. Immediate software updates


Software updates are implemented immediately and customers don't need to download and upgrade
the softwares themselves

4. Reduced software management costs


As a single software is provided as a service on a server, management costs can be reduced.
DISADVANTAGES OF SAAS
1. Privacy regulation conformance
Different countries have different and strict privacy laws and the SaaS provider has to conform to
these laws

2. Network constraints
As the software is provided on a server, it requires an active network connection to perform

3. Security concerns
Sensitive information in the companies are handled by external software provider. Cloud providers
are prone to security breaches.

4. Lack of control over updates


As updates are implemented immediately on the server, it is hard for a user who needs a previous
version to access it.

5. Data exchange
Data exchange between cloud service and other services or local software applications is difficult
without the cloud service providing an API that is accessible for external use.
Parameters IAAS PAAS SAAS

Stands for Infrastructure as a services. Platform as a services. Software as a


services.

Used by Network architects. Developers. End


users.

Run time environment to


Access Resources like virtual machines End
deployment and development
and virtual storage. user
tools for application.

Model Service model Cloud computing model Service model in cloud computing

Requires basic There is no requirement about


Technical understanding. Requires technical knowledge.
knowledge of technicalities
subject
Developer develops apps
Popular between. Developer and researchers. Consumer and
and scripts. company.

Amazon web services, sun, Facebook, and google M.S office web, Facebook
Cloud services.
vcloud express. search engine. and google apps.

Enterprise services. AWS virtual private cloud. Microsoft azure. IBM cloud analysis.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy