現在、エンタープライズアプリケーションにはいくつかの画面があり、ユーザーは情報を表示できますが、選択した場合は、その画面の情報を変更することもできます。ほとんどの場合、ユーザーはそこにアクセスして表示しますが、ユーザーが州または会社を何かに関連付ける必要がある場合や、それらの関連付けの日付を変更したい場合などがあります。
現在、ユーザーはこの画面を「表示」できます。ユーザーが画面を変更する場合は、右上に「変更」というボタンがあり、画面のモードを読み取り専用から編集可能に切り替えます。いくつかの質問が出てきて、私はこのようなことに遭遇した可能性のある人を探していました:
「変更」ボタンは編集可能なときに「表示」に変更でき、ユーザーは表示のみとして「ロックダウン」に切り替えることができます。この「モード」のアイデアは、不格好に感じられます。
また、画面下部の「保存」ボタンを押すと、自動的にモードが「表示」に戻るとのことですが、これも非常に奇妙に感じられるので、避けたいと思います。
誰かが同様のシナリオに対処したかどうか、それらがどのように対処したかなどを確認したい「ホバーアンドエディット」リンクが表示された場合、すべてに一貫性を持たせるには、アプリケーション全体に多大な変更を加える必要があります。
表示モードと変更モードを切り替える方法
明確な質問に答えるために、単一のコマンドボタンで表示と変更を切り替えることができます。これは、[表示]と[変更]の間でボタンのキャプションを変更することによって実行できます。または、[変更]コマンドボタンを切り替えることもできます。 「in」を押すと、ページは変更モードになります。もう一度クリックして「上げる」と、ページが表示モードになります。
コマンドボタンを表示に戻すと、すべての入力が保存されます。ただし、保存するが変更モードを切り替えない別の[保存]ボタンを用意することも検討する必要があります。これにより、ユーザーは、作業が失われる可能性を減らすために、作業を保存することができます(たとえば、接続や電源が失われたり、ユーザーが何かをねじ込んで終了する必要があるため)。経験則として、変更が完了する前にユーザーが画面上で30秒以上頻繁に作業する場合は、保存を含める必要があります。少なくとも、これはユーザーの不安を軽減します。
または、ユーザーがフィールドを変更するたびに自動的に保存し、ユーザーにその心配をさせないようにすることもできます。
[保存]ボタンと[変更]ボタンは、画面のスクロールしない部分に配置して、いつでもアクセスできるようにする必要があります。
画面には、[変更]ボタン以外のモードを明確に示す必要があるため、ユーザーは何ができるか、何をしてはいけないかを常にすぐに把握できます。同時に、レイアウトとラベル付けは変更しないでください。学習と再配置の時間を最小限に抑えるために、フィールドとキャプションは同じである必要があります。さらに、画面を表示用に最適化する必要があります。これは、ほとんどのユーザーが行うことになるためです。したがって、はい、無効化を使用してフィールドを読み取り専用にしないでください(読みやすさを妨げるだけでなく、一部のユーザーは無効化されたフィールドを「適用外」のデータを意味すると解釈します)。
表示モードでは、フィールド値の周囲に境界線がないか、非常に薄い境界線を使用するか、フィールド値の下に下線を引くことをお勧めします。ボーダーは編集可能性を示唆し、読みやすさを妨げる混乱を追加することもできます。表示モードでは、ラジオボタン、ドロップダウンボタン、スピナーボタンはなく、無効なボタンもありません。選択したラジオボタンの値のみを表示します。チェックボックスをテキストに置き換えます(「はい」と「いいえ」、または「実行」と「実行しない」など)。変更モードでは、フィールドは適切な編集コントロール(テキストボックス、ドロップダウン、ラジオボタン、チェックボックス)に目立つ枠で表示されます。
これは、モードを処理するための最も単純で最も簡単な方法です。
変更モードはありますか?
モードはまだ不格好で、ワークロードを追加し、ユーザーエラーと混乱の原因となるため、個別の変更モードを検討することはできません。編集モードを使用するかどうかを決定するには、費用対効果を見積もります。ボタンを2回クリックするために GOMS-KLM 定数を使用すると、ユーザーモードのみ(熟練したユーザーの場合)で編集モード(CM)に出入りするコストは約5秒です。ユーザーが編集する必要がある確率(PM)を0.25と推定します。したがって、編集モードの平均コストはPM * CM = 0.25 * 5 =セッションあたり1.25秒の作業です。
メリットを計算するには、以下を見積もります。
PE:特定のユーザーが単にコンテンツを表示しているときにエラーを起こす確率。これは非常に低い確率です。マウスはどのコンテンツの近くでもクリックされていません。ほとんどの場合、スクロールバーまたは戻るボタンの上にあります。ブラウジング中にWebページのコンテンツを誤ってクリックした頻度はどれくらいですか?クリックした場所があった場合、フィールド値を変更する確率はどれくらいですか? PEは1000に1つのようなものだと思います。
CU:ユーザーがエラーを作成した後、エラーを修正するための時間。適切に設計されたアプリでは、これは最初からエラーを発生させる時間にすぎません。では、ワンクリックエラーが2.5秒だとしましょう。元に戻す機能はありますか?
PI:ユーザーがエラーを認識していない、またはエラーを修正できない確率。適切に設計されたアプリでは、ユーザーの変更はすべてユーザーにすぐにわかり、それを元に戻す方法もすぐにわかる必要があります。それは単なるフィードバックです。適切に設計されたアプリは、ユーザーが何かが変更されているかどうかを確認するための代替手段も提供する必要があります(たとえば、[保存]ボタンが有効になった、または[元に戻す]リストにアクションが表示されるなど)。 PIは約0.10以下になると思います。
CE:平均的なキャッチされていないエラーのために失われた時間(または同等の時間)。エラーにドルの値を付けることができる場合は、ユーザーの時間単価を使用して時間に換算します。現実的である:ほとんどのエラーのコストはごくわずかです。お客様の名前から1文字を削除した場合でも、パッケージは配達され、お客様の善意のほんの少しだけを失うことになります。
次に計算します。
(1-PM)* PE * [(1 – PI)* CU + PI * CE]
この値がPM * CMより大きい場合は、変更モードを使用する価値があります。
上記の大まかな数値を使用してCEを解くと、変更モードを正当化するには、キャッチされていないエラーのコストが少なくとも16,667秒でなければならないことがわかります。ユーザーが企業階層で比較的低い場合、1時間あたり25ドルが支払われると、115.74ドルになります。
自分の番号を試してみてください。ただし、修正モードが正当化されることはほとんどありません。これは、キャッチされていないエラーのコストが非常に高い(CE)か、修正が必要になる可能性が非常に低い(PM)場合(つまり、モードの平均コスト(PM * CM)が非常に低い場合)になります。後者が発生する可能性があります。 PMは平均的なビジターにとって非常に小さいです。
キャッチされないエラー(CE)の高コストがある場合はどうなりますか?
率直に言って、マウスのすべてのキャッチされなかったスリップが平均$ 115.74である場合、PI = 0.10でアプリケーションを再考する必要があります同じエラーが修正モードで発生するためです。実際、ユーザーがセッションの25%だけでコンテンツを編集したとしても、誤った変更は表示モードよりも変更モードの方がはるかに可能性が高いと思われます。ユーザーは何かを変更する試行中–少なくとも編集コントロールの上にマウスを置き、クリックします。おそらく最も一般的なエラーは、マウスのずれではなく、誤解によるフィールドの誤修正です。
捕捉されなかったエラーのコストが高い場合、UI設計は、エラーを発生させる可能性を非常に低くする(つまり、PIを削減する)ことに特に注意する必要があります。これには、次のようなUI機能が含まれます。
明確なデータ表現。重要なデータの価値と変更は、ユーザーには非常に明白です。極端な場合は、セッションで加えられた変更をハイライト表示することを検討してください。これにより、ユーザーはいつでも戻って、正しく実行していることを確認できます。
元に戻す。 ユーザーが30秒を超える変更を頻繁に完了するWebアプリでは、取り消しは必須です。元に戻す機能がない場合は、キャンセル機能をサポートする必要があります。
健全性チェック。コストが高くなる異常な(つまり、おかしな)値を入力するユーザーに確認メッセージを提供します。
プログレッシブ開示。表示する必要がほとんどなく、変更が危険なデータは、別の部門または別の画面/ページ/ウィンドウに配置する必要があります。
安全カバー。危険な影響を持つ単一のコントロールには、「カバー」を含めることができます。これは、変更するために2回のクリックが必要なものです。たとえば、これを行うには、ラジオボタンやバイナリフィールドのチェックボックスではなく、ドロップダウンリスト(デフォルトでは安全な値)を使用します。
明示的なコミットメント。保存して保存する機能と自動保存機能は問題ありませんが、場合によっては、ユーザーが明示的に何かをクリックして、「はい、データを確定しましたので、それを使って何かしてください」と言うこともできます。これは、データの変更によってプロセスをトリガーできる場合に必要ですが、複数のフィールドを最初に変更する必要があります。
小切手とダブルエントリー。ユーザーの作業を実行する前に確認する個人をビジネスプロセスに含めます。重要なデータの入力/変更を2人のユーザーが個別に行うことを検討してください。両方が同意しない場合は、フラグを立てて、(おそらく監督者の助けを借りて)違いを解決できるようにします。
ユーザーグループ。重要なデータを変更する必要のあるグループと変更する必要のないグループにユーザーを分割します。表示のみの表現を取得しないもの。
PIを最小化することで、ユーザーが何かを変更するつもりであるかどうかに関係なく、キャッチされないエラーを減らすことができます。したがって、変更モードでのコストのかかるキャッチされていないエラーの可能性に対処することで、最終的には変更モードが不要になる可能性があります。
説明するクリックして編集するパターンは、エンタープライズアプリケーションでは非常に一般的です。
(a)あなたが説明する75%のビュー/ 25%の編集比率と(b)偶発的な編集のコストが中程度から高額であることを考えると、このパターンをお勧めします。
利点:
クリックして編集すると、意図の肯定的な確認が得られます。ユーザーが編集する前に確認のやり取りを実行するのに役立つエラーのコストが発生します。
ラジオボタン、選択、チェックボックスなどの「シングルタップ」コントロールにより、1つの誤ったキーで値が意図せずに変更される可能性があるため、意図しない編集を防止できます。
CRMやコラボレーションから産業用制御システム、製造スケジューリング、航空管制、防衛に至るまで、多くのエンタープライズアプリでこのアプローチを見てきました。
バイモーダルの場合、シンプルなチェックボックスが好きです
トグルボタンでは、トグルが現在のモードを表しているのか、トグルするモードを表しているのかは明確ではありません。
アプリでは、これは表示モード(編集ではない)でも使用されます。ユーザーはコピーするテキストを選択できるようにしたいので、明示的な表示(読み取り専用)モードが好きなので、誤ってデータを変更することはありません。彼らは編集モードで別の保存ボタンを望んでいません。表示モードでは、フィールドの外観が少し異なります(データは読み取り専用です)。このアプリの編集モードでは、変更を即時に適用したいと考えています-フィールドは独立しています。
ユーザーは変更よりも編集を優先しました。チェックされていない編集は明確に表示されます-データが表示されます。