宿泊予約ページに思ってみる

昨日、ハーモニー・アイによるイベントに参加した友人から話を聞いた。
Webサイトによけるユーザテストの重要性と大変さみたいなことが中心話題だったようだが、その中で、高齢者によるホテル予約ページの利用デモが行われたようだ。題材はCentury Hyatt Tokyoのページ。これでなくてもホテルのページはアクセシブルでないのが多いとのこと。ここはまだいいが、トップがFlashだけだったりするのは見覚えがある。
デモで扱われたのがここの宿泊予約画面。ツインの部屋を選んで人数をマウス操作で選択、その後ページをスクロールするためにホイールを操作、「次へ」を押すと「16名様またはご指定の日にちでのご予約は承っておりません。(s1201)」となる。

  • コンボボックスにフォーカスがある状態でホイール操作をするとページスクロールでなくコンボボックスの値が変わってしまうこと。それから
  • 部屋のタイプ、人数、部屋数などの値に相互関係がなく、ページ遷移後にエラーが表示されること

前者はIEのホイール操作における仕様らしい。私はマウスを使わないので知らなかったのだけど、コンボボックス(select)を操作したら一度関係ない部分をクリックしてフォーカスを外さなければスクロールできないらしい。意外と一般に使われているものにも不思議な動作はあるものだ。
後者がページ固有の問題で、ページの設計として選べない値は最初から選べなくしておくべきということだろう。この例では実は0人というのも選択でき、「大人の人数は必ず一人以上設定してください」となる。実は人数と部屋数の選択が妥当な組み合わせなら次の画面で各部屋の人数を選択(初期値0人ずつ)になるのだが、せめて部屋数に人数が従属するような設計はできたはずである。ということかな。JavaScriptユーザビリティ向上のために大活躍しそうな場面である。
このような設計はいったい誰が行うのだろうか。きっと用件定義を元にプログラム開発者が行った感じではないだろうか。きっと次のページに遷移してからエラーを指摘されるというスタイルに慣れてしまっていたのだろう。あるいは、単に納期が迫っていたり面倒だっただけかもしれない。はたまた、彼はJavaScriptでページを動的に変更して選択できる値の範囲を変更できることを知らなかったのかもしれないけど。
先日読んだ「コンピューターは難しすぎて使えない(アラン・クーパー)」という本に、操作デザインの重要性が述べられていた。クライアントと開発者という2分でみた場合、操作を設計するのは結局開発者の片手間であり、実際どういうソフトウェアなら使いやすいかは納期や機能の狭間で優先度が下がってしまうようだ。さらに、プログラマはコンピュータに慣れているために、本来は不思議な動作だと思うはずのものを不思議だと感じなくなっていることもある。
Webで実現するべきタスクは複雑化しているし、実世界に対応するものが見つからない概念を理解してもらって初めて価値が出るもの(ブックマークとか)もあったりするのだけど、一度コンピュータに慣れてしまっている自分から離れた視点から今取り組んでいるものを眺めてみる必要があるのかもしれない。