An independent IT planning information service based on analysis
of Microsoft technologies, roadmaps
and licensing policies.
In-depth reports designed to help you quickly understand the technical underpinnings and strategic implications of new Microsoft enterprise technologies. Our research will save you time by putting all the critical details you need to evaluate Microsoft’s infrastructure products at your fingertips.
|What Windows Azure Means to Software ISVs|
|Monday, 27 August 2012|
Page 1 of 3
Windows Azure can help ISVs realize increased flexibility for developing and delivering their solutions (scalability, manageability, geographic distribution, and replication). Windows Azure could also result in lower costs for ISVs versus running an application on Amazon EC2 or similar hosts. To fully realize the potential of public cloud implementations such as Windows Azure, clear goals and planning are important, and application code may need to be modified or rewritten to work with Windows Azure. As a platform, Windows Azure supports Java, Microsoft .NET Framework, Node.JS, PHP, and Python to maximize the potential of the platform for ISVs.
This report is intended for ISVs who are considering a public cloud platform for their Software as a Service (SaaS) solutions. The report introduces SaaS-based cloud services and discusses the benefits and risks of SaaS offerings. The report also describes the capabilities of the Windows Azure platform and discusses the risks and benefits of Windows Azure specific to ISVs.
Why Build SaaS?
To successfully transition to a SaaS model, traditional ISVs must fundamentally change the way they build, sell, and deliver their software solutions. This requires buy-in across the ISV's organization—something easier said than done. (See the sidebar "Organizing for Software as a Service".) Still, benefits from a SaaS software delivery model should convince a significant number of ISVs that the discomfort of changing their processes and corporate cultures is fully justified.
Benefits of SaaS
Building on Windows Azure, ISVs can streamline their development, test, release, and customer engagement process and enable the following benefits:
Focused development, testing, and prototyping. By eliminating on-premises IT infrastructure, ISVs can focus testing on key functionality of the service itself. This makes testing more efficient.
Continuous release cycle. New features and updates can be regularly made to the product.
Customer feedback loop. An iterative release process accelerates community development with customers and partners, enabling rapid improvements and refinements to the service. An ISV can comparison test user interfaces and scenarios with customers to determine which options work better.
Immediate customer intelligence. With SaaS offerings, ISVs gain real-time insight into how customers use the product. This can help identify and support management of at-risk customers who are no longer using the software regularly.
Risks of Software as a Service
SaaS can bring risks as well, including the following:
Customer pain due to constant change. Customers may be surprised when new features arrive or existing features disappear or change. Customers can also be impacted when changes in the service break compatibility with their on-premises software. ISVs can mitigate this risk by having consistent practices for clearly introducing new features and transitioning old features for current customers.
New model for costs and revenue. Selling SaaS involves calculating product costs and revenue in a subscription model rather than an upfront lump-sum/per-user model. As a result, ISVs offering SaaS recognize revenue as it occurs, potentially making revenue growth more constant and gradual, but this can also lead to volatile revenue as a result of customer churn (dropping the service). To fully calculate revenue from a SaaS offering, an ISV would calculate by taking into account the cost of acquiring a customer, average revenue per user (ARPU), and the lifetime value of each customer.
Changes for existing channel partners and sales staff. ISVs who currently sell software through a sales channel should consider what role those channel partners have moving forward or if new partnerships need to be created, and what costs and revenue need to be shared with channel partners. ISVs with direct sales staff need to consider new approaches to incentivize sales staff, as the new revenue flow will limit the ability to pay sales bonuses resulting from large sales.
Potential for outages. Although SaaS offerings should be designed to deliver high availability and high capacity, there is always a possibility for outages due to defects in the ISV's software design or the infrastructure the ISV pays for and builds upon.
Security and compliance risks. Security and compliance pose problems with traditional commercial software, but they become even more critical in hosted scenarios with multiple tenants. Failing to deliver a secure product or one that's not compliant (e.g., a U.S. patient records service that's not HIPAA compliant) can cause great difficulties for an ISV if an attack or an audit occurs.
Building SaaS Offerings on Windows Azure
With PaaS approaches, such as Windows Azure Cloud Services, the ISV rents the necessary services from the platform that are needed to run their application. (See the sidebar "Introduction to Windows Azure".) This platform includes all of the APIs used by the application, possibly including the OS, Web server, and database server, and all the necessary dependencies (e.g., Java virtual machines and PHP runtimes) required to run the application. This frees the ISV from purchasing, configuring, patching, and maintaining the platform software underneath their application. However, existing on-premises applications almost always require code changes or rewriting to run on a PaaS such as Windows Azure.
Windows Azure Cloud Services Benefits
By taking advantage of the infrastructure provided by Windows Azure, ISVs can focus on delivering value, running their business more efficiently and reliably, and positioning their company for growth.
Focus on value. By abstracting the responsibility and overhead for the platform away from the creation of new products, Windows Azure frees ISVs to focus on creating new products, adding more value to existing products, and expanding into new markets.
Improve efficiency. Windows Azure lets ISVs avoid upfront infrastructure costs required to launch a SaaS offering. It also supports multitenant applications. Multitenant applications eliminate the need to deploy an instance of the application (and the infrastructure underneath) for each customer, dramatically improving operational efficiency for the ISV. The combination of capital expenditure avoidance and operational expense efficiency justify the cost of updating applications to run on Windows Azure.
Build reliable applications. To help ISVs deliver highly reliable SaaS offerings, Windows Azure Cloud Services offers 99.95% availability when used according to Microsoft's guidelines. Windows Azure Storage and other services offer 99.9% availability. Azure customers receive service credits for periods of time when availability falls below these thresholds, which gives Microsoft a financial incentive to deliver on these service level agreements.
Prepare for growth. Windows Azure provides the ability to easily expand capacity as demand grows. A properly designed application can scale from one customer to millions much more quickly on Windows Azure than with on-premises or IaaS-based deployments. Such growth is not constrained by geography as would be the case with traditional application hosting services. Windows Azure has multiple data centers that are distributed around the world.
Paths to Windows Azure
Migrate existing applications to Windows Azure Virtual Machines. In June 2012, Microsoft announced Windows Azure Virtual Machines. Windows Azure Virtual Machines is an implementation of IaaS that enables an ISV to run an existing on-premises application (Windows Server- or Linux-based) unmodified on Windows Azure.
This approach is generally characterized as Infrastructure as a Service (IaaS). An ISV can install an application and its platform in virtual machines and run the virtual machines in a service provider's datacenters on hardware shared with other tenants. The ISV is still responsible for building and maintaining the platform that runs the application, including the OS, Web server, and database server, and language runtimes (e.g., Java virtual machines and PHP runtimes). Key examples of IaaS are Amazon's EC2 platform, and Windows Azure Virtual Machines (currently available as a preview).The Windows Azure Virtual Machines service is currently offered as a preview, and could become available for production use by the end of 2012. Migrating applications to this service will offer the easiest transition to SaaS while enabling the ISV to avoid upfront hardware capital costs of self-hosting. However, a SaaS offering built on IaaS could be hard to scale compared to one built on PaaS. With most IaaS providers, ISVs must usually license and manage platform software (such as OSs and database management software) running in the virtual machines, which imposes additional costs compared to PaaS. Windows Azure Virtual Machines can also provide Windows Server licensing within the cost of hosting the virtual machine, as well as a combined Windows Server and SQL Server license. These are potential options where the full platform of Windows Server and SQL Server are required, but will bring with them additional costs over the Windows Azure PaaS platform.
The remaining paths to Windows Azure can be generally characterized as PaaS. PaaS abstracts both the hardware and software platform required to deliver SaaS offerings. The PaaS vendor builds and maintains the entire platform used to deliver their SaaS application. The ISV decides how much or how little PaaS platform resources it needs. Windows Azure is an example of PaaS.
Develop hybrid applications that leverage Windows Azure. ISVs can develop Windows Azure—based services to add value to an existing product. For example, an ISV with a CRM application might offer a customer address verification service that uses a central database and application logic hosted on Windows Azure, and customers use a traditional application on-premises that connects out to Windows Azure. Hybrid applications add incremental value to existing products with less risk than moving an entire product to Windows Azure. However, the ISV can only realize meaningful improvements in the efficiency and scalability of its application for those components of the software running on Windows Azure.
Deploy Web applications on Windows Azure Web Sites. A new feature available in preview on Windows Azure is Windows Azure Web Sites, which provides free multitenant or low-cost dedicated deployments of Web sites and Web applications on Windows Azure PaaS. While this environment is more limited than either Windows Azure Cloud Services or Windows Azure Virtual Machines, the price may allow smaller organizations or organizations with focused goals to begin taking advantage of Windows Azure as they consider investing in the platform further.
Migrate existing applications to Windows Azure Cloud Services. Some ISVs will want to migrate to Windows Azure Cloud Services immediately. ISVs with existing Web-based applications may find the migration process relatively easy. Windows Azure provides broad API support for both Microsoft and non-Microsoft programming languages and platforms. Migrations by ISVs with client-server applications will require more effort. The efficiency and scalability benefits of Windows Azure will likely require new code and a new approach to the design of the application. In general, migrating an application captures the full benefits of Windows Azure, but existing applications that are not Web-based and stateless may require an extensive rewrite of the existing application.
Build new applications on Windows Azure. ISVs may decide to leave existing applications in place but target Windows Azure Cloud Services for development of new applications. Such greenfield projects are the ideal scenario because they allow the ISV to maximize exploitation of the features provided by Windows Azure. However, the ISV must dedicate resources to sustain two distinct application architectures simultaneously.
Paying for Windows Azure
ISVs investigating Windows Azure may initially be concerned about the usage-based pricing. A customer's actual experience over time will enable the most reliable forecasts of ongoing Windows Azure costs. Until then, Windows Azure offers free trials to test the platform to evaluate the costs, along with the ability to set monthly spending limits. A pricing calculator is available to help customers estimate their potential costs.
Introduction and Platform
The Windows Azure site is at www.microsoft.com/windowsazure.
The Windows Azure platform is discussed in the Mar. 2011 Research Report, "Evaluating the Windows Azure Platform."
Scott Guthrie's introduction to the new features of Windows Azure is at weblogs.asp.net/scottgu/archive/2012/06/07/meet-the-new-windows-azure.aspx.
Windows Azure Marketplace is at https://datamarket.azure.com/.
The Windows Azure Training Kit is at www.microsoft.com/download/details.aspx?id=8396.
Information on Windows Azure platform pricing is at www.microsoft.com/windowsazure/pricing.
Case studies of current Windows Azure customers are at www.windowsazure.com/en-us/home/case-studies/.
A Microsoft-Intuit partnership enabling Intuit's developer partners to leverage Windows Azure is discussed in "Intuit to Push Azure, Microsoft Online" on page 16 of the Feb. 2010 Update.
Windows Azure Tools for Visual Studio and the Windows Azure SDK can be downloaded from links at msdn.microsoft.com/library/windowsazure/ff683673.aspx.
The Windows Azure developer portal is at windows.azure.com.
The Windows Azure SDK for PHP is at azurephp.interoperabilitybridges.com/downloads/php-sdk-for-windows-azure.
Windows Azure Tools for Eclipse is at www.windowsazure4e.org.
HPC Pack 2008 R2 SP1 is discussed in "HPC Server Gets Azure Compute Nodes" on page 5 of the Feb. 2011 Update.
Windows Azure SQL Database
WCF Data Services is discussed in "WCF Data Services Eases Web Data Access" on page 13 of the July 2010 Update.
The Windows Communication Foundation is discussed in the "Workflow and Communication Foundations Updated" chapter of the June 2010 Research Report, "Visual Studio 2010 and the .NET Framework 4 Bring Major Updates."
SQL Server is discussed in the "Application Platform" chapter of the June 2010 Enterprise Software Roadmap.
SQL Server 2012 is discussed in the Feb. 2012 Research Report, "SQL Server 2012 Release Candidate Evaluation Guide."
The SQL Azure Labs site is at www.sqlazurelabs.com.
The Open Data Protocol (OData) site is at www.odata.org.
Windows Azure Security, Privacy, and Compliance
Windows Azure Trust Center is at www.windowsazure.com/en-us/support/trust-center/.
Windows Azure Security Guidance is available at www.windowsazure.com/en-us/develop/net/best-practices/security/