Apple app developer news Android app developer news

On the origin of applications: From monolith to microservices

How cloud services and architectures are constantly evolving to stay in touch to remain useful to cloud customers.

Cloud Services 20,851 VIEWS
7/31/2017 9:19:28 AM
On the origin of applications: From monolith to microservices
https://appdevelopermagazine.com/images/news_images/On-the-Origin-of-Applications-From-Monolith-to-Microservices-App-Developer-Magazine_spftmgqw.jpg
Posted Monday, July 31, 2017 by Pat Bakey


On the origin of applications: From monolith to microservices
Computing and biology are often seen as existing on two separate planes: computing relies on order of operations and algorithms, while biology functions on organ systems and bodily processes (although, bio-computing is closing this gap). As different as they may seem, they hold a striking similarity in that they are both governed by natural selection - or in the case of applications, "functional" selection.

Like vital organs and physical traits that maximize vitality and enhance survival, the most successful enterprise applications are those that help companies adapt to the changing business environment: scalability, agility, speed and personalization. All of these components are driving an insatiable hunger to innovate, and are selecting application architectures that allow them to do so.

It is these driving factors that have led to the evolution of applications we are seeing: a shift toward microservices designed to encapsulate specific functionality and away from monolithic, all-in-one packages, forever changing the speed and nature of business innovation and our perception of what is possible. As Carsten Thoma, president and co-founder of SAP Hybris, puts it: microservices "might be even more disruptive than any other tech paradigm shift that has come before."

Where the Monolith Ends


Enterprises have traditionally relied on large, all-inclusive coding applications to fulfill customer expectations, but this has changed with advancements in microservice applications. Key capabilities for managing analytics - data input/output, processing, UI and error handling - were all packaged into a single, monolithic process. The trouble with this framework - especially for industries like oil & gas, manufacturing and supply chain that rely on real-time data insights from numerous sources and processes - is that it has limits in terms of scale and speed.

For example, National DCP - the exclusive supply chain management company for Dunkin Donuts - might experiment with new tracking mechanisms that require additional GPS, data entry and logistics capabilities. Microservice applications allow a more specific business challenge to be solved with speed and agility. In contrast, to accomplish this task using a monolithic application developers would need to reiterate the entire application's design. This is not only slower but also higher risk as scaling the entire ERP requires debugging and other trouble-shooting measures to be taken.

This example from National DCP, among others, is where microservices shine and enterprises have taken notice.

Microservices Begin


At their core, microservices are smaller component applications that can be customized around specific business capabilities and combined with others to form a large, cohesive program of interconnected services. The benefit of this becomes clear when you consider the alternative: a clustered monolith whose computing power is used to accomplish several capabilities at once, which is less than optimal. The primary advantages of microservices are that their structures are easier to maintain, can be refined without having to edit the larger collective suite, and fulfill the Single Responsibility Principle that emphasizes the value of having specialized services. All in all, microservices, coupled with the scalable nature of running in the cloud, give businesses the ability to quickly change, test and refine offerings based on customer feedback and insight.

When working with a microservices architecture, decentralized developer teams can collaborate to take customer feedback and adapt offerings accordingly. For example, SAP Hybris Revenue Cloud, which is based on a microservices architecture, enables partners and customers to build and harness flexible extensions and solutions. This allows customers to build new subscription- and usage-based offers grounded in deep customer insights. Changing one portion of a larger offering can be done quickly, whereas with monolithic architecture-based solutions, there is a much longer and more complicated process for making these types of changes. This agility gives organizations a leg up on the competition as the overall customer experience improves dramatically with this type of constant refinement.

How to Evolve


This isn't to say that monolithic architectures are not useful across the board, but the surge in microservices popularity lies in their ability to be tailored and rapidly deployed to enhance existing applications without disrupting the entire system. Case in point, a wholesale distributor could leverage microservices to upend their traditional order management system to adjust to their customers' specific products, provide a personalized digital business model and create a new generation of business applications. Theoretically, this capability could help optimize their omnichannel and have a system optimized CRM.

It is in this type of specialization where we are seeing leaps and bounds being made in the enterprise as microservices designed to accomplish specific tasks have become the norm. I suspect that we will uncover innovations months from now that we would otherwise think impossible in years past thanks to the efforts and innovation being driven by leaders in manufacturing, oil & gas, financial services and other vertical industries that are experiencing disruption.





Subscribe to App Developer Daily

Latest headlines delivered to you daily.