SlideShare uma empresa Scribd logo
1 de 40
Architecting SaaS
Doing It Right the First Time

By Serhiy Haziyev
Agenda

Top 10
Industry
Patterns
Meet
Technical
Challenges

Proven Way to
Success
Challenges may have ugly and unpleasant face until you
know how to cope with them…
SaaS Tech Challenges

 Uptime (24/7)
 Multitenancy
 Scalability

 Security
 User Experience
SaaS Architecture Drivers
Business Constraints:

System Requirements:

 Time to market

 Hosted Online Solution
 Multitenancy

Business Requirements:

 Scalability (#users?)

 Project/Domain dependent

 Availability (99.5% .. ? .. 99.99%)

 Fault Tolerance
 Security (regulations?)
 Performance (5 sec)
 Extensibility and Upgradability
(Multiple releases)
 Maint. Window/Disaster recovery
(#hours?)
 SLA and Usage monitoring
Reference Architecture

Step 1
System
Requirements

use

Reference
Architecture

use

Patterns

derived

Business
Requirements

use

Solution
Architecture

use

Technology
Agenda

Top 10
Industry
Patterns
Meet
Technical
Challenges

Proven Way to
Success
Reference Architecture

Step 2
System
Requirements

use

Reference
Architecture

use

Patterns

derived

Business
Requirements

use

Solution
Architecture

use

Technology
Definition
Pattern (computer science) - a general reusable solution to a
commonly occurring problem
SaaS Patterns Catalog
Hosting Patterns
Hosting Patterns

On-premise
Datacenter

Managed
Hosting

Public Cloud

Buy my own
hardware, and
manage my own
data center

Co-location
or
Managed servers

“Cloud fabric”
(elastic,
infini-scale)

Private Cloud

High
Low

Ability to scale up or down
depending upon demand
Control

Low

Economy of Scale High
Multi-Tenancy Patterns
Multi-Tenancy Patterns
Level 1: Ad Hoc/Custom

Level 2: Configurable

Tenant 1

Tenant 2

Tenant 3

Tenant 1

Tenant 2

Tenant 3

Instance 1

Instance 2

Instance 3

Instance

Instance

Instance

Level 3: Configurable,
Multi-Tenant-Efficient

Level 4: Scalable, Configurable,
Multi-Tenant-Efficient

Tenant 1
Tenant 1

Tenant 2

Tenant 2

Tenant 3

Tenant 3

Load Balancer

Instance

Instance

Instance

Instance

Source: Microsoft MSDN, “Architecture Strategies for Catching the Long Tail”
Application Patterns
Load Balancing
External Load Balancer

Client-Side Load Balancing

Client

Client
Proxy
code

HTTP

Load
Balancer
HTTP

Node 1

HTTP

HTTP

Node 2

Node 1

HTTP

Node 2
Load Balancing
External Load Balancer

Client-Side Load Balancing

Lei Zhu
Stateless vs. Stateful
Stateless Principle

State Replication

Client

Client
Load
Balancer
Load
Balancer
Instance 1

Instance 2
Instance 1

Instance 2
State
Replication

DB
Data Storage Patterns
Data Storage Patterns

Separate DB

Tenant 1

Tenant 2

Tenant N

Shared DB, Shared Schema

TenantID
CustName
CustType
TenantID
OrderTitle
Price
1
Bla-bla
24.5
1 1
Bla-bla
32.99
2 1
Bla-bla
13.49
2 2
N 2
Bla-bla
55.5
N N
Bla-bla
45.45
N
Bla-bla
39.99
Pattern Selection
Reference Architecture
Step 3
System
Requirements

use

Reference
Architecture

use

Patterns

derived

Business
Requirements

use

Solution
Architecture

use

Technology
Building Blocks
RIA Client
PC Browser
RIA
components

RIA utilities

Business Logic

Workflow (Processes)
Event
Processing

BPM Engine

Collaboration

Infrastructure Services
Web Server
HTTP Server

Serlvet
Container

Messaging
Application
Server

Storage
RDBMS

NoSQL DB

In-memory
DB

Message Queue

ESB

Distributed Computing
File
storage

Distributed Computing
Framework

DW
Report Engine

Content
Management

AdHoc
Reporting

Search Engine

Reporting/BI

Mem Caching

O/RM

BAM

Data Access

Monitoring

Rule Engine

WebServices

Build & Deploy

Business
Components

REST

Common
Framework

Template engine

Operation Management

Web Application
framework

Programmatic Access

Identity and
Access

Web Frameworks

Security

Application Services

Integration

RIA
framework

HTML Rendering

Utilities

PC Browser

Cross-Cutting

Single Sign-On

Traditional Web Client
Agenda

Top 10
Industry
Patterns
Meet
Technical
Challenges

Proven Way to
Success
Reference Architecture

System
Requirements

use

Reference
Architecture

use

derived

Business
Requirements

use

Solution
Architecture

Patterns

Step 4
use

Technology
Spring
Hibernate/JPA
jBoss AS/Tomcat

Silverlight/ASP.NET
RIA Services/WCF
Entity Framework
Windows AppFabric

jBoss Drools

MS BizTalk/ESB

jBoss BPM

NServiceBus/MSMQ

OpenJMS/jBoss
Messaging

MS SQL Server

Mule ESB/Open ESB

SSIS

MySQL/PostgreSQL

SSAS

InfoBright/JasperSoft

SSRS

MS Azure

JSF/ExtJS

MS .NET

Open Source

SaaS Technology Presets

Azure Platform
SQL Azure
Azure Storage
Azure AppFabric
Service Bus
Building Blocks: Java Stack
RIA Client
PC Browser

ExtJS

RIA
components

Business Logic

Workflow (Processes)
Event
Processing

BPM Engine

Infrastructure Services
Web Server
HTTP Server

JBoss AS
Serlvet
Container

Messaging
Application
Server

Storage

MySQL
RDBMS

NoSQL DB

In-memory
DB

Message Queue

ESB

Distributed Computing
File
storage

Distributed Computing
Framework

DW
Report Engine

Content
Management

AdHoc
Reporting

Search Engine

Reporting/BI

Mem Caching

O/RM

BAM

Hibernate

Collaboration

Monitoring

Data Access

Zabbix

Rule Engine

WebServices

RPM

Business
Components

REST

Build & Deploy

POJO

RESTEasy

Spring

Template engine

Operation Management

Web Application
framework

Programmatic Access

Identity and
Access

Web Frameworks

Security

Application Services

Integration

RIA utilities

Common
Framework

RIA
framework

HTML Rendering

Utilities

PC Browser

Cross-Cutting

Single Sign-On

Traditional Web Client
Building Blocks: .NET Stack
RIA Client
PC Browser
RIA utilities

Template engine

Business Logic

Workflow (Processes)
Event
Processing

BPM Engine

Infrastructure Services
Web Server
HTTP Server

MS
SQL

RDBMS

IIS

Serlvet
Container

Messaging
Application
Server

Storage
NoSQL DB

In-memory
DB

Message Queue

ESB

Distributed Computing
File
storage

Distributed Computing
Framework

DW
Report Engine

Content
Management

AdHoc
Reporting

Search Engine

Reporting/BI

Mem Caching

O/RM

BAM

EF4

Collaboration

Monitoring

Data Access

Zabbix

Rule Engine

WebServices

MSI

Business
Components

REST

Build & Deploy

POCO

WCF

Operation Management

Web Application
framework

Programmatic Access

Identity and
Access

Web Frameworks

Security

Application Services

Integration

RIA
components

EntLib

Silverlight

Common
Framework

RIA
framework

HTML Rendering

Utilities

PC Browser

Cross-Cutting

Single Sign-On

Traditional Web Client
Reference Architecture

Step 1

Step 2

Step 3

derived

Business
Requirements

use

Solution
Architecture

Step 4
use
What Next? - Implementation

Criteria/Solution

Custom

PaaS

SaaS SDK

Faster Time to Market

No

Yes

Yes

High Control/Flexibility

Yes

No

Yes

CAPEX

High

Low

Medium

OPEX

Low

High

Low

Risks

High

Low

Low
SaaS SDK Inside

Multi-Tenancy

Scalability

High
Availability

Security

Configuration

Customization

Provisioning

User & Tenant
Management

SaaS Application Skeleton
SaaS SDK: Sample
Questions?
SoftServe SaaS Offerings

Packages:

Tools:

CloudExplorer

Java SDK

CloudEnhancer

.NET SDK

CloudEnabler

Cloud Operations
Framework
More Information

 http://www.softserveinc.com/en-us/services/saas-cloud/csdk/
 http://www.softserveinc.com/en-us/services/saas-cloud/
 http://www.softserveinc.com/en-us/services/softwarearchitecture/
Contacts

US Headquarters

Europe Headquarters

12800 University Drive, Suite 250
Fort Myers, FL 33907, USA

52 V. Velykoho Str.
Lviv 79053, Ukraine

Main Tel: 239-690-3111
Main Fax: 239-690-3116

Tel: +380-32-240-9090
Fax: +380-32-240-9080
E-mail: info@softserveinc.com

Thank You!
www.softserveinc.com
Copyright © 2010 SoftServe, Inc.

Mais conteúdo relacionado

Mais procurados

Develop an Enterprise-wide Cloud Adoption Strategy – Chris Merrigan
Develop an Enterprise-wide Cloud Adoption Strategy – Chris MerriganDevelop an Enterprise-wide Cloud Adoption Strategy – Chris Merrigan
Develop an Enterprise-wide Cloud Adoption Strategy – Chris MerriganAmazon Web Services
 
Moving to the cloud: cloud strategies and roadmaps
Moving to the cloud: cloud strategies and roadmapsMoving to the cloud: cloud strategies and roadmaps
Moving to the cloud: cloud strategies and roadmapsJisc
 
Azure security architecture
Azure security architectureAzure security architecture
Azure security architectureKarl Ots
 
Azure Networking (1).pptx
Azure Networking (1).pptxAzure Networking (1).pptx
Azure Networking (1).pptxRazith2
 
Azure fundamentals
Azure   fundamentalsAzure   fundamentals
Azure fundamentalsRaju Kumar
 
Accenture-Cloud-Data-Migration-POV-Final.pdf
Accenture-Cloud-Data-Migration-POV-Final.pdfAccenture-Cloud-Data-Migration-POV-Final.pdf
Accenture-Cloud-Data-Migration-POV-Final.pdfRajvir Kaushal
 
Saturn 2018: Managing data consistency in a microservice architecture using S...
Saturn 2018: Managing data consistency in a microservice architecture using S...Saturn 2018: Managing data consistency in a microservice architecture using S...
Saturn 2018: Managing data consistency in a microservice architecture using S...Chris Richardson
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureChris Patterson
 
Prov International - Our Service-Now ITOM Delivery Capabilities
Prov International - Our Service-Now ITOM Delivery CapabilitiesProv International - Our Service-Now ITOM Delivery Capabilities
Prov International - Our Service-Now ITOM Delivery CapabilitiesSonny Nnamchi (Ph.D)
 
Microsoft Azure - Introduction to microsoft's public cloud
Microsoft Azure - Introduction to microsoft's public cloudMicrosoft Azure - Introduction to microsoft's public cloud
Microsoft Azure - Introduction to microsoft's public cloudAtanas Gergiminov
 
Microsoft Azure - Introduction
Microsoft Azure - IntroductionMicrosoft Azure - Introduction
Microsoft Azure - IntroductionPranav Ainavolu
 
Cloud Migration: Moving Data and Infrastructure to the Cloud
Cloud Migration: Moving Data and Infrastructure to the CloudCloud Migration: Moving Data and Infrastructure to the Cloud
Cloud Migration: Moving Data and Infrastructure to the CloudSafe Software
 
Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Chris Richardson
 
Microsoft Azure Active Directory
Microsoft Azure Active DirectoryMicrosoft Azure Active Directory
Microsoft Azure Active DirectoryDavid J Rosenthal
 
Identity and Access Management (IAM)
Identity and Access Management (IAM)Identity and Access Management (IAM)
Identity and Access Management (IAM)Identacor
 

Mais procurados (20)

Develop an Enterprise-wide Cloud Adoption Strategy – Chris Merrigan
Develop an Enterprise-wide Cloud Adoption Strategy – Chris MerriganDevelop an Enterprise-wide Cloud Adoption Strategy – Chris Merrigan
Develop an Enterprise-wide Cloud Adoption Strategy – Chris Merrigan
 
Moving to the cloud: cloud strategies and roadmaps
Moving to the cloud: cloud strategies and roadmapsMoving to the cloud: cloud strategies and roadmaps
Moving to the cloud: cloud strategies and roadmaps
 
Azure security architecture
Azure security architectureAzure security architecture
Azure security architecture
 
Azure Networking (1).pptx
Azure Networking (1).pptxAzure Networking (1).pptx
Azure Networking (1).pptx
 
Azure 101
Azure 101Azure 101
Azure 101
 
Azure fundamentals
Azure   fundamentalsAzure   fundamentals
Azure fundamentals
 
Accenture-Cloud-Data-Migration-POV-Final.pdf
Accenture-Cloud-Data-Migration-POV-Final.pdfAccenture-Cloud-Data-Migration-POV-Final.pdf
Accenture-Cloud-Data-Migration-POV-Final.pdf
 
Saturn 2018: Managing data consistency in a microservice architecture using S...
Saturn 2018: Managing data consistency in a microservice architecture using S...Saturn 2018: Managing data consistency in a microservice architecture using S...
Saturn 2018: Managing data consistency in a microservice architecture using S...
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Prov International - Our Service-Now ITOM Delivery Capabilities
Prov International - Our Service-Now ITOM Delivery CapabilitiesProv International - Our Service-Now ITOM Delivery Capabilities
Prov International - Our Service-Now ITOM Delivery Capabilities
 
Microsoft Azure - Introduction to microsoft's public cloud
Microsoft Azure - Introduction to microsoft's public cloudMicrosoft Azure - Introduction to microsoft's public cloud
Microsoft Azure - Introduction to microsoft's public cloud
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Microsoft Azure - Introduction
Microsoft Azure - IntroductionMicrosoft Azure - Introduction
Microsoft Azure - Introduction
 
Azure migration
Azure migrationAzure migration
Azure migration
 
Cloud Migration: Moving Data and Infrastructure to the Cloud
Cloud Migration: Moving Data and Infrastructure to the CloudCloud Migration: Moving Data and Infrastructure to the Cloud
Cloud Migration: Moving Data and Infrastructure to the Cloud
 
Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)Developing event-driven microservices with event sourcing and CQRS (phillyete)
Developing event-driven microservices with event sourcing and CQRS (phillyete)
 
Microsoft Azure Active Directory
Microsoft Azure Active DirectoryMicrosoft Azure Active Directory
Microsoft Azure Active Directory
 
Clustering and High Availability
Clustering and High Availability Clustering and High Availability
Clustering and High Availability
 
Identity and Access Management (IAM)
Identity and Access Management (IAM)Identity and Access Management (IAM)
Identity and Access Management (IAM)
 
Microservices
MicroservicesMicroservices
Microservices
 

Semelhante a Architecting SaaS: Doing It Right the First Time

IBM ALM for aviation safety compliance aerospace
IBM ALM for aviation safety compliance aerospaceIBM ALM for aviation safety compliance aerospace
IBM ALM for aviation safety compliance aerospaceImran Hashmi
 
Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)Ivo Jansch
 
