プログラマのためのユーザインタフェースデザイン 第8章: もっとほかにやることがある人々のためにデザインする、パート3
From The Joel on Software Translation Project
Joel Spolsky ジョエル・スポルスキ
翻訳: Yasushi Aoki 青木靖
2000/8/5
GUIインタフェースの初期の原則は、コンピュータが覚えられることはユーザに覚えさせるな、と言うことだった。古典的な例はファイルを開くダイアログで、これはユーザに正確なファイルの名前を思い出してタイプしてもらうかわりに、ファイルの一覧を見せるというものだ。人は何か手がかりを与えられたときにずっとよく思い出すものだし、それに彼らは記憶を呼び起こすよりはリストから選択する方をいつでも選ぶ。
もう一つの例はメニューだ。歴史的に、使えるコマンドの完全なメニューを提供することが、使いたいコマンドを覚えなきゃならなかった古いコマンドラインインタフェースを置き換えた。そしてこれが、あなたのUNIX友達がなんと言おうと、コマンドラインインタフェースがGUIインタフェースほど良くない基本的な理由である。コマンドラインインタフェースを使うのは、マクドナルドのソウル支店で注文するために韓国語を習わなければならないようなものだ。メニューベースのインタフェースを使うのは、ほしい食べ物を指さして元気よく首を振るようなものだ。それは学習を必要とせずに同じ情報を伝えることができる。
典型的なグラフィックスプログラムにおけるファイル選択について考えてみよう:
さいわいにWindows 98はサムネールをサポートしているので、ファイルを以下のような形で見ることができる:
これは望んだファイルを開くのをとても簡単にしてくれる。これには言葉を画像に対応づける精神的な努力さえ必要とならない。
オートコンプリーションのような機能の中にも最小記憶原則の実例を見ることができる。たとえあなたが何かタイプしなければならないときでも、ある種のプログラムは、あなたが何をタイプしようとしているのか経験に 基づいて推測する:
この例では、あなたが"M"とタイプするとすぐ、あなたが以前に同じ列でMaleとタイプしているため、ExcelはあなたがMaleとタイプしそうだと推測し、オートコンプリーションの候補として提示する。"ale"はあらかじめ選択されており、あなたがMaleとタイプするつもりでない場合にはタイプをそのまま続けて(たとえば"ystery"と)、Excelのした推測を余計な手間をかけることなく上書きすることができる。
Microsoft Wordはあなたがタイプしようとしていることについて、少しばかり行き過ぎた推測をする。陽気な五月にこの製品を使ったことのある人は気づいているように:
[edit] もっとほかにやることがある人々のためにデザインする、再び
これまでの章で、私は三つの原則を示した:
あなたは私がユーザをばかだと思っているという印象を持ち始めているかもしれない。それは正しくない。ユーザに敬意を払わないというのは、Microsoft Bobのようなソフトを作る(そしてゴミ箱に捨てる)ような傲慢さのことで、それは誰も幸せにしない。
一方、ソフトウェアデザインにはもっとたちの悪い傲慢がある:「私のソフトウェアはこんなにもクールなんだから、人々は脳みそをワープさせなきゃならないんだ。」という傲慢な仮定である。このようなたぐいの厚顔は、フリーソフトの世界ではごく普通に見られる。さあ、Linuxはただなんだ!それを解読するだけの頭を持ってないなら、君にはそれを使う価値はないよ!
人の素質はベル曲線を描く傾向がある。98%の顧客はテレビが使えるくらいにスマートかもしれない。70%くらいはWindowsが使える。15% はLinuxを使える。1%はプログラムが書ける。しかしC++のような言語でプログラムを書くことができるのはほんの0.1%だ。Microsoft ATLプログラミングが理解できるのは0.01%しかいない(そして彼らは皆、眼鏡をかけ髭を生やしている)。
この急な落ち込みの効果は、もしあなたがたとえわずかでも「バーを下げれば」、たとえば10%くらいでも使いやすくしたなら、あなたのプログラムを使える人の数はドラマチックに、たとえば50%も、増加するということだ。
だから私は人々が本当にまぬけだと思っているわけじゃなく、もしあなたがまぬけでも使えるほど十分にやさしいプログラムをデザインしようと絶えず努力するなら、あなたはみんなが好きな人気のある使いやすいプログラムを作ることになるだろう、と考えているのだ。そしてユーザビリティの小さな改善と思えることが、いかに多くの顧客に結びつくかということに、驚くことになるだろう。
はじめて見るプログラムやダイアログのユーザビリティを評価する一つの良い方法は、すこし足りないように振る舞ってみることだ。ダイアログに書かれていることを読まない。どうなっているのかについてランダムな推測をし、確認しない。一本の指だけでマウスを使ってみる。多くのミスをし、のたうちまわる。プログラムがあなたの望んだことをするだろうか、少なくとも、吹っ飛ばすかわりに親切にガイドしてくれるだろうか見てみる。我慢しない。あなたのやりたいことがすぐにできないなら、あきらめる。もしUIがあなたの未熟でばかな行動に持ちこたえられないようなら、手を入れる必要があるかもしれない。
この記事の原文(英語)はUser Interface Design for Programmers Chapter 8: Designing for People Who Have Better Things To Do With Their Lives, Part Threeです。



