Feature Wiki

Information about planned and released features

Tabs

Random Test: Get Rid of Repeated Questionpool Synchronisations

1 Initial Problem

With the current state of the random test configuration interface, different selection rules from the same question pool (with differing filter) or from different question pools are added step by step.

With every change of the configuration a synchronisation of all related questions from the pools included in the configuration is triggered. This results in a synchronisation that happens at least as often as you need to add a single rule. Further changes leads to even more synchronisations. The main problem is the required waiting for the system between the selection rule creations. Including large pools with many selection rules can lead in a really anoying scenario that also wastes database ids and uses resources from the server system that could be better used for other tasks.

2 Conceptual Summary

To avoid this annoying behaviour it is neccessarry to reduce the frequency of synchronisations of questions from their pools to the test. Of course with such a change the test is not able to give a qualified status wether the current config is a stable one or not, that means, after changing or adding/removing selection rules, no hint on a (not) buildable pass can be given by the test any longer. A note that hint on this fact is to be shown instead.

To retrieve this now missing status information again and of course to make sure a buildable pass is possible so the test can serve participants, the synchronisation is to be invoked manually. To give an opportunity therefore a link button will be integrated to the information message, that shows the state of unknown status. After the synchronisation took happen the status for a (not) buildable pass will be presented as known from the current state. This status is now shown until any change is done to the config.

To manage the fact of touched/untouched config a new flag will be introduced and managed by the test object within the business logic of configuring random tests.

3 User Interface Modifications

3.1 List of Affected Views

3.2 User Interface Details

The different messages for the different configuration states shown below will be provided on both of the affected screens:

This initial hint above is shown when no selection rule was added yet.

The hint above is shown after any config change was done.

One of the hints above is shown after the manual synchronisation was invoked. Wich one is shown depends on the pass building check's result.

3.3 New User Interface Concepts

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

4 Technical Information

There is no technical depency or requiement. The performance won't change in any kind when considering it in a single request. But the long taking process of synchrnizing the involved question pools to the test will happen only when it makes sense instead of bothering the test author with every single change.

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. Please ask Timon Amstutz if the action "Synchronise..." should be presented as link (like above) or as a button.

8 Implementation

When a random test gets created the questions of the pools that are involved in the question selection config are copied from the pools to the test object. The way that happens has been changed. Prior to this feature implementation this question synchronization has been done with every change to the selection config.

With this feature implementation any change to the selection config by editing or adding selection rules for example results in a non approved configuration state. This circumstance is shown up with the following message:

The message also provides a link to start the question synchronisation. This way the set of selection rules can be defined at once while the question synchronisation can be done after all neccessary changes are finaly done.

The synchronisation itself got improved by reducing the set of questions that is copied according to the filter settings. When using filters there might be questions in the corresponding pools that are not copied when they does not match the filter criteria.

When the question synchronisation has been done and the check for a consistent configuration was successful this is shown up with the following message:

When the synchronisation has been done but the consistency check failed, a corresponsing feedback is given:

Test Cases

Test cases completed at 24 Aug 2017 by mbecker

  • C18729 : Random Test bietet Synchronisation von Fragen an 
  • C18730 : Random Test bietet wiederholte Synchronisation von Fragen an 

Approval

Approved at 24. August 2017 by Ernst Huber.

Last edited: 16. Dec 2017, 15:19, Heyser, Björn [bheyser]