7 habits of effective api and service management

50
7 HABITS OF EFFECTIVE API AND SERVICE MANAGEMENT Presented by: Reza Shafii, Senior Director of Product Management, MuleSoft

Upload: mulesoft-inc

Post on 08-Sep-2014

719 views

Category:

Technology


0 download

DESCRIPTION

Resources: Watch Full Webinar Here: https://www.mulesoft.com/webinars/api/seven-habits-effective-service-api-management Discover Our Anypoint Platform for APIs: https://www.mulesoft.com/platform/api Read more about API Management Best Practices: https://www.mulesoft.com/lp/ebook/api/effective-service-api-management In the new enterprise, the number of services and APIs are growing at a rapid pace. In this webinar, API strategists, architects, and developers will learn how to develop an API strategy and create highly effective APIs by leveraging existing services. Reza Shafii, Director of Product Management at MuleSoft, discusses what is SOA, how service oriented architecture differs from APIs, best practices for API management, and enterprise API needs. You will learn: 1. How to transition from service oriented architecture in the API economy 2. How to develop an API strategy 3. Keys elements of an effective API Management solution 4. Strategies to overcome service and API security and identity challenges 5. Why integration platforms help manage APIs

TRANSCRIPT

Page 1: 7 Habits of Effective API and Service Management

7 HABITS OF

EFFECTIVE APIAND

SERVICE MANAGEMENT

Presented by: Reza Shafii, Senior Director of Product Management, MuleSoft

Page 2: 7 Habits of Effective API and Service Management

AGENDA

SOA and API Management1 !2 !3 !4 !5 !6 !

API Driving Forces

Enterprise API Needs

Best Practices of API Management

Demo of MuleSoft

Service and API Anatomy

Page 3: 7 Habits of Effective API and Service Management

SOA and API Management

Page 4: 7 Habits of Effective API and Service Management

What is SOA?

!• SOA initiative started in mid-late 2000s!

• SOA is now replaced by API Management!

• Technical principles behind SOA and API are really the same

DEFINITION !SOA or Service Oriented Architecture is software architecture based on the creation of a repository of standardized and reusable services which can be composed into an aggregate service to automate a business process. This is known as service-orientation.

Page 5: 7 Habits of Effective API and Service Management

SOA and API Are Complementary Topics

!✔ Services ✔ Governance ✔ Reuse ✔ Abstraction

✔ APIs ✔ Management ✔ Reuse ✔ Abstraction

SOA API

Page 6: 7 Habits of Effective API and Service Management

WHAT'S THE DIFFERENCE?

Page 7: 7 Habits of Effective API and Service Management

ENTER API MANAn Improved ROI model

Page 8: 7 Habits of Effective API and Service Management

API

Services and APIs

Reuse

Agility

Services

Agility Reuse

Services and APIs

Agility Reuse

SOA vs. API

API Man

A Waterfall Model Agile, Iterative Approach

The Difference is in Size and ROI

Page 9: 7 Habits of Effective API and Service Management

API

SOA vs. API

!!

SOA initiatives are monolithic, top-down

projects that don't start with ROI in mind

!It's better to think ROI-first.

Create a well-defined interface around a service that needs to

be reused or exposed right from the start.

Page 10: 7 Habits of Effective API and Service Management

API

Services and APIs

Reuse

Agility

Services

Agility Reuse

Services and APIs

Agility Reuse

SOA vs. API

API Man

A Waterfall Model Agile, Iterative Approach

See the difference?

Page 11: 7 Habits of Effective API and Service Management

Let's Take A Step Back: !Looking at the service and API anatomy

Page 12: 7 Habits of Effective API and Service Management

Consider a Physical World Example

First, PG&E provides a service. Electricity.

1 SERVICE

SERVICE

Page 13: 7 Habits of Effective API and Service Management

Consider a Physical World Example

This service is accessible through electrical sockets. Each socket has a certain shape or form. That is analogous to the interface or API delivered to each housing and corporate endpoint.

2 API

SERVICEAPI

Page 14: 7 Habits of Effective API and Service Management

Consider a Physical World Example

Consumers of this API is anyone that consumes electricity. Consumers do care about the form. They don't care about the implementation, such as if PG&E uses wind energy or coal energy.

3 CONSUMER

SERVICEAPICONSUMER IMPLEMENTATION

Page 15: 7 Habits of Effective API and Service Management

Consider a Physical World Example

