La question aléatoire à contrainte fonctionne comme une question aléatoire standard, à ceci près que le choix des catégories de tirage des questions n'est pas déterminée par la configuration de la question, mais par un paramètre dynamique déterminée plus tard, juste avant la création de la tentative par l'usager. Ce type de question est largement utilisé avec la mise en œuvre du plateau de révision.
Retarder ainsi le moment où les questions réelles sont choisies pour être présentées à l'apprenant permet d'insérer une étape intermédiaire supplémentaire qui donne la main à l'apprenant(e) pour décider de cette sélection.