Yahoo!が定義している「A-Grade Browser」って何?

Yahoo!開発チームの考え

Yahoo!では、自分たちのサイトがどういったブラウザーを正式にサポートしているかをGrade(階級)で定義しています。

具体的には「A-Grade」「X-Grade」「C-grade」というふうになっているのですが「Yahoo! User Interface Library(YUI)では『A-Grade』のブラウザのみをサポートしてますよ。」というように、グレード(階級)の定義と、サポートされているブラウザの種類が分からないと、採用する側も困ってしまいます。

説明についてはYahoo!開発者向けサイトにあったのですが、例によって英語でしたので、日本語訳してお届けします。 また意訳も入っていますが。。

現在、翻訳途中です。 空いた時間で書いていますので、ちょこちょこ見に来ていただければ増えているかもしれません。

A級ブラウザ(A-Grade Browser)のサポート表

以下の表はグレードブラウザのサポートで定義されているA級ブラウザサポートを受けられるブラウザのリストです。

2008/7/8 GBS情報がアップデートされました。

Win 98 Win 2000 Win XP Win Vista Mac 10.4 Mac 10.5
IE 7.0 A-grade A-grade
IE 6.0 A-grade A-grade A-grade
Firefox 2.† A-grade A-grade A-grade A-grade A-grade A-grade
Opera 9.† A-grade A-grade A-grade A-grade A-grade
Safari 3.0† A-grade A-grade

(“Firefox 2.†”にあるような) 短剣マークは、サポートを受けられる”最新の、ベータ版ではないバージョン”のことを表しています。
また、”Firefox 2.†”という部分は、v2.0.0.12はサポートされますが、v2.0.0.11やv3.0はサポートされません。 (この記事を書いている時点でv2.0.0.12が存在しているということは、v2.0.0.11は最新版ではないし、v3.0は単純に2.†の範囲ではないからです)。
ですから、Firefox 2.0.0.13がリリースされれば、2.0.0.12はA級ブラウザとしてサポートされないことになります。
つまり、「†」マークは「全部」ということではなくて「最新版」を表しているというわけです。

メモ

主な変更点

  • Safari 3 は、Safari 2に変わってMac 10.4 と 10.5でA級ブラウザサポートを受けるようになりました。
  • Firefox 1.5はもうA級ブラウザサポートを受けられません。

GBS(Graded Browser Support)予報

Firefox 3 と Internet Explorer 8 について

GBSはベータ版のブラウザに対してA級ブラウザサポートの定義を広げることはありません。 (定義によれば X級サポートということになりますが) しかし、一般にダウンロード可能な状態(Generally
Available: GA)になるとすぐに受け入れられる有名ブランドのブラウザについての配布情報は重要事項としてチェックしています。
私たちは現在、Firefox 3 と Internet Explorer 8 の開発状況を監視しています。

IE7については、IEの市場シェアやみなさんの採用の早さをみて、IE7のベータ段階から「例外」としてベータ版をサポートしました。 例外(一般配布に先駆けてA級を付与するために開発・品質管理体制に入ること)は私たちにとって、その新しいブラウザの(動作の?)奇抜さやフィードバックをブラウザ開発中に学ぶ機会になります。 それに、そのブラウザが一般配布される時には私たちのサイトがそのブラウザに適した状態になっているということにもなります。
ですので、たぶんIE8でも同じように拡張すると思います。 そのままお待ちください。

Windows 98

次のGBSアップデートでWindows 98 上で動くブラウザのA級サポートを止めると思います。

GBSアーカイブ

このページはこれからもずっと最新のA-Grade表が掲載されるページになります。アップデート情報はYUI Blogで発表していきます。 昔のアップデート情報を見たい人はYUI Blogのリンクから辿っていってくださいね。

Graded Browser Support: 歴史と理論的根拠

プロのWEB開発の業界の最初の10年間を振り返ると、90年代初期は「ブラウザサポートは1か0か」でした。つまり、そのブラウザをサポートするのか、しないのか。 「サポートしない」となるとユーザのアクセスは大抵、拒否されていました。 そして1998年にIE5 がリリースされてからは、WEBデザイナーやWEBプログラマーは「このプロジェクトはNetscape 4.xをサポートする必要はあるんですか?(しなくてもいいですよね?)」と引き受ける仕事を始める前に平然と尋ねたりしていました。

対照的に、現在の(モダンブラウザ向けの)WEB開発の現場では、全てのブラウザをサポートしなければなりません。 ユーザー層を削るという選択は不適当だし、「Graded Browser Support」戦略を適用すれば、ターゲットブラウザ選択の必要性がなくなるのです。(なんかCMっぽい表現ですね)

