Development of Platform Independent Mobile Learning Tool in Saudi Universities

The term “mobile learning” (or “m-learning”) refers to using handheld phones to learn and wireless computing as a learning tool and connectivity technology. This paper presents and explores the latest mobile platform for teaching and studying programming basics. The M-Learning tool was created using a platform-independent approach to target the largest available number of learners while reducing development and maintenance time and effort. Since the code is completely shared across mobile devices (iOS, Android, and Windows Phone), students can use any smartphone to access the app. To make the programme responsive, scalable, and dynamic, and to provide students with personalised guidance, the core application is based on an analysis design development implementation and assessment (ADDIE) model implemented in the Xamarin framework. The application’s key features are depicted in a prototype. An experiment is carried out on BS students at a university to evaluate the efficacy of the generated application. A usefulness questionnaire is administered to an experimental community in order to determine students’ expectations of the developed mobile application’s usability. The findings of the experiment show that the application is considerably more successful than conventional learning in developing students’ online knowledge assessment abilities, with an impact size of 1.96. The findings add to the existing mobile learning literature by defining usability assessment features and offering a basis for designing platform-independent m-learning applications. The current findings are explored in terms of their implications for study and teaching practice.


Introduction
Higher education is vital to a society's economic growth. About 4 million students attend Saudi universities and colleges today, compared to 7000 in 1970-a significant increase [1]. Teachers find it difficult to concentrate on hundreds of students, particularly those who are unable to ask questions or offer input during the lecture cycle. As a result, mobile learning has arisen as a new development in higher education. The technology gives easy access to various fields of interest due to its widespread extension and ease of use. Since m-learning apps are so resilient, universities and organisations are attempting to develop various m-learning systems to assist their various courses [2,3].
M-learning is becoming the third form of education and training. M-learning has been defined as e-learning through mobile and handheld devices using wireless computing technologies. The use of information and communication technology (ICT) has enhanced Sustainability 2021, 13, 5691 3 of 22 many versions of the same programme takes time and involves a diverse set of skills. Each provider provides his or her own development environment, tools, and parameters. A platform-independent solution reduces production and maintenance costs by eliminating code duplication. The platform-independent design approach meets the requirements for targeting the widest possible audience while reducing development and execution time and effort. The final result is an App Store-downloadable native version.

Research Questions
To design an effective m-learning method, we want to address the research questions mentioned in Table 1. Table 1. Posed research questions with motivation.

Research Question Motivation
RQ1: How can a platform-independent m-learning tool be designed using structured programming as a case study?
Develop the proposed cross-platform m-learning application based on the analysis design development implementation and assessment model (ADDIE) and use it to assist students in learning structured programming courses.
RQ2. Is there an increase in student academic performance at KAU by using a mobile learning tool (MLT) in structured programming courses?
To assess the progress of the learning of students in a pre-and post-class information test. Comparing post-test outcomes to pre-test results as the covariate for control and experimental classes.
RQ3: To what degree do the users acknowledge that the m-learning tool is beneficial and consider it an effective learning tool?
To determine the degree to which the developed m-learning application assists students in improving their online information testing abilities based on questionnaire responses.
Our project aids m-learning in higher education. The framework supports students in understanding structured programming courses and addressing challenges that are relevant to the course goals. This strengthens their problem-solving ability and the way they think analytically. Furthermore, the framework adapts to the learners' knowledge by transferring them from a lower to a higher stage when solving the questions. This work features the following contributions: 1.
Developing a platform-independent m-learning tool using structured programming as a case study; 2.
Analysing students' academic performance in a KAU by using the MLT in structured programming course; 3.
Evaluating the effectiveness and usability of the m-learning tool using various research instruments.
The rest of the article is arranged as follows: Section 2 addresses similar research; Section 3 outline suggested methods, which involve research setup for developing mlearning tools; Section 4 discusses the findings of the experimentation; and the final part concludes the research with some possible guidance.

