考慮すべきいくつかの要因があります。これらのポイントを説明するために、ユーザーが特定のタスクに定義されたクォータのコンテキストで、タスクが使用できるディスク領域の量に関してパーセンテージを入力するフィールドの例を使用します。0%は、タスクがディスクに何も書き込めないことを意味します。100%は、タスクがすべてのディスク領域を占有できることを意味します。間の値は、その意味を意味します。
開発者として、許容値は[0、1、2、3、⋯99、100]であり、それ以外はすべてばかげていると考えているでしょう。ユーザーがこれらの「愚かな」値を入力し続けることができる理由を見てみましょう。
タイプミス
%^
ユーザーは値56 Shiftを入力していましたが、入力中に誤って押しました(たとえば、フランス語キーボードではShift数字を入力するために押す必要があり、ユーザーはフランス語キーボードとQWERTYを常に切り替えていたため)。
同様に、数値を取得することができます。数値は、その前後、またはその間にあります。
56q
ここで、ユーザーはおそらく数字を入力し、タブを押して次のフィールドに移動しました。を押す代わりに ⇆ 、ユーザーは隣接キーを押しました。
誤解と誤解
空の入力がおそらく最も一般的です。ユーザーは、フィールドがオプションであるか、このフィールドに何を入力するのかわからないことを想像しました。
56.5
ユーザーは、浮動小数点値は許容できると考えました。ユーザーが間違っていて、アプリケーションが整数値のみが受け入れられる理由を丁寧に説明するか、初期要件が間違っていたため、ユーザーに浮動小数点値を入力させるのが理にかなっています。
none
ユーザーは、タスクに必要なスペースを求められたときに、アプリが数字を期待していると誤解していました。これは、ユーザーインターフェイスの質が低いことを示している可能性があります。たとえば、ユーザーに「タスクに必要なディスク容量はどれくらいですか?」多くの意味。
150
この場合、ユーザーはパーセンテージの意味を誤解しました。たぶんユーザーは、タスクが現在使用されているスペースの150%を占有できることを伝えたいので、2 TBのディスクで100 GBが使用される場合、タスクは150 GBを使用できます。繰り返しますが、より優れたユーザーインターフェイスが役立ちます。たとえば、パーセント記号が付加された裸の入力フィールドを使用する代わりに、次のようにすることができます。
[____] % of disk space (2 TB)
ユーザーが入力を開始すると、その場でテキストが次のように変更されます。
[5___] % of disk space (102.4 GB of 2 TB)
表象
大きな数値または浮動小数点を含む数値は、異なる方法で表現できます。たとえば、番号1234.56は次のように記述できます1,234.56
。文化に応じて、同じ数字のテキスト表現は異なります。フランス語では、同じ番号が次のように記述されます1 234,56
。参照してください、あなたが1つを期待しないカンマ、およびスペース。
異なる国のユーザーは数字、日付、時刻などを書く習慣が異なるため、特定のロケールを使用する特定の形式を常に期待すると、遅かれ早かれ問題が発生します。
人間とコンピューター
Twenty-four
普通の人間はコンピューターと同じように考えていません。「24」は実際の数字であり、PCから通知される内容とは無関係です。
(1)ほとんどのシステムはこのタイプの入力をまったく処理せず、(2)ほとんどすべてのユーザーは完全な文字で書かれた数字を入力することを想像しませんが、そのような入力が愚かであることを意味しません。ではフェイス3について、アラン・クーパーは、このような入力を処理していない点が、ヒトに適応するために、理想的には、インタフェースが正しくこれらの入力を処理することができるはずコンピュータのできないことを示すことができます。
アラン・クーパーの本に追加しなければならない唯一のことは、多くの場合、数字が誤って数字で書かれていることです。コンピューターがユーザーに間違いを犯すことを期待している(そして、正しく書くユーザーを容認しない)ことは迷惑です。
Unicode
5𝟨
Unicodeには驚きがあります。同じように見える文字は同じではありません。納得できない?"5𝟨" === "56"
ブラウザの開発者ツールにコピーアンドペーストして、を押しEnterます。
これらの文字列が等しくない理由は、Unicode文字𝟨
が文字と同じではないため6
です。これにより、怒っている顧客が電話をかけて、アプリが機能していないことを伝え、合法的に見える入力のスクリーンショットを提供し、アプリが入力が無効であると主張する状況が生じます。
なぜだれかが数字のように見えるUnicode文字を入力するのでしょうか?ユーザーが意図せずに入力することは期待していませんが、別のソースからのコピーと貼り付けが原因である可能性があります。画面に表示されます。
結論
これらは、基本数値入力フィールドで得られるケースです。日付や住所など、より複雑なフォームを処理するために必要なものを想像させてください。
私の答えは、「愚かな」入力と呼ばれるものに焦点を当てています。テストは、ハッピーパスをチェックすることではありません。また、悪意のあるユーザーが意図的に奇妙なものを入力して破壊しようとしたときに、アプリが破壊されないことを確認することも重要です。これは、パーセンテージを求めている場合、ユーザーが1,000,000文字、負の数、またはbobby tableを含む文字列で応答しているときに何が起こるかをテストする必要があることを意味します。