ヒューリスティック評価(ヒューリスティックひょうか、Heuristic evaluation、英語: user interface design)は、コンピューターソフトウェアのユーザビリティ検査方法であり、ユーザーインターフェイス(UI)設計におけるユーザビリティの問題を特定するのに有用である。評価者はインターフェースを分析し、広く認められたユーザビリティ原則(ヒューリスティクス)に準拠したものかを判断する。 これらの評価方法が広く実践されているニューメディアの分野では短期間低予算で UI が設計されることが多く、インターフェイステストの予算が限られていることが多い。

ユーザーインターフェイス設計の問題点を明らかにすることが、ヒューリスティック評価の主たる目的である。 ユーザビリティコンサルタントのRolf Molichとヤコブ・ニールセンは、 ユーザビリティエンジニアリングの教育・コンサルティングの経験に基づいてこの方法を開発した。 ヒューマンコンピュータインタラクションにおけるユーザビリティ検査のうち、ヒューリスティック評価は最も簡便なものの1つである 。 ユーザビリティ設計ヒューリスティックをまとめたものは数多くある。これらは排他的ではなく、ユーザーインターフェイス設計の同じ側面をカバーすることも多い。発見されたユーザビリティの問題は、ユーザーのパフォーマンスや受け入れへの影響の見積もりに従って、多くの場合数値スケールで分類される。 ヒューリスティック評価は、 ユースケース (通常のユーザータスク)のコンテキストで行われ、インターフェイスが目的のユーザーのニーズや好みとどの程度互換性があるかについて開発者にフィードバックを提供する。

ヒューリスティック評価のシンプルさは、設計の初期段階やユーザーベースのテストを行う前に有効である。ユーザーを必要としないので、募集や日時・場所の検討、報酬の支払いといった負担を回避できる。ニールセンは、4つの実験の結果、評価者1人だと「ほとんどの場合かなり下手」としており、複数の評価者の結果を集約すべきとしている。ほとんどのヒューリスティック評価は数日で完了する。 必要な時間は、アーティファクトのサイズ、複雑さ、レビューの目的、レビューで発生するユーザビリティの問題の性質、およびレビュアーの能力によって異なる。 ユーザーテストの前にヒューリスティック評価を行うことで、ユーザーテストで評価する領域を特定したり、設計上の問題を事前に排除したりすることができる。

ヒューリスティック評価は、短期間で多くの主要なユーザビリティの問題を明らかにすることができるが、結果が専門家のレビューの知識に大きく影響されることがよく批判される。

## ニールセンのヒューリスティクス

ヤコブ・ニールセンのヒューリスティックスは、ユーザーインターフェイス設計のめのユーザビリティヒューリスティックスとして、おそらく最も多く使用されている。 ニールセンは1990年にRolf Molichとの共同研究をもとにヒューリスティックスを開発した 。現在使用されている最終的なヒューリスティックスは、1994年にNielsenが発表したものである。Nielsenの著書「Usability Engineering 」で公開されているヒューリスティックは次の通り。

1. システム状態の視認性 Visibility of system status

   :   システムは、合理的な時間内に適切なフィードバックを行うことで、何が起こっているかを常にユーザーに知らせなければならない。
2. システムと現実世界の一致 Match between system and the real world

   :   システムは、システム指向の用語ではなく、ユーザーに馴染みのある言葉、フレーズ、概念を用いて、ユーザーの言語で話すべきである。 情報が自然で論理的な順序で表示されるように、現実世界の慣例に従うこと。
3. ユーザーの主導権と自由 User control and freedom

   :   ユーザーはシステムの機能を誤って選択してしまうことがよくあるが、そのような場合には、長いダイアログを経ることなく、望まない状態から抜け出すための「非常口」を明確に示す。 「元に戻す」と「やり直し」をサポートする。
4. 一貫性と標準 Consistency and standards

   :   ユーザーは、異なる単語、状況、またはアクションが同じことを意味するかどうか疑問に思う必要はない。 プラットフォームの慣習に従う。
5. エラー防止 Error prevention

   :   優れたエラーメッセージよりも優れているのは、問題の発生を未然に防ぐための慎重な設計である。エラーが発生しやすい条件を排除するか、エラーが発生しているかどうかをチェックし、ユーザーがアクションを実行する前に確認の選択肢を提示する。
6. 想起より認識 Recognition rather than recall

   :   オブジェクト、アクション、オプションを可視化することで、ユーザーの記憶負荷を最小限に抑える。 ユーザーは、ダイアログのある部分から別の部分への情報を覚えておく必要はない。 システムの使用手順は、必要に応じて見えるようにしたり、簡単に取り出せるようにする。
7. 使用の柔軟性と効率性 Flexibility and efficiency of use

   :   初心者のユーザーには見えないアクセラレータが、熟練者のユーザーに取ってはインタラクションを高速化することもあり、システムが経験の浅いユーザーと熟練者の両方に対応することができる。ユーザーが頻繁に行うアクションを調整できるようにする。