ここで「Graded Browser Support」は2つの根本的な考えを提唱します。

  • 「サポート」という言葉の、広範囲で、より妥当な定義づけ
  • 「グレード:級(grades)」の概念

「サポート」とはどういう意味?

ここでいう「サポート」は全ての人が同様の体験を得られるということではありません。 2人の異なるブラウザ使いの人から同じ操作感や閲覧機能を期待されてしまうと、わたしたちはWebの雑多な性質を受け入れたり、認めたりすることができなくなってしまいます。(Yahoo!の理念みたいものでしょうか?) 実際、全てのユーザーに対して同じ経験をこちらが要求することで、参加への障害を作り出してしまいます。 コンテンツが得られる可能性やアクセシビリティに配慮することは、私達の最重要項目なのです。

テレビを例にあげましょう。 原則的には、テレビは情報(映像、音声など)を配信します。 いっぽう、手回し式の非常用ラジオはそのテレビの音声を受信する機能が備わっています。 2次的な使われ方ですが、こういった製品を拒否してしまうのは逆効果ですよね。(テレビ電波とテレビを受信できる製品群の関係を、Web上の情報とブラウザ群の関係に例えています)

テレビを見られる製品の中にはいまだに白黒のものがあります。 白黒テレビのためだけに「最小公分母」の放送をすることは、みんな同じ経験をすることができますが、得なことは何もありません。 いっぽうで白黒テレビのオーナーに対して「(乗馬に例えて)これに乗りたいならこのぐらいの身長にならなきゃ。(地デジを観たいなら地デジ対応テレビ買わなきゃね)」と突き放すようなアプローチも得策だとは言えません。

適切なサポート戦略とは、あらゆるユーザーの環境で、それぞれが可能な範囲での最大のビジュアル表現やインタラクティブ性を提供してあげることです。 一般的に「プログレッシブ・エンハンスメント(進歩的向上)」と呼ばれるこのアプローチ方法は、コンテンツへのアクセスを困難にすることなく、アクセスのしやすさに加えてリッチな体験を提供することができます。

Progressive Enhancement(進歩的向上) vs. Graceful Degradation(きれいな退化)

グレースフル・デグレード(きれいな退化)プログレッシブ・エンハンスメント(進歩的向上)のコンセプトは、ブラウザのサポート戦略を語るうえでよく取り上げられます。

この2つのコンセプトはブラウザサポートの意思決定に影響を与えます。 なぜなら、この2つはそれぞれサポートの重点を異なるところに置いており、議論の内容も異なってくるからです。 グレースフル・デグレードは「情報の公開(プレゼンテーション)」を優先していて、浅く広くブラウザをサポートし、浅く広くコンテンツを与えられるようにしています(当然、ユーザー体験も浅く広くです)。 いっぽう、プログレッシブ・エンハンスメントの方は「コンテンツ」をその中心に据えており、なるべく多くのブラウザにより多くのコンテンツが与えられるように考えられています(ユーザー体験もより多く提供します)。 意味するところとしては、プログレッシブ・エンハンスメントのほうが健全であり、先を見据えたアプローチ方法であると言えます。 このプログレッシブ・エンハンスメントの考え方が「Graded Browser Support」の主なコンセプトなのです。

サポートの階級制度って何?

ブラウザサポートの包括的な定義が必要となると、デザイン・開発・テストを継続してやっておかないといけません。 これらを行った場合、どの段階でうまくいかなくなるかを、どうやって知ればよいでしょうか。 この問題に対処し、解決した感覚をシステムに戻せるように、私たちはサポートの「階級制度」を設けています。 階級には3つあり、それぞれ「A級」「C級」「X級」サポートと呼ばれます。

個々の階級を説明する前に、サポートのレベルを定義するのに有益な特徴をいくつかあげておきましょう。

有名ブラウザ vs. 不明なブラウザ
現在、10,000を超えるブラウザのブランド・バージョン・構成があり、その数は今もなお増え続けています。 世に知られているブラウザはグループ化しておくことができますね。
出来が良い vs. 出来が悪い
どのブラウザも同じ実装ということはありません。 しかしながら、多くのWEB標準規格をサポートしているかどうかでブラウザを分けることはできます。
新しい vs. 古い
新しいバージョンが出るにつれ、より古いバージョンとの関連性はうすくなっていきます。
普及している vs. レアである
何千ものブラウザが使われていますが、広く使われているのはほんの数ダースほどです。

サポートにおける3つの階級

C級(C-grade)

