# Toward Adaptability of E-Evaluation: Transformation from Tree-Based to Graph-Based Structure
## 2 Related Works
### Data Structures Used for E-Evaluation Tests and Its Tasks Storage  
To create an adaptive knowledge assessment system, the presentation of tasks must be carried out semantically. It is important to prepare the tasks and to establish the correct relationships between them. For this reason, it is important to choose the right task for storage structure.  
[PERSON] [11; 12] suggests using contextual graphs for real-time decision making. According to [PERSON]. [PERSON], \"the contextual graph is a context-based representation of a task execution\" and, as it is an acyclic graph, a user's tasks are usually arranged in order [13]. From these properties, it can be used to form a way of presenting tasks in adaptive tests. As such, [PERSON] et al. [14] used the contextual graph in simulation-based e-evaluation systems.  
Figure 1 provides a simple example that demonstrates the use of a contextual graph in task selection.  
The contextual graph in Figure 1 depicts two types of objects: actions and contextual elements. The action is the basis for modeling, according to the detail provided (represented by a green square). The contextual element is a pair of nodes--contextual and recombination (contextual nodes are shown in blue numbered circles and recombinant nodes are depicted in black circles). Contexts have one input and \(N\) outputs corresponding to \(N\) known values of the contextual element. A recombination node is a ratio of [\(N\), 1], to which the instantiation of the contextual element does not matter [15]. The numbers on the action elements are identifiers that indicate which element from the competency tree is represented in the context graph. Capital letters identify contextual nodes.  
[PERSON] et al. [16] argue that a hierarchy-based structure is well-suited for assessing students with different levels of preparation. More advanced students can skip easier (lower level) tasks and start with more difficult (higher level) tasks. [PERSON] and [PERSON] [17] suggest that the competence tree is suitable for developing a study program, a course, or for evaluating students. An example of a competency tree is shown in Figure 2. The competence \"1\" is the most advanced, as it requires an integration of both competencies \"2\" and \"3\"; these two competencies have an internal composition of other competencies.  
Figure 1: Presentation of tasks by the contextual graph.  
Each task is associated with one or multiple competencies in the tree. Therefore, a tree of tasks can be generated from it.  
The use of a competence tree for adaptive knowledge evaluation is also useful for teachers, because, when it is used:  
1. It is convenient to check whether appropriate tasks of different complexity have been prepared to check all competencies.
2. Once properly designed, it can be used to create tests for a variety of course topics, and it eliminates the need to recreate test tasks for each topic, as the instructor only needs to select the required tree branches or indicate the appropriate level of complexity of the tasks.
3. The connections between tasks are presented.  
However, the competence tree presents the relationship between different levels as parent-child, and there is no logic for the definition of the relationship between the same level of competencies.