Cloud Saas Lectureee

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

Cloud Computing

Architecture
As we know, cloud computing technology is used by both
small and large organizations to store the information in cloud and access it
from anywhere at any time using the internet connection.

• Cloud computing architecture is a combination of service-oriented


architecture and event-driven architecture.
• Cloud computing architecture is divided into the following two parts –
o Front End
o Back End
The below diagram shows the architecture of cloud computing -
Front End
The front end is used by the client. It contains client-side interfaces and
applications that are required to access the cloud computing platforms. The
front end includes web servers (including Chrome, Firefox, internet explorer,
etc.), thin & fat clients, tablets, and mobile devices.

Back End
The back end is used by the service provider. It manages all the resources that
are required to provide cloud computing services. It includes a huge amount of
data storage, security mechanism, virtual machines, deploying models,
servers, traffic control mechanisms, etc.
Components of Cloud Computing Architecture

There are the following components of cloud computing architecture -


a. Client Infrastructure
Client Infrastructure is a Front end component. It provides GUI
(Graphical User Interface) to interact with the cloud.
b. Application
The application may be any software or platform that a client wants to
access.
c. Service
A Cloud Services manages that which type of service you access
according to the client’s requirement.
Cloud computing offers the following three type of services:
i. Software as a Service (SaaS) – It is also known as cloud application services.
Mostly, SaaS applications run directly through the web browser means we do not
require to download and install these applications. Some important example of SaaS
is given below.
Example: Google Apps, Salesforce Dropbox, Slack, Hubspot, Cisco WebEx.

ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is


quite similar to SaaS, but the difference is that PaaS provides a platform for
software creation, but using SaaS, we can access software over the internet without
the need of any platform.
Example: Windows Azure, Force.com, Magento Commerce Cloud, OpenShift.
iii. Infrastructure as a Service (IaaS) – It is also known as cloud infrastructure
services. It is responsible for managing applications data, middleware, and runtime environments.
Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco Metapod.

iv. Runtime Cloud -


Runtime Cloud provides the execution and runtime environment to the virtual machines.

v. 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.
vi. 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.
vii. 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.
viii. Security -
Security is an in-built back end component of cloud computing. It implements a security
mechanism in the back end.
ix. Internet
The Internet is medium through which front end and back end can interact and communicate
with each other.
How does Cloud Computing Work?

Assume that you are an executive at a very big corporation. Your particular responsibilities
include to make sure that all of your employees have the right hardware and software they need
to do their jobs. To buy computers for everyone is not enough. You also have to purchase
software as well as software licenses and then provide these software’s to your employees as they
require. Whenever you hire a new employee, you need to buy more software or make sure your
current software license allows another user. It is so stressful that you have to spend lots of
money.

But, there may be an alternative for executives like you. So, instead of installing a suite of
software for each computer, you just need to load one application. That application will allow the
employees to log-in into a Web-based service which hosts all the programs for the user that is
required for his/her job. Remote servers owned by another company and that will run
everything from e-mail to word processing to complex data analysis programs. It is called cloud
computing, and it could change the entire computer industry.
In a cloud computing system, there is a significant
workload shift. Local computers have no longer to do
all the heavy lifting when it comes to run applications.
But cloud computing can handle that much heavy
load easily and automatically. Hardware and software
demands on the user's side decrease. The only thing
the user's computer requires to be able to run is the
cloud computing interface software of the system,
which can be as simple as a Web browser and the
cloud's network takes care of the rest.
Fundamentals of SaaS

Software as a Service
Introduction
What is SaaS?
SaaS stands for Software as a Service.
It is a cloud computing model where software applications are
provided to users over the internet. Users access the software
through a web browser, eliminating the need for installation and
maintenance on their local machines.

With SaaS, users can remotely access the


software without the need for installation
on their local devices. This model allows
businesses to subscribe to the software
service with a monthly fee and a pay-as-you-
go approach, providing flexibility and cost-
effectiveness.
Cont…
How Does SaaS Work?

SaaS providers host and manage the software applications on their


servers. Users access the applications through a client interface, usually
a web browser. The provider takes care of software updates, security,
and infrastructure management, allowing users to focus on using the
software rather than maintaining it.

The future of SaaS


Benefits of SaaS
Benefits of SaaS
• Cost Savings: SaaS eliminates the need for upfront hardware and
software investments, reducing costs for businesses.
• Scalability: SaaS allows users to easily scale up or down based on
their requirements, paying only for the resources they use.
• Accessibility: Users can access SaaS applications from any device
with an internet connection, enabling remote work and collaboration.
• Easy Updates: SaaS providers handle software updates and patches,
ensuring users always have access to the latest features and
improvements.
Advantages of SaaS for Businesses
Advantages for Businesses
• Rapid Deployment: SaaS applications can be quickly deployed,
reducing time-to-market for businesses.
• Lower Maintenance: With SaaS, businesses don't need to worry
about software maintenance, updates, or infrastructure management.
• Enhanced Collaboration: SaaS applications often include
collaboration features, enabling teams to work together seamlessly.
• Improved Security: SaaS providers implement robust security
measures to protect user data, often surpassing what individual
businesses can achieve.
SaaS Applications
Examples of SaaS Applications

• Customer Relationship Management


(CRM) systems like Salesforce.
• Project Management tools such as Asana
and Trello.
• Communication and Collaboration
platforms like Slack and Google Workspace.
• Accounting Software such as QuickBooks
Online and Xero.
SaaS vs Traditional Software
SaaS vs. Traditional Software
• SaaS: Pay-as-you-go pricing, no upfront costs, automatic updates,
scalable, accessible from anywhere.
• Traditional Software: Upfront license fees, installation required,
manual updates, limited scalability, tied to specific devices.

