Feature Wiki

Information about planned and released features

Tabs

Optimize Navigation in Learning Sequences

1 Initial Problem

There are some weaknesses regarding the navigation in a learning sequence:

  1. Control option "User may proceed" in connection with tests, exercises, surveys, etc.:
    'Objects of those types are opened from the learning sequence in a new window - so, when you return to the learning sequence, you have to reload the browser window (which will not be understood by a lot of users).
    And if you do reload, not the same (updated) page will be displayed but the next page, without clicking "Next" (which will puzzle those who tackled the reload problem).

  2. In case users want to interrupt or close the learning sequence, it is not intuitively comprehensible for them why they have to use screen elements which are completely different from those in the button bar ("Next", "Previous").
    The "X" symbol used to do so It is quite "silent", in the first place because it's off-focus, but also because it's a complete break of the graphical method -  any other navigation element is textual.

  3. Control option "User may proceed" in connection with content pages that must be ...:

    • marked as "Completed":
      The behaviour of the "Next" button is quite error prone when settings of the learning sequence are changed while someone is processing it.Either you can always continue (regardless of whether you are marked as "Completed") or not at all (even if you are marked as "Completed" - and even if the setting is changed again so that you can "always" continue).
    • "Visited":
      Opening the page should fulfil the requirement, however, the "Next" button is deactivated (while via the "Curriculum" the next step can be opened) - s. mantis.

2 Conceptual Summary

a) New Window Problem

There are some conceivable approaches:

Approach

Description

Similar Implementations

Advantages

Disadvantages

Same window, kiosk mode for more object types

When opening an object from a learning seqence, this takes place in the same window.
The target object is opened within a kiosk mode

Existing implementation for content pages and ILIAS learning modules

  • The reduced screen and clear guidance of the user within the learning sequence stays in power.

  • Much higher effort for development.

Same window, return option

When opening an object from a learning seqence, this takes place in the same window.
ILIAS "memorizes" the origin from which an object has been opened and offers an option to return at the beginning of its tab bar.

Objective-oriented courses, screenshot below.

  • Much lower effort for development.
  • On return to the learning sequence, its page is refreshed by itself, so polling isn't really needed (and, thus, can be set to a high value).

  • One major achievement of the learning sequence would be abandoned: The reduced screen and clear guidance of the user.

3 User Interface Modifications

3.1 List of Affected Views

  • started learning sequence (screen_id unknown)

3.2 User Interface Details

{ For each of these views please list all user interface elements that should be modified, added or removed. Please provide the textual appearance of the UI elements and their interactive behaviour. }

3.3 New User Interface Concepts

{ If the proposal introduces any completely new user interface elements, you might consult UI Kitchen Sink in order to find the necessary information to propose new UI-Concepts. Note that any maintainer might gladly assist you with this. }

3.4 Accessibility Implications

{ If the proposal contains potential accessibility issues that are neither covered by existing UI components nor clarified by guidelines, please list them here. For every potential issue please either propose a solution or write down a short risk assessment about potential fallout if there would be no solution for the issue. }

4 Technical Information

{ The maintainer has to provide necessary technical information, e.g. dependencies on other ILIAS components, necessary modifications in general services/architecture, potential security or performance issues. }

5 Privacy

{ Please list all personal data that will need to be stored or processed to implement this feature. For each date give a short explanation why it is necessary to use that date. }

6 Security

{ Does the feature include any special security relevant changes, e.g. the introducion of new endpoints or other new possible attack vectors. If yes, please explain these implications and include a commitment to deliver a written security concept as part of the feature development. This concept will need an additional approvement by the JourFixe. }

7 Contact

8 Funding

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

9 Discussion

10 Implementation

{ The maintainer has to give a description of the final implementation and add screenshots if possible. }

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Approval

Approved at {date} by {user}.

Last edited: 24. Aug 2022, 11:51, Suittenpointner, Florian [suittenpointner]