Welcome!

Cloud Expo Authors: Deborah Strickland, JP Morgenthal, Maureen O'Gara, John Cowan, Kevin Benedict

Related Topics: Cloud Expo, SOA & WOA

Cloud Expo: Article

Software-as-a-Service for ISVs

The key challenges faced by ISVs and the benefits of adopting the SaaS model

Software-as-a-Service (SaaS) is increasingly considered "enterprise grade" by many IT buyers, and a viable choice to achieve reduced costs, improved service, and ongoing timely functional currency. Customers are looking for "just what I need" solutions - in terms of pricing, functionality, simple on-boarding and minimal infrastructure hassle. Demand for SaaS Delivery is therefore continuing to grow while sales of traditional on-premise solutions are declining.

Thus the Independent Software Vendors (ISVs) need to decide whether and when to develop SaaS-based offerings, identify the potential changes to the customer relationships, demand, etc. for a SaaS-based offering, and determine the best architecture and infrastructure options available to provide these offerings. Based on these decisions, the ISVs need to create a roadmap to "SaaS-ify" the existing offerings.

The SaaS model is enforcing ISVs to provide their offerings on SaaS model to compete with the competitors. This disruptive innovation opens up ISVs to deal with multiple challenges that need to be carefully evaluated and addressed to define a roadmap for the SaaS adoption. This article explains the problem context, the different adoption strategies and development platform required to provide Software as a Service capability to both new and existing applications.

SaaS Model - What Is There for ISVs?
The following are some of the important benefits / advantages for ISVs that adopt the SaaS Model.

  • New market opportunities: The SaaS Model is providing opportunities to think radically and offer some of their offerings on SaaS to create and penetrate new markets
  • Reduced cost of ownership: The SaaS Model offers a vision of low-cost scalability to support new customers and even lower systems administration costs. It offers substantial cost and economies of scale benefits to both ISVs and their consumers through different subscription / licensing models. Customers get to pick and choose the software functionalities as required and pay only for what they use. True Higher Maturity multitenant architecture enables a shared code base of software systems deployed for ease of modifications and the addition of new tenants leading to reduced development, maintenance and operations costs.
  • Faster time-to-market: With the SaaS model, ISVs can offer their solutions in days and weeks, compared to much longer duration with traditional license-and-install software to build and customize applications in very short timeframe.
  • Focus on strategic initiatives: The SaaS Model enables ISV Providers to outsource operation and infrastructure work to SaaS Hosting Providers, allowing them to leverage core resources for strategic initiatives and become more competitive.
  • Improved relationship with customers: Fosters a more dynamic interaction and ongoing dialogue between ISVs and users of the ISVs application compared to the one-time license sale.

The drivers are many and from an ISV's perspective the SaaS model acts as a revenue- and customer-growth engine, facilitating penetration to wider customer segments and geographies. ISV ventures see SaaS as a big opportunity to experiment and launch products without a high initial investment.

As per a McKinsey report published in April 2008 [1], the SaaS market is expected to exceed over $37 billion over the next five years. This comprises both new product development and transitioning of existing ISV products. Traditional platforms such as Java EE and .NET are poorly suited for building SaaS applications. The report also states that this has opened up a $3 billion market for providers that help ISVs to SaaS-enable their applications. Several large ISVs have already started seeking partners to formulate the business strategies, technology strategies, and GTM strategies for adopting SaaS model.

SaaS Adoption - Challenges Faced by ISVs
One of the key differences in developing a SaaS application, as opposed to developing an enterprise application, is that a SaaS application needs to be multi-tenant. This is the fundamental requirement that drives a set of other technical requirements. Most of the enterprises have already invested heavily in building on-premise applications over a period of time to support critical business functions. Suddenly moving applications to an on-demand SaaS platform is a daunting task due to the following challenges:

  • Partly Tenant Based: Most of the existing products are designed to be single-tenant.
  • Lack of Multi-Tenant Security Solution: Most of the existing products do not provide out-of-box support to address multi-tenant security requirements for SaaS adoption
  • Legacy Architecture: Some of the existing products are built using legacy technology, which needs to be modernized to a new technology platform. Further each product comes with a different architecture model that needs to be taken care of while modernizing.
  • New Market Opportunity Assessment: ISV need to assess the new business opportunities for SaaS enabling existing on-premise product to remain competitive and continue as a leader in their segment
  • Upfront development cost: ISVs have budget constraints on spending upfront re-engineering expenses
  • Time-to-Market: The current solution limits the ability of the platform when it comes to adding new tenants as each product has its own set of configurations and administrations
  • Integration Requirements: Most of the existing applications do not provide out-of-box support to integrate it with on-premise applications of the enterprise and vice versa.

