What I can make out of Cloud Consumption Models
Increasingly, we are coming across articles, blogs and queries around ‘When’s’ and ‘How’s’ of adopting a Cloud Solution for SAP. In the past, I believe the question was more around the ‘Why’s’ of adopting a Cloud Solution. But over the past few months and year(s), the awareness level about the utility of Cloud Computing for an enterprise’s business seems to have increased manifold. An increasing number of organizations either have or at least are in the process of developing a cloud adoption road-map for their business.
If we take a closer look at the business drivers that are possibly influencing the increasing acceptability of cloud-enabled solutions, then it can be interesting to note that while cloud can work out to be an effective option to optimize the running operational costs for the organization’s IT landscape, at the same time it can provide an increased agility in terms of adopting newer solutions and integrating them with the existing on-premise solutions without significant upfront capital expenditures.
I consider Cloud as a technology that provides different consumption models (IaaS / PaaS / SaaS etc.) and delivery models (Private / Public / Hybrid etc.) for IT solutions. In this blog, I shall try to share my personal understanding about the different types of cloud consumption models.
1) IaaS (Infrastructure as a Service) – this is perhaps the most rudimentary form of consuming cloud solutions / services. In IaaS, the cloud service provider offers a flexible / elastic raw computing capacity to the cloud service consumer. The consumer makes use of the underlying flexible / scalable infrastructure (hardware, storage etc.) to configure the necessary platform / application and then goes on to configure the same to develop the required business solutions. We find several vendors in the market today that provide IaaS solutions, where they lease out raw computing capacity. An organization can also build its own in-house IaaS consumption model where the IT department offers a shared infrastructure to different business units, which is rented out by different business units in accordance to their business needs. The IaaS providers for SAP solutions, are certified by SAP as their cloud hosting partners like IBM etc. It may be noted that the partner guide is formally published by SAP. Any IaaS consumer can leverage SAP Cloud Appliance Library to simplify the deployment of pre-configured SAP solutions into its cloud account (which I believe is currently supported for AWS) and thus provide them with a quick option to try out new SAP solutions and features. In the context of SAP, an organization that consumes IaaS offering from any vendor, still needs to spend the time and effort to buy the SAP software and build + maintain their required solution on the top of the scalable infrastructure layer. Typical IaaS vendors are likely to be organizations who have deep experience of hosting / managed infrastructure services.
2) PaaS (Platform as a Service) – this is emerging as a popular consumption model for organizations that are looking for standard ready-to-use platforms (we can also call these as ‘vanilla’ application layer i.e. an application without any specific customization / configuration) on which they can build and deploy their business specific solutions. Here the consumer is positioned to consume both the infrastructure (hardware, storage etc.) as well as some form of ‘vanilla’ application on top of that infrastructure layer, but they have to implement & customize the vanilla application layer to develop their business solutions. If we look at the use-cases for PaaS consumption models, then we might see that organizations who would like to quickly start with any prototype / proof-of-concept would be inclined to ‘buy’ its platform (hardware + basic software etc.) from a PaaS services provider. Other common consumers for PaaS would be organizations that are trying to reduce the long hardware provisioning time along with the lead time required to install and configure the ‘vanilla’ SAP software. It may be noted that SAP has made an entry in this layer with the launch of its HANA Enterprise Cloud (HEC), which provides an SAP-HANA platform on Cloud, for enterprises to migrate & run their SAP applications which are supported on HANA, and this can sometimes involve OS-DB migration from existing platforms. Another possible use-case for the HEC as a PaaS can be situations, where an organization intends to build a new landscape on HEC by moving some ECC tables to HANA as data-mart and make use of Business Objects reporting. Like any other PaaS solution, in HEC as well the consumers need to use their existing HANA licenses to run their migrated applications on HEC. SAP offers a migration service (along with application support / management services as well) for enabling migration and ongoing management of SAP applications from on-premise to the HEC. Essentially, the HEC is targeted at large enterprises which want to run mission critical applications on the Cloud. According to FAQ document on HEC (published by SAP) , the focus of the service and infrastructure is on SAP ERP, SAP CRM, and SAP NetWeaver BW powered by SAP HANA etc. I encourage readers to take a look at some of the useful information about HEC in Dr Vishal Sikka’s blog @ http://www.saphana.com/community/blogs/blog/2013/05/07/sunshine-on-a-cloudy-day and also some SCN Blogs e.g. one such blog is — http://scn.sap.com/community/services/blog/2013/09/05/hana-enterprise-cloud-hec] . We also find presence of significant other players in this segment as well, e.g. IBM’s managed cloud infrastructure (known as IBM Smart Cloud for SAP applications), provide organizations with an option to migrate & manage their SAP applications (under ‘bring your own license model’) on the IBM’s cloud platform. The standard templates of IBM’s SAP solutions along with its life-cycle management support functions make IBM Smart Cloud platform a viable PaaS offering for SAP-based business enterprises. Interested readers can find out more about IBM Smart Cloud solutions from the site http://www.ibm.com/cloud-computing/us/en/sap/
3) SaaS (Software as a Service) – Under this model organizations subscribe to licenses of full-fledged business applications that are managed by the concerned SaaS vendors and then speed up their go-lives or new business solutions by leveraging the standard offerings of the SaaS vendors, thus obviating time and effort to customize and build their own solutions. However, one of the important prerequisites for the effectiveness of a SaaS model is the architecture of the underlying solution i.e. the solution needs to be built for cloud where the consumers can subscribe to a pay-per-use kind of licensing model. Besides, another critical success factor of the SaaS model is the robustness of the interfaces (API’s) that enable the consumers to integrate ready-made cloud-bases software solutions with the existing on-premise business solutions. In the context of SAP solution, good use-cases for SaaS consumption can be organizations who subscribe to core HR/Payroll/Workforce Analytics/Workforce Planning kind of solutions from Success Factors and then integrate them with the existing on-premise ECC systems. Another common use-case that we find is when small-to-medium sized enterprises subscribe to solutions on SAP Business-by-Design (ByD) where standardized end-to-end business functions spanning procurement-finance-sales etc. are consumed on a pay-as-you-go (e.g. per user subscription model for a given period) model. SAP Business One Cloud is another such example, where small-to-medium enterprises can take their business to a secured cloud environment through these fully integrated and tested business solutions without investing in a typical on-premise solution implementation. However, the SaaS vendor should either have its own scalable infrastructure, or have some form of collaboration with organizations that can host its applications on some scalable infrastructure layer.
Now, after sharing some of my basic understanding about the different cloud consumption models, I shall make an attempt to analyze these models on the basis of some important parameters, as follows –
1) Velocity / Agility — if we rank the above three models based on their deployment time, then SaaS solutions come ahead of PaaS, followed by IaaS solutions since under SaaS solution, there is very little build-time, while the major effort is on integration of SaaS solutions with existing on-premise solutions (if any). Hence organizations (or cloud service consumers) who rank speed-to-market or agility as top priorities for their business, are more likely to be SaaS consumers.
2) Flexibility / Customization — if we rank the models based on the amount of flexibility provided to build a customer-specific solution then IaaS models provide the most flexibility followed by PaaS and finally SaaS in that order. This is due to the reason that any cloud-service consuming enterprise can develop the business solution on the raw infrastructure provided under IaaS model or can even customize the ‘vanilla’ platform in PaaS according to its business rules, while on the other hand the options of customizing any SaaS solution is fairly limited since those are template-based / standard solutions catering to multiple consumers (typically in a multi-tenant fashion).
3) TCO — the upfront costs of buying hardware & software licenses, along with the efforts required to building the applications, are minimized while adopting a SaaS solution. Besides, the continuous operational costs for maintaining the currency of the solution (patches, upgrades etc.) are also taken out from the SaaS consumers’ budget, thus making it an attractive proposition for many enterprises. Hence SaaS clearly comes up as the most attractive model from a TCO perspective, followed by PaaS and IaaS (in that order) as the software (this can be an ERP solution) development & implementation costs along with upfront software license costs still exist for both these models.
However, the hidden costs of SaaS solutions lie in the efforts required to integrate the SaaS solutions with the existing on-premise solutions of an enterprise. Research into Fortune 1000 companies is likely to reveal that a large proportion of firms have implemented an ERP system, and hence any SaaS adoption by this section of organizations would involve integration efforts between SaaS solutions and their on-premise solutions. We find that SAP is focusing on streamlining the integration efforts (both data integration and process integration) of its cloud solutions through the HANA Cloud Integration platform that promises to enable enterprises with tools that can lower the time & efforts of integration projects for integrating specific SAP SaaS solutions e.g. SuccessFactors with the rest of the business applications in the ecosystem.
4) Involvement of the Service Provider — under SaaS model the service provider is responsible for providing the end-to-end business solution, including the responsibility of regular software life-cycle maintenance activities like upgrades, patching etc. along with the performance of the applications (response time, availability etc.). Hence the provider’s involvement in coming up with a SaaS offering is highest when compared with both IaaS and PaaS consumption models. Hence the leading providers of SaaS solutions must have completeness of vision and ability to implement such API’s / interfaces business solutions (e.g. I believe it would SaaS providers to have robust infrastructure management & hosting expertise coupled with deep industry / domain expertise in the areas pertaining to its solutions).
5) Security – under the SaaS model, the cloud-services consumers have exposed some part of the business process / data to the SaaS providers, whereas under both IaaS and PaaS, the consumers can still enjoy a greater degree of isolation from other organizations (at least in cases of private cloud deployment of IaaS / PaaS solutions). However, in SaaS world there is a business-application level interaction between the SAP applications internal to an organization and the SaaS provider’s solution which is likely to be hosted in a different environment. In my opinion, the concerns / inhibitors around Security would to be more prominent during a SaaS adoption, when compared to IaaS / PaaS. Hence, a SaaS vendor would have to go the extra mile to assure any SaaS consumer about the necessary security / isolation features of its solution / API’s that can safeguard the SaaS consumer’s business data from any other consumer / tenant of the same SaaS vendor.
6) Change Management – I anticipate the amount of change management, a SaaS adopter needs to go through would surpass the amount for an IaaS / PaaS consumer. This comes from the reason that for a SaaS consumer its own business processes need to be modeled as per those of the standard features of the SaaS solutions, while the IaaS / PaaS consumer can build its own business-specific rules / customization on top of the infrastructure / platform respectively.
Before I conclude this blog, I would like to reiterate that the suggestions or thoughts that have been put up here are my personal opinions about Cloud consumption models based on my self-study / research into this topic. It goes without saying, that in the world of Cloud computing, there cannot be a ‘one size fits all’ solution, as different enterprises have different needs, and hence the recommended cloud model varies from one consumer to another.