web-dev-qa-db-ja.com

いつデータを保存しますか?

いつビジネスアプリケーションにデータを保存する必要がありますか?

私たちには多くのアプリケーションがあり、現在それらはすべて同じ動作をしているわけではありません。私はUXの経験があまりなく、いつ自動保存動作を使用する必要があるのか​​、いつ保存ボタンを使用するのか知りたいのですが。

メインアプリケーションの左側にはすべてツリー構造があり、右側では、ツリーで選択したアイテムの一部のデータを編集できます。データは分離され、さまざまなタブに表示されます。

私たちの行動:

  1. ツリーは自動的に保存されます。タブに保存されたデータが変更されたか、アプリケーションが閉じられ、ツリーの選択された項目が変更されました
  2. ツリーは保存されません。保存ボタンがクリックされた場合のみです。右側にタブはありません。
  3. ツリーは自動的に保存されます。無効なデータがある場合を除いて、データは自動的に保存されます。

多くの場合、データはDataGrids(WPF)に表示されます。

11
Daniel Bişar

どちらか一方の極端に行きたいと思うでしょう。

  • すべてを明示的に保存。すべてを明示的なコマンドで保存する必要があります。

  • すべてを自動保存。すべてが自動的かつ瞬時に保存されます。

ユーザーがシステムの動作のできるだけ単純なメンタルモデルを使用できるようにする必要があります。ユーザーに負担をかけたくない

  • 明示的に保存する必要がある場合とそうでない場合を予測します。

  • 一部の編集を明示的に保存していないため、システムが特定のアクションを実行できないことを理解してください。

  • 自動保存をトリガーするアクション(タブの変更など)を把握します。

  • 変更をコミットするためにウィンドウまたはペインを閉じる必要性に対処します(多くの場合、ユーザーは、いくつかの主要なウィンドウを常に開いたままにして、作業の指示に従って定期的に簡単に戻ることができるようにします)。

これを実現するには、Explicit Save for Everythingは次のように機能する必要があります。

  • ユーザーが明示的に「保存」コマンドを選択するまで、ウィンドウ内の編集(ツリーもタブも)は保存されません。

  • 1つのSaveコントロールは、ツリーとタブの両方について、ウィンドウ内のすべての変更を保存します。

  • ユーザーは、[保存]を選択する前に、ウィンドウ内のすべてに任意の数の変更を加えることができます。ユーザーはツリー、複数のタブの複数のフィールド、およびウィンドウの複数のデータベースレコードを変更でき、[保存]を1回クリックするだけですべての変更が保存されます。ユーザーが保存していない変更でウィンドウを閉じようとする場合を除いて、システムはユーザーに何かを行う前に保存するかどうかを強制することはありません。

自動保存はすべて次のように機能するはずです。

  • ウィンドウ内のすべてが自動保存され、ツリー内の変更とタブの変更の両方が行われます。

  • ダイアログボックスへの入力には例外を設けることができますが、これらは、使い慣れた[OK]ボタンと[キャンセル]ボタンを備えた個別の小さなウィンドウ(または主張する場合はライトボックス)として表示されます。いつものように、ダイアログボックスはほんの数フィールドに制限する必要があります。ユーザーが20〜30秒で完了できるものです。

  • 自動保存は、意味のあるアトミックユーザー入力ごとに即座に実行されます。ユーザーがラジオボタンをクリックすると、その変更はすぐに保存されます。小さなテキストボックスへの編集は、テキストボックスがフォーカスを失うか、ユーザーがEnterキーを押すとすぐに保存されます。ユーザーがテキストボックスを編集している間は、「一時的な」グラフィックの外観を想定する必要があります(これが何であるかをテストする必要があります)。

  • 理想的には、自動保存は自動リフレッシュと組み合わせる必要があります。この場合、ユーザーが表示しているオブジェクトは、他のユーザーが加えた変更で自動的かつ迅速に更新されます。アイデアは、オブジェクトのコピーで作業しているこの複雑なメンタルモデルからユーザーを遠ざけ、ユーザーが実際のオブジェクトで直接作業していると考えさせることです。つまり、UIは物理的なコントロールパネルのようなものです。

  • 元に戻す操作はどのアプリでも必要ですが、自動保存を使用する場合は、高度なマルチレベルの元に戻す操作が特に重要です。

Explicit Save for EverythingとAutosave Everythingのどちらを選択するかは、主にシステムのパフォーマンス機能に依存します。一般に、帯域幅がすべての自動保存を処理できる場合は、それを実行します。保存の要件は、発生するのを待っているユーザーエラーのままです。また、ユーザーに作業を追加します。自動保存がすべてのアプリの標準になったときです。

ただし、保存を要求するとエラーが発生するのを待っているため、保存できないためにほぼすべてのユーザーが悲劇的な作業を失い、ほぼすべてのユーザーが強制的な保存者になっています。したがって、自動保存はユーザーを不安にさせる可能性があり、トレーニングとドキュメントを通じて繰り返しユーザーの作業が自動的に保存されることを保証しない限り、自動保存を使用したくない場合があります。

13