## 3 Methodology
### Data
#### 3.6.1 Features  
We selected data from four key Moodable tables--_lesson grades, lesson timer, activity logs_, and _quiz attempts_--corresponding to mdl_lesson_grades, mdl_lesson_timer, mdl_logstore_standard_log, and mdl_quiz_attempts, respectively, as described in Section 3.1.  
We cleaned the raw data from these tables to prepare the data for model training. The features are categorized into three types: Engagement (E), Behavior (B), and Performance (P).  
* The engagement features capture student interactions with various aspects of the course, such as forum participation, the number of module accesses, and time spent on different learning materials, including lessons, videos, and multimedia resources. The multimedia resources were developed with the Genially platform and include topic explanations, short videos, and illustrative examples. Engagement features also track the total number of interactions on a daily, weekly, and weekend basis. There are 24 engagement features (see Table 1).
* The behavior features describe how students interact with evaluative activities, including the time spent and the number of attempts made on assessments. These features provide insights into the students' interaction with quizzes, lessons, and assignments. There are 10 behavior features (see Table 2).
* The performance feature weighted_average summarizes students' academic performance by calculating the weighted average of their highest grades across workshops and simulations.  
Figure 5 shows an example of feature aggregation for Student 1, who engaged in various platform activities. Interactions such as course_navigation, forum_viewed, and post_created are aggregated as the total number of interactions. Additionally, Student 1 accessed multimedia resources, but outlier data points, such as unusually long or short viewing times, were removed. The remaining data points were used to calculate the mean time spent on multimedia resources, representing the student's productive engagement with educational content.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Feature** & **Description** & **Feature** & **Description** \\ \hline mean\_prior\_knowledge\_time & Mean time spent in prior knowledge & std\_workshops\_attempts & Std workshops attempts \\ std\_prior\_knowledge\_time & Std time spent in prior knowledge & mean\_simulations\_time & Mean time spent in simulations \\ mean\_workshops\_time & Mean time spent in workshops & std\_simulations\_time & Std time spent in simulations \\ std\_workshops\_time & Std time spent in workshops & mean\_simulations\_attempts & Mean simulations attempts \\ mean\_workshops\_attempts & Mean workshops attempts & std\_simulations\_attempts & Std simulations attempts \\ \hline \hline \end{tabular}
\end{table}
Table 2: Behavior features extracted from Moodle.  
Figure 5: Example of feature extraction. Orange represents filtered logs (very long or short duration), green shows logs used to calculate the mean time spent on the resource in seconds, and uncolored logs are aggregated by count.  
As noted in Section 3.2.2, we updated the features until a student's \(\text{CWA}_{U}\) was less than or equal to a given threshold. The distribution of each feature evolves as the \(\text{CWA}_{U}\) threshold increases. For example, Figure 6 shows the distribution of the mean_multimedia_views feature for two different \(\text{CWA}_{U}\) thresholds. As expected, increasing the threshold from 20% to 60% resulted in a broader distribution with higher mean and variance values.