Introduction to the Microsoft Azure Cloud.pptx
Introduction to the Microsoft Azure Cloud.pptxIntroduction to the Microsoft Azure Cloud.pptx
Introduction to the Microsoft Azure Cloud.pptxEverestMedinilla2
 
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesRajesh Raheja
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellenceveehikle
 
IBM: Inteligentný manažment testovacích a vývojových prostredí
IBM: Inteligentný manažment testovacích a vývojových prostredí IBM: Inteligentný manažment testovacích a vývojových prostredí
IBM: Inteligentný manažment testovacích a vývojových prostredí ASBIS SK
 
WSI32 - IBM WebSphere Performance Fundamentals
WSI32 - IBM WebSphere Performance FundamentalsWSI32 - IBM WebSphere Performance Fundamentals
WSI32 - IBM WebSphere Performance FundamentalsHendrik van Run
 
A perspective on cloud computing and enterprise saa s applications
A perspective on cloud computing and enterprise saa s applicationsA perspective on cloud computing and enterprise saa s applications
A perspective on cloud computing and enterprise saa s applicationsGeorge Milliken
 
Implementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureImplementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureDavide Veronese
 
Application Migration Using The Accelerated Delivery Platform
Application Migration Using The Accelerated Delivery PlatformApplication Migration Using The Accelerated Delivery Platform
Application Migration Using The Accelerated Delivery PlatformSander Hoogendoorn
 
