Maximizing the Value of Cloud for Small-Medium Enterprises – Cloud Integration Considerations for the SME
Enabling Small-Medium Enterprises (SMEs) on a Cloud is a straight push from on-premise or by direct adoption of Cloud especially for start-ups. But the true challenge is to tie up the channels to integrate the SME Cloud hosted solution with the associated partners, suppliers, and customer interfaces. This requires a focus on some of the key elements such as integration channels, methods, and interfaces for establishing the seamless communication across the applications within and outside the Cloud hub. A key motivator is to get advantage of the Cloud benefits through adoption and maximize the reach of business operations with less investments – so the philosophy is simple; i.e., pay-as-you-go. This chapter focuses on the Cloud integration characteristics, available Cloud integration patterns, and key integration considerations which every SME needs to be aware of when they move to Cloud.
Integration is always a challenge because we need to clearly understand the nature of the systems, technology behavior, available communication channels, data exchange formats, and many more things. Let us witness the most important Cloud integration characteristics:
- Scalable: Integration should provide the platform to scale up the services based on the business volume growth – it should be a scalable data integration platform with multi-tenant support.
- Robust: Ability to sustain and adapt to the dynamic situations with fault-tolerant and self-healing capability.
- Flexible: Ability to integrate and cope with changes between Cloud to on-premise, on-premise to Cloud, or Cloud to Cloud.
- Secured: Establish secured channels of communication for Internet-based systems and applications.
- Configurable: Define configurable interfaces to dynamically adapt with the business changes. These changes should be configurable by customers through a browser interface.
SMEs ideally want to operate the entire business with minimum infrastructure footprint on-premise. Today many application service providers enable application access in a Software as a Service (SaaS)-based mode. This leads to the architecture of constructing SME applications with a build, compose, and consume approach. The build approach helps to re-engineer or host the on-premise solutions on the Cloud. The compose approach elevates the concept of mash-up-based integrated services as a packaged form. The consume approach advocates the ability to use the applications in an SaaS mode. This theme typically needs a framework for integration architecture and it is achievable through some of the key Cloud integration patterns.
Cloud integration is an important aspect to be considered for SME applications which are hosted and planned in the Cloud. True Cloud power can be leveraged when the SME is able to operate his entire business operations on the Cloud. Today, we have hundreds of Cloud service providers who provide online services for email, ERP, CRM, financials, supply chain, office online, and others which can serve the business operations.
Cloud integration can be done at various levels such as:
- Data integration
- Application integration
Data integration aims to integrate the data from various business entities within an application. The SME should have the ability to transform the data into the required format between its source and sink. The “pipe and filter” pattern is appropriate for this. Pipes and filters provide a solution for moving the output of one system into another system. The pipe is the portion of the code that is connected to the source system and to the sink or the receiving system. The filter is the portion of the code that transforms the data so that the sink program can process it. This pattern is useful when you need to transform the data from one system into a different format to integrate that data into another system.
Application integration can have different scenarios to be addressed:
- Cloud-hosted applications accessing the external system
- Cloud-hosted applications accessing the on-premise systems
- Cloud-hosted applications accessing the application on other Cloud data centers
- Cloud-hosted applications accessing the applications within the same Cloud
The solution for each of the scenarios can be different. To access the external systems, in general we follow either a gateway pattern or hub‘n’spoke architecture pattern. To access the on-premise systems, it is appropriate to establish a secure communication channel and establish a trust relationship to transmit the content. For other scenarios, it is more to do with service-based integration which can be achieved with the following Cloud integration patterns. Two Cloud integration patterns which we can consider when we deploy solutions onto Cloud are:
- Integration within the Cloud
- Integration outside the Cloud
Applications in the Cloud use this pattern for integration and communication. The integration strategy which can be applied within the Cloud can be a service-based API to communication.
There is a high probability that applications in the SME world will require integration interfaces to run their daily business operations with applications that are running outside the Cloud – either on-premise or on other Cloud platforms. To address such scenarios SMEs should consider the following:
- Adoption of Integration as a Service (IaaS) – Analysts Noel Yuhanna and Mike Gilpin wrote in a recent Forrester Wave research bulletin : “IaaS prescribes the use of web services, well-defined interfaces, and ubiquitous calls between and among service-enabled applications and data sources to deliver a loosely-coupled integration experience. In other words, IaaS offers a virtualized data services layer.”
- Partnerships with System Integrators (SIs) who have the capability to build adapter interfaces to integrate in-house and external Cloud solutions and applications.
The nature of SME business operations can lead us to employ a mixture of different solutions based on the situation and context. So, it is important to understand and believe that there is no “one size fits all” solution for each and every customer. In general SMEs practice the use of end-to-end solutions that integrate applications and extend services to customers. This leads to the discussion below.
It is important that an SME has an integration architecture, to achieve business success and optimize the value of its Cloud undertakings. Some key Cloud integration architecture considerations are:
- Service management capabilities and tooling are essential for monitoring performance and sustaining Cloud solutions.
- Solution and service endpoints that are developed using restful APIs so that they are easily integrated.
- Multi-tenantbusiness applications that center upon a Just-in-Time (JIT) and pay-per-use paradigm.
- Application integration (as mentioned earlier) also addresses time to value or how fast you can leverage Cloud capabilities. For instance, can you leverage a specific CRM SaaS solution or are you required to invest in components that you may not use? Other considerations are the integration points to in-house systems and the amount of time involved to conduct the integration. If the time-to-value is too lengthy then it may be cost and resource beneficial to source the solutions in-house rather than from the Cloud.
- Simplified deployment models and tools that ease Cloud adoption within and external to the SME environment. This includes seamless integration and provisioning of services where the business impacts on the infrastructure and consumers are favorable.
- Interoperability so that Cloud solutions can be used on multiple platforms will prevent vendor lock-in.
- Enablement of self-service capabilities for consumers.
- Automation of services to prevent manual/human errors. This includes embedded integration capabilities such as pre-built interfaces and common integration processes.
- Scalability to support customer growth and shrinkages, monetizing Cloud investments, and scaling with no disruption to customers.
- Cost optimization through loosely-coupled, agile, and service-oriented architectures that support subscription and pay-as-you-go business models.