Once organizations have implemented or built their first cloud applications, they will find they have a powerful cloud platform available that comes with these applications. They can now consider leveraging more of that platform, not only to create additional solutions but also to renew the existing applications landscape. This may be a matter of simply ‘cloud-enabling’ legacy applications by providing them with a new front-end and integrate them with the cloud applications. But applications can be completely ‘reborn’ too, taking full advantage of living in the cloud.
In some sense, the imperative to be more agile in the business side is driving IT to question why their apps should need to be so glacial in change. Many factors are challenging the fear of modernization in the enterprise application space. Factors like the profusion of new development tools (Ruby, Angular.js and the like) combined with methodologies that espouse agility are breaking down barriers in the traditional IT risk areas. The threat of becoming irrelevant to the business (a death knell by any standards) is forcing many enterprises to ask themselves “how can I rebirth my apps in the cloud?” This is particularly the case now that enterprises realize that with the advent of a new generation of Software as a Service (Saas) solutions, there are also new, powerful cloud platforms underneath. A short look at Salesforce1, Azure, Pivotal or BlueMix already makes clear that these cloud platforms provide many different options to renew the application landscape. A SaaS solution? Only the beginning.
So what should a CIO do to start delivering on the promise? Well, start segmenting the applications landscape. Conducting a systematic, facts-driven approach such as Capgemini Cloud Assessment on the portfolio of applications allows the enterprise to categorize its applications and then make informed decisions about the next steps in modernization. With the use of automated tools, the enterprise can start with higher level application meta data that identifies the low hanging fruit as well as the high impact applications.
Then, one can dig deeper with some topological insight from automated tools that can traverse the application’s testing environments and identify dependencies that become critical factors in cloud suitability and placement decisions.
The last step is identifying the extent of replatforming needed for each of these application segments. This step has to be aligned with the strategic IT direction of the company while keeping the option to align to the exciting new developments in the IT technology arena like containers.
Following this approach, we see that the typical destinies of application renewal look different when the target environment is a cloud platform. To name the 7 most obvious ones:
1. Replatforming applications makes use of the highly scalable and cost-effective deployment options of the cloud to run existing applications more effectively.
2. Resurrecting applications consists of adding cloud-based – possibly mobile – front-ends to applications to augment and improve their functionality and user experience.
3. Rebuilding applications leverages the next generation of rapid development and deployment tools to quicky and effectively recreate applications.
4. Rebonding applications trusts on the considerable integration power of cloud platforms to eliminate redundant, overlapping or non-aligned functionality of applications.
5. Refactoring applications is about improving – or simply documenting – the structure of applications, and it’s a more than a welcome ‘by-product’ of assessing applications for cloud-based modernization.
6. Replacing applications involves taking a good look at the marketplace of cloud-based application to find replacements for the exisiting, typically custom-built applications.
7. Retiring applications relies on cost-effective cloud storage to archive core applications data for possible future use so that the applictions themselves can be decommissioned.
Sounds too good to be true?
Yes, there are some risk areas to mitigate. The primary risk is the risk of interrupting the business services of the enterprise. The risk should be mitigated by involving business stakeholders right from the start of the modernization program. The business is going to benefit the most by the flexibility and agility of the cloud and if involved properly, it will be an enthusiastic partner in this journey. The other risk that is often raised is the “futility of trying to stay current” as the technological advance is relentless and trying to stay current seems futile. The question that enterprises need to ask themselves then, is if they can afford to stay still. What is the competition doing during that period that can eliminate your future advantage? Actually modernizing the application landscape by leveraging a cloud platform can help leveraging the technological advance from the cloud, while focusing on the IT agility needed for enabling business needs.
So in conclusion, we could appropriately quote the famous author James Faust who said “a rebirth out of spiritual adversity causes us to become new creatures”. Maybe he didn’t had modernizing applications in mind when he wrote that, but it sure does embody the opportunity of reimagining apps in the cloud.
Contribution by Vikrant Karnik
Part of Capgemini’s TechnoVision 2015 update series. See the overview here