- 1

Transición de programador empírico a arquitecto de software
02:46 - 2

Análisis de licitaciones con inteligencia artificial
08:48 - 3

Monorepositorios como herramienta de gestión de código fuente
13:00 - 4

Reglas de control de versiones en monorepositorio con trunk-based
05:58 - 5

Behavior Driven Development para alinear equipos técnicos y de negocio
09:25 - 6

Notación estándar C4 para diagramas de arquitectura
08:00 - 7

Generadores de sitios estáticos para documentación de proyectos
04:58 - 8

Uso de herramientas de IA para mejorar arquitectura de software
05:05 quiz de Creando Entornos de Software Saludables
Uso de herramientas de IA para mejorar arquitectura de software
Clase 8 de 29 • Curso de Arquitectura de Software Aplicada
Contenido del curso
- 9

Estructura del archivo Architecture.md para proyectos de software
12:00 - 10

Domain-driven design para sistemas de comercio exterior
06:50 - 11

Técnicas pre-mortem y cinco why para prevenir fallos en sistemas
03:58 - 12

Técnicas de conversación e intervención directa en arquitectura
02:49 quiz de Siguiendo una Arquitectura Limpia
- 19

Diferencias entre mensajes y eventos en arquitectura de servicios
03:36 - 20

Patrón productor consumidor vs fan-in y fan-out en microservicios
03:11 - 21

Manejo de excepciones en el patrón productor-consumidor
02:48 - 22

Patrón comparing consumers para procesamiento en tiempo real
02:28 - 23

Patrón Process Manager para integrar actividades humanas y sistemas
02:33 quiz de Patrones de integración
- 24

Patrones de persistencia: durable state vs event sourcing
08:15 - 25

Máquinas de estado finito en la capa de presentación de software
04:52 - 26

Técnicas SAST, DAST y pen testing para seguridad en software
01:36 - 27

Funciones fitness para evaluar arquitecturas de software
04:20 - 28

Observabilidad en sistemas con OpenTelemetry e ingeniería del caos
04:45
Las herramientas de inteligencia artificial están transformando la arquitectura de software y el desarrollo profesional. Su integración facilita la comprensión, la colaboración y la toma de decisiones, apoyando tanto a equipos como a individuos en la gestión eficiente y segura de proyectos complejos.
¿Cómo usar herramientas de inteligencia artificial para mejorar la arquitectura de software?
Incorporar AI en la arquitectura permite automatizar el análisis de código y fortalecer las prácticas de desarrollo. Puedes valerte de agentes autónomos para revisar calidad, seguridad y estilo en los proyectos. Por ejemplo, en un proyecto con el Banco Interamericano de Desarrollo se utilizó un agente que inspecciona el código fuente, sugiere mejoras y valida cumplimiento de normas específicas. Esta supervisión ayuda a prevenir errores y a mantener estándares en todos los procesos.
¿Qué rol tienen los agentes de AI como Code Rabbit?
Herramientas como Code Rabbit agregan valor al analizar pull requests y ofrecer comentarios útiles. Estos agentes realizan un walk through, guiando la revisión y resumiendo los cambios para facilitar su lectura lineal. Además, detectan problemas de seguridad, de notación y estilo, e incluso pueden automatizar ciertas correcciones. Los agentes pueden emplear validaciones estáticas y comprobaciones personalizadas, y superar las funciones tradicionales de los linters y formateadores comunes.
¿Qué opciones existen para integrar AI en el ciclo de desarrollo?
El mercado ofrece cada día más herramientas inteligentes para la integración de AI. Puedes simular entrevistas con LLMs (modelos de lenguaje grandes), planificar reuniones o recibir respuestas técnicas automatizadas. También es posible emplear LRMs, que son LLMs con razonamiento avanzado, para profundizar en investigaciones o necesidades específicas, como la facturación electrónica o la gestión de exportaciones. Adicionalmente, soluciones como n8n posibilitan ejecutar flujos de trabajo automatizados donde los LLMs y LRMs cumplen tareas definidas en múltiples fases del desarrollo.
¿Qué precauciones tomar al usar inteligencia artificial en arquitectura de software?
Es crucial cuidar la seguridad y la propiedad intelectual cuando se integran agentes inteligentes. Revisa siempre los productos generados por herramientas autónomas. Considera la protección de datos y el cumplimiento de normativas al seleccionar instrumentos para tu proceso. El uso de AI va más allá del software: también puede ayudar en otras industrias, por ejemplo, analizando videos o imágenes para sugerir mejoras, como en el caso de la natación y el análisis de la técnica deportiva.
¿Cuáles son las ventajas y aplicaciones de la inteligencia artificial en otros contextos?
La inteligencia artificial puede ejecutarse de manera completamente autónoma, permitiendo describir tareas específicas y obtener resultados concretos como pull requests o fragmentos de código listos para revisión. Además, resulta relevante para interpretar datos, automatizar flujos y enriquecer la colaboración entre equipos.
¿Tienes herramientas de AI que consideres útiles para la arquitectura de software? ¡Compártelas y fomenta el aprendizaje colectivo!