使用例
モバイルデバイスで、ユーザーはネイティブアプリ(Windows Phone)を使用して数学のスキルを向上させています。一連の式で計算されている多くの式があり、ユーザーは続けて10の正解を得ようとしています。ユーザーが式に答えるたびに、ユーザーの答えの長さが計算される式の長さに等しい場合、アプリケーションは式の答えとユーザーの答えを比較します。
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
ステートメント
上記の使用例に送信ボタンがないことは、アプリケーションのフローと使いやすさのトレードオフであり、送信ボタンが適切です。送信ボタンがないと、ボタンを押す手順を省略できるため、質問への回答の流れが簡単になります。反対に、タイプミスは、ユーザーからの回答が間違っている(ほとんどの場合)という結果になります。
質問
ユーザビリティルールの少なくとも1つに違反している場合でも、このトレードオフを実行しても問題ありませんか?
情報:この質問のアイデアは、この問題を 私の元の質問に対する彼の回答 で私に明らかにした@dnbrvからきています。もともとは大丈夫だと思っていましたが、彼の答えを読んだ後はよくわかりません。それがこの質問がここにある理由です。 meta 。で提案されたため、これも別の質問です。
編集最終設計
タイプミスに加えて、別の結果として、正解の解答の桁数と解答の桁数に違いがあると、学生が混乱する可能性があります。
例えば:
74 + 26。彼女は90と入力するかもしれませんが、正しい答えは100なので、何も起こりません。
32/0。彼女は32と入力しようとするかもしれませんが、3と入力するとすぐにエラーが発生します。
私は送信ボタンを提供することに傾倒します。ただし、これはモバイルデバイス上にあるため、ユーザーに指をスワイプさせるだけで送信する別の方法を提供できます。スマートフォンのテンキーでもお試しいただけます。スワイプアクションの誤登録の可能性は低く、指でスワイプして次の質問を取得することについては非常に満足できるものがあります。
このような状況では、2つの考えられる否定的な結果を比較して、どちらがより大きな影響を与えるかを確認することをお勧めします。
送信しないと、ユーザーが誤った回答を誤って送信したために失敗し、テスト全体を再起動する必要が生じる可能性があります。
送信を提供することは、ユーザーが質問に答えるたびに追加のボタンを1つ押す必要がある場合に起こり得る最悪の事態を意味します。ボタンのクリックが10回増える可能性があります。
あなたが本当にあなたが彼らにあなたの製品を使わせて欲しい-そしてあなたの製品を使い続けたいなら-できるだけユーザーをいらいらさせたくない。一緒にアプリを放棄してもらうには、少し煩わしさがかかります。アプリが完全にユニークであるか、ユーザーに他の場所ではできないことを実行する能力を与えていない限り、アプリをできるだけ幸せにしておく必要があります。そうしないと、アプリをそのままにして他の場所に行きます。
私の元の答え では、3つのボタンを追加することを提案しました:Next question
、Submit
、Try again
(提出された回答が間違っている場合)。そのようなデザインは非常に詳細であり、あまりトレーニングを必要としないにもかかわらず乱雑になるので、それは私を悩ませました。私はそれを私の精神的能力の最中ではなく、夜遅くに書いたので、その結果、そのような状況での実際のワークフローをあまり考えませんでした。
紙でテストを受けている学生を見てみましょう。
このワークフローから、生徒は答えを書いたり書いたりせずに次の問題に進むことで問題が完了したことを生徒が示していることに気付きます。最後に、彼女はテスト全体をチェックのために教師に提出します。
実際のテストとこのソフトウェアの唯一の違いは、テストの目的は、事前に選択された問題のできるだけ多くを正しく解決することであり、このアプリの目的は、ランダムに生成された10個の問題を続けて正しく解決することです。つまり、各回答は個別に送信し、リアルタイムで確認する必要があります。では、ユーザーが回答を送信し、質問をスキップして、可能な限り少ないボタンで次の質問に進むにはどうすればよいでしょうか。
かなり簡単:回答入力ボックスの内容に応じてラベルを変更するボタンが1つだけ必要です。何も入力されていない場合、ボタンはSkip & show the next problem
。入力されたものがある場合、ボタンはSubmit & show the next problem
。
ボタンのラベルの2番目の部分(アンパサンドの後)もcontinue
またはadvance
にして、水平方向のスペースを節約できます。子供向けのアプリで「ビッグワード」を使用することに懸念がある場合は、次の点に注意してください。
これで回答の確認が完了したので、戻って間違ったものを確認または修正する方法を見てみましょう。これは主に方法論を教えるため、注意が必要な部分です。 2つのアプローチのどちらが最適であるかを理解するには、フィールドの専門家に相談する必要があります。
続けて10の正解が必要であることを強調します。これを行うには、ユーザーが次の問題に進む前にのみ回答を変更できるようにする必要があります。次の問題に進む際の正解。ユーザーは過去の質問と解答を正解と一緒に確認することのみを許可します。ワークフローは
User writes answer ->
User taps "Advance" ->
System flashes a toast "Correct!" / "Incorrect. The answer is x" ->
User taps the old problem in the list and sees the problem, submitted answer, and the correct answer
インタラクションを実際の体験に似せます。このようにして、ユーザーはスキップされた問題または不正解の問題に戻って、回答を試みることができますもう一度。この場合、システム通知はCorrect
またはIncorrect
のみであり、ユーザーが自分で入力するまで答えはわかりません。ここでの問題は、ユーザーが10の質問に回答する可能性があることです。そのうち2つは間違っていて、1つはスキップされ、その後、これらの3つに戻って修正し、目標を達成します。このワークフローは前に説明した紙のテストにかなり近づきますが、最初の試行で数学の問題を解決することを教えるというアプリの目標に反する場合があります。
フローを進める原因を明確にするためにそこに送信ボタンを配置する必要があると思いますが、必要に応じて自動化できない理由はありません。
これには2つの利点があります。1つ目は、ユーザーがフローを理解し、他のユーザーが説明したような停滞する可能性のある状況ではなく、その可視性に満足できることです。また、自動化されたステップ(JavaScriptなど)に問題がある場合/ AJAXは何らかの理由で機能しません)、ユーザーのフォールバック計画があります。
このような状況で私が考えたい単純な例えは、2階間だけで人を運ぶリフト(米国:エレベーター)の設計です...これは一種のバイナリ位置であり、初期の設計にはインターフェースがまったくなかったため、ドアが閉まると、それは他の唯一のフロアに行きますが、ユーザーを観察することから、2つのフロアのボタンを配置して、ユーザーに快適さと正常さの感覚を与えます。ボタンがありました。
ユーザーが実際に使用する必要がない場合でも、ユーザーが期待しているものをユーザーに提供する必要がある場合があります。
短いバージョンの回答が必要な場合は、最初のセクションをスキップしてください。そうでなければ、読み続けてください。
この問題の背景を見ると、これは適用する場所と適用方法によって異なります。たとえば、現金自動預け払い機(ATM)を設計している場合、それらのほとんどは個人識別番号(PIN)を入力するときに送信ボタンが必要ですnot。これによりプロセスが高速になり、ユーザーはPINを覚えることを試みることがよくあります。これは、システムにアクセスするより高速な方法を提供するためです。現時点では、マシンは単一の操作しか想定していないことに注意してください。 。
テキストの入力時に誤った入力をクリアする機能を提供すると、多くの場合、快適なユーザーエクスペリエンスになる可能性があります。
追加の機能強化には、予想される入力に対する入力の段階的な視覚的表示を含めることができます。
SPB Brain Evolutionなどのモバイルデバイスの一部の脳トレーニングゲームは、notを実行するレベルで送信ボタンを押す必要があります合計を計算して入力する必要があります。ユーザーは値が正しくなるまで値を入力し続けるだけで、正しい量が入力されると、エクササイズが自動的に続行されます。最後に入力した文字/数字を削除するクリアボタンが用意されています。
入力テキストの長さが既知の場合、本当に送信ボタンが必要ですか?
->はい、まだ必要です。唯一の理由は、あなたが正しい答えの長さを知っていることですが、ユーザーが入力する長さはわかりません。そして重要なのはその長さです。
入力テキストの長さがfixedの場合、本当に送信ボタンが必要ですか?
->いいえ、ここでは必要ありません。例としては、ATM、SIMカードのピンコード、ロック解除コードなどがあります。この場合はユーザーが入力する長さを知っていますです。