Once candidate applications are chosen to migrate to a cloud platform, it is time to decide the best option available and the desired final state of the solution. The three levels of cloud offering that could be utilized to migrate to a cloud environment are as follows,
a) Infrastructure as a Service (IaaS):
This is the quickest way to utilize cloud infrastructure and make minimum or no change to applications but deploy them in a cloud infrastructure to benefit from on-demand hardware capacity. Applications that have a high degree of customization cannot choose a cloud platform and re-build the application or replace with any available ready-to-use software on the cloud. Such applications also typically require absolute control over the processes and data they manage.
b) Platform as a Service (PaaS):Application that have moderate customization and complexity and can be configured using a cloud platform, best fit this approach. Such applications require less stringent control over data and need some level of customization of processes.
c) Software as a Service (SaaS):
Applications that are generic enough and have a SaaS offering can utilize the benefits of offloading hardware as well as software infrastructure to the cloud.
Off the bat, the quickest and easiest option is to use a cloud IaaS and migrate from using in-house infrastructure to a cloud infrastructure. This increases the ability to scale infrastructure resources up and down dynamically on demand. This option however, provides benefits of a cloud platform limited to hardware/infrastructure.
To derive the maximum benefit from cloud environments, one has to find a SaaS offering that can replace the candidate application. Using a SaaS offering requires some effort towards configuring the software offering, but might limit the extent to which application specific custom requirements can be satisfied.
For highly customised applications, the absence of a suitable SaaS offering leads to using a cloud platform to build the application on the cloud. This requires significant effort towards building and configuring the application, but once done, it provides similar benefits as that of a SaaS platform.
The driving force behind selecting any one of these options should be to increase business process standardization and the ability to provide business process integration (more on these two key BPM criteria in future blogs). The table below boils down the different aspects and the pros and cons with each of the options that comes to mind.
So the long and short of it is that, among the following, one gets to choose any two.
1. Application and data Flexibility
2. Benefits from cloud
3. Low migration effort/investment