cloud computing saas
TRANSCRIPT
”
“ Software as a service (SaaS; pronounced /sæs/ or /sɑːs/) is a software licensing and delivery
model in which software is licensed on a
subscription basis and is centrally hosted. It is
sometimes referred to as "on-demand
software". SaaS is typically accessed by users
using a thin client via a web browser.
Advantages of SAAS
• Lower cost of entry
• Reduced time to benefit/rapid prototyping
• Pay as you go
• The SaaS vendor is responsible for upgrades, uptime and security
• Higher adoption rates
• Integration and scalability
• Work anywhere
”
“ An Application Service Provider (ASP) is a
business providing computer-
based services to customers over a
network; such as access to a particular
software application (such as customer
relationship management) using a
standard protocol (such as HTTP)
ASP Vs. SAAs
• Procures app and
resells service
• Single-Instance,
Single-Tenant
Legacy Software
application.
• lacks scalability
• Examples
BMC AAS
• Hosted by
software
publisher
• Many
customers to
one
application set
• shared
resources and
shared
infrastructure,
• Scalable
Examples
Salesforce.com
”
“ Utility computing relates to the business model
in which application infrastructure resources —
hardware and/or software — are delivered.
While cloud computing relates to the way we
design, build, deploy and run applications that
operate in an a virtualized environment, sharing
resources and boasting the ability to
dynamically grow, shrink and self-heal.
1. Creating your app
The app is the product that you are going to sell. If you already have this app ready, you will only have to modify it so that it is compatible for multiple clients. The app is the front-end for your client’s end-users.
SITE STRUCTURE
www.mydummyapp.com:
SaaS site (where the client
registers)
*.mydummyapp.com:
SaaS app (catch-all
points to the actual app)
OPTIONS
Option 1 – Single database, single code-base
Advantages: Easy to
manage database &
updates; no duplication.
Disadvantages: If you miss
out a “clientid” in the SQL
query, it may result in issues
with another client.
Multiple database, multiple code-base
Advantages: Very little
codebase modification,
easy to ensure client data
does not get mixed.
Disadvantages: Multiple
databases to manage so in
the event of DB schema
updates, you will have to
update each and every
database.
Advantages: No codebase modification, easy to ensure client data does not get mixed, easy to perform client specific modifications. Disadvantages: Multiple databases/code to manage so in the event of DB schema/code updates, you will have to manually update for each client.
Option 2 – Multiple database, single code-base
2. Creating your SaaS site
The site is the front-end for your clients. They will be using your site to signup for the app.
The client visits www.mydummyapp.com
The client registers on the site
The site creates the a DB (and user) for the client (and adds an entry in the site’s DB)
The client then uses the new URL (i.e. clientsubdomain.mydummyapp.com) for himself & his end-users
The end-users directly visit clientsubdomain.mydummyapp.com which is basically the app using the client’s DB
Workflow
1
2
3
4
5
HELPFUL DOCUMENTATION
• http://www.ibm.com/cloud-computing/in/en/what-is-cloud-computing.html
• http://www.business2community.com/cloud-computing/top-5-examples-cloud-computing-
0973287
• http://www.salesforce.com/in/?ir=1
• http://service-architecture.static-barryandassociates.com/
• http://sixteenventures.com/difference-between-asp-and-saas
• http://anantgarg.com/2013/06/10/build-a-php-saas-app-from-scratch/