Application Migration using the Accelerated Delivery Platform
Application Migration using the Accelerated Delivery PlatformApplication Migration using the Accelerated Delivery Platform
Application Migration using the Accelerated Delivery PlatformSander Hoogendoorn
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Toolsghodgkinson
 
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...ARC Advisory Group
 
PART I of III: Advanced Authorization for SAP Global Deployments: September ...
PART I of III:  Advanced Authorization for SAP Global Deployments: September ...PART I of III:  Advanced Authorization for SAP Global Deployments: September ...
PART I of III: Advanced Authorization for SAP Global Deployments: September ...NextLabs, Inc.
 
Automated application testing for the telecommunication industry using Framew...
Automated application testing for the telecommunication industry using Framew...Automated application testing for the telecommunication industry using Framew...
Automated application testing for the telecommunication industry using Framew...TransWare AG
 

Semelhante a Architecting SaaS: Doing It Right the First Time (20)

Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
 
IBM ALM for aviation safety compliance aerospace
IBM ALM for aviation safety compliance aerospaceIBM ALM for aviation safety compliance aerospace
IBM ALM for aviation safety compliance aerospace
 
Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)
 
Introduction to the Microsoft Azure Cloud.pptx
Introduction to the Microsoft Azure Cloud.pptxIntroduction to the Microsoft Azure Cloud.pptx
Introduction to the Microsoft Azure Cloud.pptx
 
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best Practices
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 
IBM: Inteligentný manažment testovacích a vývojových prostredí
IBM: Inteligentný manažment testovacích a vývojových prostredí IBM: Inteligentný manažment testovacích a vývojových prostredí
IBM: Inteligentný manažment testovacích a vývojových prostredí
 
