何十億人ものユーザー向けに Chrome のアップデートを準備する方法

Nora O'Neill
Nora O'Neill

Google では、世界中の何十億人ものユーザーや企業に最新の機能、セキュリティ アップデート、パフォーマンス アップグレードを提供するため、Chrome の新しいバージョンを毎月リリースしています。そしてこのたび、リリース サイクルの短縮により、これまで以上に迅速な改善と問題修正が可能になりました。つまり、より頻繁に最新のアップデートを入手できます。

Chrome リリースチームのテクニカル プログラム マネージャーの Ben Henry、Krishna Govind、Harry Souders、Srinivas Sista、Brandon Heenan に、各リリースを円滑に進めるために世界中の Google チームをどのように調整しているかを詳しくお話を伺いました。

Q. 貴社のチームは Chrome の各リリースに向けてどのように準備していますか?

Ben: まず、私たちのチームは 2 つの主要地域でフルタイムで働く 7 人のスタッフで構成されています。私たちは、リリースの準備は列車のようなスケジュールのようなものだと考えています。Chrome マイルストーン リリースの準備には、Canary、Dev、Beta、Stable の 4 つのリリース チャンネルを使用しています。プロセスを進めていくと、各チャンネルに対応する Chrome ユーザー数が増えます。これにより、Google は Chrome の安定性やパフォーマンスに関するフィードバックを入手し、プロダクトの品質問題を早期に発見することができます。Google は、ソーシャル メディア、プレス記事、バグレポートなどを通してユーザーやデベロッパーの意見に細心の注意を払い、見落としている情報を発見できるようにしています。このフィードバックは、Google のエンジニアとプロダクト マネージャーのチームによって機能の改善に役立てられます。

その後、品質の問題を検出するために、継続的に稼働する自動システムを使用して、手動でバグを見つけるテストチームを使用してテストを数回繰り返します。

Q. 社外のデベロッパーから寄せられた最近のフィードバックで、可能な限り最良のバージョンを自信を持って提供するうえで役立った例を教えてください。

Srinivas: Google では、新しい API や iOS 版 Chrome の仕様変更といった機能に関するフィードバックや早期導入について、常にウェブ デベロッパーからご協力いただいています。主要なマイルストーンを 2 桁から 3 桁(99 から 100 へ)に変更し、実際の変更に先立ってテストを行うためのガイドラインをウェブ デベロッパーと共有し、皆様のフィードバックを反映し、さらに重要なこととして、サイトが壊れないようにしました。これにより、M100 のロールアウトにおいて大きな問題なく変更をロールアウトできました。

Q. Chrome アップデートの公開中にバグやセキュリティの問題が見つかった場合はどうなりますか?

Krishna: Chrome の新しいリリースは、段階的にユーザーにロールアウトしています。新しいリリースがすべてのユーザーにすぐに配信されるわけではありません。重大なバグが見つかった場合は、影響を抑えるため、影響を受けたバージョンのロールアウトを中止します。その後、世界中の Chrome チームと連携して修正プログラムを開発し、可能な限り迅速かつ安全に Chrome にパッチを適用しています。この修正が確認されると、Chrome の新しいバージョンがビルドされ、公開プロセスが再開されます。この問題は、リリースがユーザーに公開される前に修正されるため、ほとんどのユーザーはその問題が発生することはありません。セキュリティの問題については、プロジェクト ゼロ開示ポリシーが適用されます。そのため、実際に悪用されている脆弱性を発見した場合は、7 日以内に Stable チャンネルのユーザーに修正をリリースすることを目標としています。

Q. Chrome リリースをビジネス向けにリリースできるようにするための追加作業はありますか?

Brandon: 私たちの最も大きな目標の一つは、Chrome を頼りにしている多くの企業のために、Chrome が安定した信頼性の高いプラットフォームであり続けるようにすることです。これは、従業員が活用してほしい優れた最新機能に企業がアクセスできるようにすると同時に、業務の中断を回避できることを意味します。ビジネスニーズは一様であり、ダウンタイムが発生すると企業に悪影響を及ぼす可能性があるため、Chrome にはエンジニアリング チームとプロダクト チーム向けの具体的なガイダンスがあります。また、すべての Chrome リリースが「エンタープライズ フレンドリー」であることを確認するために、Chrome では各機能のリリースを見直しています。これには、Chrome Enterprise リリースノートで重要な変更について企業に事前にお知らせすることも含まれます。さらに、IT 管理者はエンタープライズ ポリシーを使用して多くの変更を管理できます。そのため、内部テストを行う場合や、新機能をオプトアウトする場合は、そのように行うことができます。予期しない問題の発生を防ぐため、エンタープライズ環境をシミュレートするように設計された専用のテスト インフラストラクチャ(Active Directory ドメインに参加しているデバイスでの Chrome の実行など)を使用して、すべての Chrome リリースをテストしています。

Chrome には、学校や企業向けのさまざまな更新管理機能も用意されています。管理者は、Chrome の特定のバージョンを管理したり、古いバージョンにロールバックしたり、完全にサポートされている Extended Stable リリース チャンネルを活用したりすることができます。詳しくは、こちらの技術ドキュメントをご覧ください。フリートの更新ステータスを完全に把握したい場合は、Chrome ブラウザ クラウド管理に含まれるバージョン レポートを使用できます。

Q. 今後、御社のチームが取り組みたい変更はありますか?

Harry: Google は、ユーザーとデベロッパー向けの Chrome を改善する方法を常に模索しています。特に、リリース サイクルの短縮に関して考えています。これにより、バグ修正が迅速に行われ、新機能が追加された Chrome の安定性が向上します。また、機能開発の迅速化、イテレーション サイクルの高速化、コードの健全性の向上により、開発速度が上がることにより、エンジニアとプロダクト マネージャーにもメリットがあります。たとえば、プロダクト マネージャーがすべての Chrome ユーザーに機能のリリースを予定しているとします。この機能が「完了」してから最大で 16 週間かかることがあります。リリースするまで待つ必要はありませんリリース サイクルをわずか数週間短縮することで、新機能をリリースするリードタイムを大幅に短縮できます。