Software Opinion South Africa

The evolution of middleware: middleware trends

The term 'middleware' has been used for many years to broadly categorise the set of behind-the-scenes technologies designed to help enterprises create, connect, and manage the myriad of software applications that run today's businesses. These applications can vary greatly, but are all meant to address specific business needs, such as insurance claims automation, financial fraud detection, transaction processing, or even to provide tailored interactions with customers based on time, location, preferences, and more.
Mike Piech
Mike Piech

Business needs and technology capabilities change and adapt to one another in a cyclical fashion over time, with new business needs fueling innovations in technology and those innovations in turn giving birth to new business requirements. We've witnessed the impact of this cycle on the middleware market with trends such as service-oriented architecture (SOA) and web services impacting both development approaches and technologies in the not-too-distant past.

In this article, we will identify and examine several of the more prominent technologies and trends fueling the evolution of middleware today, including cloud, DevOps, microservices, containers, and mobile.

Cloud-based development and DevOps

Historically, middleware technologies have been heavy, large-footprint tools used by enterprises to build monolithic applications and install them on a mainframe or physical server in a data center. In contrast, modern middleware tools are much lighter and boast smaller footprints, allowing them to be deployed in cloud environments and consumed as services by IT.

Arguably, one of the greatest drivers comes from the move toward cloud-based enterprise application development. Organisations have embraced Platform-as-a-Service (PaaS) as an increasingly popular technology that enables developers and IT operations professionals to build and maintain applications while avoiding many infrastructure-related challenges and expenses.

Mainstream acceptance and adoption of the cloud has subsequently given rise to new IT paradigms such as DevOps that help enterprise IT become more nimble and bring products to market faster. DevOps is broadly defined as the close collaboration between application development and IT operations teams. Thanks in part to the efficiency and flexibility of cloud environments; DevOps teams can turn new service concepts into actionable products in hours rather than days or weeks.

Microservices architectures

Another recent trend that is helping to redefine enterprise application development and the associated middleware technologies is the growing popularity of microservices architectures. The monolithic applications of the past could not easily be changed, often causing a painful ripple effect on the business when changing market conditions or new regulatory requirements demanded changes to the application in order to adapt. Service-oriented architecture (SOA) emerged as a way to help reduce the pain and minimise the disruption of change through the modularisation of applications into specialised "services" that independently perform separate functions of the application.

Today, the trend toward microservices takes this concept even further, resulting in not merely applications being decomposed into a larger number of modules, each of which is smaller and more narrowly focused. In many ways, microservices can be seen as a natural evolution of enterprise application development.

Containers

A third notable and related trend driving the viability of microservices architectures - and heavily influencing the middleware market - is containerisation. Containers provide a way to isolate application runtime environments from the infrastructure to deliver greater consistency, reliability, and portability for applications as they are moved between different computing environments during their lifecycle.

Containers bring together the middleware stack, constituent services, and optimised operating system, and the entire entity becomes a microservice. When compared to traditional middleware technologies, the more agile and lightweight middleware offerings today present a compelling alternative for the modern enterprise.

The evolution of middleware: middleware trends
©Mirko Vitali via 123RF

Mobile

Mobility is rapidly becoming the first choice client platform for application development over the desktop; however, it does not come without its own unique challenges, such as back-end integration.

An April 2015 survey conducted by TechValidate on behalf of Red Hat identified back-end integration as one of the top challenges facing the mobile enterprise today.

At the same time, more than half of the respondents indicated that they are still dependent on custom integration work as part of their mobile application development. Mobile-oriented middleware technologies such as mobile application platforms and Mobile Backend-as-a-Service (MBaaS) have emerged to help enterprises address these challenges in a more scalable and efficient manner. While the enterprise mobility market is gaining steam, it is still fairly immature in this regard. If we were to poll this group again in a year, we would likely find many more respondents using mobile middleware to overcome these challenges, and fewer relying on do-it-yourself solutions.

Today, we see the outcome of that shift, as software has become a leading competitive differentiator for organisations across major vertical industries. Behind the scenes, middleware is what enables these companies to create powerful and unique applications that set them apart from their competitors. Though it has evolved over time and adapted to keep pace with trends such as cloud, mobile, and microservices, modern middleware continues to offer organisations effective capabilities to create, connect, and manage the software applications that help define and differentiate their businesses.

About Mike Piech

Mike Piech, vice president and general manager, Middleware, Red Hat
Let's do Biz