Pre selection of checkboxes
Successful pre-selections can make interface more efficient and pleasurable to use. Sane default selections can reduce the amount of actions a user needs to perform.
Whether or not a checkbox should be preselected should be based on the domain context and business rules. Business rules will dictate whether something should be opt-in or opt-out. Preselect according to the principles of least annoyance. A user should spend as little time as possible opting out of things that they don't want.
However, I think the core of your problem is not about pre-selection but rather how a checkbox should be labelled.
Labelling checkboxes
The label for a checkbox should be affirmative because checkboxes are used to enable an action or state. Checked should represent yes
(do the action/enable the state) with unchecked representing no
.
If a checkbox label forces the user to decipher a double negative you've made a mistake. Users prefer yes do this
rather than yes, don't do that
. For example [ ] Subscribe
is clearer than [x] Don't subscribe
and much clearer than [ ] I don't want to receive updates
.
Aim for brevity in your labels, the label should convey the action in the most concise way possible. The shorter and clearer your labels are the less time the user must spend reading and interpreting them.
Your Problem
The interface allows the admin to
configure if the quiz can be reattempted even if the a candidate had passed in the previous attempt
The domain rules
- A student can be offered reattempts
- There may be a maximum amount of reattempts offered
- A passing attempt may be considered final
Labelling the checkbox
I would label your checkbox with a variation of [x] allow repeat after passed attempt
. The label is clear, if you check the box repeats are available to students that have passed. Your business rules will state whether it's more common to allow students to try again after a successful attempt.
How I would do it
I would have a [x] allow reattempts
check box that enables a slider/stepper/text-box control to set the number of repeats and the checkbox to enable repeats after a pass.
[x] allow reattempts
number of reattempts [-][ 5 ][+]
[x] allow repeat after passed attempt
Alternatively, the number of reattempts may disable the allow repeat after pass
control when the number of reattempts is set to 0
and enable it otherwise.