This is a layered model. For instance, laptops can be using that API to build its own service like a USB socket. This is then accessed by an iPhone.

4 LAYERED MODEL

SERVICEAPICONSUMER IMPLEMENTATIONAPICONSUMER

Page 16: 7 Habits of Effective API and Service Management

Now, a Software World Example

Let's use as an example GoogleMaps

1 SERVICE

SERVICE

Page 17: 7 Habits of Effective API and Service Management

Now, a Software World Example

GoogleMaps is exposed as a REST API and SOAP web services API (analogous to our sockets).

2 API

SERVICEAPI

SOAP

REST

Page 18: 7 Habits of Effective API and Service Management

Now, a Software World Example

There are many consumers. Examples are these two: Trulia and Tripit. For instance, Tripit needs mapping service to show where a hotel is. Both do care about the API, but don't care about actual implementation.

3 CONSUMER

SERVICEAPICONSUMER IMPLEMENTATION

Page 19: 7 Habits of Effective API and Service Management

Now, a Software World Example

This is layered, too. Trulia and Tripit exposes their own APIs, which can use ten be used to build on apps that are accessed by another set of consumers. Examples are below.

4 LAYERED MODEL

APICONSUMER SERVICEAPICONSUMER IMPLEMENTATION

Page 20: 7 Habits of Effective API and Service Management

Service and API anatomy

SOAP

REST

APICONSUMER SERVICEAPICONSUMER IMPLEMENTATION

Page 21: 7 Habits of Effective API and Service Management

API Driving ForcesWhy, as an enterprise, should you look for API initiatives and actually implement them?

Page 22: 7 Habits of Effective API and Service Management

APIs Driving Forces

Page 23: 7 Habits of Effective API and Service Management

To expose business logic as an API instead of a web app or mobile app.

APIs Driving Forces

1 BUSINESS AGILITY

Concept that businesses and enterprises can look at new sources of revenue by creating API products. Ex. Amazon Web Services

2 API ECONOMY

The world is becoming a set of interconnected devices, ranging from mobile devices to car parts or light bulbs. All have APIs and all can talk to each other.

3 INTERNET OF THINGS

Page 24: 7 Habits of Effective API and Service Management

When you think API, think first REST and REST API. This is the main approach for best way to expose application programming interfaces

REMEMBER!

Page 25: 7 Habits of Effective API and Service Management

Enterprise API Needs

Page 26: 7 Habits of Effective API and Service Management

3 Main Categories

1 DESIGN AND DEVELOP APIS

2 RUN APIs

3 MANAGE AND SOCIALIZE APIS

Consistent to develop in agile fashion

Solid enterprise-grade run time

Apply security and throttling tools and promote them so initial API strategy is successful

Page 27: 7 Habits of Effective API and Service Management

Design and implement APIs

Business Owner Architect API

Developer

API Specification API Implementation

Development Tool

1

Page 28: 7 Habits of Effective API and Service Management

Best Practices of API Management

Page 29: 7 Habits of Effective API and Service Management

Best Practices of API Management

1 DESIGN AND DEVELOP APIS

2 RUN APIs

3 MANAGE AND SOCIALIZE APIS

HABIT #1: Apply an API-First design approach

HABIT #2: Choose a solid API runtime

HABIT #3: Create A Central Service Repository

HABIT #4: Manage Services Through Versions, Policies and Contracts

HABIT #5: Promote and socialize your API

HABIT #6: Monitor and Assess API usage

HABIT #7: Refactor API to improve consumer experience & productivity

Page 30: 7 Habits of Effective API and Service Management

Business Owner Architect API

Developer

API Specification API Implementation

Development Tool!THE PROCESS !1. Business Owner identifies need for API 2. Works with Architect to design API. This creates the API

specification 3. The API specification is communicated by Architect to API

Developer, who implements API through development tools

Design and implement APIs1

Page 31: 7 Habits of Effective API and Service Management

Habit #1: Apply an API-First design approach

Databases On-Prem Apps SaaS / PaaS Custom Apps

API Specification

API Implementation

Create the interface, then implement it.

Page 32: 7 Habits of Effective API and Service Management

• Open source

• Pattern based

• API-first design

• API implemented on Mule• Maven plugins for:

- Project creation - API mocks creation - Automated API testing

• API console• Mule Studio support

About MuleSoft's APIkit

APIKit

Page 33: 7 Habits of Effective API and Service Management

API Dev/Ops

API Implementation API Runtime