SaaS is a new business model that adds additional aspects to the application development / hosting process such as a complex architectural model, business process realignment, unified monitoring and help desk support and integration with other systems for support, billing, CRM, etc. Enterprises should also look at hosting the product or solution on a cloud delivery platform - private or public to reduce their infrastructure and operational cost and better manageability of their resources.

There are multiple strategies available for ISVs to adopt the SaaS Model. Selecting an appropriate strategy and SaaS platform based on selected strategy will enable ISVs to address the above mentioned challenges. Now let's look into multiple adoption strategies and the SaaS development platform in the following sections.

SaaS Adoption Strategies
Fundamentally, ISVs enterprises have four choices when considering application modernization to a SaaS platform, depending on the ability of the application to enable SaaS capabilities and the total cost of ownership of the application.

  • Rehosting using the SaaS delivery platform: This strategy involves rehosting existing applications without any modification to target SaaS hosting providers or public cloud providers to reduce infrastructure and operation costs. The idea here is to do minimal change to the application code and other components and to run the applications straight on a SaaS Model, thus minimizing the risks of migration while still keeping costs as low as possible. Although this strategy is quick, cost-effective, and tactical, it still does not provide true advantage in terms of an operational or maintenance cost perspective, when the customer base is higher.
  • Re-engineering to a new technology platform: This strategy is applicable and recommended for legacy applications that need to be moved to SaaS. This is the big-bang approach that involves re-engineering legacy applications to a new technology platform with SaaS capabilities. We recommend leveraging the SaaS development platform provided by vendors or custom building a SaaS development platform to build SaaS-based applications. The SaaS development platform should provide SaaS capabilities such as multi-tenancy, metering, billing, security and integration to enable efficient development and deployment of SaaS-based applications. This strategy has disadvantages in terms of increased cost for re-engineering and time-to-market.
  • Migrations to PaaS providers: This strategy involves the migration of existing applications that leverage PaaS vendors such as Google App Engine and Microsoft Azure, which provide end-to-end cloud services for customers. Although these vendors provide an overall platform to build and deploy cloud-based applications, they put lot of constraints on the technology to be used for each of layer of the application. Due to these technical constraints, the existing application needs to be migrated to a technology stack supported by PaaS vendors for each the layer of application. These constraints also put limitations on the application workload, which can be moved to SaaS using PaaS providers. Most of the PaaS providers address multi-tenancy capabilities through custom solutions that would make it difficult to move an application from one provider to another.
  • SaaS enablement: This strategy involves the SaaSification of existing applications to be moved to adopt a SaaS model. This strategy gives a true multi-tenant cost advantage to the enterprise. The main principles that lay the foundation for this model are:
    • Using a single code base for all tenants
    • Adopt architectural strategies to enable multi-tenancy across all the layers
    • Tenant-specific extensions are plugged in to single code base

Enabling SaaS architecture on existing application is a daunting task as most of the existing applications are designed to be single tenant. We would need to develop custom adaptors for each application that cannot be reused for other applications due to the different architecture models and technologies used across the applications.

It is thus essential to adopt an approach that provides a mechanism to enable multi-tenant architecture in existing applications with minimum impact to meet the desired business objective. Enterprises should adopt a solution that provides a plug-in mechanism to address the SaaS requirements of the existing solutions in the form of add-on services with minimum impact to the existing as-is architecture.

It's not feasible for an enterprise to select one strategy across the enterprise. It is quite possible to employ one strategy or a combination of strategies based on business requirements, application characteristics, and the total cost of the ownership of the application.

The following high-level guidelines can be considered when selecting SaaS Adoption strategy:

  • From a short-term perspective, ISVs should look to rehost existing products using a SaaS delivery platform to reduce their infrastructure and operation costs when compared to maintaining the products in custom data centers
  • From a long-term perspective, ISVs should adopt truly multi-tenant architecture to achieve economies of scale. This would, however, be applicable where the ISVs cater to a higher customer base.
  • Due to the higher cost implication and time taken to market by re-engineering an existing product to address SaaS requirements, ISVs should adopt a solution that is non-intrusive
  • ISVs should go for a big-bang, re-engineering option leveraging the SaaS development platform only for legacy products that need to be modernized to a new technology platform. This should be considered when the code base has increased due to redundant code and maintainability is difficult due to complexities.

