Header Ads Widget

Ticker

6/recent/ticker-posts

Especificaciones de API Calmar el caos de la transformación digital (Parte 2)

 

En la parte 1 de esta serie de blogs , cubrí la creciente urgencia de las API y sus cualidades fundamentales de éxito para cualquier empresa que se esfuerce por transformarse en la economía digital. Respondí algunas preguntas fundamentales sobre por qué la importancia de las API sigue aumentando y por qué ahora es un punto esencial de introspección para muchas empresas que no tienen API.

Esta semana, después de establecer el "por qué" es tan importante, me gustaría repasar algunos de los principales beneficios de contar con especificaciones API.

Beneficio 1: permite la coherencia para su cliente

Trabajando desde afuera hacia adentro y enfocándose en el tráfico norte-sur, el primer benefactor obvio de las especificaciones API cuidadosamente diseñadas es el consumidor. Considere el valor comercial que presentan los productos que se exponen fuera de la organización. Proporcionan una oportunidad óptima para ocultar la complejidad interna, las variaciones de protocolo y la deuda técnica. El pasado no dicta el futuro, así que aproveche la oportunidad de reinventar cómo sus API expondrán el valor.

En muchas empresas, es normal que las capacidades comerciales se distribuyan en numerosos sistemas dentro del panorama de TI. Exponer el valor comercial de una manera desagregada a través de una API externa a menudo implica múltiples componentes. También obliga a los equipos a lidiar con sistemas de misión crítica que no pueden cambiar al ritmo que los especialistas en marketing digital suelen apreciar.

Figura 1 : Simple por fuera puede significar complejo por dentro.

En la Figura 1, el cliente interactúa con una única API y no tiene conocimiento de la implementación subyacente. Envían una solicitud a la API, que garantiza que la solicitud llegue a la ubicación correcta y devuelva la respuesta adecuada. La orquestación podría involucrar varias transformaciones de protocolo, enriquecimiento y negociaciones de seguridad. ¡Pero todo este esfuerzo solo vale la pena si la experiencia es simple, intuitiva y consistente para el consumidor!

Llegar a este punto ya es un gran paso. Quizás incluso los equipos de experiencia del cliente (CX) están comenzando a comprender la personalidad del "desarrollador" y la importancia de la experiencia del desarrollador (DX). La necesidad de tener afinidad de marca entre las API expuestas externamente no debe ser menor que la de cualquier otro producto ofrecido por la empresa.

Beneficio 2: Abordar la deuda tecnológica sin romper contratos

Una vez que se establece un contrato de API que sirve al valor comercial y está lo suficientemente desacoplado de las implementaciones del sistema, las oportunidades para simplificar el panorama y / o abordar la deuda tecnológica se vuelven viables. Todo esto debería ser posible sin afectar a los consumidores de los productos API ascendentes.

Figura 2 : Sistemas eliminados del paisaje sin afectar a los consumidores externos

Es posible abordar la deuda tecnológica (refactorización de códigos, actualizaciones de software / hardware, etc.) e incluso el desmantelamiento del sistema dentro del paisaje, como se muestra en la Figura 2. ¡Solo asegúrate de no romper la API externa!

La existencia de la especificación de API brinda tranquilidad tanto a los equipos de entrega de API como a los equipos de sistemas subyacentes. Suponiendo que se haya implementado la automatización de prueba adecuada, demostrar el éxito o el fracaso de las revisiones del sistema se vuelve binario.

Beneficio 3: la transparencia este-oeste mejora la seguridad y la agilidad

Posiblemente, lograr el equilibrio adecuado entre velocidad, agilidad y seguridad será la consideración más importante con la que las empresas deben lidiar continuamente cuando entregan activos digitales. Las amenazas a las API están aumentando y, a medida que las empresas pasan a configuraciones de infraestructura de nube completa o híbrida, la dependencia excesiva de la seguridad del perímetro de la red se vuelve demasiado evidente. La seguridad adecuada de Zero-Trust para la infraestructura de API no es responsabilidad de una puerta de enlace de API.