Related Works
In this section is a review of selected studies pertaining to m-learning. M-Learning Approach: Many scholars [10,11] have identified the m-learning shift from elearning as a step toward making learning universal. According to Nikolopoulou et al. [12], the transition from e-learning to m-learning has resulted in a shift in vocabulary. The mlearning framework refers to the distribution of educational content through smartphones that can be obtained from anywhere and at any time. Currently, several higher education institutions are utilising mobile learning systems (M-LS) as a supplement to achieve the aforementioned benefits. There is no traditional standard or specification for developing M-LS due to the variety and shortcomings of mobile devices. As a result, depending on the case study, there are various types of M-LS with varying requirements. Nonetheless, an assessment was conducted based on their skills and the programmes they support, Sustainability 2021, 13, 5691 4 of 22 using some of the metrics listed in [13][14][15]. This includes the following: compatible smartphone styles, content access, supported data and tool types, and information types. The development of multi-objective mobile learning apps is a significant undertaking. The aim of the work proposed by [3] was to introduce a mobile learning framework applicable in Egyptian university education. The first version of the Easy-Edu software was developed and introduced using the Agile framework. Easy-Edu facilitates blended and interactive learning by providing a variety of functions that enable students to engage with course materials in an easy, effective, and productive manner. The proposed system is being tested by computer science students at Mansoura. The primary aim of the research conducted by [9] was to create a system for cooperative and immersive mobile learning in order to enhance students' ability to assess online content. The suggested system was then used to build a mobile learning programme. A usability questionnaire was administered to an experimental community in order to determine students' expectations of the developed mobile application's usability. The findings of the experiment showed that the application is slightly more successful than conventional learning in developing students' online knowledge assessment abilities, with an impact size of 1.91. In the process of designing the m-learning programme MobileEdu for computing education in Nigerian higher education, Oyelere and Suhonen [16] used the design research (DR) methodology. The research, design, and deployment activities related to the creation of the first MobileEdu prototype were presented by the authors. The study also considered the features and reach of MobileEdu's obedience to DR's traits and ideas. Learning through mobile devices is entertaining, inspiring, and offers a hands-on opportunity to practise skills [17]. Nonetheless, it has architectural consequences and challenges. According to the study by [18], using a mobile computer for learning encourages self-directed learning. In addition, timely input to learners is important to remember in order to keep them engaged.
Types of Supported Mobile Devices: The phrase "mobile device" encompasses not only cell phones, smartphones, and PDAs, but also all handheld devices such as tablet computers and notebook computers. The University of Regensburg's WELCOME (Wireless E-Learning and Communication Environment) m-learning solution embraces both PDAs and Pocket PCs as a chosen mobile computer based on their capacities and less limited functionality [19]. Sharples et al. [20] created HandLeR (Handheld Learning Resource) at the University of Birmingham that can provide educational materials and facilitate participants of all levels in their learning needs using cell phones that met the criteria of [20]. MobilP (Mobile Learning Platform) is an internet-based learning framework that works on both mobile and non-mobile devices [21]. Its goal is to provide faculty and learners with instructional materials and communication resources at any time and from any place. At the University of Malaya, Devinder and Zaitun [22] created an m-learning system for digital classrooms with the aim of facilitating access to education in a real-time virtual classroom using a handheld PC, laptop, or cell phone as a teaching tool on the Windows network. Furthermore, Anang et al. [23] built a mobile learning solution in a campus-based system utilising the Microsoft.NET platform, which is based on the Windows operating system.
Material Accessibility: There are three kinds of access available at the moment, based on the interaction between M-LS and consumers [24,25]. The first sort necessitates continuous contact between the machine and the portable device of the individual. Niazi and Mahmoud [26] stated that there are two categories of architecture that are enabled for online content access: browse-based and native apps. The next form of m-learning is standalone m-learning, which entails briefly using connectivity to retrieve content that can then be used whether or not connectivity is available [23]. The software is all built and implemented in the system in this study, and communicates with through Bluetooth or IrDA. Furthermore, accessibility can be gained via USB connection from a desktop or laptop. M-LS relies heavily on the system's content. Audio and video files [25] necessitate a lot of memory and a fast processor on mobile devices. Graphics and text were used by a number of scholars [27]. HTML, XHTML, and XML [22,26] were formerly accepted data forms for text in M-LS. The instructional design model (IDM) is a systematic method for transforming basic concepts of learning and teaching into arrangements for instructional resources and tasks in a coherent and accurate systematic manner [28]. This study uses the ADDIE model. It is also recommended that learning hypotheses be used in the IDM. Behavioural philosophy, cognitivism, and constructivism are among them. Many of these theories of learning are critical to learners' understanding and comprehension [29].
ADDIE and Other Models: The ADDIE instructional model describes the process of instruction analysis, design, development, implementation, and evaluation [29]. Analysis establishes the subject of learning, design establishes the method of learning, development chooses and creates instructional materials, implement implements materials and activities, and evaluation establishes the impact of instruction [29]. In addition, Heinich R. et al. [30] developed the ASSURE teaching paradigm, which consists of the following steps: (1) Consider students' learning styles, prior knowledge or skills, as well as geographical, regional, and economic considerations; (2) declare aims: This refers to a more complete statement of the learning aim; (3) choose instructional media: This refers to the process of putting together a solid teaching technique; (4) employ appropriate materials: This pertains to strategies to use educational technology and media; (5) facilitate classroom interaction: This refers to allowing students to practise skills and learn via hands-on activities; and (6) assess and reconsider: This refers to evaluating and updating the overall instructional design in preparation for future training. The successive approximation model (SAM) employs a continuously iterative design approach instead of a sequential one throughout the entirety of the development life cycle [31]. SAM begins with a quick prototype, in which analysis and design are carried out simultaneously at breakneck speed. Unlike ADDIE, SAM does not require buy-in at each level, so the initial iteration of SAM-developed e-learning may require an overhaul. SAM, on the other hand, relies on rapid fixes, testing, and pivoting along the route. If you are pressed on time and need to get something done quickly, SAM comes in handy.
Cross-Platform Mobile Applications: The aim of the work [5] is to launch and discuss a new smartphone framework for teaching and learning programming fundamentals. The mobile application was created using a cross-platform approach, which reduced implementation and maintenance time and effort. Since the code is completely shared across different mobile devices, students can use any smartphone to access the app. According to literary works on mobile learning platforms, the emphasis has remained on developing native apps for each mobile interface, which is time consuming and wasteful. Using a cross-platform technique, on the other hand, allows you to attract as many students as possible by making the application available on a variety of platforms. This is what we want to address in this work by taking advantage of the ADDIE model implemented in the Xamarin framework.