8. 美的で最小限の設計 Aesthetic and minimalist design

   :   対話には、無関係な情報や必要性の低い情報を含めるべきではない。 対話における余分な情報は、関連する情報と競合し、視認性を低下させる。
9. ユーザーに対するエラー認識、判断、回復の援助 Help users recognize, diagnose, and recover from errors

   :   エラーメッセージは、平易な言葉(コードなし)で表現し、問題を正確に示し、建設的な解決策を提案するものでなければならない。
10. ヘルプとドキュメント化 Help and documentation

    :   ドキュメントなしでシステムを使えた方がよいが、ヘルプとドキュメントの提供が必要になる場合がある。 このような情報は、検索しやすく、ユーザーのタスクに焦点を当て、実行する具体的な手順が記載されていて、大きすぎないものでなければならない。

## Gerhardt-Powalsの認知工学的原則

ヤコブ・ニールセンはヒューリスティック評価のエキスパートであり、フィールドリーダーであると考えられている。これに対し、ジル・ゲルハルト=ポワルズは、人間とコンピュータのパフォーマンスを向上させるための認知工学的な原則を開発した。これらのヒューリスティック(原則)は、ニールセンのヒューリスティックに似ているが、より包括的なアプローチで評価する。 Gerhardt Powalsの原則を以下に示す。

1. 不要な作業負荷を自動化する

   :   計算、見積もり、比較などの不要な思考を排除し、認知リソースを高次のタスクに向けられるようにする。
2. 不確実性を減らす

   :   判断に要する時間やエラーを減らすため、データをわかりやすく表示する。
3. データをまとめる

   :   低次のデータを高次の要約へとまとめ、認知負荷を軽減する。
4. 解釈を有意義に支援する新しい情報を提示する

   :   新しい情報は使い慣れた枠組み(スキーマ、比喩、日常用語など)に基づいて提示し、吸収しやすくする。
5. 機能に関連する名前を使用する

   :   表示名とラベルは文脈に適したものにすることで、想起と認識を向上させることができる。
6. 一貫した意味のある方法でデータをまとめる

   :   画面内ではデータを論理的にグループ化し、画面間でもグループ化を一貫した方法で行う。情報探索の時間を短縮することができる。
7. データ駆動型タスクを制限する

   :   たとえば、色とグラフィックを使うことで、生データを吸収するための時間を短縮することができる。
8. 所定の時間にユーザーが必要とする情報のみを表示に含める

   :   ユーザーが重要なデータに集中できるよう、現行のタスクに関係のない情報を除外する。
9. 必要に応じ、複数のコーディングのデータを提供する

   :   認知の柔軟性を高め、ユーザーの好みを満足させるために、さまざまな形式や詳細さでデータを提供する必要がある。
10. 賢明な冗長性を実践する

    :   原則6と原則8の矛楯を解決するために考案された。一貫性を保つために、その時々に必要とされる以上の情報を記載すべき場合がある。

## WeinschenkとBarkerの分類

Susan WeinschenkとDean Barker は、いくつかの主要なプロバイダーによるヒューリスティクスとガイドラインを次の20のタイプに分類した。

1. ユーザー制御 User Control

   :   制御できていることをユーザーが認識でき、ユーザーが適切に制御できるようにする。
2. 人間の限界 Human Limitation

   :   ユーザーの認知、視覚、聴覚、触覚、運動に過大な負荷をかけない。
3. モダリティの統合 Modal Integrity

   :   個々のタスクを使用されるモダリティ (聴覚、視覚、運動、運動感覚)に合わせる。
4. 順応性 Accommodation

   :   ユーザーの作業法や考え方に順応する。
5. 言語の明快さ Linguistic Clarity

   :   なるべく効率的にユーザーとやり取りする。
6. 美的整合性 Aesthetic Integrity

   :   魅力的で適切なデザインである。
7. 単純性 Simplicity

   :   要素を単純に提示する。
8. 予測可能性 Predictability

   :   ユーザーが次に何が起こるかを正確に予測できるように動作する。
9. 解釈性 Intepretation

   :   ユーザーが何をしようとしているのか合理的に推測する。
10. 正確度 Accuracy

    :   エラーがない。
11. 技術的明快さ Technical Clarity

    :   可能な限り最高の忠実性を備えている。
12. 柔軟性 Flexibility

    :   カスタム使用のためにユーザーがデザインを調整できるようにする。
13. 充足感 Fulfillment

    :   満足のいくユーザー体験を提供する。
14. 文化的性質 Cultual Propriety

    :   ユーザーの社会的習慣や期待に一致する。
15. 適切なテンポ Suitable Tempo

    :   ユーザーに適したテンポで動作する。
16. 一貫性 Consistency

    :   一貫している。
17. ユーザーサポート User Support

    :   必要または要求に応じて追加で支援する。
18. 精度 Precision

    :   ユーザーがタスクを正確に実行できるようにする。
19. 許容性 Forgiveness

    :   アクションを「元に戻す」ことができる。
20. 反応性 Responsiveness

    :   ユーザーにアクションの結果とインターフェイスの状態を通知する。