# Immersive Virtual-Reality System for Aircraft Maintenance Education: A Case Study
## 3 Materials and Methods
### Design Process  
The design process was carried out following a user center design (UCD). This process seeks a design focused on gaining a deep understanding of end-users. In order to meet their needs and validate the good performance of the designed virtual environment, the authors collaborated closely with Castello Airport (Aerocas), the company that manages its maintenance, and the training of students in the field (Brok-Air). Through meetings with the parties involved, the training needs and the issues faced by this teaching were gathered. Design thinking (DT) was used to guide the UCD. DT is an approach to problem-solving that involves empathizing with users, defining problems, ideating solutions, prototyping, and testing. Specifically, in the development of this experience, it took into account the five DT principles in the following manner:  
1. **Empathize:** the user's perspective (students, teachers, and professionals) was attended in different meetings with the observation of the professional aircraft maintenance work. 2. **Define:** specific and clear requirements were determined, ensuring the alignment of the development process with the real needs of end-users. 3. **Ideate:** multiple ideas were generated to address the specific challenge. Through brainstorming techniques, the team members from different fields were encouraged to think creatively and share their ideas. 4. **Prototyping:** incremental prototyping was used, including new models and functionalities each time depending on the stage of the design process. 5. **Testing:** assessment of the functionality was carried out in each development interaction. Furthermore, a study to measure usability, gameful perception, and sickness feelings of the application was conducted. The primary challenge encountered during the training process was the issue of accessibility. Consequently, it became necessary to create a digital replica of the training environment. To facilitate iterative prototype development, specific learning tasks that were currently being taught in the program were selected. These tasks included the installation of landing and removing gear downlock pins, as well as the manipulation of height and temperature sensors. Following successful implementation and approval by the trainers, subsequent tasks in the course were then incorporated. Additionally, the solution had to promote the habit of practice among trainees. Therefore, all identified requirements were properly integrated into the system. After the elaboration of the requirements, it was discovered that the targeted knowledge could be acquired through the repetitive execution of the specified tasks. In order to minimize boredom and promote engagement in the learning process, the experience was gamified through the Octalysis framework [10]. The experience was gamified by attending to each Core Drive in the Octalysis framework as follows:  
* **Meaning:** The meaning allows the user to feel that the actions to perform have a general objective. In the case of this gameful experience, the objective is to prepare a plane after its landing process (carrying out two specific actions) or prepare it to take off (using two other actions). In order to offer the user a more general meaning of this objective, a general missions screen (Figure 1) is presented where the user can see that their efforts are reaching a more general final result, taking advantage of this narrative to improve his motivation. * **Development and Accomplishment**: Aligned with the narrative that gives meaning to the user's actions is the achievement of partial objectives. In the gameful experience, these partial objectives are shown as a progress bar that allows the user to visualize the achievements (Figure 2). This progress bar indicates which actions have been successfully performed and the ones that remain undone to complete the mission. Moreover, the user is offered the possibility to repeat tasks in order to try to execute them more efficiently, reducing the time to solve the missions.