The Need for Speed Architecture – The Benefits of Microservices
There’s fast, and then there’s speed architecture. When IT faces new business challenges at a frantic pace, conventional development methods are pushed to their limits. Microservices could present the solution.
Let’s imagine that you are sat in a self-driving car right now. Suddenly, an obstacle appears before you. Using sensors, the vehicle detects the situation and brakes – and you come to a safe stop. Software has just saved your life thanks to its extremely fast reactions. But the future of automobiles is connected; the individual vehicle not only becomes smart, but in fact communicates with others. In our example, this means that when your car slams on its brakes, the vehicles behind you promptly respond and brake as well.
For this scenario to become a reality, it requires an extremely lean IT architecture that can achieve the necessary reaction times. The SAP Cloud Platform and microservices are central elements of this speed architecture.
Reduced to the Essentials
Microservices are small programs that are developed for one single task only – for example, to inform other road users that a vehicle is braking. Following the Unix philosophy of “Do one thing and do it well”, a microservices architecture comprises many independent services that can be deployed instantly. And, thanks to their encapsulation, they can be used with less risk. Their extremely simple code, in combination with a central cloud platform for efficient coordination and transmission of data, enables them to perform at a very high speed.
Microservices in SAP Environments
High speed is crucial in the digital age – but so is stability. As a result, it has long since become clear that tomorrow’s IT will be based on a hybrid architecture; an architecture with two speeds. Business-critical applications remain in the familiar SAP world, and are still based on standardized processes and fixed development cycles. In addition to this stable core, there is the high-speed cloud, which handles all short-notice, new, and customer-specific requirements. And, in terms of the speed architecture, this is precisely where microservices are best used. The SAP Cloud Platform is designed for programming these microservices and provides helpful development tools.
- Rapid, agile development: Since microservices have a very limited range of functions, they can very quickly be created and replaced.
- Automated testing: Due to the rapid, agile, and dynamic development of microservices, and because they are delivered via continuous deployment, time-consuming manual testing is not possible. That’s why automated testing is an essential element of a microservices architecture.
- Continuous deployment: There are no dependencies between microservices and other programs, and all communication takes place via messaging. This eliminates the need for extensive release planning. A new version is immediately ready to use.
- Combined development and support: Thanks to the considerably reduced range of functions that a microservice can perform, developers are able to offer direct support in line with the DevOps approach.
- Robust security: Advanced security concepts and access restrictions reduce risks.
Services Can Be Developed Faster and Maintained More Easily
In the digital age, the number of specific requirements will continue to rise. This does not even necessarily have to involve innovations such as connected cars. When company departments have a new demand, IT can no longer afford to first start larger development projects. The solution needs to be available as soon as possible.
Therefore, speed architecture also means replacing as many of the old Z programs as possible and individually replicating their functions as microservices in the cloud. This pays off in numerous ways. For a start, release cycles are significantly shorter in the SAP S/4HANA world. Anyone who then has to test that all their Z programs are functioning correctly every time will very quickly lose all motivation. With encapsulated microservices programmed in Java, you barely waste any time. All that remains to be done is to define the interfaces in the ERP system.
And you don’t even need SAP S/4HANA to do this. You can even use the good old SAP R/3 software.
Constantin Freiherr Teuffel von Birkensee, Consultant – SAP Cloud Platform, NTT DATA Business Solutions AG
Gerald Jüttner, Client Partner – IT Strategy Consulting, Director, NTT DATA Business Solutions AG