WSI32 - IBM WebSphere Performance Fundamentals
WSI32 - IBM WebSphere Performance FundamentalsWSI32 - IBM WebSphere Performance Fundamentals
WSI32 - IBM WebSphere Performance Fundamentals
 
A perspective on cloud computing and enterprise saa s applications
A perspective on cloud computing and enterprise saa s applicationsA perspective on cloud computing and enterprise saa s applications
A perspective on cloud computing and enterprise saa s applications
 
Implementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureImplementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architecture
 
Soa best practice
Soa best practiceSoa best practice
Soa best practice
 
Application Migration Using The Accelerated Delivery Platform
Application Migration Using The Accelerated Delivery PlatformApplication Migration Using The Accelerated Delivery Platform
Application Migration Using The Accelerated Delivery Platform
 
Application Migration using the Accelerated Delivery Platform
Application Migration using the Accelerated Delivery PlatformApplication Migration using the Accelerated Delivery Platform
Application Migration using the Accelerated Delivery Platform
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
 
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...
ARC's Greg Gorbach's Global Manufacturing Presentation at ARC's 2008 Industry...
 
PART I of III: Advanced Authorization for SAP Global Deployments: September ...
PART I of III:  Advanced Authorization for SAP Global Deployments: September ...PART I of III:  Advanced Authorization for SAP Global Deployments: September ...
PART I of III: Advanced Authorization for SAP Global Deployments: September ...
 
