Date post: | 11-May-2015 |
Category: |
Technology |
Upload: | jaap-kabbedijk |
View: | 4,051 times |
Download: | 1 times |
1
Variability in Multi-tenant SaaS Applications
Jaap Kabbedijk, MSc.Utrecht University, the Netherlands
2
What will we discuss?
Introduction
Explanation SaaS history
Explanation Multi-tenancy
Case Studies
Conclusion
3
Who am I?
Bachelor Information Sciences @UU
Master Business Informatics @UU
PhD. Candidate on variability in multi-tenant SaaS implimentations
Train for marathon of Paris
4
What do all those terms mean?!
Runtime Variability
Multi-tenancy
Software as a Service (SaaS)
5
First something completely different!
Based on work of dr. Andy Zaidman (TUDelft)
6
Pros and Cons
House Apartment
Effective use of land - +
Privacy + -
Infrastructure sharing - +
Maintenance cost sharing - +
Freedom + -
House: Privacy en freedomApartment: Cost efficiency
7
What does this have to do with software?
8
Traditional Delivery Life Cycle
9
Traditional Deployment Model
10
Traditional - Characteristics
Think about the ‘House’ example
Customers have to install and update their own software
Customers manage their own data
Every customers needs his own server to deploy the product
Customizations can easily be done per customer
11
Traditional – Disadvantages
High initial costs for customers
Hard to keep up with updates
Lack of expert knowledge
High change of data loss
12
Application Server Provider
Data not responsibility customer
Application is hosted at a third party
Multiple products are hosted on the same machine
More efficient use of server compared to the traditional way
Every customer has his own product on the server
13
Different Environments
Data not responsibility customer
Everyone uses the same product, but gets his own environment and database
Only one codebase
Reasonably scalable
14
Multi-user Solution
Software as a Service (think about the ‘apartment ‘ example)
Data not responsibility customer
A product is offered completely as a ‘service’
Comparable to water or energy
Possibility to serve large number of customers with a limited amount of servers
Facebook, Grooveshark, etc.
15
Perfect Solution?
Lower cost for customers
Higher safety of data for the customer
Efficient server use for the hosting provider
But…where are the customizations?
16
Multi-tenancy
Data not responsibility customer
A product is offered completely ‘as a service’
Possibility to serve large number of customers with a limited amount of servers
Tenants (customers) can have specific functionality
Combination between the ‘house’ and ‘apartment’ example
17
Overview ASP to Multi-tenancy
(Kwok et al., 2008)
18
Multi-tenancy: Holy grail?
A hosted solution
Sharing of: Hardware Software Development cost Deployment cost Maintenance cost
Possibility for variability in the product
19
Why is not everything multi-tenant?
It is a hype, but many people do not know what it is exactly
Great flexibility in a product can make it difficult to maintain
Single point of failure
Safety
But most of all…most companies don’t know HOW to implement variability!
20
What is variability?
Possibility to adapt a software product to a specific situation
Different platform
Different country
Specific customer wishes
21
Variability moments
During design Different product for Linux than for Windows
During compilation Point to different sections of code while compiling software for
a specific phone
Linking at installation Linking a product to several additional modules
Run-time When a user of an on-line system wants to change something
22
Runtime variability
23
Case Studies
Two large product software vendors from the Netherlands Exact AFAS
ERP software
Examine the software architecture of both
24
Case 1 - Exact
25
Case 1 – Exact
Had (and have) an on-premises solution
Started Exact Online a few years ago
15.000 customers
Database change
All customers (in principle) use the same database and software instance.
Customizations per customer are difficult
26
Architecture Exact Online
27
Overview ASP to Multi-tenancy
(Kwok et al., 2008)
28
Case 2 - AFAS
29
Case 2 - AFAS
Originally an on-premises solution
Since a few years: Profit Web
10.000 customers
Every customer has his own environment on the server
Customizations per customer are possible, but are hard to maintain
30
Overview ASP to Multi-tenancy
(Kwok et al., 2008)
31
My research
Answering the question: “how can variability be implemented in a multi-tenant SaaS
environment?”
My research aims at finding patterns the enable a software vendor to successfully implement variability in a multi-tenant SaaS system
32
Questions