Header Ads Widget

Ticker

6/recent/ticker-posts

Proceso de cuatro pasos de PayPal para crear API compatibles con la gobernanza

 



La gobernanza de API es un problema grave para las empresas que escalan rápidamente sus programas digitales. ¿De qué otra manera puede crear un conjunto de docenas, o incluso cientos, de API, mientras se asegura de que sigan siendo seguras, eficaces y coherentes?

Es fácil pensar en la gobernanza de API como nada más que una colección de estándares de toda la organización para el diseño de API, pero hay más. En particular, lograr que los equipos de desarrollo de API implementen realmente los estándares establecidos dentro de su sistema de gobierno es un desafío en sí mismo.

En este artículo, veremos cómo PayPal ha mantenido la coherencia en su amplia cartera de API internas y externas con la ayuda de la gobernanza de API. Nos centraremos en el proceso de cuatro pasos que utilizan para desarrollar API compatibles con la gobernanza, como explicó Jayadeba Jena , jefe de diseño de API de PayPal, en la Cumbre de la plataforma de API nórdicas de 2018 . Pero primero, ¿qué significa "gobernanza" para PayPal?

Mira a Jayadeba Jena presente en el Platform Summit 2018:

¿Qué es la gobernanza de API en PayPal?

Antes de explicar el proceso de PayPal para la creación de API amigables con el gobierno, Jayadeba presenta los cinco aspectos cruciales del gobierno de API en PayPal: capacidades comerciales, principios de diseño, estándares, definiciones de objetos y políticas de control de versiones.

Las capacidades comerciales son el punto de partida para la gobernanza y describen lo que los clientes quieren hacer con PayPal. Como sistema de pagos en línea, las capacidades comunes de las API de PayPal son el manejo de pagos o la creación de flujos de pago, pero hay varios otros, como la tokenización o la facturación. Estas capacidades ayudarán a determinar si se debe construir una API.

Luego, están los principios que impulsan el diseño de API en PayPal. Como era de esperar, estos son los principios por excelencia del diseño de API eficaz, como:

  • Bajo acoplamiento
  • Encapsulamiento
  • Estabilidad
  • Reutilización
  • Centrado en el contrato
  • Consistencia
  • Facilidad de uso
  • Externalizabilidad

Los estándares son criterios de diseño específicos que dan como resultado los principios descritos anteriormente; son lo que le viene a la mente cuando piensa en la gobernanza de API. Describen todo, desde la estructuración de URI hasta el comportamiento de las operaciones, así como la idempotencia, la autorización y el manejo de errores ... ¡y más!

Otra parte importante del gobierno de la API son las definiciones de objetos . Estas son definiciones de toda la organización para manejar objetos comunes, como fechas, monedas y países. Siempre que sea posible, PayPal se esfuerza por utilizar los estándares ISO y de la industria para definir estos objetos, promoviendo la compatibilidad con API tanto interna como externamente.

Una adición tardía al modelo de gobierno de PayPal fue una política de versiones clara Esto incluye criterios específicos sobre lo que se necesita para que una API sea compatible con versiones anteriores, así como pautas sobre cómo iterar, como qué romper y qué no romper. También detallaba las políticas de fin de vida, como el período de tiempo entre la depreciación de la funcionalidad y la jubilación.

Puede ver los estándares de diseño, las definiciones de objetos y la política de versiones de PayPal en su Guía de estilo de API disponible públicamente Hablando de eso, asegúrese de crear su propia guía de estilo como parte de su programa de gobierno, para que los equipos de desarrollo puedan hacer referencia fácilmente a los estándares de diseño durante el desarrollo.

El proceso de cuatro pasos para crear API compatibles con la gobernanza

Tener un marco integral para el gobierno de API es solo la mitad de la batalla; ¡la otra mitad lo está implementando! Aquí es donde el proceso de cuatro pasos de PayPal para la gobernanza de API, según lo detallado por el propio Jayadeba, realmente resulta útil.

En pocas palabras, cada API pasa por cuatro fases: definir , diseñar , desarrollar y externalizar . Cada fase presenta comentarios del equipo central de diseño de API de la organización, lo que garantiza que se sigan de cerca los estándares de gobierno.


1. Definir

Cada API comienza su vida con una propuesta, que define qué hace la API y para quién es. Esto proporciona una vista de mil pies de dónde encajará el nuevo producto en la cartera de API existente de PayPal.

El equipo de diseño central revisa esta propuesta, asegurándose de que corresponda a una o más de las capacidades comerciales de la organización (como se estableció anteriormente). Lo que es igualmente importante, el equipo también comprueba si la funcionalidad se superpone con las API existentes.

Si todo cuadra, el equipo envía cualquier comentario y crea un nuevo repositorio para el proyecto. Luego, la API pasa a la siguiente etapa.


2. Diseño

Esta siguiente fase, la fase de diseño , implica desarrollar la nueva API utilizando la especificación OpenAPI. La especificación cubre casi todo, incluidos URI, parámetros, respuestas de muestra y más.

La especificación completa se remonta al equipo de diseño central de PayPal, donde se compara con los estándares de diseño de API del marco de gobierno. Después de abordar cualquier problema, la API entra en desarrollo.


3. Desarrollar

A continuación, el equipo de desarrollo comienza a construir la API de acuerdo con la especificación aprobada. Aquí es donde se hacen evidentes los descuidos, como los casos de error imprevistos. Como resultado, es casi imprescindible repetir la especificación original.

Es importante destacar que no todos los estándares de diseño de PayPal se habrán tenido en cuenta en la especificación. Como resultado, los problemas de diseño no definidos (como cómo se registra el tráfico internamente) se tratan en esta etapa.

Una vez que se realiza el desarrollo, la API pasa por una serie de pruebas funcionales, que garantizan que la implementación sea idéntica al contrato, es decir, la especificación. Después de corregir los errores, las API pasan a la última etapa.


4. Externalizar

Por último, pero no menos importante, el prototipo de API se externaliza. Al igual que en la fase de desarrollo, ahora se crean ciertas características de API que están cubiertas por los estándares de diseño de la organización, pero no la especificación.

Se implementan medidas de seguridad como autorización y limitación de velocidad ; Se crean los SDK y se escribe la documentación para desarrolladores. Todas estas áreas son revisadas por el equipo de diseño central para verificar el cumplimiento, ¡y la API está lista para funcionar!


Una nota sobre la escala

Vale la pena tener en cuenta que el proceso que explica Jayadeba gira en torno a un equipo de diseño de API centralizado. Admite que este equipo central se convirtió rápidamente en un cuello de botella en PayPal, a medida que el programa API escalaba.

La solución fue capacitar a los propietarios de productos para que revisaran el trabajo de su equipo de desarrollo frente a los criterios de gobierno de toda la organización. El equipo de diseño de API central seguía siendo responsable de desarrollar los criterios de gobernanza, pero ya no tenía la tarea de revisar todas y cada una de las API.

Pensamientos finales

La gobernanza de API implica más que crear un conjunto de estándares de diseño. De hecho, una parte importante de cualquier programa de gobierno es un proceso hermético para garantizar que se sigan realmente los estándares de diseño. El proceso de cuatro etapas de PayPal para la creación de API (definir, diseñar, desarrollar y externalizar) se vincula con el programa de gobierno en cada paso, lo que garantiza una cartera coherente y organizada de API de calidad.

Publicar un comentario

0 Comentarios