MuleSoft – Anypoint Platform – API-led Connectivity

API Led Connectivity

I need to introduce this concept in order to jump to the technical part. Lets start with Bimodal IT:

  1. IT needs to be stable, mature and secure, we can see this as a traditional IT model, in here you run your Enterprise Applications with your traditional vendors.
  2. IT needs to be Agile in order to keep up with the business and current IT demands (New interfaces, integrations, partnerships, devices, etc.)

For more information please have a look to this document:
API-led Connectivity

In other words, the market is changing at a faster speed than before and IT needs to be agile in order to help the business to be align with this demand, but they also need IT to keep things stable. Does this sound familiar?

We also find these two common scenarios:

  • Central IT controls everything and its goal is to provide and support IT solutions to the rest of the company, this commonly leads to frustration and a lot of pressure for IT and the business generating an anti-agile pattern.
  • Central IT tries to control everything but the rest of the company departments have their own budget for IT solutions, this in paper makes the company “Agile” but not standard, generating in the long run an anti-agile pattern.

Consequences:

Before we had a problem where things were not Digital so we had no data and companies had to buy specialized systems (HR, Finance, ERPs, CRMs, Portals,etc.), but now we have lots of IT systems, data, transactions, etc.

  • How do I get them talking together?
  • How to I apply governance?
  • Should I let people query my data?
  • How should I handled my security?

How did companies solve this?

  • Point to Point: Applications talking to each other with a customized and personalized solution.
    • Main PRO: Faster for a single interface (Web App, Mobile, SaaS, etc.)
    • Main CON: Only works for a specific interface (Not reusable)
  • SOA: Applications talking to each other through services in a standard format.
    • Main PRO: Canonical Data model, orchestration and service decoupling.
    • Main CON: Time to Market.

How are we solving this issue?

  1. Expose and open internal systems through APIs
    1. Composable Enterprise
  2. Enabling different Lines of Business
    1. Divide and Conquer
  3. Let the front-line drive based on the consumer needs.
    1. The business shouldn’t be driven by IT but it should be responsive to the market needs.

API: Application Programming Interface

“Is a set of routines, protocols, and tools for building software and applications. A good API makes it easier to develop a program by providing all the building blocks, which are then put together by the programmer.”

All of this leads us to a 3 layer model or architecture. Some time ago I heard this analogy that I would like to share with you:

Use Case:

  1. House owner calls an emergency number and gives the following information “My house is on fire I live in {Address}”.
  2. The operator calls the police and provides this information ” A house in this Address is on fire”
  3. The operator calls the fire department and provides the same information ” A house in this Address is on fire” and it does the same to the local hospital.
  4. The police operator triggers a code 027282728 and sends police elements to the address provided.
  5. The fire department triggers a code ab12334 and sends a fire truck to the address.

I believe this is how the New Enterprise should behave:

  1. Consumer only interacting with what they need and that can improve its experience. (UX Layer)
  2. Line of business defining and managing the services exposed.
    (Process Layer)
  3. Central IT and Middleware specialist opening the data to the rest of the layers through APIs.
    (System Layer)

This whole concept fits perfect in MuleSoft as it’s not only a concept that they drive is also a concept they can deliver through the Anypoint Platform that I’ll be covering in following posts.

2016-02-04_2332

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

Up ↑

%d bloggers like this: