1 of 1

Problem

MCommunity groups are often used to send out emails or or grant access to resources. However, they are easy to delete, causing many unintentional deletions with no undo option. Additionally, other owners of deleted groups are not notified of deletions. This results in many tickets to restore deleted groups and is an unnecessarily complex user experience.

Methods

Results

Groups can now be trashed before permanent deletion using the new API endpoint. This means that:

  • Users can avoid accidentally deleting groups
  • Other owners of groups will be notified of trashed groups and can restore or delete groups permanently as needed
  • The internal group expiry and deletion system is consolidated to use the endpoint

To make this enhancements, we used the “expired” state that exists on groups to mark them as trashed. Essentially, groups are placed in the trash by expiring them. They can then be recovered by renewing them.

Frontend:

  • Added a trash tab to display “expired” groups
  • Warn users upon trashing groups
  • Allow renewal or deletion of trashed groups

Backend:

  • Created a soft deletion(trashing) feature endpoint that emails owners of trashed groups
  • Modified existing internal group expiry and deletion system to call the new API endpoints

INTERNSHIP

Showcase

Enhancements to Group Deletion

In the current MCommunity, the process for deleting groups involves only one button and no warnings. This makes it easy to accidentally delete groups. In the new MCommunity, we have added a feature that allows groups to be trashed (soft deleted). Trashed groups will be deleted permanently after 7 days, or can be manually restored. This enhances the user experience when working with groups.

Group Members:

Frank Wang - frnkwang@umich.edu

Jianyi Wang - jianyw@umich.edu