Feature Wiki

Information about planned and released features

Tabs

Decoupling Learning Objective Drive from Course

1 Initial Problem

The Learning Objective Drive is the most important source of bugs for the course. It heeps complexity on the already complex components course and tests. 

2 Conceptual Summary

The Learning objective drive is entirely extracted from the course and becomes a new container. This requires: 

  • Adapting the „Sequencing and Navigation“ of placement and achievement tests > recommended learning material 
  • Adapting  the presentation of the ILIAS Learning Module (recommended chapters)
  • Adapting the renderer for presenting Container (learning objective presentation) 
Preparation
  • Moving the code base to a new space for later refactoring, 
  • create a separate Learning objective service
  • move all PHP classes with ilCourseObjective and all classes from the course-objectives-directory into the service 
Decoupling
  • Migrating of base classes of the LOC-editor and the configuration of the course as "LOC-presented".
  • Migrating the LOC-presentation-mode to the container service.
  • Adapting the learning progess to be defered from individual learning objectives in the test.
 Interfaces
The following interfaces need to be implemented between the new service „Learning Objectives“ and existing services:
  • Container-Service: activating the learning objective driven presentation
  • Container-Service: Rendering the the learning objective driven presentation
  • Test-Mode: placement and achievementtest 
  • Learning Module-Service:
    • Assignment of Learning Modules and chapters to learning objectives
    • „Sequencing and Navigation“; Deep-Links and highlighting of recommended chapters

3 User Interface Modifications

3.1 List of Affected Views

{Please list all views (screens) of ILIAS that should be modified, newly introduced or removed.}

3.2 User Interface Details

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.}

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 Information

No new personal data that will need to be stored or processed to implement this feature. 

6 Security Implications

We do not see any special security relevant changes.

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: 29. Apr 2020, 17:24, Tödt, Alexandra [atoedt]