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

Nora O'Neill
Nora O'Neill

Todos los meses, lanzamos una nueva versión de Chrome para garantizar que nuestros miles de millones de usuarios y empresas de todo el mundo obtengan las funciones, actualizaciones de seguridad y mejoras de rendimiento más recientes. Ahora podemos hacer mejoras y solucionar problemas más rápido que nunca, gracias a 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 técnicos del programa Ben Henry, Krishna Govind, Harry Souders, Srinivas Sista y Brandon Heenan del equipo de lanzamientos de Chrome para obtener información detallada sobre cómo se coordinan con los equipos de Google de todo el mundo a fin de garantizar que cada lanzamiento se lleve a cabo sin problemas.

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

Ben: En primer lugar, nuestro equipo está formado por siete personas que trabajan a tiempo completo en dos geografías principales. Creemos que prepararse para el lanzamiento es como un cronograma de entrenamiento. Usamos cuatro canales de versiones (Canary, para desarrolladores, Beta y estable) a fin de 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 mucha atención a lo que dicen los usuarios y desarrolladores en las redes sociales, informes de errores y artículos de prensa para detectar lo que nos falten. Nuestro equipo de ingenieros y gerentes de producto puede utilizar estos comentarios para mejorar las funciones.

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

P. ¿Puedes compartir un ejemplo reciente de comentarios de un desarrollador externo que haya sido valioso para garantizar que enviaste la mejor versión posible?

Srinivas: Siempre confiamos en nuestros desarrolladores web para obtener comentarios y la adopción temprana de funciones, como las nuevas API o los cambios de especificaciones con Chrome en iOS. Con el cambio importante de dos dígitos a tres dígitos (de 99 a 100), compartimos lineamientos con los desarrolladores web para que prueben distintas opciones antes del cambio real a fin de asegurarnos de incorporar sus comentarios y, lo que es más importante, para que no se dañen sus sitios. Esto nos ayudó a lanzar con éxito el cambio sin problemas importantes para la implementación de M100.

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

Krishna: Nos aseguramos de lanzar gradualmente versiones nuevas de Chrome para los usuarios. Los nuevos lanzamientos 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 de la manera más rápida y segura posible. Una vez que se verifica esta corrección, compilamos una nueva versión de Chrome y volvemos a iniciar el proceso de lanzamiento. Al final del día, la mayoría de los usuarios nunca experimentarán este problema porque se solucionará antes de que se lance la versión. Para problemas de seguridad, seguimos la política de Divulgación cero de Project. Por lo tanto, cuando hay vulnerabilidades que se aprovechan activamente en un entorno natural, tenemos el objetivo de lanzar esa solución para los usuarios de nuestro canal estable en un plazo de siete días.

P. ¿Hay algún trabajo adicional que se desempeñe a fin de garantizar que las versiones de Chrome estén listas para las empresas?

Brandon: Uno de nuestros objetivos principales es garantizar que Chrome siga siendo una plataforma estable y confiable para todas las empresas que dependen de nosotros. Esto significa brindar a las empresas acceso a las mejores y más recientes funciones que desean que sus empleados aprovechen y, al mismo tiempo, las ayuden a evitar posibles interrupciones en su trabajo. Dado que las necesidades de las empresas son únicas y que el tiempo de inactividad puede perjudicarlas, Chrome ofrece orientación específica para nuestros equipos de ingeniería y productos. Además, revisamos el lanzamiento de todas las funciones para asegurarnos de que cada versión de Chrome esté "optimizada para las empresas". Esto incluye avisarles a las empresas sobre cambios importantes en nuestras Notas de la versión de Chrome Enterprise. Y para mayor tranquilidad, los administradores de TI pueden controlar muchos cambios con una política empresarial. Por lo tanto, si prefieren hacer pruebas internas o inhabilitar una función nueva, pueden hacerlo. A fin de evitar problemas inesperados, tenemos una infraestructura de pruebas dedicada diseñada para simular entornos empresariales (por ejemplo, ejecutar Chrome en dispositivos unidos al dominio de Active Directory) que usamos para probar todas las versiones de Chrome.

Chrome también proporciona una variedad de controles de actualización para escuelas y empresas. Los administradores pueden controlar la versión específica de Chrome, revertir a versiones anteriores y aprovechar nuestro canal de versiones estable extendido totalmente compatible. Puedes leer más detalles en este documento técnico. Los administradores que quieran tener visibilidad completa del estado de la actualización de su flota pueden usar el Informe de versiones incluido en la Administración en la nube para el navegador Chrome.

P. ¿Hay algún cambio que tu equipo desee realizar en el futuro?

Harry: Siempre buscamos nuevas formas de mejorar Chrome para nuestros usuarios y desarrolladores, especialmente si se trata de acortar el ciclo de lanzamiento. Al hacerlo, los usuarios verán una versión de 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 un desarrollo más rápido de las funciones, ciclos de iteración y un mejor estado del código. Supongamos que un gerente de producto desea lanzar una función para todos los usuarios de Chrome. Pueden transcurrir hasta 16 semanas desde que la función está "finalizada" hasta que está disponible para el público general. Si acortamos el ciclo de lanzamiento en solo un par de semanas, podemos reducir significativamente el plazo de entrega para lanzar una función nueva.