Reversibility of an interface element
Reversibility is a property of an interface input control, where the user can return the control to its initial state at any time. Or, more generally, where the user can freely switch between all available states. Irreversibility, consequently, is when the element has states to which it cannot be returned after some actions. Well-designed controls are reversible.
An example of an irreversible control is a group of radio buttons of which none are initially selected. Once one option is selected, there is no way to return the group to the initial blank state. This creates discomfort and frustration. In a proper radio group exactly one element is always selected, including in the initial state, so the group is reversible.
But what if picking an option is required to proceed to the next step? There is no point in unselecting all options! Why would the user want that? Well, the reversibility requirement stands even if the initial state is not “valid”. This has to do only with the mechanics of the interface control, not with its role in the interface external to it. It affects the sense of control. Consider this: a text input field does not resist having all characters erased from it, even if it is required. Any other element, if it has a blank state at all, should let you return to it. In the case of a radio group, remove the blank state altogether by providing a default option.
Here’s another example of irreversibility. Suppose you have a required text field, initially blank. The user clicks the field, then clicks another element, leaving the field blank (or fills it in, but then erases everything). The system now draws a red border around the field, hinting that the field cannot be left blank. Now it is impossible to return the field to its initial “clean” blank state. A solution would be to fade out the red border so that the field returns to the initial state after a second.