The Trials & Tribulations of Migrating Apps: SAP BTP Neo Vs Cloud Foundry
I am Vikash, working as SAP BTP Architect and UX Consultant with Bluestonex Consulting for the last 5 yrs. We live and breathe SAP Migration, SAP BTP and run our business on it. We believe in user-focused solutions with robust architecture, that’s why we say Bluestonex is where Design Thinking meets Enterprise Architecture. This blog attempts to talk through our journey of migrating apps from Neo to a multi-cloud SAP BTP environment taking into consideration disaster recovery scenarios. We have done successful SAP migration exercises for our business and for our multiple clients as well! We’ll help you discover all things BTP migration, including BTP Neo Vs Cloud Foundry (multi-cloud).
What is the difference between Neo and Cloud Foundry?
To all those who cannot relate to this topic, SAP BTP is a platform as a service offering from SAP which comes in 2 variants – Neo and Multi-Cloud (new accounts are multi-cloud only). When SAP introduced the platform (formerly named SAP Hana Cloud Platform, then changed to SAP Cloud Platform), all the accounts were hosted in the SAP data centre(s). This version was called Neo. Later, major hyperscalers like AWS, Azure, and Google Cloud joined hands with SAP and started offering SAP BTP and various other environments like Cloud Foundry, Kyma, and ABAP on their infrastructure. This is multi-cloud.
SAP have announced there will not be any innovation in the Neo environment and all focus and investment is now on the multi-cloud variant. Hence, the topic of SAP migration from Neo to multi-cloud comes into picture. So, going back to BTP Neo Vs Cloud Foundry, the fact Cloud Foundry is newer, has better capabilities and will be supported by SAP, unlike Neo. These are all points in favour of Cloud Foundry.
Why think about migrating to a new platform?
I can understand the word ‘migration’ can be synonymous to ‘migraine’ if not planned well! Why touch something which is working? They say, ‘if it isn’t broke, don’t fix it’. Well, it is because SAP will not be investing in Neo environment of SAP BTP. All new innovations are being added to SAP BTP multi-cloud portfolio. Although there is no official sunset date announced, the way forward is multi-cloud. All new services, be it, artificial intelligence and machine learning, intelligent robotic process automation, or enhanced SAP Cloud Integration, SAP Launchpad service, Cloud Workflows everything is getting added to the multi-cloud environment.
I know the next question to ask would be like what does it take to migrate apps from Neo to Cloud Foundry? Well, you need to tweak your existing Neo apps so that they are compatible with the new environment. Hence you will need developers and their time dependent on a number of apps that needs to be migrated. But generally, the effort per app is not huge, although there can be exceptions! There are tools as well now which can do the migration for you, but we prefer doing it ourselves as you are in control of your code, and you know what’s going to happen.
BTP Neo Vs Cloud Foundry: which is the right environment?
We can see how well-positioned and stable these systems are and give customers maximum up time. I mean, SAP guarantees 99.95% service continuity which is very good. But like all systems, it is not bullet proof, not quite yet anyway. Well, it cannot be! That’s the fact. Like we all know cloud is also someone else’s computer which needs to be patched, upgraded as required. Obviously with most cloud platforms and services there will be planned downtime (typically once a quarter) but we do see occasional unplanned downtimes. These unplanned outages are the ones that hurt but they happen very occasionally. This is the reason, we at Bluestonex developed an architecture to ensure maximum uptime for customers.
Why Doesn’t SAP offer a DR / continuity plan for migration to Cloud Foundry?
Many months ago, there was a high availability service delivered via SAP available within Neo environment. The strategy from SAP is focussed on multi cloud and robust hyperscaler’s, already have DR. After all, this is what most of us expect (almost like a commodity). So, if DR is already there in hyperscalers why design something in the architecture. Well, it’s the services. What if services go down – what then? In BTP we all use several services in our applications and need to plan for worst case scenario. There comes the part where we need to carefully examine customer’s requirements and carefully choose the right regions and hyperscalers for them.
The Bluestonex approach to SAP BTP migration?
We have successfully migrated Fiori apps for multiple customers now on the multi-cloud platform. The last 18 months or so has been a steep learning curve for all the developers in the UX team here at Bluestonex, we faced challenges, and we overcame them working alongside SAP (we often tread new ground in SAP BTP and even SAP are unaware of certain scenarios customers run the services in). Its important to add that we run our business on SAP BTP and hence we started with migrating our apps first before taking up the activity for our customers.
The Cloud Foundry environment, in general, is a lot different from Neo. The majority of developers would agree if we said Neo has been straightforward. New concepts like org and spaces, runtime, bandwidth, service instances, app routers, scope, role collections and different ways of managing roles and users are not difficult but when compared to Neo, they add a lot of uncertainties for a new developer. Another big change is the use of command line interface, which is good, but it may be too technical for developers who are not used to it. So, the first hurdle is getting to know the multi-cloud environment better. However, this environment opens a lot of doors in terms of the languages we can use to develop apps. So, again, you could use the phrase, ‘the good, the bad and the maybe not so ugly’.
Partly the success is because we are one of the early adopters of SAP Business Application Studio (BAS) and cloud foundry environment. We started working on this integrated development environment when it was generally available, but not mature. Every time, as it would be with majority of developers, we used to compare BAS with webIDE and say that webIDE was better. I still believe SAP WebIDE is easy to use but BAS nowadays is much more powerful. There are some shortcomings too and people have written a lot about it, especially the support for standard apps and the prerequisites to extend them. I am hopeful SAP will make BAS easier to use and develop/extend apps. As compared to its first generally available version, BAS has become much more user friendly and offers enhanced capabilities.
A better platform will always have some initial shortcomings. When we migrated the apps for one of our clients, they complained about the frequent session timeout warning pop-ups appearing on the launchpad. Even if the session timeout was set to 20 mins, they used to get the warning popup sometimes in 3 mins, sometimes after 5 mins. After further debugging, we found that it is only happening for the SAP Screen Personas applications and it was working fine for all SAPUI5 apps. You’re probably wondering why we mix and match SAPUI5 and Personas all on the one Fiori launchpad service, but it is what we have always done. Customers get rapid value with no code/low code as everything is designed in Fiori guidelines/principles.
Going back to this timeout issue: The issue was raised to SAP, and they came back with a fix. So, if you/your clients are using SAP Screen Personas/Slipstream tiles from the cloud launchpad, this is something you need to be aware of.
Another thing which surprised me was something which was available in Neo but not in cloud foundry. Do you know, as an admin, you cannot rearrange tiles (force a particular sequence) in a group on the Fiori launchpad? Clients often ask for a particular sequence of tiles under a group, but this is not possible as of now in the launchpad service. It used to be very handy in Neo. SAP note 3066544 – Changing tile order on BTP Launchpad (CF) states that this is not possible except when you are end user and end user personalization is enabled. I strongly feel this should be in SAP’s to do list. I am sure it will get addressed soon.
Although we started with some initial hiccups, overall, our experience with SAP migration activity and experience of BTP Neo Vs Cloud Foundry has been good. I hope the platform will evolve in the near future with enhanced capabilities and newer services. If you are also thinking about migration, and having difficulties taking the first step, or have lack of clarity, we are here to help – just reach out, after all, we are the UX & BTP experts!