Si eres programador o programadora, seguramente has escuchado los términos: staging, integración, pruebas, desarrollo y producción. ¿Pero sabes realmente que significan? se trata de los entornos de desarrollo de software que representan las diferentes etapas por las que va avanzando un software mientras se va desarrollando hasta salir a su versión final.
Cada empresa o equipo puede definir sus propios entornos, pero en este blog te explicaré los más comunes.
Entornos de desarrollo de software
1. Entorno de desarrollo
Se trata de la computadora local en la que trabaja cada programador. Cada desarrollador tiene una copia del proyecto en su computador, es decir, un clon del repositorio en dónde hacen los cambios necesarios para luego enviarlos al repositorio central.
2. Entorno de integración
En esta etapa, los cambios de todos los programadores tienen que unirse sin que se rompa el software. Para eso, existen pruebas automatizadas que evitan que los cambios que generen conflictos sean aprobados.
3. Entornos de pruebas
Ahora, en este entorno, se prueba el software como si fueras un usuario. Es decir, interactúas con la app para ver si funciona como debería. También existe un software que permite automatizar estas pruebas.
4. Entorno staging o pre-producción
El entorno staging es prácticamente una copia del entorno de producción. El objetivo es probar que todo funciones correctamente antes de mandar el software a los usuarios finales. Sin embargo, hay que tener en cuenta que es muy difícil replicar producción porque allí hay tráfico y usuarios reales, publicaciones, entre otras cosas.
5. Entorno de producción
Finalmente, en este entorno se publican los cambios y los usuarios pueden verlos. Por ejemplo, si en EDteam añadiéramos una nueva característica a la plataforma, luego de meses de pasar por las pruebas y que llegue hasta los usuarios, es que decimos que está en producción.
P.D: Se le suele llamar: salir a producción, deployment o hacer deploy.
Si quieres garantizar la calidad de tu software, es mejor que comiences a pasar por todas estas etapas. Además, existe algo llamado CI/CD (integración continua o despliegue continuo) que permite pasar por todas las etapas de manera automatizada.
¿Quieres saber más del mundo de la tecnología y del desarrollo de software? entonces visita ahora mismo [ed.team/cursos] (https://ed.team/cursos) y comienza cualquiera de nuestros cursos y carreras gratis. ¡No postergues más tu educación y asegura un 2022 lleno de éxitos!