私は、シンプルさと「ジャスト・ユース」の考え方に重点を置いたWebアプリを開発しています。基本的な考え方はメモを書くことです。コンセプトを計画するとき、自動保存のアイデアに非常に前向きなので、ユーザーはコンテンツの保存や失われたコンテンツについて心配する必要はありません。新しいメモを作成するまで入力してから、もう一度入力してください。
ただし、一部の使用テストでは、autosaveパターンが最初はあまり評価されないことが示されています。すべてのテスト担当者が入力を開始し、「保存」ボタンを探しました。したがって、ユーザーに「保存する必要はない、それは常にあなたのために行われる」ということを理解するようにユーザーに指示するために、もう少し努力します。それは機能しましたが、ユーザーは「OK自動保存ですが、テキストはどこにありますか?」と「」と尋ねましたコンテンツが確実に保存されるようにするにはどうすればよいですか? "
私の質問は、自動保存には自然な「いい感じ」があるのですが、実際にテキストエディターを使用する場合、コンテンツが安全であることを「確認」したいのでしょうか。
このテーマに関する研究はありますか?または、アプリケーション設計の保存パターンを扱うときに、誰かがいくつかの貴重な経験を共有できますか?
グーグルは実際にはかなりこれを行います。 Googleドキュメント、Gmail、Bloggerの自動保存機能を備えています。
いずれの場合も、アプリは自動的にコンテンツを保存し、「ドラフトは午後3時4分に保存されました」のようなメモをどこかに表示します。ただし、「保存」ボタンもあります。私は彼らのアプローチがとても好きだったので、最近の大規模なWebサイトの書き換え用にほぼ正確にコピーしました。
彼らのアプローチは、ユーザーが期待することを行うという従来の使いやすさのルールを満たしているため、うまく機能します。ユーザーは保存ボタンを期待しているので、おそらくそれを彼らに与えるべきです。もちろん、保存するものが何もない場合(最後の保存以降に何も変更されていないため)、保存ボタンを無効にし、コンテンツが最後に保存された日時を示すテキストをGoogleと同じように配置できます。
このアプローチは、エンジニアや技術者を対象としたかなり複雑なアプリケーションで使用されており、現在10年以上市場に出回っています。ここに私たちの経験があります:
特に最初は、ユーザーが慣れるまでにかなりの時間がかかりました。さらに悪いことに、私たちは包括的な「取り消し」や履歴を提供していません。私たちが空いているニッチから始めていなかったならば、それは本当の問題であったかもしれません。そして、初期のユーザーに明確な利点を与えます。
興味深いことに、それをしばらく使用する必要があった後、そのように働くのが好きだと最初に認識したのはパワーユーザーでした。
近年、私は主観的に新しいユーザーでも改善されたと思います:ユーザーがつまずいた重大な問題を大まかに調べ、手動で保存せずに他のアプリに慣れているユーザーが多いようです。
それでも:ファイル+元に戻す。
これは、ユーザーの期待と行動の変化に影響を及ぼします。ユーザーとシステム間の信頼関係を構築します。
問題は、「保存」ボタンの履歴があり、システムが本来実行すべきことを実行していることを確認するために、これに依存するようになったことです。言い換え Alan Cooper -保存モデルはユーザーエクスペリエンスの不要な部分です。これにより、ユーザーはシステムの動作方法を意識する必要があります。それは彼が実装モデルとユーザーモデルを参照する二分法です。
SO-成功の鍵は、トレーニングホイールを透明で段階的に慎重に取り除くことです。保存モデルに思いがけない思いがけない変更を加えると、人々は不安になります。これは AppleがOSXから保存を削除する への応答で確認できます。システムがユーザーに、なぜこれが起こっているのか、どのように生活を改善するのかを伝えることができなかったため、混乱と不信に直面しました。
一方、グーグルは彼らのセーブモデルではるかに良い仕事をしました。保存プロセスを処理していることをユーザーに完全に認識させ、保存プロセスの ステータスを認識 を維持しました。
システムは、保存アクションが発生したときに、システムとユーザーの間で非公式で目立たない会話を開始する必要があります。彼らが何をしているのか、なぜそれをしているのか、そして彼らが何を期待できるのかを彼らに知らせてください。いくつかのインラインの一時的なメッセージを使用します。
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
自動保存は非常に便利だと思います。ただし、これはWebアプリであり、中断される可能性のある一連の通信を処理するため、データが保存されているかどうかについてフィードバックを提供できます。 (サーバーからの確認。)送信中の変更が行われたときに手がかり(アスタリスク、「変更を保存しています」などのテキスト)を提供すると、人々は自動保存を信頼する自信が高まります。そのため、アプリが変更を通知していることを入力し始めるとすぐに視覚的な手掛かりが必要になり、その後、プロセスが完了したことを手掛かりにする必要があります。 (また、誰かが誤ってインターネットケーブルを抜いたときにメッセージをポップアップするのにも最適な場所です。)
次のいずれかを使用します。
1)保存/キャンセルボタンを使用し、ユーザーがクリックしたときにデータを実際に保存またはキャンセルする(ユーザーの要求に応じてデータを明示的に保存する)
2)autosave機能を使用し、保存が正常に完了したら[保存]ボタンを無効にし、[キャンセル]を使用して以前に保存したデータを削除します。
2番目のケースで[保存]ボタンを削除できない理由:変更されたすべてのデータが実際に保存されていることを保証できない場合、これらは非常に困難です(パフォーマンスの問題、予測できないユーザーのアクション)。
どちらの場合も、データが変更され、保存されていないことを確認してください。
(Google、Wordの自動保存機能を参照)
私はこのトピックについて他の意見を読むためにここに来ました。私の個人的な意見では、自動保存は元に戻す機能でバックアップされている場合にのみ問題ありません。誤ってポインターをある位置から別の位置に移動したとき、Googleマップで非常に否定的な経験をしたことを覚えています。元に戻すボタンを見つけようとしたところ、その時点でアプリから「変更が正常に保存されました」と報告されました。私はそれが起こることを望んでいませんでした。ポインターを元の位置に戻すのに時間がかかりました。特定の座標へのオプションセットポインターがないため、これは非常に不愉快な経験でした。
反対側からは一回限りでした。自動保存がなければ、何らかの理由でデータが失われるケースが増え、私はもっと不幸になると思います。
唯一の問題は、元に戻す/やり直しにはいくつかの労力と時間が必要なことです。
では、「取り消し」を見てみましょう。自動保存された変更を自動的に保存した場合はどうなりますか?ユーザーが「元に戻す」ことを望んでおり、インターネット接続が失われています。不運ですか?または、アプリは接続が回復した後、すべての不要な変更を元に戻すことができる必要がありますか?ブラウザアプリ(Angularjs)でブラウザが閉じられていると非常に複雑になります。ええ、ローカルストレージで追跡できますが、実装だけでなくユーザーにとっても複雑になっています。
簡単な検索ではあまり見つけることができませんでしたが、GoogleにはGoogleドキュメントの自動保存機能に関する調査が必要だと思います。特に、自動保存が頻繁に行われ、反復にロールバックされるだけでなく、複数のユーザーが編集している間、他の共同編集者が確認できるように変更が色分けされてライブで行われます。
このモデルは一部の人にとって少し奇妙ですが、エクスペリエンスはかなり良く、おそらくこれはコラボレーション機能を備えたアプリでなくても、少し探索できるモデルでしょう。