The SaaS Platform
At a high level users look forward to leveraging SaaS platforms for application development, application delivery and access to a new market place. Further these SaaS platforms can be classified as SaaS delivery platforms and SaaS development platforms. SaaS delivery platforms provide a runtime environment to host SaaS-based applications. Managed hosting providers such as OpSource or cloud providers such as Amazon fall under this category. Some of the vendors provide additional offerings such as provisioning, authentication, billing, metering and application performance management in addition to a runtime environment, while the SaaS development platform provides a set of technologies and services used to develop, deploy and integrate SaaS applications. There are multiple vendors that are providing SaaS development platforms to enable ISVs to address the above mentioned challenges.

Given the number of SaaS adoption strategies and the number of possible combinations of SaaS components, platform offerings take various forms in the market. We believe the SaaS development platform should provide the following components to address the requirements of all the strategies available for SaaS adoption.

The figure below shows the different components of the SaaS development Pplatform and how they fit with respect to the existing server, hardware and solutions.

  • SaaS Development kit (SDK): This kit should provide the core framework components for developing SaaS-enabled applications. SDK should contain the following:
    • Multi Tenant Web Application Framework: The multi-tenant Web Application Framework should provide the capability to enable multi-tenancy across all the tiers of the SaaS application - presentation, business and data architecture.
    • Security Framework: The security framework should provide a mechanism to address both on-premise and on-demand security requirements of SaaS applications. The framework should also provide a mechanism to authenticate and authorize users for different data source strategies. It should also provide capabilities to enable each tenant's administrator to manage user accounts for that tenant.
    • Integration Framework: The integration framework should provide a mechanism to address real-time and offline on-premise and on-demand integration requirements of SaaS applications. The framework should allow real-time integration across the UI, the business and the data layer through framework APIs.
    • Service Fabric: SaaS applications need to compose existing services to provide a quicker time-to-market for new versions of the software to be created and reduce cost by reusing existing functionality. The main challenge will be to leverage existing business functionality residing in packages/legacy applications and expose them based on requirements to the outside market. Service-oriented architecture can help us to address these issues by providing a mechanism to aggregate and expose business functionality as shared business services. The SaaS architecture needs to be designed and developed based on service-oriented architecture. The SaaS development platform should provide an SOA-based application framework that provides all the building blocks (e.g., for service development and management). An Integration framework can also be used for developing service-oriented applications.
    • Common Infrastructure Services: Common infrastructural services such as logging, caching, etc., should also support multi-tenancy.
  • SaaS Extension Framework: This component should provide a plug-in mechanism to address the SaaS requirements of the existing solutions and products in the form of add-on services with minimum impact to existing as-is architecture. This component should provide adapters to enable multi-tenancy on existing applications developed using COTS products. The adaptors should be easily pluggable through flexible configuration options.
    • Adapters: The solution should provide adapters to enable multi-tenancy on as-is architecture with minimum impact to the code base of an existing application. The adapters are plug-ins that extend the frameworks/solutions used by the applications to take care of the SaaS features such as multi-tenancy.
    • Metering and Billing Service: One of the key requirements of SaaS from the operations perspective is efficient tracking and measurement methods to bill the customers. Current SaaS solutions can be priced on a per-user basis. But the SaaS model needs an efficient mechanism to track the usage of the application with a different set of metrics. This component should provide a mechanism to track usage at the fine-grained level and bill/charge customers accordingly.
    • Monitoring Solution: The monitoring and management of an application is an important feature that keeps track of the application's health and ensures SLA violations do not take place. This solution should provide a tenant-specific usage and SLA monitoring mechanism as applicable in a multi-tenant environment, in a unified way.
    • Auditing Solution: The auditing solution in the case of a SaaS application should provide a mechanism to audit the operations performed on sensitive data in a multi-tenant environment.
    • Workflow Solution: This solution should provide a mechanism to perform a workflow operation for a multi-tenant scenario. They should further allow enterprises to create new business logic or business flow based on some attributes at run-time.
    • Provisioning Solution: This solution provides an easy mechanism for on-boarding existing applications into a multi-tenant environment.
  • Factory Solution: This component should provide solutions to automate repeatable patterns involved in
    • Re-hosting existing application using a managed hosting provider or a public cloud provider
    • Migrating an existing application to a PaaS provider
    • Migrating a legacy application to a new technology platform such as J2EE/.NET
  • Development Plug-in: This component should be provided as an IDE plug-in (e.g., Eclipse, NetBeans) based the development environment to build SaaS applications using the above mentioned SaaS Development Kit and SaaS Extension Framework. This component should easily allow new application development using the APIs provided by the SDK to develop multi-tenant enabled applications.

Conclusion
In this update, we covered the key challenges faced by ISVs, discussed the benefits they can derive on adopting SaaS and the different SaaS adoption strategies. We also provided a SaaS development platform solution and discussed the various components of this solution that will enable ISVs to adopt the SaaS model in their organization.