Proposed Architecture
In this research, the platform-independent MLT was developed in five stages using the ADDIE model [32]. Why is this model complete and accurate enough? In this paper, we show how the ADDIE paradigm may be used to create an m-learning application. Other instructional design methods, such as those proposed by Seels et al. [29] and Heinich R et al. [30], might aid software developers in developing an m-learning application in a methodical manner. The ADDIE approach has the benefit of being simple to implement and may be used to create both platform-specific and platform-independent m-learning apps. This paradigm offers a disciplined, all-encompassing approach to developing m-learning applications that suit the demands of their users. Figure 1 depicts the application creation process.
whether training is needed to instil skills needed throughout the application's users. An earlier study found issues with students' online material assessment skills through a literature review and content analysis of KAU BS students' assignments [3]. The solution to this issue has been suggested as a platform-independent mobile-learning framework. The application's development included three aspects: an application that students can access everywhere and at any time, coordination and engagement between teachers and students, and topic-based knowledge assessment skills.

Design Phase
A meeting with an IT instructor who oversees m-learning at a university was conducted before starting work on designing and implementing a mobile learning framework. The professor agreed that enhancing skills through collaborative and immersive mobile learning would be beneficial to students. He agreed to set an allocated time in class for students to participate in mobile-learning activities and get feedback. The pre-test and post-test questions and answers were also produced under the direction of an IT professor.
Based on the findings of the review step, the design process determines learning goals and the instructional methods and learner evaluation method to be used. The learning goal in this research is to improve students' knowledge evaluation skills by using mobile-learning apps as a potential determinant to promote teamwork and contact between students and faculty. The criteria for analysing the information were derived from [32].

Analysis Phase
The MLT requirement analysis was performed to assess the goal of training and whether training is needed to instil skills needed throughout the application's users. An earlier study found issues with students' online material assessment skills through a literature review and content analysis of KAU BS students' assignments [3]. The solution to this issue has been suggested as a platform-independent mobile-learning framework. The application's development included three aspects: an application that students can access everywhere and at any time, coordination and engagement between teachers and students, and topic-based knowledge assessment skills.

Design Phase
A meeting with an IT instructor who oversees m-learning at a university was conducted before starting work on designing and implementing a mobile learning framework. The professor agreed that enhancing skills through collaborative and immersive mobile learning would be beneficial to students. He agreed to set an allocated time in class for students to participate in mobile-learning activities and get feedback. The pre-test and post-test questions and answers were also produced under the direction of an IT professor.
Based on the findings of the review step, the design process determines learning goals and the instructional methods and learner evaluation method to be used. The learning goal in this research is to improve students' knowledge evaluation skills by using mobile-learning apps as a potential determinant to promote teamwork and contact between students and faculty. The criteria for analysing the information were derived from [32]. Usability qualities such as effectiveness, performance, timeliness, satisfaction, learnability, recognizability, malfunction, and perceived stress were considered during the design process of the mobile application to create a more functional mobile application [29,32].

Development Phase
We used the "Xamarin.Forms" framework to build the mobile app [5]. It is a framework for creating native smartphone apps. Xamarin is a platform-independent software system that facilitates the sharing of code, improved testing, and less effort required for development and maintenance. MVVM is a core function of Xamarin that separates it from other frameworks [33]. The benefit is that code distribution, as well as indigenous user interface and performance, are greatly enhanced [6]. For example, as seen in Figure 2, we created two blocks of code: the application logic code and the code to create the graphical user interface. The code is completely compliant with all smartphone devices (iOS, Android, and Windows Phone). It is possible to create native Android, iOS, and Windows applications in C# using the "Xamarin.Forms" framework [5]. In contrast to its competitors [33], Xamarin compiles to native code and achieves enhanced results and native UI. Programmers may build "Xamarin.Forms" with page, style, and displays as the three key elements for creating the user interface. development and maintenance. MVVM is a core function of Xamarin that separates it from other frameworks [33]. The benefit is that code distribution, as well as indigenous user interface and performance, are greatly enhanced [6]. For example, as seen in Figure  2, we created two blocks of code: the application logic code and the code to create the graphical user interface. The code is completely compliant with all smartphone devices (iOS, Android, and Windows Phone). It is possible to create native Android, iOS, and Windows applications in C# using the "Xamarin.Forms" framework [5]. In contrast to its competitors [33], Xamarin compiles to native code and achieves enhanced results and native UI. Programmers may build "Xamarin.Forms" with page, style, and displays as the three key elements for creating the user interface. The portable class library (PCL) is a Visual Studio extension that lets you build platform-independent applications such as "Xamarin.iOS" and "Xamarin.Android", as well as WPF apps (Windows Desktop). The project includes a core architecture and a standardised code base that can be customised for each of the target platforms. A total of 90% of the code can be shared. If a change or update is needed, it is done once on the common code.