Cada API (o al menos delegada a una malla de servicios) debe tener la capacidad de realizar niveles fundamentales de funciones de autorización y seguridad. Hacer que una puerta de enlace de API sea el único responsable de la seguridad y las validaciones de API mientras se olvida de la seguridad en el tráfico de este a oeste es un desastre a la espera de suceder.

Los beneficios de las especificaciones API en el borde externo del panorama de TI son directamente aplicables dentro del panorama. Los beneficios tangibles inmediatos surgirán debido al aumento de la capacidad de descubrimiento, lo que ayudará a abordar el punto ciego causado por API RESTish deficientes o indocumentadas (también conocidas como "unión espagueti").

La evaluación del estado (o catalogación) del panorama de API directamente contra las especificaciones en los repositorios de código (o mediante herramientas de integración continua) proporciona una visión inmediata del estado de las integraciones dentro de la empresa. Históricamente, este papel a menudo lo desempeñaban las puertas de enlace API, que es demasiado tarde (esperando que se publique la API) y se supone que todas las API internas aprovecharán una puerta de enlace para el acceso (casi nunca garantizado).

Los mercados de API internos están ganando popularidad para promover la reutilización y un enfoque de beneficio compartido para administrar los artefactos de API internos. Dejando a un lado los mercados, tener especificaciones de API para sus API internas brinda mejoras reales al inyectar calidad al principio del ciclo de entrega y promueve una mejor experiencia de desarrollador para los equipos de desarrollo internos.

Beneficio 4: Reducir el costo de compartir conocimientos

Los trabajadores del conocimiento son clave para cualquier organización y se deben hacer todos los esfuerzos posibles para reducir el costo de la continuidad del conocimiento. Tener a las personas adecuadas en el equipo es crucial, pero garantizar que puedan tener el entorno para contribuir de manera efectiva es aún más importante.

El ahora infame mandato de Jeff Bezos (AWS) recomendó que los equipos expongan toda su funcionalidad a través de interfaces de servicio y que la comunicación del equipo debe pasar por las mismas interfaces. Casi 20 años después, el concepto sigue siendo válido, y las especificaciones de API ofrecen la oportunidad para que las empresas proporcionen una comunicación de autoservicio consistente, independiente de las opciones tecnológicas subyacentes.

Las especificaciones de API son uno de los mejores mecanismos para expresar naturalmente las capacidades de integración que pone a disposición de los demás como equipo. Sin ellos, un equipo recurre a mecanismos de documentación propios o, lo que es peor, ¡ninguno! Reducir la tentación de los enfoques de caja de vidrio; no serán más rápidos a largo plazo.

Preocupaciones y desafíos comunes que pueden surgir:

  • Dificultad para compartir detalles de la API con otros equipos, lo que genera una cultura de reuniones intensas y una colaboración excesiva.
  • Aumenta el tiempo para incorporar nuevos miembros al equipo: documentación centrada en el equipo (o sin documentación).
  • Riesgo causado por la partida de miembros clave del equipo: ¡el conocimiento también se va!

En su lugar, deje que las especificaciones y el ecosistema de herramientas que los respalda respondan muchas de las preguntas en nombre del equipo. Deben considerarse como la fuente de la verdad. Cualquier pregunta sin respuesta se aborda mejor incorporando la respuesta en la especificación o su virtualización.

Pensamientos finales

¿Resolverán las especificaciones API todos nuestros desafíos? ¿Es tan trivial?

Por supuesto no. La historia de API-first y las especificaciones de soporte deben contarse con una gran pizca de realismo, especialmente para organizaciones más tradicionales y grandes. Las especificaciones de API no son varitas mágicas. Pero sí permiten un enfoque coherente y empático que beneficia tanto a los clientes como a los empleados.

Aproveche la oportunidad de cosechar los beneficios con su próximo producto API. Si los humanos no te lo agradecen, ¡al menos las máquinas pueden hacerlo!


Publicar un comentario

0 Comentarios