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

Nora O'Neill 氏
Nora O'Neill

Google は毎月、世界中のユーザーや企業に最新の機能、セキュリティ アップデート、パフォーマンス アップグレードを確実にご利用いただけるよう、新しいバージョンの Chrome をリリースしています。また、リリース サイクルが短縮され、これまで以上にスピーディな改善や問題解決ができるようになりました。つまり、最新アップデートをいっそう頻繁に受け取ることができます。

Chrome リリース チームのテクニカル プログラム マネージャーである Ben Henry、Krishna Govind、Harry Souders、Srinivas Sista、Brandon Heenan に、各リリースをスムーズに進められるよう世界中の Google チームとどのように連携しているかについて、内部情報を探りました。

Q. 各 Chrome のリリースに向けて、どのような準備をしていますか?

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

その後、品質の問題を検出するために、まずは継続的に稼働する自動システムを使用し、次に手動でバグを発見したテストチームによるテストを数回に分けて実施しています。

Q. 外部のデベロッパーから最近寄せられたフィードバックのうち、最善のバージョンをリリースするために役立ったものを教えてください。

Srinivas: 新しい API、iOS 版 Chrome の仕様変更など、機能の初期導入やフィードバックの提供は、ウェブ デベロッパーに常にお願いしています。重要なマイルストーンの変更により 2 桁から 3 桁(99 から 100)にウェブ デベロッパーとガイドラインを共有し、実際の変更に先駆けてテストを行い、フィードバックを取り入れ、サイトを壊さないようにしました。これにより、M100 のロールアウトで大きな問題を起こすことなく、変更をロールアウトすることができました。

Q. Chrome アップデートのロールアウト中にバグやセキュリティの問題が発生した場合、どうなりますか?

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

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

ブランドン: 私たちの最も重要な目標の一つは、Google に依存している多くの企業にとって、Chrome が安定した信頼性の高いプラットフォームであり続けるようにすることです。つまり、従業員に利用してほしい最新の機能にアクセスできるようにすると同時に、業務に支障をきたさないようにするということです。ビジネスニーズは千差万別であり、ダウンタイムが発生すると企業に悪影響が及ぶこともあるため、Chrome ではエンジニアリング チームとプロダクト チーム向けに個別のガイダンスを設けています。また、すべての Chrome リリースが「エンタープライズ向け」になるように、各機能のリリースを確認しています。これには、Chrome Enterprise リリースノートの重要な変更について企業に事前にお知らせすることも含まれます。また、安心のために、IT 管理者はエンタープライズ ポリシーを使用して多くの変更を制御できます。したがって、お客様が内部テストを希望する場合、または新機能をオプトアウトする場合は、それを行うことが可能です。予期せぬ問題を防ぐために、エンタープライズ環境をシミュレートする専用のテスト インフラストラクチャ(Active Directory ドメインに参加しているデバイスでの Chrome の実行など)を使用して、すべての Chrome リリースをテストしています。

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

Q. チームに今後加えたい変更はありますか?

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