【アプリ設計者必見】ユーザー退会処理の仕様の決め方をわかりやすく解説!

こんにちは。株式会社Pentagonの山本です。

アプリ開発で必須とも言える、ユーザーの退会処理ですが、退会時に何も考えずにユーザー情報を削除すると運用時に不具合が生じたりします。

今回の記事では、ユーザーの退会処理で考えるべきことについてまとめました。

結論から言うと、「物理削除と論理削除を理解した上で、退会時にどのデータを消して、どのデータを残すのか」決める必要があります。

目次

【前提】データの削除には2種類あります。

削除には、物理削除と論理削除の2種類があります。

物理削除とは、データを完全に削除する、通常の削除処理のことを指します。
一方で論理削除とは、現在有効なデータかどうかを示す値を変更することで、データを削除したことにする方法です。例えば、Userにdeletedというフラグを用意し、deleted=falseをdelete=trueと変更することで削除された状態にします。

物理削除 論理削除
削除される 削除された「扱い」になる
データは完全に消える 削除された扱いになる
削除の取り消し不可 削除の取り消しが可能

ユーザーが退会したときに、どのデータを物理削除し、どのデータを論理削除するか考える必要があります。

ユーザーの個人情報と関連データを洗い出す

まずはユーザーの個人情報と関連データを洗い出して、整理してみましょう。

例えば、Facebookを例に考えてみます。

ユーザーの個人情報

  • メールアドレス
  • 氏名
  • 居住地
  • 出身地

ユーザーの関連データ

  • 投稿
  • コメント
  • チャットメッセージ
  • 写真

退会時にどのような処理をするか決める

基本的に個人情報は退会時に完全に削除する必要があります。
ただし、ユーザーのデータ自体は残しておきたい(論理削除したい)というケースも多いです。

次の表は、上述したように洗い出したユーザーの個人情報と関連データを元にして、具体的な退会時の処理を決めた例です。

ユーザーのデータ 削除方法
メールアドレス メールアドレスはマスキングして削除する。yamamoto@blog.pentagon.tokyo → uuid@example.com と変更して削除したことにする。
 氏名  氏名は「退会したユーザー」と変更して削除したことにする。
居住地  物理削除する。
出身地  物理削除する。
写真 物理削除する。
コメント 退会後も残しておく。
チャットメッセージ 退会後も残しておく。

注意:例えば、支払い履歴などユーザー退会後も残しておくべきデータもあるので注意が必要です。

まとめ:退会処理は要件定義の段階で明確にしておく

ユーザーの退会時には、何を消して何を残すか、消すにしても物理削除するのか論理削除するのか、が重要です。物理削除したデータは復元できないので、運用時のデータ分析を考慮して削除方法を検討する必要があります。

特に、ユーザー同士がコミュニケーションをするアプリでは、ユーザーが退会したユーザーの情報の表示を試みるケースもあります。このときにどういったUIにするのかにも影響を及ぼすので、慎重に検討しましょう。

このように、ユーザーの退会処理は意外と考えることが多いです。
退会時にデータを削除をしたことで不具合が発生することもあります。
けっこう工数がかかるので、要件定義の段階で明確にしておくことが必要です。

採用情報はこちら
目次