# Software Architectures for Adaptive Mobile Learning Systems: A Systematic Literature Review
## Appendix A  
In this supplementary material, we present a detailed description of the software architectures proposed in the selected primary studies in this SLR. The studies [P1][P2][P5][P12][P13][P14][P15][P16][P17][P18][P19] and [P22] presented a component or layered architecture. Each of these works is described below. The study [P1] implemented a context-aware system to interact with learning content through an easy-to-use user interface with Quick Response (QR) code and Global Positioning System (GPS) technology for content personalization. The educational resources this application manages are in the domain of English learning. The architectural model was divided into three subsystems. The multimedia learning subsystem, where educational materials are stored between courses and student learning behaviors to make future adaptations. The context-aware subsystem, which obtains context information using GPS and QR codes, is responsible for processing the information obtained to determine the relationship between the learner's environment and the learning content. Finally, the mobile learning recommendation subsystem is responsible for executing the content adaptation and returning the appropriate information based on the context and the information collected from the learner. [PERSON] and [PERSON] introduced a Collaborative and Context-aware Mobile Learning System (CCMLS) [P2] with specific features such as mobile learning, representation or interpretation of the environment, and collaboration to deliver learning resources. The architectural design considers the classification of content, learners' learning skills, and roles for communication between experienced and inexperienced users. The architecture comprises three layers: learning context detection, adaptation, and application. The first layer contains the physical and logical sensors for detecting the learning environment. The second layer comprises various components that manage and process the context information obtained to provide a set of rules for adaptation to learning and identify appropriate resources based on the characteristics of the users. The third layer is responsible for delivering resources to the learner, managing the learner's interaction with the application, collecting information, and determining communication channels with other learners. [PERSON] et al. [P5] presented the design of a layered architecture (CAMLES) for context-aware mobile learning for English language teaching. Among the requirements considered in the design, the content adaptation based on information on the environment, location, learning time, and learner's knowledge in progress was considered. The architectural model consists of three layers: detection, database, and adaptation layers. The detection layer collects information to be used by the other layers; the component groups the detected data, identifying the learner profiles and context information. Subsequently, the database layer manages the storage of context information, the student profile, and the educational resources used in the system. The storage of these data allows the components integrated into the architecture to generate a learner history so that the information is used to improve adaptations using the student's context. Finally, the adaptation layer uses stored and real-time information to provide learners personalized materials according to their characteristics. MALO [P12] is a system aimed at managing adaptive learning objects. In this system, content adaptation was made based on the educational context and the needs of a learner. In this regard, the system performs learning style extraction, situation analysis, and adaptation of adaptive learning objects.