Layered Architecture of Xamarin Framework
The Xamarin architecture can be broken down into six application layers, as seen in Figure 3.

• IOS App Windows Phone App
Android App  The portable class library (PCL) is a Visual Studio extension that lets you build platform-independent applications such as "Xamarin.iOS" and "Xamarin.Android", as well as WPF apps (Windows Desktop). The project includes a core architecture and a standardised code base that can be customised for each of the target platforms. A total of 90% of the code can be shared. If a change or update is needed, it is done once on the common code.

Layered Architecture of Xamarin Framework
The Xamarin architecture can be broken down into six application layers, as seen in Figure 3. The Xamarin platform's six-layer structure is further addressed as follows [3].

Mobile User Interface Layer:
With the aid of the user interface, a function can be executed by a developer by applying business logic. It aims at controlling the user's screen. Controls from "Xamarin.Forms" can be used to do this. Xamarin.Forms is a cross-platform user interface toolkit that includes ready-to-use forms, websites, interfaces, views, and controls. Connections to local UIs are provided by "Xamarin.iOS" and "Xamarin.Android" [5].

Mobile User Interface Layer
Data Access Layer (DAL) Cross − Platform Developmment The Xamarin platform's six-layer structure is further addressed as follows [3]. Mobile User Interface Layer: With the aid of the user interface, a function can be executed by a developer by applying business logic. It aims at controlling the user's screen. Controls from "Xamarin.Forms" can be used to do this. Xamarin.Forms is a cross-platform user interface toolkit that includes ready-to-use forms, websites, interfaces, views, and controls. Connections to local UIs are provided by "Xamarin.iOS" and "Xamarin.Android" [5].

Data Access Layer (DAL):
The "Xamarin.Forms" software can bind to the database and execute operations on the database such as attach, edit, erase, and pick using the data access layer. To execute such tasks, developers can simply combine the DAL with the user interface layer. In most mobile apps, the data access layer connects controls and pages to data structures loaded from a local database and synchronised with a central server computer via web services.
Local Database Access: Data must be stored in a portable device using a database to retain despite the power being turned off. Although ADO.NET access offers a standard entry point and the SQLite.NET element is a featureful choice, local database access through SQLite is a departure from the regular database providers [33]. Listing 1 depicts database connectivity. //endi f //endi f return databsePath; } } Data Binding Layer: Certain services such as JSON (JavaScript object notation) are used for transmitting data from system to system. The Model-View-ViewModel (MVVM) template is frequently used to attain data binding in "Xamarin.Forms" formation [5]. Other services, such as cloud services, can be reached via this layer.

Cross-Platform Layer:
Code once, run everywhere is the target of cross-platform architectures, which is a set of code-sharing techniques. This involves dependency injection in portable class libraries (PCLs), file sharing and programs, and contingent compiling. Section 4.1.1 presents code listing for establishing a cross-platform environment [33]. The following platforms are supported by Xamarin. Forms: Android, iOS, and Windows Phone.

Content Selection
Structured programming content with mobile learning methodology was designed to help only students. Figure 4 also shows the comprehensive classification of the MLT prototype's two major modules. These modules were developed using the structured programming course syllabus as a reference. Structured programming is a compulsory course in all Saudi university computer science curricula for bachelor's degrees in computing.  Over the course of one semester, the course is designed to present structured programming techniques, technologies, processes, and practices. The course materials and timetable are listed in Table 2. The instructor had the first two weeks of the course lessons to teach students the basics of programming and to ensure that they understood the course principles. Furthermore, all attendants were updated on the mobile learning principle as well as practice guidelines for using MLT. Before the trial, the participants were supposed to be in the same stage. The entire investigative process is shown in Figure 5. Students in the experimental group were also exposed to the mechanism of learning behaviour and the effects of a cross-platform-based smartphone programme by a teacher. Following the acquisition of basic course knowledge and the assumption that all learners were at the same learning pace, a 15-min pre-quiz was administered to all students in the second tier. The quiz's aim was to test participants' fundamental comprehension of the course. The subsequent lectures were delivered over an eight-week stretch during the third stage. The MLT was used by the experimental class community to study online, at any time and from anywhere. The control group's participants relied solely on face-to-face teaching. The students took a 60-min post-quiz and completed a 20-min questionnaire after receiving 10 weeks of teaching and finishing all course tasks (two weeks for orientation and eight weeks for lessons).

