Detours on the way to microservices

Share this post:

MicroservicesIn 2008, I first heard Adrian Cockcroft of Netflix describe microservices as “fine-grained service oriented architecture.” I’d spent the previous six years wrestling with the more brutish, coarse-grained service-oriented architecture, its standards and so-called “best practices.” I knew then that unlike web-scale offerings such as Netflix, the road to microservices adoption by companies would have its roadblocks and detours.

It’s not quite ten years later, and I am about to attend IBM InterConnect, where microservice adoption by business seems inescapable. What better time to consider these detours and how to avoid them?

Conway’s law may be bi-directional

Melvin Conway introduced the idea that’s become known as Conway’s Law: “Organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations.”

But I saw it occur in reverse: When enterprise software organizations first decide to adopt microservices and its disciplines, I observed development teams organize themselves around the (micro-) services being built. When constructing enterprise applications by coding and “wiring up” small, independently-operating services, the development organization seemed to adjust itself to fit the software architecture, thereby creating silos and organizational friction.

More than the sum of its parts

When an organization first adopts microservices in its architecture, there are resource shortages. People who are skilled in the ways of microservices find themselves stretched far too thin. And specific implementation languages, frameworks or platforms can be in short supply. There’s loss of momentum, attention and effective use of time because the “experts” must continually switch context and change the focus of their attention.

As is usually the case with resource shortage, the issue is one of prioritization: When there are hundreds or even thousands of microservices to build and maintain, how are allocations of scarce resources going to be made? Who makes them and on what basis?

The cloud-native management tax

The adoption of microservices requires a variety of specialized, independent platforms to which developer, test and operations teams must attend. Many of these come with their own forms of management and management tooling. In one case, I looked through the list of management interfaces and tools for a newly-minted, cloud-native application to discover more than forty separate management tools being used. These tools were covering: the different programming languages; authentication; authorization; reporting; databases; caches; platform libraries; service dependencies; pipeline dependencies; security threat model; audits; workflow; log aggregation and much more. The full list was astonishing.

The benefits of cloud-native architecture do not come without a price: organizations will need additional management tooling and the costs of becoming skilled in those management tools.

Carrying forward the technical debt

When a company embraces cloud migration or digital transformation, a team may be chartered to re-architect and re-implement an existing, monolithic application, its associated data, external dependencies and technical interconnections. Too often, I discovered that the shortcuts and hard-coded aspects of the existing application were being re-implemented as well. There seemed to be a part of the process that was missing when the objective was to migrate an application.

In an upcoming blog post, I’ll consider some of the common detours and look to what practices and technologies are being used to avoid them.

Join me and other industry experts as we explore the world of microserivces at IBM InterConnect on March 19 – 23, 2017.


Add Comment
No Comments

Leave a Reply

Your email address will not be published.Required fields are marked *

More Apps stories

Want automation success? Unlock opportunities for business automation with IBM Digital Business Workflow

We live in a world of instant gratification. Point, click, buy. Point, click, order a taxi. Point, click, reserve a room. Online businesses are setting the standard for user experience. But have you ever wondered what powers these businesses? What makes that user experience tick? It’s business automation. Business automation is the central nervous system […]

Continue reading

Using IBM Cloud, Movius enables Multi-Line mobile phone service

“Mobile first” is a business strategy in which smartphones, tablets and task-specific apps are employees’ primary tools for getting work done, according to TechTarget. However, many company leaders aren’t confident about bring-your-own-device (BYOD) policies as part of their enterprise mobility program due to security threats, as Solutions Review states. Alternatives that give organizations more control […]

Continue reading

Think Research delivers clinical decision support tools on IBM Cloud

Delivering medical care is complicated and becoming more so every single day. For someone to deliver high-quality care, they have to stay up to date on a plethora of information. This means going to conferences and reading research papers and other publications such as clinical practice guidelines. The challenge is that medical knowledge is increasing […]

Continue reading