skillup

技術ブログ

プログラミング全般

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

投稿日:

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

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

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

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

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

ログ

ターゲット

システム開発者

目的・意図

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

出すべき情報

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

エラーメッセージ

ターゲット

一般ユーザ

目的・意図

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

出すべき情報

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

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

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

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

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

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

執筆者:


comment

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

関連記事

no image

リーダブルコードまとめ

リーダブルコードほぼ読み切ったのでまとめを。チェックリスト化して、常にこれを見ながらコードは書いたほうがよさげ 前半のまとめや参考リンクでみたものとマージします。 Contents1 変数の名称2 コ …

no image

OSコマンドインジェクション

Contents1 OSコマンドインジェクションとは?2 被害3 対策4 参考リンク OSコマンドインジェクションとは? OSに対する命令文を不正に紛れ込ませて攻撃させる手法。 被害 サーバー内のファ …

no image

画面テストのツールに関して

Unitテストに関してはxUnit一択だと思いますが、UI系のテストツールについて。 IDE(コードを書かずにすむマクロ系)に関して全てChromeで動くことを確認しています。 Contents1 ツ …

no image

バッチスクリプトで気をつけたい点

実務でバッチ処理を作る際に気をつけるべきと思ったこと。 基本的にエラーをいかに捉えていかにログに吐くかを最初に考える。まずはエラーありき。失敗するもの、想定した値がこない、あるいは値がないを前提として …

no image

PCクラッシュ時に備えて

先日、ずっとメインで使っていた会社のノートPCがクラッシュし、再起不能になりました。ファイルなんかはクラウドで管理していたものが多かったので実害はあまりなかったんですが、当然ゼロではありませんでした。 …

アーカイブ