Como o Chrome prepara atualizações para bilhões de usuários

Nora O'Neill
Nora O'Neill

Lançamos uma nova versão do Chrome todos os meses para garantir que bilhões de usuários e empresas no mundo todo tenham os recursos mais recentes, atualizações de segurança e melhorias de desempenho. Agora, podemos fazer melhorias e corrigir problemas mais rápido do que nunca com um ciclo de lançamento mais rápido. Isso significa que você receberá as atualizações mais recentes com ainda mais frequência.

Conversamos com os gerentes de programa técnico Ben Henry, Krishna Govind, Harry Souders, Srinivas Sista e Brandon Heenan, da equipe de lançamento do Chrome, para saber como eles se coordenam com as equipes do Google em todo o mundo para garantir que cada lançamento ocorra sem problemas.

P: Como sua equipe se prepara para cada lançamento do Chrome?

Ben: Para começar, nossa equipe é composta por sete pessoas que trabalham em tempo integral em duas grandes geografias. Acreditamos que a preparação para um lançamento é como o cronograma de um trem. Usamos quatro canais de lançamento (Canary, Dev, Beta e Stable) na preparação para um lançamento importante do Chrome. Conforme avançamos no processo, cada canal tem mais usuários do Chrome. Isso nos permite receber feedback sobre a estabilidade e o desempenho do Chrome para descobrir problemas de qualidade no produto o mais rápido possível. Prestamos muita atenção ao que usuários e desenvolvedores dizem nas mídias sociais, artigos de imprensa e relatórios de bugs para ajudar a detectar qualquer coisa que estejamos perdendo. Nossa equipe de engenheiros e gerentes de produto pode usar esse feedback para fazer melhorias nos recursos.

Em seguida, fazemos várias rodadas de testes para detectar problemas de qualidade, primeiro usando sistemas automatizados que são executados continuamente e depois com equipes de teste que encontram bugs manualmente.

P: Você pode compartilhar um exemplo recente de feedback de um desenvolvedor externo que foi importante para garantir o envio da melhor versão possível?

Srinivas:sempre contamos com nossos desenvolvedores da Web para enviar feedback e as primeiras formas de adoção de recursos, como novas APIs ou mudanças nas especificações do Chrome no iOS. Com nossa mudança mais importante de dois dígitos para três dígitos (99 para 100), compartilhamos diretrizes com desenvolvedores Web para testar as coisas antes da mudança e garantir que o feedback deles tenha sido incorporado e, mais importante, não corromper os sites. Isso nos ajudou a lançar a mudança sem problemas graves para o lançamento do M100.

P: O que acontece se você encontrar um bug ou problema de segurança durante o lançamento de uma atualização do Chrome?

Krishna: garantimos o lançamento gradual de novas versões do Chrome para os usuários. Os lançamentos não são enviados imediatamente para 100% dos usuários. Quando encontramos um bug crítico, interrompemos o lançamento das versões afetadas para limitar os efeitos dele. Em seguida, coordenamos com equipes do Chrome em todo o mundo para desenvolver uma correção e aplicar patches ao Chrome da forma mais rápida e segura possível. Depois que essa correção for verificada, criaremos uma nova versão do Chrome e reiniciaremos o processo de implementação. A maioria dos usuários nunca vai ter esse problema, porque ele foi corrigido antes do lançamento da versão. Para problemas de segurança, seguimos a política de Divulgação do Projeto Zero. Portanto, quando há vulnerabilidades sendo exploradas ativamente, temos o objetivo de lançar essa correção para os usuários do canal Stable em até sete dias.

P: Há algum trabalho extra para garantir que as versões do Chrome estejam prontas para as empresas?

Brandon:Um dos nossos principais objetivos é garantir que o Chrome continue sendo uma plataforma estável e confiável para as muitas empresas que dependem de nós. Isso significa oferecer às empresas acesso às melhores e mais recentes funcionalidades que elas querem que seus funcionários aproveitem e, ao mesmo tempo, ajudá-las a evitar possíveis interrupções no trabalho. Como as necessidades dos negócios são únicas e qualquer período de inatividade pode prejudicar as empresas, o Chrome tem orientações específicas para nossas equipes de engenharia e produtos. Além disso, analisamos cada lançamento de recurso para garantir que cada versão do Chrome seja "otimizada para empresas". Isso inclui avisar as empresas sobre mudanças importantes nas notas da versão do Chrome Enterprise. Para ter mais tranquilidade, os administradores de TI podem controlar muitas mudanças com uma política corporativa. Portanto, se eles preferirem fazer testes internos ou desativar um novo recurso, poderão fazer exatamente isso. Para evitar problemas inesperados, temos uma infraestrutura de testes dedicada, projetada para simular ambientes corporativos, como a execução do Chrome em dispositivos associados ao domínio do Active Directory, que usamos para testar todas as versões do Chrome.

O Chrome também oferece uma série de controles de atualização para escolas e empresas. Os administradores podem controlar a versão específica do Chrome, reverter para versões mais antigas e aproveitar nosso canal de lançamento estável estendido com suporte. Leia os detalhes neste documento técnico. Os administradores que querem ter visibilidade total do status de atualização dos dispositivos podem usar o Relatório de versões incluído no Gerenciamento de nuvem do navegador Chrome.

P: Há alguma mudança que sua equipe queira fazer no futuro?

Harry: Estamos sempre buscando maneiras de melhorar o Chrome para nossos usuários e desenvolvedores, especialmente quando se trata de encurtar o ciclo de lançamento. Ao fazer isso, os usuários verão um Chrome mais estável com correções de bugs mais rápidas e novos recursos. Também sabemos que nossos engenheiros e gerentes de produto se beneficiam de uma velocidade maior de desenvolvimento devido ao desenvolvimento mais rápido de recursos, ciclos de iteração mais ágeis e maior integridade do código. Digamos que um gerente de produto deseja lançar um recurso para todos os usuários do Chrome. A conclusão do recurso pode levar até 16 semanas quando já estiverem na disponibilidade geral. Ao encurtar o ciclo de lançamento em apenas algumas semanas, podemos reduzir significativamente o tempo de lead para lançar um novo recurso.