Feature Wiki

Information about planned and released features

Tabs

Random Test: Selection Rule Creation using Repository Selector

1 Initial Problem

The creation of question selection rules for random tests requires the selection of the source question pool from a dropdown and a button click within a toolbar shown in the random test question config interface.

Although this kind of input element combination is also used for several other contexts in ilias, it can get very anoying when your installation offers a large amount of pools available to you as this dropdown grows up infinetly by feeling. Also deep repository structures can make finding a certain pool even more hard, because the repository structure is simply presented as slash separated path string sourounded by brackets within the option texts, that are sorted alphanumerically.

2 Conceptual Summary

To get rid of the annoying disadvantages that comes with the selection input field offering the available question pools, we need to replace it with a repository selector that is filtered to container objects as well as question pools. Because it link based user interface element, the best way to integrate it is a dedicated page that will be added as an additional workflow step in the process of adding a selection rule to the test question set config.

This newly introduced page showing the repository slector gets opened when the button is invoked that is also used in the current state. The only difference is, it navigates you to this new screen instead of directly to the screen managing the properties for the selection rule and that you do not select the pool itself prior to this invoke.

When you do the selection of the desired question pool, this will navigate you to the properties form where you can define the filtering criteria as well as the amount of questions (when to be defined per selection rule).

Hints:

  • Integrating the Rpository Selector as regular form field to the property form of selection rules would require dynamic changes to other depending form fields. This requirement is not abstracted by the ilias form service and would lead to a non generic solution.
  • The alternative of a neccessary intermediate save is not a elegant solution that bothers the user and is hard to understand in general, although this concept is allready used in question authoring workflows for several question types as well as in other ilias contexts I guess.

3 User Interface Modifications

3.1 List of Affected Views

Additionally there will be introduced a new screen that is described below.

3.2 User Interface Details

  • The selection field that is used to choose the question pool for a new rule to be added is removed from the screen that is shown in the screenshot above. The button to invoke the creation of a new selection rule is kept.
  • A new screen will be introduced as intermediate workflow step that offers a repository selector only. It is filtered to container objects and question pools. It of course respects the RBAC.

3.3 New User Interface Concepts

There is no need for any newly introduced user interface element.

4 Technical Information

There is no existing technical depency and the performance won't change in any way.

5 Contact

6 Funding

If you are interest in funding this feature, please add your name and institution to this list.

  • ...

7 Discussion

JourFixe, ILIAS [jourfixe], FEB 13, 2017: Highly appreciated and scheduled for 5.3

8 Implementation

The implementation has been done like described above. The dropdown providing every accessible pool of the whole installation in a flat selection list has been removed from the toolbar.

The selection of a pool for a new question selection rule is now done in a separate workflow step. The repository selector is shown and the pool for the selection rule can be chosen easily by navigating within the repository tree.

Test Cases

Test cases completed at 24 Aug 2017 by mbecker

  • C18731 : Random Test bietet Auswahl von Fragenpool über Repository Selektor an

Approval

Approved at 24. August 2017 by Ernst Huber.

Last edited: 16. Dec 2017, 13:51, Heyser, Björn [bheyser]