400 likes | 589 Views
Understanding Software + Services: A Perspective. David Chappell Chappell & Associates www.davidchappell.com. Agenda. Introducing Software + Services. A Closer Look at Services. Application Platforms in an S+S World. Introducing Software + Services. Software + Services The basics.
E N D
Understanding Software + Services:A Perspective David Chappell Chappell & Associates www.davidchappell.com
Agenda Introducing Software + Services A Closer Look at Services Application Platforms in an S+S World
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
Illustrating S+S Service Provider Server Software Services Internet Server Software Desktop Software On-premises Software Enterprise
Microsoft ExchangeAn S+S example Service Provider Microsoft Exchange Hosted Services Exchange Server Internet Exchange Server Exchange Server Outlook Outlook Outlook Enterprise Y Enterprise Z Enterprise X
Microsoft Dynamics CRMAnother S+S example Service Provider Microsoft Dynamics CRM Dynamics CRM Dynamics CRM Outlook/ Browser Outlook/ Browser Outlook/ Browser Enterprise Y Enterprise Z Enterprise X On premises Partner Hosted CRM Live
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
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
Illustrating Single-Tenancy Service Provider Computer Computer Computer Single-Tenant Application Single-Tenant Application Single-Tenant Application Internet Enterprise X Enterprise Y Enterprise Z
Illustrating Multi-Tenancy Service Provider Computer Multi-Tenant Application Internet Enterprise X Enterprise Y Enterprise Z
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 for S+SOn-premises and SaaS Application Application Service Provider SaaS Platform Application Application Enterprise On-premises Platform
Illustrating a SaaS Platform • A SaaS platform runs custom applications on servers in the cloud Service Provider Enterprise Application Browser or Other Client SaaS Platform HTTP, SOAP, Other
Exposing Programmable ServicesAn aside • 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 Service Provider Enterprise Programmable Service Custom Application Service Provider On-premises Platform Programmable Service Web Services
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
Illustrating BizTalk ServerIntegration in the enterprise Workflow Application Application Messaging BizTalk Server Enterprise
Illustrating BizTalk ServicesIntegration in the cloud Service Provider Workflow Connectivity Identity BizTalk Services Internet Application Application Application Enterprise Enterprise
Summarizing the S+S WorldWith examples Platform Applications Oracle (Applications on Demand) Amazon (EC2, S3) Google (Google Apps) Salesforce.com (Force.com) Software as a Service Microsoft (Dynamics Live CRM) Microsoft (BizTalk Services, Dynamics CRM Platform) Salesforce.com (CRM) Microsoft (.NET Framework, SQL Server, BizTalk Server) Oracle (Applications) On-premises Software SAP (Business Suite) IBM (WebSphere, DB2) Microsoft (Office, Dynamics) Oracle (Fusion, DBMS)
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 Speaker David 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.