## 3 Materials and Methods
### Survey Overview and Reliability  
The survey was structured into several groups of questions: the first block contained items on socio-demographic characteristics, whereas the other four focused on the software tool. The survey concluded with an open-ended question to allow students to give comments and suggestions about MaGraDa (see Table 3). In addition, the survey asked the students for permission to access their grade for the laboratory sessions, to allow us to study the relationship between the use of MaGraDa and their final grade. The questionnaire blocks related to MaGraDa contained 18 items in which a five-point Likert scale was used to measure the level of agreement with each statement or question: strongly disagree (1), disagree (2), neither agree nor disagree (3), agree (4) and strongly agree (5) [48; 49]. These questionnaire items were grouped into four sets of questions about the ease of use \begin{table}
\begin{tabular}{c c} \hline
**Activity** & **Objectives** \\ \hline Introduction to MaGraDa & Exploring graph creation and manipulation from text and graphic modes of MaGraDa. Learning basic graph terminology and types. \\ \hline Fundamentals of graphs & Learning concepts of graphs. Familiarity with terminology related to graphs and how to apply the relationship between the degree of the vertices and the number of edges. Understanding the concept of graph isomorphism. Learning how to build the adjacency matrix and how to use it to calculate the degree of a vertex and the number of walks between two vertices. Learning how to build the incidence matrix and exploring its properties. \\ \hline Accessibility and connectivity & Understanding the concepts of reachable and reaching vertices. Knowing how to apply the Warshall algorithm to obtain the reachability matrix. Knowing how to interpret the reachability and reaching matrices. Learning to calculate the connected components of a graph. Understanding the concepts of cutting-edge and cutting-vertex and their importance in some applications. \\ \hline Euler paths and tours; Hamilton paths and cycles & Knowing how to reason about whether a graph is Eulerian, has an Eulerian path, or neither. Knowing how to build Eulerian paths and tours using the Fleury algorithm. Understanding the properties that allow us to reason about the existence or otherwise of Hamiltonian paths and cycles. \\ \hline Introduction to the tree structure & Understanding the concepts of tree, spanning tree and rooted tree. Knowing how to apply some properties of trees. Learning how to build the Polish notations from the rooted tree of a mathematical expression and vice versa. \\ \hline Weighted graphs; shortest paths in acyclic graphs & Knowing how to calculate the weighted adjacency matrix of a weighted graph. Learning how to use the Bellman equations to obtain shortest paths and critical paths in acyclic graphs. Exploring the utility of PERT. \\ \hline Shortest paths & Identifying a shortest path problem based on a real-life situation. Addressing a shortest path problem using the Dijkstra and Floyd-Warshall algorithms. \\ \hline Minimum spanning trees & Identifying a minimum spanning tree problem based on a real-life situation. Addressing a minimum spanning tree problem using the Kruskal and Prim algorithms. \\ \hline \end{tabular}
\end{table} 
Table 2: Laboratory activities undertaken as part of the DM course. and friendliness of MaGraDa, its content, its didactic level, and general opinions about MaGraDa (see Figure 14), as follows:  
* Questions about the ease of use and friendliness of MaGraDa (E): the users answered questions about their level of satisfaction with the ease of use of MaGraDa (E1), the ease of learning the software (E2), the pleasantness of the interface (E3), the structure of the menus (E4) and the intuitiveness of the graphic mode (E5).