Tweet

なんとか番号のガイドライン

新年早々,64 bit 版 Windows7 を買ってきてセットアップしていたのだけれど,ライセンス ID の取扱いで困ったものがあって手こずった. というわけで,ライセンス ID みたいな「ユーザにとっては謎の番号」についての設計指針みたいなものを考えてみる.

対象とするもの

ライセンス ID なんかもそうだけど,ソフトのエラー時に表示する「エラー番号」も該当するかな.

このような番号は

ユーザ − サポート - 開発者

の間でやりとりされ,それゆえの配慮が必要だと思う.

用語

このような番号が増えると,ユーザは「ここには何を入力したらいいのだろう」と迷うことになる. で,一方には「ライセンス番号」で画面には「ライセンスID」みたいに書かれていたとしたらどうだろう. 更に混乱することになる.

というわけで,番号の名前は統一すべきである. そのためには,設計時には「用語集」を作成して,適当な用語が使われるのを防ぐべきだろう.

文字・記号

まず,1文字あたりの情報量が少ないという問題はあるけど,「0 〜 9 の数字のみ」というのも悪くないと思う.

数字に加えてアルファベットを使う場合,

似たような文字をどうするか

問題がある.

  • 0 と O と o
  • 1 と I と l

が見間違えやすい,というのは有名な話.

よくある対策としては

  • 類似文字はどれか1つのみを使用し,他は使用しない
  • 番号の発行時には類似文字のサンプルも表示・印字して読み間違えを防ぐ
  • ふりがなを振って読み間違えを防ぐ
    • たとえば JR0BAK (ジェイ アール ゼロ ビー エー ケー)

というあたりかな.

ユーザに余計な手間をかけさせないという点からすると,

  • 類似文字は1種類のみ使用
  • 入力時は別の類似文字は「使用している文字に丸める」処理を入れる

というのはどうだろうか.

区切り

たとえば

3141592653589793

という番号を入力するのと

3141-5926-5358-9793

という形の番号を入力するのでは,後者のほうが楽ですね.

普通の人は長い番号は覚えきれないので,適当な桁数に区切ってメモから画面への入力を繰り返すことになる. このとき,区切りが無いと「あれ,どこまで入力したんだっけ」と画面とメモを見直すことになって,入力する手間がかかりミスも起きやすい.

というわけで,「番号に区切りは入れるべき」だと思う.

あと,表記も当然統一すべき. ある画面ではハイフン無しの表記だけど,入力画面ではハイフン有りの表記だったりすると「別の番号かな」と勘違いしてしまう.

分類

ペガシスの製品のライセンスキーの場合,先頭の数文字が製品ごとに固有の文字列となっている. また,ライセンスキーを入力する画面でも「固有文字列」の部分があらかじめ入力されている. 認証するという点では無意味だが,「番号のとり間違えを防ぐ」という点ではいいアイディアだと思う.

チェックサム

クレジットカードの番号の場合,あるアルゴリズムで計算すると,その番号が正しいものかどうかすぐに判別できるそうである. 要するにこれは,広い意味でのチェックサムと言える.

例えば,機器のエラー番号なんかの場合,メーカのサポートと電話でやりとりする場面が想定される. このとき,読み間違いや聞き間違いで番号が正しく伝わらないこともあるだろう.

というわけで,こんな場合はチェックサムがあったほうがいいんじゃないかと思う.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-01-03 (火) 19:38:29 (2942d)