# Software Architectures for Adaptive Mobile Learning Systems: A Systematic Literature Review
## Appendix A
The proposal presents a three-layer architecture: (1) the Intelligent loop layer, which provides the necessary services for the different levels or components of the architecture; (2) the function layer refers to the components responsible for storing and processing context information and educational resources for adapting content to students; and (3) the Link Layer is responsible for extracting context information through sensors and using it in different components of the system. [PERSON] et al. [P13] developed a system to deliver adaptive formative assessment of context-aware mobile learning (AFA-CAML). The presented architecture includes context information storage, learner models, and an adaptation engine. [PERSON] and [PERSON] [P16] proposed an ontology for content adaptation using students' contextual information such as activities, devices, and general environment. The architecture has a system core implemented in a real-time flow so that context information is consistent with constant changes in environment variables. The main functionality of this component is to adapt the necessary services using the student's global context information. This architecture also has a context-sensing layer that performs two functions: obtaining raw data of various values in real-time from the user's environment and transforming these data into consistent contextual information that the reasoning engine can use. Onthe other hand, in the perception layer, information mapping is carried out to interpret the context information through ontologies. Finally, learning services and adapted content are discovered in the adaptation layer based on the obtained information. SECA-FML [17] is a system that seeks to provide courses adapted to students in terms of presentation format using context information and taking the context of the mobile device as an essential requirement. Its architecture has certain components to carry out the adaptation, including a user interface for mobile applications for the learner's interaction with content adapted according to their chosen course. An adaptation engine is responsible for selecting personalized educational resources using the information obtained by the other components. On the other hand, the student manager and student context manager components obtain and classify user information, learning style, profile, and management of the context information detected through the devices' sensors. AMLS [18] is an adaptive mobile learning system that provides learners with personalized content according to students' knowledge levels, learning styles, and heterogeneous learning devices. The architecture is divided into six modules. The first is the user interface module that handles the learner and system interaction. The detection module obtains context information and monitors the learner's progress. In the student module, information related to the student is managed: personal information, study preferences, and learning style. On the other hand, the student diagnosis module comprises a knowledge diagnosis mechanism and learning style. This module evaluates the level of knowledge and identifies the student's learning styles with the information obtained in the student profile. The knowledge diagnostic information identified above is stored in the expert knowledge module. Finally, a content adaptation model is responsible for adapting learning content using information from the profile and its device. [PERSON] et al. [19] introduced a context ontological model for adaptive learning, which has different learning activities to affect a work-based adaptation. The model has a hierarchical layered design with a common layer and a particular domain layer. In the common layer, common contexts are generalized, where a general context is defined and shared between different domains. On the other hand, the domain layer is divided into two sublayers: general and specific domains.