C級(C-grade)は、核となるコンテンツや機能を提供する、サポートの基本レベルです。 よく「コア・サポート」と呼ばれたりします。 セマンティックな(=意味づけされた)HTML情報以上のものは提供せず、コンテンツや体験できるものについてはアクセス性が高くなっていて、飾りたてたり高機能だったりするような進歩的な部分はなく、昔のブラウザにも未来のブラウザにも互換性を持たせてあります。 スタイルのレイヤーやビヘイビアも省略しています。

C級のブラウザーはブラウザーの中ではブラックリストに定義されていて、Yahoo!閲覧ユーザーの約3%がこれにあたります。

要約:C級ブラウザーは今のブラウザーに比べて役立たずで時代遅れであり、使っている人もめったにいません。 QA(品質保証)テストではC級ブラウザーのサンプリングをテストしていて、バグは最優先で報告されます。

A級(A-grade)

A級サポートは最も高いサポートレベルです。 現在のWEB標準のパワフルな機能を完全に利用することで、A級では高度な機能やビジュアルを体験することができます。

A級ブラウザはホワイトリストに定義されており、Yahoo!閲覧ユーザー全体の約96%はA級となっています。

要約:A級ブラウザは高機能で最新、よく利用されているという定義づけです。 QA(品質保証)テストではすべてのA級ブラウザーをテストしていて、バグは最優先で報告されるようになっています。

X級(X-grade)

X級サポートは、未知、メインではない、レアなブラウザ用に定義されたものです。 X級サポートが受けられるブラウザは「有能と仮定されたブラウザ」が該当します。 (しかし、そのブラウザがモダンブラウザらしい動作をしなかったり、利用ユーザーにとって見た目や機能的な部分を削ったほうが良いような場合、つまりブラウザが無能であると判断される場合は、C級に格下げされます。)

X級ブラウザは、C級、A級を除いたすべてのブラウザが該当します。 Yaooo!閲覧ユーザーの約1%がX級です。

要約:X級ブラウザは一般的に、未知、高機能(らしい)、モダンブラウザ、レアでメインブラウザではありません。 QA(品質保証)テストではX級ブラウザはテストしておらず、バグもオープンにされません。

A級とX級サポートの関係について

A級ブラウザとX級ブラウザとの関係についてちょっとお話ししておきますと、X級で一つ意外なものの中に「新しくリリースされたA級ブラウザ」というのがあります。 品質テストを行うまでA級ブラウザにはなれないので、新しく登場したブラウザ(当然、未テストですよね)はA級ブラウザとしての条件を満たすことができません。 この例からもGBSのアプローチの強みがお分かりでしょう。X級とA級との実質的な違いというのは、品質テストをちゃんとやっているかどうかだけなんです。

HTMLしか受信できないC級と違って、X級はA級が受け付けるあらゆる情報を受信できます。新しいブラウザは、最初はX級ブラウザに位置づけられると思いますが、そのブラウザを使っているユーザーにはA級ブラウザと同等の体験を与えるようにしています。

品質保証 (QA) テスト

ブラウザを階級づけするエコシステムによって、品質保証テストは意味を持ち、焦点がはっきりし、コスト削減が可能となっています。 これまでお伝えしてきたように、軽いC級テストとシステム化されたA級テストによって、約99%の人たちに扱い易く、正しいユーザー体験を保証します。 A級テストは厳密に完了させますが、C級テストは1つか2つの代表的なブラウザ(例:Netscape 4.x や Lynx)で行うぐらいです。

テストするコンテンツは、X級ブラウザについては検査を繰り返さないようにしています。

プログレッシブ・エンハンスメントを元にしてレイヤー化された開発を含めた方法論Unobtrusive JavaScriptHijaxによって、高いレイヤーは低いレイヤーを混乱させることはありません。 しかしながら、核となるユーザー体験箇所のテストを代表的なブラウザだけで済ませるのは危険です。 もしあなたが自分のWEBアプリケーションにGraded Browser supportのしくみを取り入れる場合、そのサイトの(階級的)コンテンツと機能は、画像・CSSJSなしでもアクセスできるものでなければいけません。 キーボード操作でもタスク完了ができ、C級ブラウザでアクセスした場合、便利な機能がオフになった状態でもできるようでないといけません

In Conclusion

Graded Browser Support provides an inclusive definition of support and a framework for taming the ever-expanding world of browsers and frontend technologies.

Tim Berners-Lee, inventor of the World Wide Web and director of the W3C, has said it best:

“Anyone who slaps a ‘this page is best viewed with Browser X’ label on a Web page appears to be yearning for the bad old days, before the Web, when you had very little chance of reading a document written on another computer, another word processor, or another network.”

このページをシェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

2008-03-31