THE PROCESS

Run APIs2

Page 34: 7 Habits of Effective API and Service Management

Habit #2: Choose a solid API runtime

Page 35: 7 Habits of Effective API and Service Management

Choose a solid API runtime

Be able to run API applications in the cloud and on-premise

1 HYBRID SUPPORT

If your API is successful, it will be used by many customers.

2 SCALABLE AND RELIABLE

Runtime provides you with strong orchestration capabilities

3 STRONG MEDIATION

Page 36: 7 Habits of Effective API and Service Management

• On-premise and Cloud support - Full portability

• Enterprise-grade Runtime - Proven and mature

• Strong mediation capabilities - To translate between API layer and backend

Mule and CloudHub as API runtime

Used by a huge number of Fortune 500 companies

Page 37: 7 Habits of Effective API and Service Management

Business Owner

Architect

Service Repository

Policy and Contract Management AnalyticsCentral Developer Portal

App Developers

Manage and Socialize APIs3

Page 38: 7 Habits of Effective API and Service Management

Manage and Socialize APIs3

Remember to go over: !• Security and throttling policies • Carefully managing consumers of those APIs • Establishing a developer portal that is really easy

for a developer to come in and use the API • Reviewing analytics metrics

Service Repository

Policy and Contract Management AnalyticsCentral Developer Portal

Page 39: 7 Habits of Effective API and Service Management

• Single source of truth catalogue

!• Categorization and

search

!• Web based access

Habit #3: Create A Central Service Repository

Page 40: 7 Habits of Effective API and Service Management

• Tracking service versions and consumers

!• Managing their

contracts and SLAs

!• Dynamic policies

Habit #4: Manage Services Through Versions, Policies and Contracts

Page 41: 7 Habits of Effective API and Service Management

• Create easy-to access and central API developer portal

!• Provide and

encourage content that simplify API consumption

Habit #5: Promote and socialize your API

Page 42: 7 Habits of Effective API and Service Management

• Usage metrics

- Overall and per consumer

!• Operational

metrics

Habit #6: Monitor and Assess API usage

Page 43: 7 Habits of Effective API and Service Management

Habit #7: Refactor API to improve consumer experience & productivity

APIs need continuous improvement. !Go through the first six habits repeatedly to hit those ROIs that you defined at the beginning of your API strategy.

DON'T FORGET!

Page 44: 7 Habits of Effective API and Service Management

HOW DOES MULESOFT HELP?

Page 45: 7 Habits of Effective API and Service Management

Demo !End-to-End API Management with the Anypoint Platform

Page 46: 7 Habits of Effective API and Service Management

!• Service/API

implementation consists of Mule flow !

• Anypoint Service Registry enables governance

Demo architecture and topology - Part I

Back-­‐end  Service

Service  Implementation  (Mule  ESB)

ServiceP P

Anypoint  Service  Registry

Apply  Policies

Consumer    Requests

Page 47: 7 Habits of Effective API and Service Management

API  Gateway  (CloudHub)

• Mule as an API gateway to provide

• API Abstraction • Security and

throttling policies • Routing and

orchestration !

• Support for Mule and non-Mule services !

• Anypoint Service Registry enables management !

• APIhub used to expose API for in developer portal

Demo architecture and topology - Part II

Backend  ServiceBack-­‐end  Service

API  Gateway  (Mule  ESB)

APIkit  APIP P

Anypoint  Service  Registry

Backend  ServiceBackend  Services

Apply  Policies

Service  Client

Meta-­‐data  based  dynamic  lookup

Page 49: 7 Habits of Effective API and Service Management

SUMMARY

1 !2 !3 !4 !5 !6 !7 !

Apply an API-First design approach !Choose a solid API runtime !Create a central Service Repository !Manage services through versions, policies and contracts !Promote and socialize your API !Monitor and assess API usage !Refactor API to improve consumer experience & productivity

Page 50: 7 Habits of Effective API and Service Management

Thanks for Your Attention!

Read Reza's Blog Posts: http://blogs.mulesoft.org/author/reza-shafii/

https://www.linkedin.com/in/rezashafii

[email protected]

Follow Us! #MuleSoftWebinar

Watch Full Webinar: https://www.mulesoft.com/webinars/api/seven-habits-effective-service-api-management

Anypoint Platform for API: https://www.mulesoft.com/platform/api

Ebook on API Management Best Practices: https://www.mulesoft.com/lp/ebook/api/effective-service-api-management