web-dev-qa-db-ja.com

ソーシャルアプリで削除されたユーザーアカウントを処理する最良の方法は何ですか?

ユーザーが自分のアカウントを削除した場合、ユーザーのものをどうすればよいですか?

私はいくつかのアプローチを見ます:

1.再帰的にすべてのものを削除する

これは問題を引き起こします。私たちはコンテストを運営しており、誰かがアカウントを削除してコンテストへのエントリーを削除した場合、賞品の獲得と受賞の間にサイトから削除されます。彼らがフォーラムでディスカッションを開始した場合、すべての返信も消えます。それは間違ったアプローチのようであり、テストでは、この場合に問題が発生することを確認しました。

2.それらを「削除されたユーザー」アカウントに割り当てます。

システム内の取り残されたオブジェクトをすべて継承する「削除されたユーザー」という特別なユーザーを作成できます。獲得できる賞などがありますが、削除されたユーザーに付与されるのはおかしいようです。ものは常にユーザーのものであるので、このアプローチはアプリケーションエラーを防ぐように思われます。

3.ソフト削除ユーザー

ユーザー名はそのままにして、その横に「削除済み」の表示を追加します。アカウントはそのまま保持しますが、ユーザーがシステムを離れたことをユーザーに示すだけです。

どのような戦略を使用しましたか。また、ユーザーがアカウントを削除した場合の対処方法を教えてください。

16
sudonim

ユーザー名の取り消し線などのソフト削除は、サイトの全体的なコンテンツ(コンテストやディスカッションなど)を保持するための最良のオプションです。スレッドから一部のコメントを削除すると、結局のところ、残りのコメントがわかりにくくなる可能性があります。このオプションは、そのようなユーザーがいったんシステムに存在していたという事実を維持しても問題がない場合に機能します。

ユーザーがそこにいたという事実を削除できることが重要である場合(つまり、ユーザー名を残すことは受け入れられない場合)、一意性を維持する名前の変更をお勧めします。 「削除されたユーザー」全員の名前を変更するだけで問題が発生します。 2人または3人の削除されたユーザーが同じコメントスレッドに参加する場合を想像してみてください。誰が誰?代わりに、数字の接尾辞を使用することをお勧めします。これにより、deleted-414がdeleted-761と議論していて、deleted-521とdeleted-71の両方がコンテストに参加したことがわかります。

14
Monica Cellio

「ユーザーが自分のアカウントを削除した場合、ユーザーのものをどうするべきですか?」

あなたがやろうとしていることをユーザーに伝えようとするなら何でもすべきです。私がソーシャルメディアサイトを利用していて、自分のアカウントを削除するオプションがある場合、削除することを選択すると、サイトがすべてのコンテンツを含む自分のアカウントをDBから完全に削除することを期待または希望します。

7
DA01

必要な情報または関連する情報が添付されているユーザーがいる場合は、一時的削除アプローチがほぼ確実に最良のオプションです。もちろん、アカウントが削除された理由と、アカウントを使用不可にする必要があるかどうかにも一部依存します。

  1. 再帰的に削除する-この階層ツリーにはおそらく重要な情報があるため-受賞者ではない場合のディスカッションへの返信-これは悪いルートです。返信を促したコメントの削除は、投稿を削除する法的または倫理的な理由がない限り(アカウントを削除する必要がある理由を反映しているため)、通常は不十分なソリューションです。

  2. 削除済みに割り当てると、ディスカッションスレッドでは、だれがディスカッションを開始したか、誰がだれであるかが、複数の異なる削除済みユーザーからの応答であるかどうかが不明になります。階層が保持することが重要である場合、ユーザーを保持する必要があります。すべての詳細に所有者ユーザーを提供することは、「デフォルトユーザー」が適切な解決策である場合がありますが、この場合はそうではありません。

  3. ソフト削除ユーザーは、単にログインしたり、それ以上の情報を投稿したりできないようにすることを意味するだけかもしれません。繰り返しますが、それらを削除する必要がある理由によって異なります。多くの場合、ログインアクセスを拒否し、削除されたアイコンでマークすることは、これが適切なレベルの削除を提供する場合に最適と思われます。

4

これは、アプリケーションの性質、コミュニティの規範と期待、および法律に大きく依存するため、非常にトリッキーな質問です。問題を削除の1つとして見るのではなく、コミュニティを脱出する人として、それをどのように提供するかを考えます。

他の人と共同でコンテンツを作成していますか?他の人が、コメントしたり、次のバージョンを作成したりして、何らかの方法でコンテンツを操作しましたか?もしそうなら、他の人が作成したものに影響を与える場合、存在する人が開始したコンテンツを削除することはそれほど単純ではありません。

また、人の自律性を考慮し、アプリケーションを介して彼らの公共の代表を制御できるようにする必要があります。 Facebookに参加したくない場合は、Facebookに参加していると言わないようにする必要があります。

法律は、競合するアドバイスを提供することもできます。上記のドイツのように、アカウントの削除機能を必要とする法律がある場合があります。他の管轄区域では、何らかの虐待があった場合、コンテンツ(およびコンテンツを作成した人物の身元)を保持する義務がある場合があります。

私が好む傾向があるアプローチは、それぞれの状況は異なりますが、メンバーのアイデンティティを削除することですが、削除すると他のメンバーに悪影響を与えるコンテンツを保持することです。コンテンツは検索結果から除外するようにマークされている可能性がありますが、URLを知っている人のために残っています。より広範で明確なポリシーは特定の状況では機能しないため、この妥協策がどれほどの頻度で採用されているかに驚くかもしれません。

クリーンな解決策を見つけるのは難しいので、コミュニティの規範と期待に目を向けることを強調します。完全に削除しないと満足できない人もいますが、それを変更することはできません。

1
Todd Sieling

オプション1-あなたが言ったように多くの場所に抜け穴を作成します、確かに除外されました。データの整合性も問題になる可能性があります。

オプション3-ユーザーが本名をユーザー名として使用する場合があります。ユーザーがシステムから完全に抜け出したい場合は、データをリンクできないようにする必要があります。

オプション2はIMHOの最良のオプションです。報酬システムコードを調整して、賞金を上位の「アクティブ」ユーザーに授与することはできませんか?

0
Kashyap

ユーザーの観点からの最良のシナリオは、アカウントを一時停止するオプションをユーザーに提供することです。これは、基本的にソフト削除またはすべての情報を完全に削除するオプションです。

コードの観点から見ると、これはより手間がかかりますが、ユーザーにとって本当に良いエクスペリエンスであり、プライバシーを侵害することなく、情報を長く保持することができます。

0
Eric Bieller