M-Learning
Tool  Over the course of one semester, the course is designed to present structured programming techniques, technologies, processes, and practices. The course materials and timetable are listed in Table 2. The instructor had the first two weeks of the course lessons to teach students the basics of programming and to ensure that they understood the course principles. Furthermore, all attendants were updated on the mobile learning principle as well as practice guidelines for using MLT. Before the trial, the participants were supposed to be in the same stage. The entire investigative process is shown in Figure 5. Students in the experimental group were also exposed to the mechanism of learning behaviour and the effects of a cross-platformbased smartphone programme by a teacher. Following the acquisition of basic course knowledge and the assumption that all learners were at the same learning pace, a 15-min pre-quiz was administered to all students in the second tier. The quiz's aim was to test participants' fundamental comprehension of the course. The subsequent lectures were delivered over an eight-week stretch during the third stage. The MLT was used by the experimental class community to study online, at any time and from anywhere. The control group's participants relied solely on face-to-face teaching. The students took a 60-min post-quiz and completed a 20-min questionnaire after receiving 10 weeks of teaching and finishing all course tasks (two weeks for orientation and eight weeks for lessons).
The tool begins by outlining the course's learning goals. As a consequence, making the target page function as the first page has the goal of capturing students' interest and still including the course goals. Students, on the other hand, have the option of skipping the objective GUI. Figure 6 depicts the objective's interface. nability 2021, 13, x FOR PEER REVIEW 11 of 24 Figure 5. Investigation procedure.
The tool begins by outlining the course's learning goals. As a consequence, making the target page function as the first page has the goal of capturing students' interest and still including the course goals. Students, on the other hand, have the option of skipping the objective GUI. Figure 6 depicts the objective's interface. The main menu list appears after the objectives introduction (see Figure 7a). Then, since the MLT employs perpetual navigation principles, users are able to test and access the courseware. Lecture materials (see Figure 7b), a quiz (see Figure 7c), and assignments The tool begins by outlining the course's learning goals. As a consequence, making the target page function as the first page has the goal of capturing students' interest and still including the course goals. Students, on the other hand, have the option of skipping the objective GUI. Figure 6 depicts the objective's interface. The main menu list appears after the objectives introduction (see Figure 7a). Then, since the MLT employs perpetual navigation principles, users are able to test and access the courseware. Lecture materials (see Figure 7b), a quiz (see Figure 7c), and assignments  The main menu list appears after the objectives introduction (see Figure 7a). Then, since the MLT employs perpetual navigation principles, users are able to test and access the courseware. Lecture materials (see Figure 7b), a quiz (see Figure 7c), and assignments (see Figure 8a) are the three main modules in the MLT main menu application screenshot gallery.

Output Screen
On the basis of the information the participants have, this module is used to show various details pertaining to the conducted quiz, such as total questions, correct responses, obtained ranking, and accuracy (see Figure 8b).

Output Screen
On the basis of the information the participants have, this module is used to show various details pertaining to the conducted quiz, such as total questions, correct responses, obtained ranking, and accuracy (see Figure 8b).

Output Screen
On the basis of the information the participants have, this module is used to show various details pertaining to the conducted quiz, such as total questions, correct responses, obtained ranking, and accuracy (see Figure 8b).
The purpose of Algorithm 1 is to show the quiz's final result.

