Want to make creations as awesome as this one?

Transcript

pruebas en ambientesde producción

Las pruebas de aceptación en producción son una forma de verificar que el software funciona correctamente en el entorno real donde será utilizado por los usuarios. Estas pruebas se realizan después de que el software ha pasado por todas las etapas de desarrollo y pruebas en otros entornos. El objetivo es asegurarse de que el software cumpla con los requisitos y expectativas antes de ser lanzado a todos los usuarios.  

Resumen

Conceptos Básicos: 

  • Definición: Validación del software en el entorno real de uso. 
  • Usos: Asegurar la funcionalidad y el rendimiento en condiciones reales. 
  • Aplicaciones: Implementar técnicas como pruebas canarias, pruebas A/B y pruebas en sombra. 

Ejemplo:

Si una empresa lanza una nueva característica en su aplicación, puede desplegarla solo a un pequeño grupo de usuarios primero (pruebas canarias) para ver cómo funciona antes de hacerla disponible para todos. 

Monitoreo Continuo 

El monitoreo continuo implica supervisar constantemente el rendimiento y la salud del software en producción. Esta práctica permite detectar y solucionar problemas rápidamente, asegurando que el software funcione de manera óptima en todo momento. El monitoreo continuo es esencial para mantener la estabilidad y disponibilidad del software. 

Subtema 6.2

Conceptos Básicos: 

  • Definición: Observación constante del rendimiento del software. 
  • Usos: Detectar problemas y optimizar el rendimiento en tiempo real. 
  • Aplicaciones: Utilizar herramientas como Prometheus, Grafana y New Relic para recopilar y analizar datos. 

Ejemplo:

Una tienda en línea usa monitoreo continuo para asegurarse de que su sitio web no se caiga durante una gran venta. Si el monitoreo detecta un problema, los técnicos pueden arreglarlo rápidamente para evitar que los clientes tengan una mala experiencia. 

Prácticas de Resiliencia

Las prácticas de resiliencia en TI son estrategias para asegurarse de que los sistemas puedan resistir y recuperarse rápidamente de fallos o interrupciones. Estas prácticas son cruciales para mantener la continuidad del servicio y minimizar el impacto de cualquier problema. La resiliencia incluye técnicas como la tolerancia a fallos, el diseño para la recuperación y las pruebas de caos. 

Subtema 6.3

Conceptos Básicos: 

  • Definición: Estrategias para preparar y recuperarse de fallos. 
  • Usos: Mantener la operación continua de los sistemas. 
  • Aplicaciones: Implementar redundancias, hacer backups regulares y realizar pruebas de fallos simulados. 

Ejemplo:

Un servicio de streaming de video usa redundancias, como tener múltiples servidores, para asegurarse de que, si uno falla, los otros pueden manejar la carga y mantener el servicio en funcionamiento sin interrupciones.

Referencia

Chaos Engineering". (2021). Retrieved from [https://principlesofchaos.org/]  Allspaw, J. (2010). The Art of Capacity Planning: Scaling Web Resources in the Cloud. O'Reilly Media.  Forsgren, N., Humble, J., & Kim, G. (2018). Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations. IT Revolution Press.  Humble, J., & Farley, D. (2010). Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Professional.  Kim, G., Humble, J., Debois, P., & Willis, J. (2016). The DevOps Handbook: How to Create World-Class Agility, Reliability, & Security in Technology Organizations. IT Revolution Press. Kim, G., Humble, J., Debois, P., & Willis, J. (2016). The DevOps Handbook: How to Create World-Class Agility, Reliability, & Security in Technology Organizations. IT Revolution Press.  Turnbull, J. (2014). The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win. IT Revolution Press.