AWS Application Composer

Herramienta de desarrollo que permite diseñar plantillas CloudFormation y SAM mediante operaciones de arrastrar y soltar en un lienzo visual, con sincronización bidireccional en tiempo real con el código IaC

Descripción general

AWS Application Composer es una herramienta para diseñar visualmente la arquitectura de aplicaciones serverless. Basta con arrastrar y soltar recursos como Lambda, DynamoDB, S3 y API Gateway en el lienzo y trazar líneas de conexión entre ellos para que se generen automáticamente las políticas IAM y variables de entorno necesarias. La arquitectura diseñada se genera en tiempo real como plantilla CloudFormation o SAM, y a la inversa, al editar la plantilla en un editor de texto, el lienzo se actualiza inmediatamente, siendo la sincronización bidireccional su característica distintiva. También se ofrece como extensión de VS Code, donde basta con abrir un archivo de plantilla en el entorno de desarrollo local para que se inicie el editor visual.

Lienzo visual y conexión de recursos

El lienzo de Application Composer muestra los recursos AWS en formato de tarjetas y define las dependencias entre recursos conectándolos con líneas. Por ejemplo, al conectar API Gateway con Lambda, se añaden automáticamente la definición de ruta de la API y la sección Events de Lambda en la plantilla. Al conectar Lambda con DynamoDB, se otorgan automáticamente la variable de entorno con el nombre de la tabla y la política IAM de lectura/escritura. Este cableado automático reduce significativamente el esfuerzo de escribir manualmente el JSON de políticas IAM. Cada tarjeta de recurso tiene un panel de propiedades donde se pueden configurar en formato de formulario el runtime y tamaño de memoria de Lambda, la partition key de DynamoDB, etc. La función de grupos permite agrupar recursos por unidad de microservicio para organizarlos visualmente. El lienzo también puede usarse en modo solo lectura, sirviendo como documentación para comprender la estructura de plantillas existentes. Es efectivo para explicar la arquitectura a miembros del equipo o compartir la visión general durante revisiones.

Sincronización bidireccional con plantillas IaC

La característica principal de Application Composer es la sincronización bidireccional entre la representación visual y el código de la plantilla. Al añadir o modificar recursos en el lienzo, la plantilla YAML correspondiente se actualiza en tiempo real. A la inversa, al editar directamente el archivo de plantilla en un editor de texto, el layout del lienzo se adapta inmediatamente. Este mecanismo permite un flujo de trabajo natural donde se diseña la estructura general con operaciones visuales y luego se ajustan los detalles con texto. Las plantillas generadas son plantillas SAM estándar, desplegables directamente con sam build o sam deploy. Las funciones intrínsecas de CloudFormation (!Ref, !Sub, !GetAtt) también se visualizan como líneas de conexión en el lienzo, permitiendo comprender intuitivamente las relaciones de referencia de la plantilla. Al importar plantillas grandes existentes, Application Composer analiza las dependencias entre recursos y genera automáticamente el layout. Incluso plantillas de cientos de líneas permiten verificar la estructura completa de un vistazo, siendo especialmente potente en escenarios de traspaso o auditoría.

Extensión VS Code e integración con desarrollo local

Application Composer se ofrece como extensión de VS Code, mostrando un lienzo visual dentro del editor al abrir un archivo de plantilla SAM en el entorno local. No es necesario cambiar a la consola AWS en el navegador, permitiendo ir y venir sin interrupciones entre codificación y diseño de arquitectura. Con la extensión VS Code, el lienzo se actualiza al guardar el archivo de plantilla, integrándose naturalmente con el control de versiones Git. La integración con SAM CLI permite un flujo completo donde se prueba localmente la arquitectura diseñada en el lienzo con sam local invoke y, tras verificar el funcionamiento, se despliega en la nube con sam deploy. Como patrón de uso práctico, es eficiente ensamblar rápidamente un prototipo en el lienzo al inicio de un nuevo proyecto, pasar por una revisión de equipo y luego refinar la plantilla. Los errores de sintaxis de la plantilla se resaltan visualmente en el lienzo, facilitando la detección de problemas antes del despliegue.

共有するXB!