Algorithm 1. Calculating and Displaying the Outcome
Input: answer chosen for a specific question Output: response key, outcome (total questions, correct responses, obtained ranking, and accuracy) Start: 1. While (the question limit for questions has not been reached) do { 2.
Choose the best response to the question being asked.
The outcome screen is shown.

Implementation Stage
The deployment phase is the real operation of the smartphone app. The deployment phase was split into two sections in this study: "before" and "after" m-learning. The pre-workshop exercise was designed to introduce learners to the philosophy of m-learning and give them the opportunity to launch and test a mobile learning application [9]. To guarantee that all participants access the mobile learning app, it was mounted on a private server. A pre-workshop session was held a week before the main rollout of the smartphone software. Prior to the workshop, the teacher shared login credentials and allowed each pupil to log in to complete the pre-workshop test and the post-workshop test using the smartphone application. Two groups of second-year graduates from the faculty of information technology at KAU in Jeddah participated in this research. One class of 40 students was designated as the test group, and another class of 40 students was designated as the experimental group. The experimental group obtained online awareness appraisal skills training based on MLT, whereas the control group received traditional (teacher-based) learning guidance.

Participants
The proposed system was expected to make it easy for students to talk to each other, help them engage in learning, simplify their exams, and adjust to their performance levels by altering the quizzes. We conducted an experiment on students taking structured programming at the Computer and IS Department, KAU, in Jeddah, with the objective of evaluating the implications of using the proposed system. The instructors, course materials, and teaching arrangements were all the same for all of the students. Participation in the study was entirely voluntary. A consent document was signed and they were informed of their right to discontinue participation at any point during the research. The application served as a tool of technology to manage the course and to support the learning and engagement of students. This research included 80 students who were all taught by the same professor. These participants were randomly assigned to two classes to engage in two separate teaching methods after learning the basics of programming in a structured programming course. The experimental group used a mobile learning method, whereas the control group relied on conventional face-to-face instruction. An analysis of the prior and current test data showed whether there was an improvement in students' mastery of the proposed m-learning tool. Before the test, the groups were investigated with an independent t-test, and some of the results revealed the level of structured programming knowledge between them [5]. The follow-up research then took place to outline the ways students used and learned from the proposed m-learning tool. Questionnaires were used to collect and analyse the experimental data.

Research Instruments
Pre-and Post-Tests: This study's analysis data were derived from four primary sources: pre-quiz and post-quiz. Feedback from students was collected in pre-test and post-test responses to assignments. A usability questionnaire was administered to the experimental community in order to assess the students' views of the developed mobile application's usability [5].
A multiple-choice assignment on online content assessment abilities was included in the pre-test and post-test. The pre-quiz was intended to ensure that both experimental and control group learners understood the structured programming course at the same level. The Google Forms multiple-choice assessment consisted of five questions (see Appendix A), each with four possible answers and worth three points out of a possible 15 points. There were two open-ended questions in the essay task (see Appendix B) totalling 15 points. The open-ended questions were evaluated using a rating rubric adapted from Oakleaf [34]. A rubric is a series of parameters for grading assignments that improves evaluation efficiency and validity [5]. Using ranking rubrics in performance evaluations has been suggested to have many advantages, including greater accuracy in scoring, the ability to promote valid judgement in complex areas of expertise, and the enhancement of learning [5]. Two computer science professors graded the task scores in order to verify the assessments.
Both the pre-and post-tests were created by a trainer who teaches structured programming courses. Three programming experts reviewed both the pre-and post-test evaluations to ensure that the multiple-choice exercises were genuine. They recommended that the pre-and post-test problems be separate. The results of the pre-and post-quizzes were analysed first. After gaining basic course knowledge, the pre-quiz data was analysed using an unbiased t-test, which indicated that participants in the two courses had equal cognitive skills.
Questionnaire: After the course work was finished, a questionnaire was given to both the control and experimental groups to assess the effects of the m-learning tool. This tool was created by the first author and is referred to in this study as the MLT for Learning Questionnaire (MLTLQ). The aim of the MLTLQ was to assess the acceptance and perceived utility of an m-learning tool for learning from the participants' perspectives. The tool enabled the researcher to answer the second research question. The tool was developed based on a study of the literature [35]. Comprehensive and commonly referenced models such as the technology adoption model (TAM) [36] and the united theory of acceptance and use of technology (UTAUT) [37] were studied in order to develop a questionnaire that answers the study needs, but not all of these models' frameworks and objects were thoroughly implemented for a verbose purpose. A few of the structures suggested by these models, however, were extremely important to this research. TAM, in fact, states that assumptions about the utility and ease of use of information technology are often the key determinants of acceptance. Perceived usefulness (PU) was described by Davis [38] as the degree to which a person assumes that using a specific device will increase his or her efficiency levels. Furthermore, Perceived ease of use (PEOU) is described as a person's understanding of how simple it will be to use a system. These questions include whether MLT can help students quickly revisit all structured programming materials by keeping all content logs, and whether MLT is more convenient for learning because it can be done at any time and from any location. In order to create the usability questionnaire for this study, various elements were incorporated from applicable prior research. All students were given a questionnaire to capture their thoughts, behaviours, and pedagogical experiences regarding the structured programming course. The questionnaire had 10 items on a six-point Likert scale, with 1 indicating extreme disagreement and 6 indicating strong agreement. The questionnaire was completed in 30 min by the participants. Two specialists were employed to study the questionnaire's contents to ensure its authenticity. As a result, the experts' input was used to finalise the quiz and questionnaire. The tool enabled the researcher to respond to the study's second research question.

Results and Discussion
The key results from the quantitative analysis in answer to the three identified research questions are summarised in this section.

Addressing RQ1
The first objective, "To design a platform-independent mobile learning tool using structured programming as a case study", is addressed below.

Setup
We used a cross-platform approach that included the following projects: "Xamarin.Forms", "Xamarin.Android", "Xamarin.iOS", "Windows Phone framework", and "Core Library" for our experimental assessment [39]. The Visual Studio Community 2019 version with Xamarin software was chosen. The IDE includes the cross-platform Xamarin programming software as a built-in feature at no extra cost. Using Xamarin, we built the Windows Phone edition, Android version, and iOS version using the same software platform. Emulators were used to simulate Windows Phone, Android, and iOS phones. For Windows Phone, Microsoft has a few pre-configured emulation environments. The Android and iOS emulators were equipped to handle the hardware setups. Implementation on iOS Platform: As depicted in Listing 2, for iOS implementation, a platform-centric application of CustomClass named "CustomClass_iOS.cs" was built in the iOS project. The attribute "iOS" is returned by this variant of "CustomClass.GoNative". Implementation on Android Platform: As depicted in Listing 2, for Android implementation, a platform-centric application of CustomClass named "CustomClass_Android.cs" was built in the Android project. The attribute "Android" is returned by this variant of "CustomClass.GoNative".
Implementation on Windows Phone Platform: Finally, Listing 2 shows that for Windows Phone implementation, a platform-centric application of CustomClass named "Custom-Class_WindowsPhone.cs" was built in the Android project. The attribute "Windows Phone" is returned by this variant of "CustomClass.GoNative".
The MLT was built using "Xamarin.Forms", a platform-independent application. The proposed method aids in defining API bindings that enable programmes written in one language to consume libraries written in another language, as well as cross-compiling source code to binaries for different targeted frameworks. This technique employs native API linking and compiling code to target platform binaries to create smartphone applications that look and sound like native apps and provide results similar to native apps. The biggest benefit of being platform autonomous is that it can be used on a variety of platforms. The parameters used in this analysis are mentioned in Listing 2: supported mobile devices, information formats, and access methods, as well as apps and users.

Performance Evaluation
We used a Windows 10 professional edition computer with an Intel Corei7 processor operating at 3.4GHz and 16GB of RAM to run the Windows Phone, iOS, and Android emulators.
Measuring Instruments: The instruments used to determine the performance measures on each device are provided in Table 3. In comparison to iOS and Windows Phone, Android is a very flexible framework. As a result, relative to Windows Phone and iOS, where providers have measurement tools that visualise the calculated metrics but no access to the raw information, the measuring procedure on Android can be more regulated. We noted the amount of time it took us to run the application on our test setup. In order to test memory and CPU use in Android, a custom Java programme was written that runs the manually crafted script through the Android Debug Bridge (ADB) shell on a constant schedule. The instrument tool's Pools and CPU Performance plugins were used on iOS. The Performance Monitor from the Windows Phone Programmer Power Tools was used for Windows Phone. CPU usage and memory consumption were monitored at one-second intervals during the application's execution.  CPU Usage: The CPU consumption is the amount of the device's overall CPU power used by the programme over the time period being calculated. CPU-intensive apps may have a negative influence on other operations in the system, resulting in poor usability. This study took into account an application's overall CPU use as well as CPU use during two separate activities in the PropertyCross programme: launching the app and using the quiz to check and list question/answers. The software ran in 33.2 s on the Android emulator, 3.8 s on the Windows Phone emulator, and 2.9 s on the iOS emulator. Since it emulates the ARM architecture on top of the Intel framework, the Android emulation is much slower. The Windows Phone emulator, on the other hand, is a virtual server that runs on Hyper-V. Response cycles are calculated in Android and Windows Phone by measuring the time between specific timestamps in the machine logs of a PC connected to the smartphone. When a programme is launched and when it is completely operating, Android and Windows Phone automatically record checksums.
Memory Consumption: Table 3 shows the memory consumption (in seconds) of the applications, with iOS once again surpassing Android and Windows Phone by consuming less memory during the process. Since Android employs Java and uses all of the extra RAM for anything called "garbage collection", iOS devices outperform Android devices with even twice the RAM [40].
The average memory consumption in MBs of all systems is shown in Table 3.

Addressing RQ2
In order to respond to the second research question, "Is there an increase in student academic performance at KAU by using an MLT in structured programming courses?", we began by analysing the data from the pre-and post-quizzes. The results of the pre-and post-tests were analysed using an independent t-test, which was supported by descriptive statistics. The data were interpreted using a 95% confidence interval (0.05 significance level). Table 4 summarises the mean and standard deviation of the pre-and post-test scores, demonstrating that the participants' experimental and control groups had equal pre-test scores, and both experimental and control groups had higher post-test scores than the pre-test scores, i.e., the two classes had similar learning abilities until they had a basic understanding of the course. The descriptive statistics findings are summarised in Table 4, showing that the experimental group performed better than the control group after undertaking the post-test. The experimental group's pre-test mean and standard deviation were (M = 17.25, SD = 1.4142) and (M = 17.19, SD = 1.3102) for the control group. The reported pre-test results for students in the control group and the experimental group were not significantly different (p = 0.119, p = 0.42, p > 0.05). In a continuous measure, the independent sample t-test is used to see whether there are any discrepancies between two independent samples. The pre-test was implemented to make sure that both groups of students (control and experiment) had the same clear understanding of how to analyse online content. As seen in Table 4 (M = 17.25, M = 17.19), the two groups had the same degree of information at the start of the course. We discovered that the experimental group's overall learning performance and accomplishment were significantly higher (mean = 29.04, SD = 5.725) than the control group's (mean = 25.36, SD = 5.185) based on the post-test results. This suggests that using the m-learning platform aided in improving students' academic performance (M = 29.04, M = 25.36, respectively). A post-test covariance assessment (ANCOVA) was carried out and the findings are presented in Table 4. Pre-test values were used as a covariate during ANCOVA. We concluded that the experimental group's overall learning output and accomplishment was substantially higher than those of the control group based on the post-quiz learning performance ratings, (F = 6.09, p < 0.001). We calculated the impact scale, d, which is an indicator of the extent of the difference in treatment effects between the two classes [41]. Cohen's benchmark describes impact size as small, d = 0.2, medium, d = 0.5, and large, d = 0.8. The Cohen's d value of 1.96 in our analysis suggests a large impact scale. This indicates that students' academic outcomes increased as a result of their use of the MLT.
These findings show that the created m-learning application aided students in enhancing their online knowledge assessment abilities.

Addressing RQ3
To answer the third research question, "To what degree do the users acknowledge that the m-learning tool is beneficial and consider it an effective learning tool?", a questionnaire was used. We used both quantitative and qualitative approaches to interpret the results. In the quantitative approach, 35 students from the experimental group were asked to complete a questionnaire about their experiences, perceptions, and attitudes about the course. A total of 33 responses were collected that were qualified. The usefulness questionnaire consisted of 12 items that were scored on a five-point Likert scale. Table 5 displays the descriptive statistics derived from the t-test evaluation of the questionnaire. Learners in the experimental group had slightly improved experiences than students participating in the control group (t = −15.45, p < 0.0001). In addition, we performed an element-wise review of students' expectations and behaviours toward the structured programming course. Table 6 summarises the findings. The descriptive statistics findings showed that the two groups differed on each interpretation and attitude element in the questionnaire. Table 6. Results of a questionnaire on students' opinions and experiences using descriptive statistics.  The MLT assisted students in learning more effectively. In addition, we examined each student's learning experience in the course on an item-by-item basis. The distinctions between the two classes of each topic of the learning experience in the questionnaire were shown through descriptive statistical results. The structured programming course, according to experimental group students, had a greater depth of understanding.

Comparison to Similar Works
As opposed to state-of-the-art approaches, the experimental findings showed (see Table 7) that the proposed m-learning application offers an accurate and reliable mobile learning experience by improving impact size (1.96) with the added capability of platform independence, which is not available in the comparing techniques. Table 7. Comparison to works on state-of-the art m-learning.

Authors
Year/Publication Architecture Platform Results Oyelere et al. [ The following graph (Figure 9) represents the comparisons of the proposed system to the prior literature.

Conclusions and Future Work
Development teams want their smartphone applications to run across as many devices as possible, and platform-independent application development models are becoming increasingly prevalent. The models, on the other hand, are complicated and challenging to create. Development of a secure platform-independent mobile-learning tool is a difficult task. In this article, a mobile-learning framework is introduced that will be used in Saudi universities. The platform-independent framework of the m-learning tool is described in detail. It would be a viable option for a large number of Saudi university students undertaking structured programming courses. The first version of the m-learning application was developed and introduced using the ADDIE model applied in the Xamarin framework. The m-learning tool facilitates structured programming learning by providing a variety of functions that enable students to interact with course materials in a simple, convenient, and productive manner. The proposed system is being tested by computer science students at the Faculty of Computing and Information Technology, KAU, Jeddah, Saudi Arabia. According to the results of this study, cross-platform learning experiences improve student engagement and promote greater student collaboration. The proposed architecture in this research was found to be an excellent roadmap for deploying mobile learning to develop students' online knowledge assessment skills through realtime cross-platforms between teachers and students. Although this research has important consequences for improving recommendations to promote m-learning in universities, it also has limitations in terms of the generalisation of findings. The findings could not be applied to other countries' educational systems since the study was done at a Saudi university. As a result, more research in various educational settings is needed to further understand m-learning use trends. The MLT method will be improved in the future based on the results of our assessment. A study on expanding the MLT is ongoing and will be discussed in later publications, based on the positive results presented in this article. The next step of our MLT expansion will focus on contextualised game-based learning. We intend to make the app available on app stores in the future, as well as propose a multiplayer mode to make the software more competitive and to take advantage of autonomous learning.

Conclusions and Future Work
Development teams want their smartphone applications to run across as many devices as possible, and platform-independent application development models are becoming increasingly prevalent. The models, on the other hand, are complicated and challenging to create. Development of a secure platform-independent mobile-learning tool is a difficult task. In this article, a mobile-learning framework is introduced that will be used in Saudi universities. The platform-independent framework of the m-learning tool is described in detail. It would be a viable option for a large number of Saudi university students undertaking structured programming courses. The first version of the m-learning application was developed and introduced using the ADDIE model applied in the Xamarin framework. The m-learning tool facilitates structured programming learning by providing a variety of functions that enable students to interact with course materials in a simple, convenient, and productive manner. The proposed system is being tested by computer science students at the Faculty of Computing and Information Technology, KAU, Jeddah, Saudi Arabia. According to the results of this study, cross-platform learning experiences improve student engagement and promote greater student collaboration. The proposed architecture in this research was found to be an excellent roadmap for deploying mobile learning to develop students' online knowledge assessment skills through real-time cross-platforms between teachers and students. Although this research has important consequences for improving recommendations to promote m-learning in universities, it also has limitations in terms of the generalisation of findings. The findings could not be applied to other countries' educational systems since the study was done at a Saudi university. As a result, more research in various educational settings is needed to further understand m-learning use trends. The MLT method will be improved in the future based on the results of our assessment. A study on expanding the MLT is ongoing and will be discussed in later publications, based on the positive results presented in this article. The next step of our MLT expansion will focus on contextualised game-based learning. We intend to make the app available on app stores in the future, as well as propose a multiplayer mode to make the software more competitive and to take advantage of autonomous learning. Funding: This project was funded by the National Plan for Science, Technology and Innovation (MAARIFAH)-King Abdulaziz City for Science and Technology-the Kingdom of Saudi Arabiaaward number (12-INF2259-03). The authors also, acknowledge with thanks Science and Technology Unit, King Abdulaziz University for technical support.

Institutional Review Board Statement: Not applicable.
Informed Consent Statement: The authors are thankful to all the associated personnel who contributed to this study in any way.

Data Availability Statement:
The data supporting this research and that were used to build the system can be acquired from the corresponding author or second-to-last author upon request.
Acknowledgments: This project was funded by the National Plan for Science, Technology and Innovation (MAARIFAH)-King Abdulaziz City for Science and Technology-the Kingdom of Saudi Arabia-award number (12-INF2259-03). The authors also, acknowledge with thanks Science and Technology Unit, King Abdulaziz University for technical support.

Conflicts of Interest:
The authors declare no conflict of interest.