The SaaS model offers substantial cost and economies of scale benefits to both ISVs and their clients. This is encourages ISVs to provide their offerings on a SaaS model to compete with the competitors. This disruptive innovation opens up ISVs to deal with multiple challenges that need to be carefully evaluated and addressed to define a roadmap for the SaaS adoption. Enterprises adopting the SaaS model should consider the above mentioned challenges and strategies to adopt SaaS with minimal impact to existing application workload, which can lead to reduced TCO and time-to-market.

References

  1. Emerging Platform Wars in Enterprise Software, McKinsey & Company
  2. Enabling multi-tenant architecture for existing applications
  3. Integration Strategies for better SaaS Adoption

More Stories By Chetan Kothari

Chetan Kothari works as a Principal Architect at the Java Enterprise Center of Excellence at Infosys Technologies, a Global leader in IT & Business Consulting Services. He has over 12 years experience with expertise in J2EE application framework development, defining, architecting and implementing large-scale, mission-critical, IT Solutions across a range of industries.

More Stories By Arun Viswanathan

Arun Viswanathan works as a Technology Lead at the Java Enterprise Centre of Excellence at SETLabs, Infosys Technologies. He has almost 8 years of experience in Java and Java EE technologies. He is currently involved in design and consulting for SaaS-based application development.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Cloud Expo Breaking News
Why are APIs so important in clouds? Do APIs have to be open? How fast or slow will standardization in the cloud be? Why is ensuring high availability for the cloud service critical? In his session at the 10th International Cloud Expo, Mårten Mickos, CEO of Eucalyptus Systems, will answer these questions and address cloud standards, APIs and the critical question: Will we end up with one, two or more competing cloud standards? And, how will this affect the evolution and adoption of cloud comput...
Very few trends in IT have generated as much buzz as cloud computing. In his session at the 10th International Cloud Expo, Mark Hinkle, Director, Cloud Computing Community at Citrix, will cut through the hype and quickly clarify the ontology for cloud computing. The bulk of the conversation will focus on the open source software that can be used to build compute clouds (infrastructure-as-a-service) and the complementary open source management tools that can be combined to automate the management...
The proliferation of device connectivity is redefining the functionality requirements and capabilities of many embedded systems as more and more of these devices look to leverage the “Cloud.” While many commercial software and hardware component vendors have begun to realign their value propositions to satisfy growing demand, commercial-off-the-shelf products (COTS) alone cannot meet every OEM’s needs. As a result, the Embedded Cloud has injected a new level of uncertainty and a new competitive ...
Hardware and chemistry improvements will make the $1,000 human genome a reality soon. While the massive amount of genomics data that will be generated represents a huge opportunity to advance personal medicine, it also presents an enormous big data challenge. In his session at the 10th International Cloud Expo, Dr Andreas Sundquist, CEO of DNAnexus, will discuss how the cloud will address these issues by enabling the management, storage, sharing and analysis of the world’s DNA data and how it ...
With Cloud Expo 2012 New York (10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technical and strategy sessions for you every day from June 11 through June 14 dealing with every nook and cranny of Cloud Computing and Big Data, but what of those who are presenting? Who are they, where do they work, what else h...
With Big Data Expo 2012 New York (co-located with 10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference...
In 2011, Apache Hadoop received tremendous attention for helping organizations cost-effectively capitalize on their big data. Hadoop is now disrupting the business of analyzing data. In his session at the 10th International Cloud Expo, Eric Baldeschwieler, Co-Founder & CEO of Hortonworks, will look at the current state of the Hadoop project, lessons learned by deploying it at scale, and the roadmap for its future. Big Data Track attendees will learn about the exciting developments that have ...
The focus of Java EE 7 is on the cloud, and specifically it aims to bring Platform-as-a-Service providers and application developers together so that portable applications can be deployed on any cloud infrastructure and reap all its benefits in terms of scalability, elasticity, multitenancy, etc. The existing specifications in the platform such as JPA, Servlets, EJB, and others will be updated to meet these requirements. Java EE 7 continues the ease of development push that characterized prior ...
With Cloud Expo 2012 New York (10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technical and strategy sessions for you every day from June 11 through June 14 dealing with every nook and cranny of Cloud Computing and Big Data, but what of those who are presenting? Who are they, where do they work, what else h...
With Cloud Expo 2012 New York (10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technical and strategy sessions for you every day from June 11 through June 14 dealing with every nook and cranny of Cloud Computing and Big Data, but what of those who are presenting? Who are they, where do they work, what else h...