Notions
Notions is one of the validation modes available for activities. Notions provide a way to establish point-based targets, with each assignment associated with bounties contributing towards these targets. To implement this, notions can be configured with names, slugs, and validation thresholds. Assignments can then be linked to these notions by specifying bounties with associated notion slugs and values.
In the upcoming example, we will configure notions like "Basics," "Algorithms," and "I/O and file management," each with its respective validation threshold. Assignments such as "hello_world," "simple_maths," "fibo," "cat_file," and "grep_file" will then be assigned bounties contributing to the defined notions based on their relevance and content.
Notions & Tresholds
The first step is to configure notions with their respective slugs, names, and validation thresholds.
notions:
- name: Basics
slug: basics
validationThreshold: 10
- name: Algorithms
slug: algorithms
validationThreshold: 5
- name: I/O and file management
slug: io
validationThreshold: 5
Bounties
Once the notions and thresholds are defined, we can proceed to add bounties to the assignments. These bounties will enable students to earn points toward validating the specified notions.
assignments:
- slug: hello_world
bounties:
- notionSlug: basics
value: 5
# ...
- slug: simple_maths
bounties:
- notionSlug: basics
value: 5
# ...
- slug: fibo
bounties:
- notionSlug: basics
value: 5
- notionSlug: algorithms
value: 5
# ...
- slug: cat_file
bounties:
- notionSlug: io
value: 5
# ...
- slug: grep_file
bounties:
- notionSlug: io
value: 5
- notionSlug: algorithms
value: 5
# ...
For example, here, the basics
notion needs 10 points to be validated, while
hello_world
, simple_maths
and fibo
all contribute 5 points to it. That
means that you can do only two of the three assignments and still validate the
notion. This gives us the following activity:
Students can still work on other assignments if a notion is already fully validated.
You must use THRESHOLDS
or THRESHOLDS_AND_NODES
validation modes in your
activity definition to enable validation based on notion. THRESHOLDS_AND_NODES
is described in following section.
See reference for more details on how notions and bounties are configured. For now, let's configure a few of our assignments using the notions system: