Overview
At a first glance deleting an object is simply the inverse action of creating it. But it’s often a more complex and stressful task than creating a new object.
This guideline will focus on the following situations the end-users can encounter when deleting an object:
- The importance of deleting information that is associated with the object and the loss of the work done to elaborate it.
- The constraints between the to-be-deleted object and the other objects that already use it and, thus, prevent the object from being deleted.
- The possibility to use a tool showing these constraints.
- Multi selecting main objects that need to be deleted and all other dependent objects that must be deleted at the same time.
Furthermore, deleting objects can be the elementary task of a greater activity, like:
- Cleaning up from tries or an intermediate elaboration.
- Refactoring data environment in production.
- Migrating on a new set of objects.
These activities are not covered by this guideline. But in these cases, the user may also have to deal with:
- The strategy of deletion: deciding to delete all objects altogether or step by step by deleting the dependent objects first until finally deleting the “root” object as initially planned.
- The deletion rights and the communication with the owners of the objects if the user cannot delete the object themselves.
- Identifying if the “terminal” objects (the dependent objects that don’t have dependent objects themselves) are used by someone or not.
- The elaboration of the migration plan to not use the to-be-deleted object anymore and the follow up of this plan.
Usage
Remove or Delete
Removing suppresses the reference to the object. After removing, the object still exists.
Deleting suppresses the object. After deleting, the object does not exist anymore.
From the UI point of view, these two actions have the same result: their representation disappears from the screen. For that reason, the tray icon is common for these two actions.
According to the impact of deletion, different user feedback is provided:
Automatic selection information message
After triggering the delete action, the system may automatically add to the selection some objects that need to be additionally deleted.
This occurs for example when objects are owned by the initially to-be-deleted object and are also visible and, thus, selectable in the list
After an automatic expansion of the selection, the corresponding objects in the list are selected and then the following information message should be displayed with:
- {ObjectTypeName} : the name of the type of the to-be-deleted object
- {subObjectTypeName} : the name of the type of the objects that are automatically selected
- {n} : their number.
with:
- {ObjectTypeName} : the name of the type of the to-be-deleted object
- {subObjectTypeName} : the name of the type of the objects that are automatically selected
- {n} : their number.
Once the user has checked the “Don’t show this again” box, this message will not appear for this combination of sub object type and object type again.
Delete error or confirmation message
A message box to confirm the deletion is compulsory if deleting cannot be undone.
Before displaying this box, the system must check if the selected items can be deleted or not.
The header of the message box is:
- An error header when no object can be deleted
- A warning message when some objects can be deleted
The body has one or two messages:
- A message concerning the object(s) that cannot be deleted (Section A)
- A message concerning the object(s) that can be deleted and an invitation to delete it/them. (Section B)
Additional information about the objects that cannot be deleted is accessible by:
- A “Show Impacts” button that displays a dialog box with an impact and lineage tool.
- A “Show Details” link that expand the box that displays the impacted objects that can or cannot be deleted.
To keep the normal workflow simple and standard, the “Show Impacts” button or the “Show Details” link are not displayed when all selected objects can be deleted.
To resume, we have 5 configurations:
Notation:
In the following description, we have taken this notation:
- n: the total number of objects selected
- m: the number of selected objects that can be deleted
- {objectName}: the name of an object
- {GenericOrObjectTypePluralName}: the name of the type of all objects (if they have the same type) or, if the types of objects are different, a generic type name like “files”, “objects”, “data objects”, etc.
Section A
The message informs about the objects that be deleted.
Section B
The message informs about the objects that deleted.
List of all dialog boxes
Dangerous deletion confirmation message
Some objects are too important to be deleted with a simple confirmation, and an additional failsafe can prevent a serious error.
For this type of objects, the delete should be available for one unique object only.
In that case, it is recommended to put the delete button in the object page of the object and not in the toolbar of the list of objects where several objects could be selected altogether.
Interaction
Delete Message box (with details area)
Support
If you have any questions or feedback about this page, please contact our team. For further information and questions in regards to the Design System, please visit the DNA Design SharePoint.