Cómo Chrome prepara actualizaciones para miles de millones de usuarios

Nora O'Neill
Nora O'Neill

Cada mes, lanzamos una nueva versión de Chrome para asegurarnos de que nuestros miles de millones de usuarios y empresas en todo el mundo obtengan las funciones, las actualizaciones de seguridad y las mejoras de rendimiento más recientes. Ahora, podemos realizar mejoras y solucionar problemas más rápido que nunca con un ciclo de lanzamiento más rápido, lo que significa que recibirás las actualizaciones más recientes con más frecuencia.

Hablamos con los administradores de programas técnicos Ben Henry, Krishna Govind, Harry Souders, Srinivas Sista y Brandon Heenan del equipo de lanzamientos de Chrome para conocer cómo se coordinan con los equipos de Google de todo el mundo para garantizar que cada lanzamiento se realice sin problemas.

P. ¿Cómo se prepara tu equipo para cada lanzamiento de Chrome?

Ben: En primer lugar, nuestro equipo está formado por siete personas que trabajan a tiempo completo en dos regiones principales. Creemos que prepararse para un lanzamiento es como un horario de trenes. Usamos cuatro canales de versiones: Canary, para desarrolladores, beta y estable, para prepararnos para un lanzamiento importante de Chrome. A medida que avanzamos en el proceso, cada canal tiene más usuarios de Chrome. Esto nos permite obtener comentarios sobre la estabilidad y el rendimiento de Chrome con el objetivo de descubrir los problemas de calidad del producto lo antes posible. Prestamos especial atención a lo que los usuarios y desarrolladores dicen en las redes sociales, los artículos de prensa y los informes de errores para detectar cualquier problema que hayamos pasado por alto. Nuestro equipo de ingenieros y administradores de productos puede usar estos comentarios para realizar mejoras en las funciones.

Luego, realizamos varias rondas de pruebas para detectar cualquier problema de calidad, primero con sistemas automatizados que se ejecutan de forma continua y, luego, con equipos de prueba que encuentran errores de forma manual.

P. ¿Puedes compartir un ejemplo reciente de comentarios de un desarrollador externo que hayan sido valiosos para garantizar que hayas enviado la mejor versión posible?

Srinivas: Siempre dependemos de nuestros desarrolladores web para obtener comentarios y la adopción anticipada de funciones, como nuevas APIs o cambios en las especificaciones con Chrome en iOS. Con nuestro cambio importante de dos dígitos a tres (de 99 a 100), compartimos lineamientos con los desarrolladores web para probar todo antes del cambio real y asegurarnos de incorporar sus comentarios y, lo que es más importante, no dañar sus sitios. Esto nos ayudó a lanzar el cambio de forma correcta sin ningún problema importante para el lanzamiento de M100.

P. ¿Qué sucede si detectas un error o un problema de seguridad durante el lanzamiento de una actualización de Chrome?

Krishna: Nos aseguramos de lanzar gradualmente las nuevas versiones de Chrome a los usuarios. Las versiones nuevas no se envían de inmediato al 100% de los usuarios. Si encontramos un error crítico, detenemos el lanzamiento de las versiones afectadas para limitar sus efectos. Luego, nos coordinamos con los equipos de Chrome de todo el mundo para desarrollar una solución y aplicar parches a Chrome lo más rápido y seguro posible. Una vez que se verifique esta corrección, compilaremos una nueva versión de Chrome y volveremos a iniciar el proceso de lanzamiento. Al final del día, la mayoría de los usuarios nunca experimentarán el problema porque se habrá solucionado antes de que se lance la versión. En el caso de los problemas de seguridad, seguimos la política de Divulgación de Project Zero. Por lo tanto, cuando hay vulnerabilidades que se están explotando de forma activa en el mundo real, nuestro objetivo es lanzar la corrección para los usuarios de nuestro canal estable en un plazo de siete días.

P. ¿Se realiza algún trabajo adicional para asegurarse de que las versiones de Chrome estén listas para las empresas?

Brandon: Uno de nuestros principales objetivos es garantizar que Chrome siga siendo una plataforma estable y confiable para las muchas empresas que dependen de nosotros. Esto significa que les brindamos a las empresas acceso a las mejores y más recientes funciones que desean que sus empleados aprovechen, a la vez que las ayudamos a evitar posibles interrupciones en su trabajo. Debido a que las necesidades de las empresas son únicas y cualquier tiempo de inactividad puede perjudicarlas, Chrome tiene una guía específica para nuestros equipos de ingeniería y productos, y revisamos cada lanzamiento de funciones para garantizar que cada versión de Chrome sea "apta para empresas". Esto incluye informar a las empresas sobre los cambios importantes en nuestras notas de la versión de Chrome Enterprise. Además, para mayor tranquilidad, los administradores de TI pueden controlar muchos cambios con una política empresarial. Por lo tanto, si prefieren realizar pruebas internas o inhabilitar una función nueva, pueden hacerlo. Para evitar problemas inesperados, contamos con una infraestructura de pruebas dedicada diseñada para simular entornos empresariales (por ejemplo, ejecutar Chrome en dispositivos unidos a dominios de Active Directory) que usamos para probar todas las versiones de Chrome.

Chrome también proporciona una variedad de controles de actualización a las instituciones educativas y empresas. Los administradores pueden controlar la versión específica de Chrome, revertir a versiones anteriores y aprovechar nuestro canal de lanzamiento estable extendido con total compatibilidad. Puedes leer sobre los detalles en este documento técnico. Los administradores que quieran tener visibilidad total del estado de actualización de su flota pueden usar el Informe de versión incluido en la Administración en la nube para el navegador Chrome.

P. ¿Hay algún cambio que tu equipo quiera hacer en el futuro?

Harry: Siempre buscamos formas de mejorar Chrome para nuestros usuarios y desarrolladores, especialmente cuando se trata de acortar el ciclo de lanzamiento. De esta manera, los usuarios verán un Chrome más estable con correcciones de errores más rápidas y funciones nuevas. También sabemos que nuestros ingenieros y gerentes de producto se benefician de una mayor velocidad de desarrollo debido a que las funciones se desarrollan más rápido, los ciclos de iteración son más rápidos y el código es más saludable. Supongamos que un gerente de producto quiere lanzar una función para todos los usuarios de Chrome. La función puede tardar hasta 16 semanas desde que se "termina" hasta que está disponible para el público en general. Si acortamos el ciclo de lanzamiento solo un par de semanas, podemos reducir significativamente el tiempo de preparación para lanzar una función nueva.