Trucos de memoria
Frases y analogías para no olvidar el orden de cada diagrama ni las listas de la presentación. Léelas en voz alta.
- Ciclo infinitoDiap. 14
Para Construir Buen Trabajo Rápido: Despliega, Opera y Monitorea
Plan → Code → Build → Test → Release → Deploy → Operate → Monitor
PLAN→CODE→BUILD→TEST→RELEASE→DEPLOY→OPERATE→MONITORCada inicial es una fase, en orden. Al terminar la frase vuelves al principio: PLAN (el ∞ nunca acaba).
Practicarlo - Pipeline de 8 pasosDiap. 7
Cometo y disparo · construyo y aviso · pruebo y aviso · ensayo y estreno
Commit → Trigger → Build → Notify → Run tests → Notify → Staging → Production
Commit→Trigger→Build→Notify→Tests→Notify→Staging→ProductionAgrupa (chunking) en 4 parejas. Tras construir y tras probar siempre hay un «aviso» (notify). Staging = ensayo general del teatro; production = estreno con público.
Practicarlo - Las 5 etapasDiap. 12
De Aquí Iremos Volando a Producción
Desarrollo → Test aplicación → Test integración → Test validación → Producción
Desarrollo→Aplicación→Integración→Validación→ProducciónLos tres tests van de lo pequeño a lo grande: la aplicación, luego cómo se integra y al final la validación del todo.
Practicarlo - Flujo básico de CIDiap. 5
¡Con Esto Vas Mejorando!
Desarrollador → Git push → Pipeline CI → Compilar → Ejecutar pruebas → Validar código → Modificar resultado
Compilar→Ejecutar pruebas→Validar código→Modificar resultadoPrimero el desarrollador hace push y eso dispara el pipeline; dentro del pipeline: Compilar, Ejecutar pruebas, Validar código, Modificar resultado.
Practicarlo - Proceso automático de la CIDiap. 4
La CI lo «CEVE» todo
Compila → Ejecuta pruebas → Verifica errores
Compila→Ejecuta→VerificaSuena a «se ve»: la CI ve los errores temprano. Compila, Ejecuta pruebas automáticas, Verifica que no haya errores.
Practicarlo - ¿Para qué sirve la CI?Diap. 5
Evita conflictos · Mejora la calidad · Reduce el tiempo
Conflictos · Calidad · Tiempo
Evita→Mejora→ReduceTres verbos para el propósito de detectar errores lo antes posible: evitar conflictos entre equipos, mejorar la calidad, reducir el tiempo de lanzar funcionalidades.
Practicarlo - 5 beneficios de la CIDiap. 6
D.A. + 3M
Detección · Calidad · Tiempo · Automatización · Colaboración
Detección temprana y Automatización, más las tres M: Mayor calidad, Menor tiempo, Mejor colaboración. Total: 5.
Practicarlo - 6 beneficios del pipelineDiap. 8
Las 6 preguntas del jefe: ¿cuánto tarda? ¿cuánto cuesta? ¿qué opinan? ¿hay fallas? ¿se cae? ¿y el equipo?
Tiempo · Costos · Retroalimentación · Detección · Inactividad · Colaboración
Tarda = tiempo de implementación reducido · Cuesta = disminución de costos · Opinan = bucles de retroalimentación · Fallas = detección temprana · Se cae = menos inactividad y más confiabilidad · Equipo = colaboración e integración del sistema.
Practicarlo - Las 3 metodologíasDiap. 9
Integro → Entrego → Despliego
Integración → Entrega → Despliegue
Integro→Entrego→DespliegoRiman en -o. Integro: ¿funciona con lo existente? Entrego: ¿tengo una versión lista? Despliego: ¿la publico sola?
Practicarlo - Entrega vs. despliegue continuoDiap. 2 y 11
Pizza en el mostrador vs. pizza en tu puerta
¿Aprobación humana o automático?
Entrega (distribución) continua: la pizza está lista, pero una persona decide cuándo llevarla (aprobación humana). Despliegue (implementación) continuo: llega sola a tu puerta (automático).
Practicarlo - Tipos de pruebasDiap. 10
Para no «HUIR» de los bugs
Unitarias · Integración · Regresión
Unitarias→Integración→RegresiónLa H es muda: Unitarias (una pieza), Integración (piezas juntas), Regresión (lo viejo sigue funcionando).
Practicarlo - Las 4 etapasDiap. 10–11
Cocino, Pruebo, Empaco, Despacho
Construir → Prueba → Entregar → Desplegar
Construir→Prueba→Entregar→DesplegarComo un restaurante: cocinar (construir), probar el sabor (prueba), empacar el pedido (entregar), despacharlo al cliente (desplegar).
Practicarlo - Importancia de la CI/CDDiap. 3
Disminuye, Aumenta, Optimiza (DAO)
Complejidad · Eficiencia · Flujos
Cuando la app crece: disminuye la complejidad, aumenta la eficiencia y optimiza los flujos de trabajo.
Practicarlo - Herramientas de la diapositiva 13Diap. 13
El mayordomo, el obrero y el de casa
GitHub Actions · Jenkins · Travis CI
Jenkins (logo de mayordomo): potente y extensible, pero hay que configurarlo más. Travis (obrero con casco): fácil, ideal para open-source. GitHub Actions: vive dentro de GitHub y habla YAML.
Practicarlo - Herramientas del ∞Diap. 14
Los colores de las herramientas coinciden con los de su fase
Cada herramienta con su fase
CODE (azul): Confluence, Jira, Git · BUILD (verde): sbt, Maven · TEST (naranja): Selenium, JUnit · RELEASE (verde): Jenkins, Codeship · DEPLOY (naranja): DC/OS, Docker, AWS · OPERATE (rojo): Chef, Ansible, Kubernetes · MONITOR (azul): Nagios, Splunk, Datadog.
Practicarlo - CI vs. CD en una líneaDiap. 2
CI = integrar + comprobar · CD = entregar / desplegar
La idea general
La CI se pregunta si el código nuevo funciona con el existente; la CD se encarga de que el software validado llegue (con o sin aprobación humana) a producción.
Practicarlo
- Acrósticos: Una frase cuyas iniciales son los pasos en orden.
- Agrupar (chunking): Muchos pasos se recuerdan mejor en grupos pequeños.
- Analogías: Teatro, pizza, mudanza, cinturón de seguridad: conectan lo nuevo con lo que ya sabes.
- Recuperación activa: Decirlo de memoria antes de mirar (quiz, tarjetas, modos Recordar y Ordenar).
- Retroalimentación inmediata: Al fallar ves qué está mal y lo vuelves a intentar.
- Repetición espaciada: Repasar justo antes de olvidar (cajas Leitner).
- Doble codificación: Palabra + imagen: cada paso tiene color e ícono en los diagramas.