Review Request 118860: Feature: Added entry selection prioritizers to practice.

Andreas Xavier andxav at zoho.com
Sat Jun 21 10:29:43 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118860/
-----------------------------------------------------------

Review request for KDE Edu.


Repository: parley


Description
-------

The patch adds new features as discussed with ingwa on IRC.

This patch adds session entry prioritizers.  The intent of the prioritizers are to select which block of n entries will be practiced first, when the user doesn't have time to practice all of the pending entries.  There are three variants: default, grab the first n entries; most invested, grab the n pending entries with the highest grade thereby helping the user maintain their level; most urgent, grab the n entries that are most overdue.

Urgency is defined as the ratio of time since the entry stopped blocking over the block time interval for its grade.  This means urgency starts at 0 at time t when the entry becomes available and increases linearly to 1 at time = t + blocking time.

The patch:
1. Added 2 options at Configure Practice -> General -> Sessions
     Session Mode: Fixed , Continuous
     Word Prioritization: Most Invested, Most Urgent
  note: SessionMode continuous is not activated because it was commented out in the previous code.
2. Added unit tests for all three prioritizers.
3. Added default, investment and urgency based prioritizers that pass the unit tests.
  note: I moved the preGrade blocking times out of a file-scope array of ints into Prefs::


Diffs
-----

  CMakeLists.txt b741dc4 
  autotests/CMakeLists.txt PRE-CREATION 
  autotests/entryprioritizertest.cpp PRE-CREATION 
  src/CMakeLists.txt a2da378 
  src/configure-practice/configurepracticedialog.h ea1f7dd 
  src/configure-practice/configurepracticedialog.cpp 0689dde 
  src/configure-practice/generalpracticeoptions.ui 90a407f 
  src/practice/entryfilter.h 7122ef6 
  src/practice/entryfilter.cpp 614981f 
  src/practice/entryprioritizerbase.h PRE-CREATION 
  src/practice/entryprioritizerbase.cpp PRE-CREATION 
  src/practice/entryprioritizerinvestment.h PRE-CREATION 
  src/practice/entryprioritizerinvestment.cpp PRE-CREATION 
  src/practice/entryprioritizerurgency.h PRE-CREATION 
  src/practice/entryprioritizerurgency.cpp PRE-CREATION 
  src/practice/sessionmanagerbase.h 257c450 
  src/practice/sessionmanagerbase.cpp b45e591 
  src/practice/sessionmanagerfixed.cpp 5000f62 
  src/settings/parley.kcfg e0f48af 

Diff: https://git.reviewboard.kde.org/r/118860/diff/


Testing
-------

Ran new unittest for prioritizers.

Played multiple choice.


Thanks,

Andreas Xavier

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-edu/attachments/20140621/9c3c7f87/attachment.html>


More information about the kde-edu mailing list