skillup

技術ブログ

プログラミング全般

ユーザーに見せるエラーメッセージに関する考察

投稿日:

プログラムで難しいことの3つは

  • テスト
  • ログ
  • エラーハンドリング

とかいてきましたが、ユーザー側に見せるエラーメッセージについて考察して見ました。

ログとエラーメッセージの違い

ログに出すようなメッセージを画面側に出してしまうことがあるのですが、ターゲットと用途が全く異なってきます。

ログ

ターゲット

システム開発者

目的・意図

システム内の異常を見ること

出すべき情報

Exceptionのエラーメッセージなどシステム内に関わるできるだけ詳細なメッセージや異常。

エラーメッセージ

ターゲット

一般ユーザ

目的・意図

不足している行動を知らせる(未入力の情報があるなど)、サポート側に問い合わせた時に鍵となる情報

出すべき情報

不足している行動や問い合わせた時に必要となるコード番号

ユーザに出す情報として必要な観点として、まずユーザー自身の行動を変えることができるかという点です。

画面内の未入力の情報などでしたら、意味がありますが、例えばDBの詳細なエラーを出したところでユーザーはシステム内の仕様を知らないし、変えることもできませんから意味がありません。

この場合、システム内のエラーになりますので、問い合わせてもらうしかないのですが、かといって「システムエラーが発生しています」だとサポートする側に回ると詳細な調査に時間がかかります。

この場合やはりエラーコードなどを仕込んで置いて「システムエラーです。エラーコードEX00012が発生しています。お問い合わせ先は・・・などとしておくのが一番無難でしょう。」

-プログラミング全般
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

エディタatomについて

今までのエディタですが、 gvim eclipse をメインに使ってました(PHPでは)。 エディタとか一旦なれるとなかなか変えにくいのでずっと上記のままでいこうと思ったんですが、今の現場でatomを …

no image

webの仕組み その2 リクエストとレスポンス

クライアント(ブラウザ)はサーバーとの接続を確立した後、各種リクエストを送信します。サーバーはそれにこたえテキストや画像などのリソースをクライアントに転送します(これがレスポンスです。) Firefo …

no image

読みやすいコードについて

コードリーディングにおいて聖典となっているリーダブルコードについて読んでいこうかと。 ただ読んでいくだけではつまらないので、自分なりの考え方も書いていきます。 Contents1 優れたコードの定義1 …

no image

VSCodeのPluginなど

Vscodeで使っているPluginなど Contents1 基本2 UML3 git4 PHP コードフォーマット5 golang6 CSV整形 基本 Japanese Language Pack …

no image

Webの高速化に関して

Webの高速化に関してメモ。 高速化って言っても幅広いんですけどね。自分が行なっている対策に関して。 一応LAMP環境を前提にしてます。 Contents1 一番大事なのは測定2 DB対策3 フロント …

アーカイブ