Architect Saas Applications Unique Challenges Solutions

Intro to SaaS, scalability, multi-tenancy, provisioning, security, APIs, management, maintenance

Last updated 2022-01-10 | 4.4

- Architect Scalable SaaS applications
- Implement multi-tenancy models
- Design SaaS management and monitoring frameworks

What you'll learn

Architect Scalable SaaS applications
Implement multi-tenancy models
Design SaaS management and monitoring frameworks

* Requirements

* Software Development Experience
* Software Architecture

Description

Are you a software professional who is intrigued by the term “Software-as-a-Service”? Have you thought about how Google, Microsoft, Salesforce and others build and manage these applications? Do you yearn to learn about the unique challenges in architecting and building these applications and how to solve them? If you are like countless other professionals who think so, you have come to the right place. This course unveils the principles, patterns and practices on which SaaS applications are architected and empowers you build some of your own.

You will learn about the unique challenges of SaaS – scalability, multi-tenancy, monitoring and integrations.  You will become familiar with various options and understand their strength, shortcomings and uses. You will take up two use cases and build SaaS architectures for them throughout the course.

This course is intended for experienced software developers and software architects who are new to SaaS. If also helps students for IT to gain insight and understanding about SaaS. This is an architecture course. There is NO detailed design or source code that is discussed in this course.

Who this course is for:

  • Software Developers
  • Software Architects
  • New to SaaS

Course content

8 sections • 51 lectures

Course Overview & Expectations Preview 06:09

  • Demand for SaaS
  • Need for learning SaaS
  • Things covered vs not covered
  • Expected student profile

Introduction to SaaS Preview 05:30

  • SaaS Concepts
  • Comparison with car ownership vs renting

SaaS Elements Preview 03:00

  • Various Players in a SaaS Setup - Service Provider, Tenant, User and Operations.

SaaS vs IaaS vs PaaS Preview 03:25

How does SaaS compare and contrast with IaaS and PaaS?

Architecting SaaS - Challenges Preview 05:14

  • Unique Challenges of SaaS
  • Distinct Considerations

@Review - SaaS Basics

Introduction to the Use Cases Preview 02:37

A gentle introduction

ITS - Functionality Preview 02:23

Discuss the functionality provided by the Incident Tracking System use case

ITS - Functional Architecture Preview 02:30

Layout the functional architecture for the ITS Use Case

LCS - Functionality Preview 02:49

Discuss the functionality provided by the Live Chat Service Use Case

LCS - Functional Architecture Preview 04:40

Layout the functional architecture for the LCS Use Case

Use Case Process for the Course Preview 01:28

How the use the use cases in this course

Intro to Multi-tenancy Preview 03:30

- Multi-tenancy concepts

- Unique considerations

Tenant Resource Allocation Preview 04:25

  • Types of resources
  • Resource allocation patterns

Architecting Resource Allocation Preview 10:41

  1. Options available for resource allocation
  2. Compare and contrast options
  3. Recommendations

Tenant Context Awareness Preview 05:40

  • What is tenant context awareness?
  • Example 
  • Architecting tenant context awareness

Intro to Tenant State Preview 04:39

  • Need for Tenant State Management
  • Complexities in state management

Architecting Stateless Services Preview 04:14

  • Architecture options
  • Scaling

Architecting Stateful Services Preview 07:38

  • Architecture options
  • Failover

@Review - Multi-tenancy architecture

Review the learnings about multi-tenancy architecture through a Quiz.

- ITS Use Case - Multi-tenancy

Implement the learnings in the section for the ITS architecture

- LCS Use Case - Multi-tenancy

Implement the learnings in the section for the LCS multi-tenancy architecture

Intro to SaaS Data Preview 05:11

  • Types of SaaS Data
  • Challenges with SaaS Data Management

Database Partitioning Preview 09:15

  • Options for Tenant Partitioning in databases
  • Recommendations

Real time Cache Preview 04:59

  • Need for real time cache
  • Options available
  • Recommendations

Machine Logs Preview 06:43

  • Machine Logs in SaaS
  • Need for automation for handling Machine Logs

Inter-component messaging Preview 06:31

  • How messaging works in SaaS
  • Need for standardization
  • Recommendations

Multi-component Messaging Preview 06:11

  • Need for multi-component messaging in SaaS
  • Options available
  • Recommendations

- ITS Use Case - Data Services

Implement the learnings in the section for the ITS architecture

- LCS Use Case - Data Services

Architect Data Services for the LCS Use Case based on learnings in this section

Intro to SaaS Provisioning Preview 05:22

  • Activities performed during provisioning
  • Provisioning Goals for better service

Templates and Automation Preview 05:09

  • The need for profiles & templates in SaaS
  • Automation of provisioning activities

Custom & API based Provisioning Preview 06:00

  • Need for custom Provisioning
  • Custom User Interfaces & APIs

Change Propagation Preview 09:32

  • Issues with Change Propagation
  • Patterns & Recommendations

Local Cache Preview 03:31

  • Very large networks
  • Local Cache

- ITS Use Case - Provisioning

Please review the ITS Use Case and the architecture you have done so far. Implement the learnings in this section to architect ITS provisioning

- LCS Use Case - Provisioning

Please review the LCS Use Case and the architecture you have done so far. Implement the learnings in this section to architect LCS provisioning

Service Levels Preview 03:47

The concept of Service Levels and how it impacts SaaS businesses

Types of failures Preview 06:07

The different types of failures that happen in a SaaS setup and the best practices to overcome them.

Architecting SaaS monitoring Preview 08:02

  • Push driven monitoring
  • Pull driven monitoring

Upgrades in SaaS Preview 05:48

  • Why SaaS upgrades are different and distinct
  • Rolling upgrades and how they are performed

Architect for Upgrades Preview 04:58

  • Supporting SaaS upgrades inside the software
  • Backward compatibility architecture

- ITS Use Case - Monitoring and Upgrades

Please review the ITS Use Case and the architecture you have done so far. Implement the learnings in this section to architect ITS monitoring and upgrades

- LCS Use Case - Monitoring and Upgrades

Please review the LCS Use Case and the architecture you have done so far. Implement the learnings in this section to architect LCS monitoring and upgrades

Security in SaaS Preview 04:03

  • Unique challenges in Security inside a SaaS environment
  • Types of threats

Architect for Security Preview 08:07

  • Data Security
  • Network Security
  • Application Security
  • Best Practices

Intro to SaaS Integrations Preview 05:53

  • SaaS Services vs SaaS Solutions
  • Need for Integrations

Architecting Integrations Preview 04:28

  • Types of Integrations
  • Best Practices in Integrations

Integrating ITS and LCS Use Cases

Integrate ITS and LCS Use Cases for to work with each other.

Closing Remarks Preview 00:48

Summarize the course learnings

BONUS LECTURE - Other Courses and Coupons Preview 00:05

  • Next steps
  • Course coupons