エラーメッセージの適切さ

エラーメッセージには、原因・現状・回復の3つの要素が不可欠である。僕としてはこれがエラーメッセージの基本だと考えている。そうした基本原則をないがしろにすることのないようにしなければならない。

  • 黒須教授
  • 2016年4月18日

エラーメッセージの問題

今更、マイクロソフトの製品のエラーメッセージの問題をとりあげても、ああまたか、という印象を持たれる方も少なくないだろう。それほどに同社の製品の出してくる(エラーに限らず)メッセージには適切でないものが多い。

エラーメッセージには、

  • 原因(何が原因で現在の状態、つまりエラーメッセージが表示されるような状態になったのかの説明)
  • 現状(現在はどういう状態なのか、何ができて、何ができない状態なのかの説明)
  • 回復(どうしたら現在の状態から脱して、元の状態に戻れるのかという説明、さらにできることなら、どのようにすれば現在の状態に入らずに本来の目的を達成できたのかという説明)

の3つの要素が不可欠である。もっともこの3要素をちゃんと表示してあるケースはごく稀にしか見つけることができない。

今となっては化石時代の事例だが、次のような例では、表示してある情報の大半はユーザにとって理解不能であり無意味である。唯一理解できるのは「閉じる」という表示であり、Windows 95あたりの時代には、これが出てくるとユーザは直ちに「閉じる」をクリックする、というのは定形パターンになっていた。なぜなら「Kernel32」が何かもわからなければ、「一般保護違反」といわれても何もわからない。さらにモジュールやアドレスの説明が書かれていても、それで何をすればいいのか分からない。つまり、日本語として唯一ユーザに理解できたのは「閉じる」だけだったのだ。

Kernel32: KERNEL32の一般保護違反です

その後、エラーメッセージは徐々に改善されるようになったが、まだ今回のケースのようなことが起こってしまう。同社が本気でUser Experienceを考慮しているつもりなら、こういう事態の発見にまず力を注ぐべきだし、それに対する処置の仕方をきちんと表示すべきである。「いまだに」出てきているという事態に、僕の「怒りの旋律」が奏でられてしまったのだ。

添付ファイルが開けない

ここ数ヶ月のことだ。僕はOffice 2013を使っているが、添付で送られてきたdocやdocx、あるいはxlsやxlsxのファイルを開こうとすると、下記のようなメッセージが頻繁に表示されるようになった。それまではそんなことは起きていなかった。最初は本当にファイルが破損しているのかと思って、送信者に再送をお願いしたこともある。ところが普段あまり使っていないノートパソコンで開くと開ける。怪しい。普段づかいのデスクトップに何かが起きているのだろう、とは思った。

Microsoft Excel: ファイルが破損しているため開くことができません

また、次のようなメッセージがでてくることもあった。それで、文書やドライブのアクセス権限を確認したり、空き領域を確認したりしたが、一向に改善しなかった。

Microsoft Word: ファイルを開こうとして、エラーが発生しました

「この情報は役にたちましたか?」という最下行の質問は実に空々しく目に映る。役になんか立ってねーだろ、と思うしかない。

あっけない幕切れ

こういう時はネット検索に限る。それでメッセージの一部を書き込んでネット検索をしたら見つかった。どうやらマイクロソフトが夜間自動的に行ったアップデートで、保護ビューに関する設定内容が変わってしまっていたらしい。たしかに悪さをするファイルが添付されてくることはあるけれど、それならそれで、エラーメッセージに書いておくべきだろう。

たとえば「定期的アップデートにおいてファイルを安易に開けないように設定を変更しました。元の状態にもどしたい場合には、ファイル→オプション→セキュリティセンター→セキュリティセンターの設定→保護ビューで三つのチェックを外してOKを押してください」といったように。また保護ビューというものについての補足説明をしておくことも必要だったろう。

セキュリティセンター→保護ビュー

多分マイクロソフトは良かれと思ってやったことなのだろうが、仕様変更にはたいてい副作用がでる。それを予測しておらず、したがって対処もしておかなかった責任は大きい。

基本を守る

僕が講演などでエラーメッセージの三要素について話し始めたのは「前世紀」の頃からだ。僕としてはこれがエラーメッセージの基本だと考えている。そうした基本原則をないがしろにすることのないようにしなければならない。恐らく、開発担当者の年齢は当時とは世代交代をして若くなっていて、担当者が基本原則を知らなかった可能性もある。だから、社内教育をきちんとしていくことが大切だ。

開発担当者の世代交代にともなって世代間の技術移転がきちんと行われていないと、いつまでたってもユーザビリティの問題は発生しつづけることになる。

編集部注

ニールセン博士も、Alertboxの中で、「エラーメッセージガイドライン」というコラムを書いていらっしゃいます。