SaaS Adoption Considerations

Data Security: Assess the security measures implemented by the SaaS


provider to protect your sensitive data.
Service Level Agreements (SLAs): Review the SLAs to ensure the
availability and performance of the SaaS application meet your business
needs.
Integration Capabilities: Check if the SaaS application can integrate with
your existing systems and workflows.
Vendor Reputation: Research the vendor's reputation, customer reviews,
and track record before committing to a SaaS solution.
SaaS Maturity Model

What is SaaS Maturity Model?

The SaaS Maturity Model is a framework that


helps organizations assess and enhance their
capabilities in adopting and leveraging
Software as a Service (SaaS). It provides a
structured approach to understand the
journey from initial adoption to full
utilization and optimization of SaaS solutions.
Let's explore the different stages of the SaaS
Maturity Model.
SaaS Maturity Model
Stage 1: Ad Hoc

At the initial stage, organizations have limited awareness and experience with SaaS.
Adoption is ad hoc, with sporadic usage of SaaS applications. There is a lack of
standardized processes and governance. The focus is primarily on solving immediate
challenges rather than long-term strategy.

Stage 2: Defined

In the defined stage, organizations start formalizing their SaaS adoption. There is a clearer
understanding of business requirements and alignment with SaaS solutions. Defined
processes and governance frameworks are established, ensuring better control and security.
However, the usage of SaaS is still limited to specific departments or functions.

Stage 3: Managed
At the managed stage, organizations have a comprehensive strategy for SaaS adoption.
SaaS applications are managed across the organization with standardized processes and
controls. Integration with other systems is prioritized, enabling data flow and
collaboration. Cost optimization and vendor management strategies are implemented.
SaaS Maturity Model
Stage 4: Optimized
In the optimized stage, organizations have fully embraced SaaS and maximize its potential.
SaaS solutions are strategically aligned with business goals. Continuous improvement and
innovation are emphasized, leveraging analytics and insights to drive optimization.
Scalability, security, and performance are key considerations.

Key Benefits of the SaaS Maturity Model:


Clear Roadmap: The model provides a roadmap for organizations to progress from initial
adoption to optimized utilization of SaaS, ensuring a strategic approach.
Governance and Control: It helps establish standardized processes and governance
frameworks, enabling better control and security.
Integration and Collaboration: Organizations can focus on integrating SaaS applications
with other systems, fostering data flow and collaboration.
Cost Optimization: The model facilitates cost optimization strategies by evaluating SaaS
investments, avoiding redundant applications, and optimizing vendor management.
Innovation and Optimization: It encourages organizations to continuously improve and
innovate, leveraging insights to drive optimization and gain a competitive edge.
Consideration for SAAS Application development
Important factors for good design of SAAS model

A well-designed SaaS application can be distinguished from a poorly designed


one based on three key factors: scalability, configurability, and multi-tenancy
efficiency.

• Scalability: A well-designed SaaS application focuses on maximizing concurrency and


efficiently utilizing resources. This involves optimizing factors such as locking duration,
statelessness, utilizing shared resources like threads and network connections, caching
reference data, and partitioning large databases.

• Configurability: In a well-designed SaaS application, customization and configuration are


achieved without the need for code changes. Each customer should be able to configure the
application to meet their specific needs, without affecting other customers. The application
should provide simple and easy-to-use tools for customers to configure the appearance and
behavior of the application for their users, without incurring additional development or
operational costs.
Important factors for good design of SAAS model

• Multi-tenancy: A well-designed SaaS application embraces a multi-tenant architecture,


allowing multiple companies to use the same application instance simultaneously while
ensuring transparency. The architecture should enable efficient sharing of resources across
tenants, ensuring optimal utilization and performance.
Challenges & Future Trends

SaaS Implementation Challenges:


• Data Migration: Transferring data from existing systems to a SaaS application can be
complex and time-consuming.
• Internet Connectivity: SaaS applications require a stable internet connection for
uninterrupted access.
• Customization Limitations: SaaS applications may have limited customization options
compared to on-premises software.
• Vendor Lock-in: Evaluate the contract terms and exit strategy in case you decide to
switch or terminate the SaaS service.

Future Trends in SaaS


• Industry-Specific Solutions: SaaS offerings tailored to specific industries will continue
to grow.
• Artificial Intelligence (AI) Integration: SaaS applications will increasingly leverage AI
capabilities for enhanced functionality and user experience.
• Internet of Things (IoT) Integration: SaaS solutions will integrate with IoT devices to
enable data-driven insights and automation.
• Hybrid SaaS Models: Hybrid models combining SaaS and on-premises solutions will
emerge to meet diverse business requirements.
Conclusion

• Software as a Service (SaaS) offers numerous advantages, including


cost savings, scalability, and accessibility.
• Businesses can leverage SaaS to streamline operations, improve
collaboration, and focus on core competencies.
• As technology continues to evolve, SaaS will play a crucial role in
driving digital transformation and innovation.
Remember

• Scalability: Plan for growth and optimize resource usage.


• Security: Prioritize data protection and implement robust security measures.
• User Experience: Focus on intuitive interfaces and seamless workflows.
• Integration: Provide APIs for seamless integration with other systems.
• Monitoring: Implement monitoring and analytics for performance tracking.
• Documentation: Offer comprehensive user guides and support resources.
• Continuous Improvement: Gather feedback and iterate for ongoing
enhancements.
THANK YOU

You might also like