Automated application testing for the telecommunication industry using Framew...
Automated application testing for the telecommunication industry using Framew...Automated application testing for the telecommunication industry using Framew...
Automated application testing for the telecommunication industry using Framew...
 
Bpm Tools
Bpm ToolsBpm Tools
Bpm Tools
 
Overview of SaaS
Overview of SaaSOverview of SaaS
Overview of SaaS
 

Último

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Último (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

Architecting SaaS: Doing It Right the First Time

Notas do Editor

  1. The current presentation will lead you through a process of creating SaaS solution, step by step with clear explanations.
  2. For clarity we divided the material to 3 items:The first one explains what are the most typical technical challenges in SaaSThe second one introduces top industry patterns that overcome the challengesAnd the last one discovers some secret ingredients of successful SaaS solution
  3. Watch out! Challenges may have ugly and unpleasant face until you know how to deal with them…
  4. Doing migration or writing SaaS from scratch the most typical challenges are:Uptime or availability - the application should be up & running and accessible to users anywhere, anytimeMultitenancy – single application may host thousands of customers, allowing them to customize the look & feel, business logic or data modelScalability - it is important to scale the application on demand when bringing new customers on boardSecurity – according to multiple researches this is concern of almost every SaaS customerUser Experience – last but not least, complex application in browser may become unusable for end users without proper UX design
  5. The provided aspects are drivers that help to shape properly Solution Architecture.We distinguish the three types of Architecture drivers:Business Constraints – such as time to marketBusiness Requirements (or Functional requirements) – which varies from project to project-And System Requirements (or Non-functional requirements) – which are almost the same for different SaaS projectsThe red highlightedwords are the variables that depend on a project.Allowed downtime facts:99.5% - 1.83 days99.9% ("three nines") - 8.76 hours99.99% ("four nines") - 52.56 minutes
  6. Step 1 to successful SaaS application is to have answers on how to address the system requirements before starting an actual project.
  7. And this is the right moment where industry patterns come to the scene
  8. Our Step 2 towards successful SaaS will be to identify target patterns to solve the system requirements
  9. Let’s agree what pattern is.There are multiple levels of patterns, such as:BusinessArchitecturalDesignWe will learn a few SaaS Architectural patterns in this presentation.
  10. The pic is “The Temptation of Saint Anthony”There could be different tenants – different size: big/small, different requirements: simple and complex.And single application should serve them altogether with appropriate quality of service.Metaphor: Tenants are approaching to Saint Anthony but he knows how to deal with them using the “multitenancy cross” :)
  11. The cross of “Saint Anthony” to classify tenants and find appropriate model.
  12. You can see that most patterns in this group address particular system requirement – e.g. Scalability or Availability
  13. Let’s assume that we did exercise with selecting patterns for our system requirements and the result is the following – …click….
  14. The next step is to identify what are the components or building blocks for the target SaaS solution
  15. The map of possible components in sophisticated SaaS solution.Let’s assume that this is RIA without sophisticated background processing and analytics.In this case the candidate blocks would be … click …
  16. And now… What is the secret ingredient to do SaaS right the first time?
  17. Technology…
  18. This is collection best of the breed technologies - called presets.Proven stacks in three major technology domains that we use at SoftServe – Java based, .NET based and MS Cloud based
  19. Here is the mapping to Open Source stack
  20. the mapping to .NETstack
  21. Now, all steps together…Business requirements will add probably some components, but 70-80% of Architecture is done!But is this enough to have successful SaaS application at the end of the day?
  22. Notreally, because all these technologies and patterns you have to apply together and this is usually bumpy road when doing this first time.And we did it several times until created a set of reusable components called SaaS SDK.
  23. The secret weapon is to have already implemented the most used patterns such as multi-tenancy, scalability and so on, actually you can see them as names of components of SaaS SDK.
  24. And the benefit will cover all expectations – this fully scalable working dashboard was implemented by a single developerwithin 2 days.And hosted on cloud environment within 1 hour.It was implemented on SaaS SDK.
  25. Once you know the sense of things, the challenges turn to be the beauty