【超訳】シュナイダーマンのデザイン8原則
2015/07/14
こちらの「Shneiderman’s “Eight Golden Rules of Interface Design”」をもとに、記事を書きました。
原文に忠実に訳している箇所はほとんどありませんので、まさに「【超訳】」と思って読んでいただきたいと考えています。
シュナイダーマンのデザイン8原則
1、一貫性を保つよう努める
これはユーザの動作・動作対象・動作のフローにおいて一貫性を持たせるべきということです。つまり、ユーザに違和感を感じさせない設計をすべきということになります。
MacOSのアプリを開発するのであれば、アプリ内はもちろんのこと、MacOSのアプリのメニューバーとの一貫性を保つ必要があります。メニューバーの”用語”だけでなく、”メニュー項目の順番”などに対しても一貫性が求められます。
もっと言ってしまうと、実際の世界に存在するボリュームのつまみや、文化や地域の違いを意識してプラットフォームを設計する必要があるということになります。
2、頻繁に利用するユーザのためにショートカットを有効にする
これは、頻繁にユーザが使うことが想定される機能には何らかのショートカットを用意しておくべくということです。
たとえば、ペイントソフトで矩形選択という機能が頻繁に使うのであれば、その機能にアクセスするためのアイコンやショートカットキーを用意すべきです。
一方で、頻繁に使われる機能であれば、操作の自動化やAPIの提供が必要かもしれません。APIを提供することで、個々のユーザにとって最適なインタフェースを提供できる可能性があると思います。
3、有益なフィードバックを提供する
これは、それぞれの状況にとって、重要かつ緊急な情報を、意味を失わずに理解しやすい形で提供するということです。
たとえば、制限時間つきの計算トレーニングのアプリで、回答開始と同時に残り時間を大きなアニメーションで表示することは、ユーザにとって無意味なだけでなく、ユーザを混乱させることに繋がります。
4、達成度のダイアログを設計する
これは、アクションが間違いなく完了したことを示すこと、(次のステップもあるのであれば)オプションを明確に定義することも必要であるということです。
アクションのシーケンスにおいて、ユーザがどこにあるのかということを何らかの形で表示することも有効です。たとえば、砂時計やシーケンスバーも手段のひとつでしょう。
画面遷移を含まないアクションであれば、操作の結果をアニメーションや色の変化で伝えるといいかもしれません。
5、難しくないエラー対処手段を提供する
エラーを未然に防ぐとともに、エラーに関する情報をユーザに提供するのであれば、解決のヒントもあわせて示す必要があるということです。
Webサイトのエラーページを設計するときは、エラー発生の事実を表示するだけでなく、ユーザが次のアクションに移せるように道筋を示す必要があります。
6、簡単にやり直しできるようにする
ユーザの動きに制限を設けず、できるだけ自由にすることが大事です。ユーザが要求しているやり直しの規模についても同様に注意が必要です。ユーザは「手戻りが許されるのか」について大きな関心を持っています。
たとえば、ショッピングサイトの購入フローでは、「操作を戻せるのか」「どこまで戻されるのか(商品は確保されているのか)」といった情報もあわせて表示するといいでしょう。他にも、アプリケーションの設定画面に「初期設定に戻す」ボタンがあると、ユーザは安心して躊躇することなく設定機能を利用するでしょう。
元に戻せる操作であることがわかると、ユーザは安心します。
7、ユーザにすべての操作権限があるように振る舞う
コンピューターに支配されていることをユーザに悟られるのは、よくないということです。
時間のかかる処理であれば、積極的にコンピュータの処理を中止する権限をもたせり、コンピュータの処理内容をリアルタイムで表示させたりすることが必要です。
iPhoneのアプリはいつでも切り替えできます。もし切り替えできない仕様だったら・・・と考えるとゾッとしますね。
8、ユーザの短期記憶を使わないようにする
ユーザの短期記憶は5〜9個だと言われていますが、アプリケーションやシステムの操作のためにユーザの大切な短期記憶を積極的に使う設計はやめましょう。
もし特に意味もなく設定項目を複数ページに分けているのであれば、設定項目を1ページにまとめる必要があります。
同様に、パンくずリストの機能やユーザの操作履歴からサジェストする機能も、ユーザの記憶負担を軽減するのに役立つので、有効な策になると思います。
まとめ
以上、「【超訳】シュナイダーマンのデザイン8原則」というテーマのもと解説してきました。多くのアプリケーションはこれらの項目をおおよそ満たしていると思いますが、1つ1つの項目を精査すると不十分な点が出てくると思います。サービスやアプリを開発するときの一助になれば幸いです。