## 4 SERS Requirements
### Recommendation Model  
A recommendation model has been proposed to cover the following objectives:  
* Support the educator in describing educational oriented recommendations;
* Facilitate the delivery of the recommendations in the course following a rule-based approach;
* Present information to the learner about the rationale behind the recommendations offered;
* Provide semantic information that can be used to reason about which recommendations are appropriate for a given situation;
* Facilitate the automation of the recommendations generation process, which draws on user modeling based on machine learning techniques. With the above features the model is intended to bridge the gap between the recommendations description produced by the educator and the recommendations delivery within the running course. When educators describe the recommendations, they identify, among others, the conditions that have to be fulfilled at runtime (for example, the learner to be recommended has to have a sequential learning style, be using a device with audio capabilities and just downloaded the contents from lesson 2). A rule-based approach can be used to select those recommendations whose conditions match the current learner and her context at runtime. Learners receive the appropriate recommendations according to their individual features and current context as well as an explanation about the educational rationale for the recommendation offered. Moreover, through the provided semantic information, the system may determine appropriate recommendations for a given situation. The interaction can be mined to infer which recommendation types are the most appropriate. For instance, if the given situation is at the beginning of the course, a common learners' behavior might be detected in the mining process. Similarly, there might be common situations in a collaborative situation. The proposed recommendation model facilitates the management of the recommendations as it allows describing the following aspects:* **What** should be recommended: actions on objects available in the platform (_i.e._, answering a message in the forum);
* **How** the recommendation should be communicated: proper usage of the language (e.g., formal _vs._ informal language);
* **When** the recommendation should be offered: the user features as well as the user and course context have to be taken into account;
* **Why** the recommendation is delivered: provides a justification of the recommendation;
* **Which** are the recommendation characteristics: describes the recommendations in terms of meaningful attributes. An element has been considered in the model for each of the above aspects. Moreover, each element involves several attributes. Details of the model are reported elsewhere [31]. In order to have an overview, they are compiled and summarized in Table 3. In Table 5 an example of a recommendation described in terms of the model is provided. Following Table 3, it should be noticed that the proposed recommendation model considers the possible actions that may occur on any LMS object. As in any web-based system, an object is any item in the LMS that is linkable, that is, can be accessed through an HTML link. Since an LMS consist of items which are accessed through links, recommendations in SERS provide links to LMS items. Moreover, since some content goes with the link recommended, that content can specify what action is to be done on the linked object. Thus, when the learner receives a recommendation with a link to a particular object (e.g., a calendar event, a message in the forum, _etc._), the recommendation content points to a specific action on a particular LMS object. Two kinds of actions can be recorded. On the one hand, passive actions, such as to read a specific event so the learner takes it into account in her planning or to read a message posted in a forum by a classmate that is related to the activity the user is working on, where information is given only from the system to the user.