Date post: | 20-Jan-2016 |
Category: |
Documents |
Upload: | peregrine-hines |
View: | 223 times |
Download: | 0 times |
Understanding Software + Services:A PerspectiveDavid ChappellChappell & Associateswww.davidchappell.com
Introducing Software + Services
A Closer Look at Services
Application Platforms in an S+S World
Agenda
Introducing Software + Services
Software + ServicesThe basics
• Enterprises today primarily use software that they run themselves• Commonly known as on-premises software
• Software as a service (SaaS) is becoming a more important part of enterprise IT• Enterprises are moving toward a mixed world of
software + services (S+S)
• S+S = On-premises software + software as a service
Enterprise
Server Software
Desktop Software
On-premises Software
Service Provider
Server Software Services
Internet
Illustrating S+S
Microsoft ExchangeAn S+S example
Enterprise Y
Enterprise Z
Microsoft
Exchange Hosted
Services
Enterprise X
Internet
Service ProviderExchange
Server
ExchangeServer
ExchangeServer
OutlookOutlook Outlook
Microsoft Dynamics CRMAnother S+S example
Enterprise Y
Enterprise Z
Enterprise X
Dynamics CRM
Outlook/ Browser
On premises Partner Hosted
CRM Live
Service ProviderDynamics
CRM
Microsoft
Dynamics CRM
Outlook/ Browser
Outlook/Browser
S+S and SOAAn Aside
• How S+S relates to SOA depends on what you think SOA is
• Some possibilities:• SOA refers only to services provided inside an
organization’s firewall• It encompasses just the on-premises software part
of S+S• SOA refers to services provided both inside an
organization and by its business partners• It encompasses the on-premises software part of
S+S and some of the SaaS aspects• SOA refers to all services wherever they’re provided
• SOA and S+S encompass the same things
Living in an S+S World
• Enterprises will use a mix of on-premises software and services• That mix will vary across organizations
• Much that is currently done on-premises might be moved to services• Mail and CRM are early examples
A Closer Look at Services
Evaluating ServicesPotential benefits
• Lower costs• No up-front license to buy• Usage-based pricing is common
• Faster deployment• Less financial risk
• No large up-front investment required• Can often try before you buy
• Higher reliability• At least for some organizations
• Easier upgrades
Evaluating ServicesPotential challenges (1)
• Trust• Can this service provider be trusted?
• Data• How safe is it?
• Regulatory and compliance issues• Can the provider ensure compliance with any relevant
regulations? • Integration
• How can a SaaS application be connected with applications in the enterprise?
Evaluating ServicesPotential challenges (2)
• Customization• How much is possible?
• Identity• Is identity federation supported?
• Management• How can a SaaS application be monitored?
• Supporting users• Who runs the help desk?
Kinds of ServicesBusiness vs. consumer
• Consumer services:• Often ad-supported• May not be perfectly reliable
• Business services:• Paid for directly• Probably have a service-level agreement (SLA)
• Microsoft divides these into two families:• Live services target consumers• Online services target businesses
Kinds of ServicesA business vs. consumer example: Google Apps• Provide email, calendaring, document creation,
etc.
• Available in two editions:• Standard
• Free (ad-supported)• Premier
• $50 per user per year• 99.9% uptime guarantee for email• Supports identity integration with enterprises• Provides a help desk
Kinds of ServicesSingle-tenant vs. multi-tenant
• Single-tenant application:• A service provider offers a unique instance of an
application for each organization that uses it• Pros: Allows better isolation• Cons: Can be more expensive because the service
provider can’t share as much
• Multi-tenant application:• A service provider offers a shared instance of an
application for all organizations that use it• Pros: Can be cheaper• Cons: Allows less isolation
Service Provider
Computer
Single-Tenant
Application
Computer
Single-Tenant
Application
Computer
Single-Tenant
Application
Internet
Enterprise Y
Enterprise Z
Enterprise X
Illustrating Single-Tenancy
Service Provider
Computer
Multi-Tenant
Application
Internet
Enterprise Y
Enterprise Z
Enterprise X
Illustrating Multi-Tenancy
The ISV Decision Creating an application as on-premises software• The application must be tested in all of the
environments in which it will run• Perhaps on multiple operating systems
• The application must be installed at each customer
• Updating the application requires changing installed code at each customer’s site• Perhaps multiple copies of that code at each site
• The application’s performance and reliability depend in part on the environment in which the customer runs it• It’s out of the ISV’s control
The ISV DecisionCreating an application as SaaS
• The application will run in only one environment• And so need be tested only for that environment
• The application can be immediately available to any customer with Internet access anywhere in the world• For browser-accessible applications, no installation at
customer sites is required• Updating the application requires changing only
one copy of the code • The service provider controls the environment in
which the application runs• The ISV might do this itself• It might rely on a specialized service provider to do this
Salesforce.comAn example SaaS ISV
• Salesforce.com is the poster child for SaaS ISVs• It provides CRM as a SaaS application
• The company has:• More than 30,000 customers• More than $600 million in annual revenue
• Although just over $5 million in profit
Enterprises and SaaS
• Why shouldn’t enterprises also create custom SaaS applications?
• Many of the benefits an ISV gets from building a SaaS application also apply to the enterprise• Someone else is responsible for running the application• The enterprise can pay the service provider for extra
capacity only when needed• Such as during the Christmas rush
• Both ISVs and enterprises can benefit from a platform created specifically to support SaaS applications
Application Platforms in an S+S World
Service Provider
Enterprise
Application
Application
SaaSPlatform
Application
On-premises Platform
Application
Application Platforms for S+SOn-premises and SaaS
• A SaaS platform runs custom applications on servers in the cloud
Application
SaaSPlatform
Service Provider
Browser or Other
Client
Enterprise
HTTP, SOAP, Other
Illustrating a SaaS Platform
• An application that only offers programmable services isn’t the same thing as a SaaS platform• Although SaaS platforms commonly allow access in this
way
Programmable
Service
Service Provider
Service Provider
On-premises Platform
Enterprise
Custom Applicatio
n
Web Services
Programmable
Service
Exposing Programmable ServicesAn aside
Supporting ApplicationsWhat an application platform can provide
Computing• Operating system• Application services
Storage• File system• DBMS
Integration• Connectivity, workflow, etc.
Supporting ApplicationsOn-premises platform technology examples
Computing• Operating system: Windows, Linux• Application services: .NET Framework, Java EE app
server
Storage• File system: Windows NTFS, Linux file system• DBMS: SQL Server, Oracle
Integration• Connectivity, workflow, etc.: BizTalk Server, WebSphere
Process Server
Supporting ApplicationsSaaS platform technology examples
Computing• Operating system: Amazon’s Elastic Compute Cloud
(EC2)• Application services: Salesforce.com’s Force.com,
Microsoft’s Dynamics CRM platform
Storage• File system: Amazon’s Simple Storage Service (S3)• DBMS: ?
Integration• Connectivity, workflow, etc.: Microsoft’s BizTalk
Services
Amazon’s EC2Operating systems in the cloud
• Provides customer-specific Linux instances running in virtual machines
• Each customer is charged based on the compute resources it uses• Currently provides no SLA
• Relies on Amazon S3 for storage
Salesforce.com’s Force.comApplication services in the cloud
• Aimed at creating data-oriented business applications• Supports multi-tenant applications
• Provides Apex, its own programming language,
• Also provides AppExchange• A directory for finding, test-driving, and subscribing to
SaaS applications built on Salesforce.com’s platform• It’s an example ISV partner model for SaaS
Dynamics CRM Live PlatformApplication services in the cloud
• Aimed at creating data-oriented business applications
• Allows defining logic using:• C#/VB• Windows Workflow Foundation
• Lets applications be deployed wherever Dynamics CRM is running• On-premises, partner-hosted, or Microsoft-hosted (CRM
Live)
Looking Ahead: Microsoft’s OsloOn-premises and SaaS application services• Oslo is a group of Microsoft investments across a
number of areas• Modeling• Services• More
• It will provide a common platform for on-premises and SaaS applications
• This will allow:• Using the same developer skills and tools for creating
on-premises and SaaS applications• Moving applications from enterprise to service provider
(and back)
Amazon’s S3A file system in the cloud• S3 allows storing Objects in Buckets
• Much like storing files in directories• Example RESTful operations:
• GET Object: returns the contents of this object• GET Bucket: returns a list of objects in this bucket• GET Service: returns a list of all of your buckets• PUT Object: creates a new object• PUT Bucket: creates a new bucket• DELETE Object: deletes an object• DELETE Bucket: deletes a bucket
• Amazon offers an SLA for S3
Microsoft’s BizTalk ServicesIntegration in the cloud
• Provides:• Connectivity
• In a firewall-friendly fashion• Identity• Workflow (soon)
• Microsoft sometimes calls BizTalk Services an Internet Service Bus (ISB)
• It’s not yet a commercial product• But it will be
Enterprise
Application
BizTalk Server
Application
Messaging
Illustrating BizTalk ServerIntegration in the enterprise
Workflow
BizTalk Services
Service Provider
Enterprise
Workflow
Enterprise
Identity
Internet
Application
Application
Application
Connectivity
Illustrating BizTalk ServicesIntegration in the cloud
On-premises Software
Software as a Service
Platform Applications
Microsoft(.NET Framework, SQL Server, BizTalk Server)
IBM(WebSphere, DB2)
Oracle(Fusion, DBMS)
Oracle(Applications
)SAP
(Business Suite)
Microsoft(Office,
Dynamics)
Google (Google Apps)
Microsoft(Dynamics Live CRM)
Salesforce.com (CRM)
Oracle(Application
s on Demand)
Summarizing the S+S WorldWith examples
Salesforce.com
(Force.com)
Amazon (EC2, S3)
Microsoft (BizTalk Services,
Dynamics CRM Platform)
Conclusion
• Enterprise IT is moving to an S+S world• This effectively means increasing enterprise use of
SaaS
• SaaS applications depend on some kind of SaaS platform• It’s the next great platform battle
• The change will impact everybody
About the SpeakerDavid Chappell is Principal of Chappell & Associates (www.davidchappell.com) in San Francisco, California. Through his speaking, writing, and consulting, he helps IT professionals understand, use, and make better decisions about enterprise software. David has been the keynote speaker for dozens of conferences and events in the U.S., Europe, Asia, Latin America, and Australia. His popular seminars have been attended by tens of thousands of developers, architects, and decision makers in forty countries. David’s books have been translated into ten languages and used regularly in courses at MIT, ETH Zurich, and many other universities. He is Series Editor for Addison-Wesley’s award-winning Independent Technology Guides, and he has been a regular columnist for several publications. In his consulting practice, David has helped clients such as Hewlett-Packard, IBM, Microsoft, Stanford University, and Target Corporation adopt new technologies, market new products, train their sales staffs, and create business plans.David’s comments have appeared in The New York Times, CNN.com, and other publications. Earlier in his career, he wrote software for supercomputers, chaired a U.S. national standardization working group, and played keyboards with the Peabody-award-winning Children’s Radio Theater. David holds a B.S. in Economics and an M.S. in Computer Science, both from the University of Wisconsin-Madison.