Blog

    Contact

Microservices and application programming interfaces (APIs)

Dec 10, 2017

Don't get baffled by the jargon

If you are engaging with IT or Digital Teams, references to microservices and APIs are sprinkled liberally, like confetti, so what are they? Are they just a repackaging of the SOA (Service Oriented Architecture) hype that was constantly bandied around in the early 2000's? Are they in fact the same? In my time as support analyst for an IT integrator back then, our sales guys were constantly talking about it. Whether they understood it is another matter.

SOA is an architecture design in which services are provided or consumed to/from the other components through a communication protocol (the format for information exchange) in a system. Each service is a discrete piece of functionality that can be accessed e.g. to obtain claim history for an insured.

A service is self-contained, with interfaces meaning that the internal workings of the service, or technology used (e.g. .NET, Java, etc) do not need to be known by another service. In other words, you can swap out services as market conditions change, impacting only the affected part of a system. Equally, the same services can be reused in other systems.

Application programming interfaces (APIs)

Simply put, APIs are the way through which developers can interact with an application. It provides a way for a developer to use a function (via the interface) without needing to know how the function works. This is the same as computer user deleting a file in a graphical user interface (GUI), but without actually understanding how the file is deleted under the hood.

APIs are how systems integrate with each other. This relative simplicity of integration is crucial to building ecosystems, and with it, take a step further to becoming a Cognitive Enterprise*. It's an extension of SOA in that discrete functions are accessed using defined methods

Microservices

At their simplest, microservices are again, discrete, self-contained pieces of functionality that are accessed through defined interfaces. They are another implementation of SOA, and are geared towards continuous improvement and agile practices, agility being another hallmark of the Cognitive Enterprise.

Microservices can be thought of as decomposed services, broken down into even smaller functionality, though all we really have is services as there is no definition of how big a service should be.

One advantage with microservices is that they can be selectively scaled. With cloud computing this selective support is possible, cloud also being another hallmark of the Cognitive Enterprise.

Summary

Unless you have a technical role, be content to know that when you hear Digital Teams talking about API and Microservices, all they are referring to is the integration between components of systems, within the organisation or between organisations. They are neat ways that developers can use to interact with other systems, without understanding exactly how the parts of the system that are being interacted with, actually work. They have their roots in software development best practice, aiming among other qualities, to modularise software, make it smaller, self contained, and as the world has become more agile, faster to market.

Don't let yourself be baffled by the jargon.

* (A cognitive enterprise has a culture of agile innovation driven by an ecosystem of business platforms. They run on an open and secure hybrid multi-cloud infrastructure and use intelligent workflows to increase automation of, and enhanced decision making.)


Shall we talk?

Lets have a conversation

If you would like to know more about how I've helped to transform some the world's biggest and well known businesses, across diverse industries in the United Kingdom, Singapore, and Hong Kong, then please drop me a line. Let's have a chat and I'll buy the coffee!

Multiple screens showing responsive web developement next to a hot drink for a meeting

Turn your idea into digital reality

Many of my clients requiring web design have been small or start up businesses and need a lot of guidance. I love these kind of projects as I feel I can be a part of a new and exciting business from the very beginning!

What do I call you?
Enter your email address
It would be nice to tell us why you are contacting us!
To prevent spam mail, enter the sum of the spam captcha
The spam captcha is: 5+6