Skills

Used to establish the name of an ability. It can be hierarchical (parent-child relation).

Skill Requirements

Used to define which skills are required for a user to operate a certain step. The user badge must have a rank equal to or higher than the skill requirement rank.

Conditional Skill Requirements

Used to define which skills are required for a user to operate a certain step given a certain condition. The user badge must have a rank equal to or higher than the conditional skill requirement rank.

The conditional skill requirement “value" must match exactly the baseRunVariable "value” associated with its baseVariable.

If multiple conditional skill requirements are associated with a step, any condition that matches (badge + baseRunVariable "value") will allow the user to operate it.

Badges

A badge is used to determine what skills a user has and at what rank they are, aka how experienced they are in a certain skill.

Badges are used to match against skill requirements and conditional skill requirements to evaluate if a user has all the skills required to work on a step.

Not built yet: as users earn experience they grow up their rank and are able to get more complex work.