Cada día escuchamos que debemos evolucionar hacia el mundo de las API, que debemos dejar atrás la clásica SOA, escuchamos las ventajas de este modelo y cómo los desarrolladores pueden autoproveerse y reutilizar las API existentes. También escuchamos sobre cómo podemos exponer nuestro negocio a los socios a través de las API, etc. Pero, ¿qué es realmente una API? ¿Cómo diseñarlas y qué ofrecen los fabricantes para manejarlas y administrarlas? Hacemos una introducción al mundo de las interfaces de programación de aplicaciones y cómo uno de los fabricantes más importantes de gestión de API resuelve este desafío.

Deloitte

¿Qué es un API?
Una API (interfaz de programación de aplicaciones) es una interfaz que facilita el acceso a servicios o bases de datos, de modo que permiten la interconexión de módulos y aplicaciones, facilitando el acceso a su backend y permitiendo así la reutilización de los servicios.

A través de la programación, nos permite abrir datos y funcionalidades a otros desarrolladores, empresas o incluso departamentos de la misma empresa. De esta manera se convierte en la nueva forma en que las organizaciones intercambiarán datos, servicios y recursos tanto con los socios como con el público en general.

Deloitte

¿Qué problemas resuelven y qué aspectos debemos considerar?
Conectividad: su uso permite la conexión de componentes de software de forma remota.
Independencia tecnológica: el uso de una determinada API no tiene por qué estar asociado al uso de una determinada tecnología (.NET, Java, ...).
Funcional: Los API generados y publicados tienen que resolver una necesidad y ofrecer una funcionalidad completa.
Seguridad: la publicación de ciertas funcionalidades a terceros, implica este reto a resolver.
Escalabilidad: la habilitación de servicios para su uso por parte de sistemas de terceros puede llevar a un alto crecimiento en el número de llamadas al sistema. El servicio expuesto a través de la API tiene que ser implementado utilizando soluciones fácilmente escalables.
Agilidad para el cambio: el aumento del número potencial de usuarios de la API también aumenta el número de posibles necesidades/mejoras en ellos. La arquitectura creada tiene que facilitar la evolución de las API y las funcionalidades, permitiendo una respuesta rápida que satisfaga las expectativas del elevado número de usuarios y permita responder con antelación respecto a la competencia.
Documentación: el proceso de creación de la API está asociado a un proceso de documentación y publicación. El objetivo es disponer de una plataforma, el portal de la API, en la que los posibles usuarios de las mismas puedan disponer de todos los detalles necesarios para su utilización.
Niveles de acceso: el uso de la API implica un nivel de servicio prestado por ellos. Para garantizar este nivel de servicio, es fundamental controlar el nivel de acceso a estas API. Este control puede utilizarse al monetizar el servicio, permitiendo la creación de diferentes niveles de acceso y, por tanto, diferentes costes.
¿Cómo se consigue controlar todos estos aspectos?
Podemos definir la gestión de las API como el proceso de publicación, promoción y control de las API en un entorno seguro y escalable. Además, el término incluye todos aquellos recursos centrados en la creación, documentación y socialización. Este concepto es la clave del éxito de una plataforma de API, ya que nos dará una solución a los problemas con los que nos vamos a encontrar.

¿Cuál es el enfoque de Mulesoft en el mundo de los API?
Mulesoft tiene uno de los productos líderes en el mercado, Anypoint Platform, que no solo pretende ser una plataforma tecnológica de integración, sino que también promueve una metodología de gestión de APIs a través de ella que facilita el uso de sus APIs y su reutilización .

El enfoque que ofrece la herramienta, "conectividad dirigida por API", es una forma de conectar datos y aplicaciones a través de API reutilizables y funcionalmente completas. Estas API se han desarrollado para desempeñar un papel específico convirtiendo los datos en procesos y ofreciendo diferentes métodos de integración.

Deloitte
La solución propuesta por Mulesoft incluye en un solo producto los tres pilares necesarios para la gestión de la API:

Puerta de enlace de la API
Gerente de la API
Portal de la API
Además, la incorporación de su propio Runtime así como numerosos conectores a los sistemas más importantes del mercado (Salesforce, SAP, Siebel, etc.) también incluye las capacidades de un ESB. Además, cubre todo el ciclo de vida del software e incluye un enfoque de producto orientado a DevOps.

Deloitte

El enfoque "API Led Connectivity" se basa en la generación de activos reutilizables y en una arquitectura de tres capas, no sólo con sus propios componentes sino utilizando arquitecturas híbridas.

1. Experiencia API

Esta capa es la que utilizan los sistemas de consumo. Está orientada al consumidor de manera que facilita y optimiza la integración de acuerdo a sus necesidades. Además, se desarrollan pensando en la reutilización por parte de consumidores similares. Además, el diseño escalable de esta capa permite incorporar nuevos consumidores sin impactar a los consumidores existentes y reutilizar la lógica implementada en las capas inferiores.

2. Proceso API

En esta capa intermedia se desarrollan las API dedicadas a la implementación de la lógica de los procesos empresariales. Son reutilizables por todas las API de la experiencia en la capa superior, y orquestan las llamadas a las diferentes API del sistema en la capa inferior. La incorporación de nuevos procesos empresariales a través de nuevas API de procesos no afecta a los componentes existentes y los nuevos componentes pueden reutilizar las API de sistemas existentes si es necesario. La comunicación entre esta API de procesos y las API del sistema se realiza a través de REST.

3. API del sistema

Es la capa de servicios que proporcionará la conectividad con los sistemas finales, totalmente orientada a las características del Backend, también llamada capa de microservicios. Son APIs dedicadas a ejecutar operaciones en los sistemas del proveedor. Además, son reutilizables por todas las API de procesos y la necesidad de ejecutar nuevas operaciones en los sistemas existentes (o en nuevos sistemas) no afecta a las operaciones existentes. Cada System API se conecta a un sistema proveedor.

En el entorno actual, en el que los canales de entrada no dejan de crecer y los sistemas centrales de las empresas se multiplican, este tipo de organización de API es necesaria para que nuestro ecosistema de API sea reutilizable, modificable con agilidad y duradero. Este enfoque nos permite tener API que contienen toda la lógica empresarial, abstrayéndonos tanto del consumidor como del sistema del que se obtiene la información. Además, los cambios en los sistemas heredados o en los sistemas del consumidor no afectan en gran medida al proceso implementado.

 

 

 

Deje una respuesta