1st International Workshop on Cloud Education Environments (WCLOUD 2012) A Cloud Computing for the learner’s usage tracks analysis Mariem Chaabouni Mona Laroussi INSAT/ISI INSAT Tunis, Tunisia Tunis, Tunisia mariem_chaabouni@hotmail.com Mona.laroussi@insat.rnu.tn Abstract—We present in this paper the definition of a analysis generating indicators in education and learning collaborative and cooperative platform, exploited through the context. Cloud, for analyzing learners tracks and managing indicators Our research operates in this context precisely in the in educational scenarios. This paper describes the architecture pedagogical indicators engineering which becomes an active and the design proposed for the platform, then it evocates the research field. Indeed, a large number of indicators have related security aspect. Finally, a test scenario is described to been proposed in the literature (cognitive, social, demonstrate the platform functionalities. educational, technical, etc. [5]). Each indicator, requiring expertise and knowledge in many areas that affect learning, Keywords-CEHL (Computer Environment of Human is defined in different environments. Additionally, systems Learning); pedagogical indicators; tracks analysis; Cloud Computing; web services performing trucks analysis and indicators calculation require significant resources in terms of storage (a large amount of indicators), power calculation (a frequent and sometimes I. INTRODUCTION complex indicator’s calculation) and cost (storage and In the context of distance learning, the assessment of the computing resources, maintenance, etc.). learner teaching activity becomes difficult due to the lack of To respond to the above problematic, the idea was to feedback to the tutor. The analysis of the learner usage tracks regroup and capitalize these indicators into a unique shared generated by learning tools during training sessions is a way platform available in the Cloud. This provides a way to for supervising and monitoring the distant learners. exploit indicators with a collaborative and intelligent The tracks analysis is a process executed on multiple manner. steps: (i) Collection of the observation data; (ii) Treatment of Our objective is to define a sharable platform for these data; (iii) Interpretation of the obtained data. The managing pedagogical indicators in the Cloud. It is a treatment and interpretation of the learner tracks can be collaborative and a cooperative platform for sharing a set of performed by generating pedagogical indicators which have indicators defined and integrated by several participants. as main objective the improvement of the learner activity This platform offers an indicators database integrated and perception. These indicators would help the teacher to easily exploited by several designers/tutors operating in different interpret the individual or the group educational situation and learning environments. A tool for managing this database is evaluate performed sessions. Indicators are dedicated to also provided by the platform. assist tutors in reengineering of their pedagogical scenarios. In this paper, we present in the first part our approach Actually, this reengineering means the improvement, the proposed for the platform managing pedagogical indicators control and the reworking of the learning process according on the Cloud. Then we present the architecture and design to learner’s requirements and learning environment for the platform, we evocate the related security aspect and variations. Indicators are susceptible to give pertinent we end by a test scenario demonstrating the platform information about the pedagogical scenario execution. functionalities. Examples of indicators in literature are the following: the collaboration level indicator [1], the division of labor II. TOWARDS A COLLABORATIVE AND COOPERATIVE indicator [2], interests of a page indicator [3], and many PLATFORM FOR INDICATORS MANAGEMENT SHARED ON THE others proposed by multiple works. Researchers operating in CLOUD this domain have dealt with several aspects related to this With the use increase of the Cloud architecture and its type of indicators. These researchers are particularly introduction into various areas, some educational interested by the aspects of reuse and capitalization of organizations begin to migrate to this architecture. This is educational indicators. In order to implement these aspects, related to the fact that many schools or institutes do not have works (e.g. [1], [4] and [5]) have introduced the design resources and infrastructure to integrate advanced e-learning patterns concept to describe the pedagogical indicator in a solutions. Cloud computing is the basic environment and unified way by proposing a model reusable by others (tutors platform of the future e-learning [7]. It has become a high and institutional designers). So the design pattern approach comes to respond to the needs of sharing and reusing of the technology because of its scalability, availability, followings: knowledge, skills and expertise related to tracks extensibility and efficient use of resources. "Blackboard" and "Moodle" which represent the biggest actors in E-learning 12 1st International Workshop on Cloud Education Environments (WCLOUD 2012) world have now some application versions oriented Cloud database and the calculation tool to provide a good service [8]. quality. In addition the maintenance of servers is dedicated The objectives of the migration of E-learning to the Cloud host. environments to Cloud architecture are to facilitate the 5) Simplicity and speed of access: Provide speed and learning, encourage openness, share and reuse the easy access to different features of the tool. educational resources. In our case, the shared educational resources are the pedagogical indicators design patterns. So III. ARCHITECTURE AND DESIGN PROPOSAL FOR we propose to deploy a platform offering a database of INDICATORS MANAGEMENT PLATFORM indicator patterns and a tool for managing this database. We propose for our platform an open and a modular These are accessible by a large number of users in different architecture shared on the Cloud. This ensures its reuse, learning environments (CEHL1) as illustrated in “Fig. 1”. interoperability, a high availability of resources and an easy way of use. The architecture of the indicators management platform, shown in “Fig. 2”, is composed of the indicator patterns database and the tool managing database, both deployed on the Cloud. Figure 1. Approach for sharing the indicators management platform. The indicators management platform is available on Cloud with SaaS mode, which means that it is managed and hosted in distant servers and its interfaces are available on the client side. The proposed tool is a browser-based application used as a service over the Internet, running on a flexible infrastructure. This approach would support the aspect of reuse and sharing provided by the design patterns of educational indicators, and come out with other benefits. The main aspects we aim to attempt are the following: 1) Share and reuse: Ensure that the ressources of the Figure 2. Detailed architecture for indicators management platform. platform are shared among multiple users in different CEHL by defining clear criteria for reuse. The shared ressources The platform's main objective is to exploit educational include the software (i.e. a tool for exploiting indicators and indicators facilitating the tutor perception of the situation of an indicator patterns database) and the hardware (i.e. the monitored learner. This platform allows the indicators computing power, large and secure storage, etc.). calculation and also the integration of new indicator patterns 2) Interoperability and standardization: Ensure that the in an intelligent and collaborative way. platform components are interoperable. That means Three actors interact with the platform: assigning the ability to function and to communicate with • The Tutor: transmits its observation needs to the tool other systems by presenting uniform and standardized which sends required indicator results; interfaces. • The designer/developer: adds new indicators to the 3) Evolutivity and extensibility: Define an architecture platform according to a defined schema (the tutor and the designer/developer can be physically the same person); allowing the evolution and the extensibility of the platform. • The learner: provides usage traces used by the tool This encompasses the ability to easily extend the indicators (no access rights are granted to this actor). database and also the ability to incorporate new features into The raw traces of the learner go through the “tracks the indicators management tool. collector tool” proposed in an existing work [9]. This tool is 4) High availability of resources and no servers maintenance: Ensure the availability of the indicators 1 Computer Environment of Human Learning 13 1st International Workshop on Cloud Education Environments (WCLOUD 2012) responsible for collecting traces from educational devices and structuring them in the standardised format IMS-LIP2. A layer of RESTful Web Services (WS) is available on the Cloud forming the indicator patterns database. This consolidates the sharing, the extensibility of the database and its interoperability with other systems. The database contains the indicators managed by the platform stored as executable and capitalized patterns. So, a web service of an indicator pattern is an independent Cloud-based application able to execute the associated indicator function. The indicators management tool is based on modules Figure 3. "Indicator_pattern_webservice" interface and related classes. assisting actors in the exploitation of the shared indicators database. It allows accomplishing two main processes: The An indicator pattern modeled by a web service is called by a new indicator integration process and the indicator HTTP request containing the name of the method to invoke calculation process. and the required parameters. After performing treatment A. New indicator integration process related to the received request, the Web service can return a For the integration process of a new indicator pattern, the HTTP response containing: designer/developer begins by implementing the • The metadata associated to the indicator pattern corresponding web service with any chosen programming (getIndicatorMetadata():Metadata). language. He must follow the required indicator patterns • The format of the learner usage traces needed to schema provided by the platform. This schema describes calculate the indicator exactly the format of requests and responses to WS that must (getNeededTraces():Trace_format[]). be met by each new indicator pattern. This will enable the • The results of the indicator based on the trace data pattern to be integrated and used by the platform. After that, received on input (executeIndicator(Trace_data[]): the designer deploys this web service on the Cloud and Indicator). provides its name / URI 3 to the “indicators extension module” via the tool web interface. An “indicator services Metadata, Trace_format, Trace_data and Indicator are a set directory” accompanies the database for referencing of classes used by the interface. available WS. 1) Supporting indicator patterns proposed in existing B. Indicator calculation process works: The proposed platform is mainly characterized by For the process of calculating an indicator, the “Indicator openness and collaboration aspects. It is therefore conceived calculation module” retrieves the structured traces provided in a way allowing the acceptance of integration of different by “traces collector tool”, and needed for the calculation indicator patterns proposed by existing works. In this paper, process. These traces are sent to the relevant WS which we present an example which integrates the Reusable performs the treatments. Then, the module retrieves the Indicator Patterns (PIR) proposed by Diagne [5]. returned results and stores them in the “Calculated indicators Reusable Indicator Patterns are defined by an indicator database”. A tutor interrogates this database to obtain the function f() and a set of metadata [5]. We use these metadata indicators results. to define the class Metadata (shown in "Fig. 4") forming the C. Indicator patterns schema return type of the function getIndicatorMetadata(). The indicator patterns database is generic and can be grafted on any platform to generate educational indicators. The “Fig. 3” models the "Indicator_pattern_webservice" interface and its related classes which describe the contract of an indicator pattern web service. This interface represents the schema that must be considered while implementing an indicator pattern WS. Figure 4. Metadata class based on Reusable Indicator Patterns. 2 IMS Learner Information Package: a standard based on XML, for exchanging learner’s data between several systems. 3 . Uniform Resource Identifier 14 1st International Workshop on Cloud Education Environments (WCLOUD 2012) Other indicator patterns can be considered in the platform such as UTL patterns [10] and the collaboration indicator patterns [1]. Therefore our work is restricted to the PIR pattern. IV. INDICATORS MANAGEMENT PLATFORM AND SECURITY The choice to deploy our indicators management platform on Cloud led us to deal with the data security aspect. This is why we mainly focus on the data confidentiality. The Cloud applications require strong confidentiality in the communication protocol used to access Web resources. Traces learners must be secured for reasons of confidentiality and protection of learner privacy. Figure 5. Process of the implementation and the integration of a new The RESTful web services receive learner usage tracks indicator pattern. in order to calculate the corresponding indicators. So it is necessary to ensure the confidentiality of these transmitted Phase 1 (follows): A designer/developer, detecting a tracks. Many studies have worked on the security aspect of new observation need on the participation of groups of the RESTful web services. We propose to use in our learners, decides to implement a new PART indicator approach the "REST security protocol" defined by Serme pattern. He begins by consulting the schema patterns of [11] which is a protocol designed to secure the RESTful indicators that must be followed in the Web service services communications. implementation. This pattern is accessible via the web The "REST security protocol" ensures data interface available for the designers. As shown in “Fig. 6”, confidentiality by encrypting their content. This protocol we choose to write the indicator patterns schema in SMD operates at the message level by adding HTTP-headers to (Service Mapping Description) [12]. The SMD, which transmit metadata. consists of a notation proposal based on JSON (JavaScript Object Notation), can be used for describing REST web V. FIRST TEST SCENARIO services. We present in this section a test scenario of our indicators management platform in order to demonstrate the above { "SDMVersion": "2.0", mentioned features. At the moment of writing, our platform "transport": "REST", is still on the development phase. "envelope": "URL", "parameters": [...], For the implementation and the deployment of the platform "services": { in the Cloud, we use the “Google App Engine”4. "getIndicatorMetadata": { "type": "method", The scenario consists of implementing a new indicator "transport": "GET", "_comment": "Returns the metadata of the indicator", pattern as a web service deployed on the Cloud, integrating it "parameters": [ ], into the indicators management platform and then using it by "returns": { "type": { the tutor. To perform this scenario, we opt for the indicator "name": {"type": "string"}, “Participation Percentage (PART)” proposed by ... "description ": {"type": "text"}, Dimitrakopoulou [2]. The PART function is mentioned in "domain": {"type": "string"}, ... “Eq. (1)”. }} }, "getNeededTraces": { PART (ti) = Agents (ti) / TotalAgents (1) }, ... "executeIndicator": { In our case, PART(ti) measures the participation level of a ... "parameters": [ selected group of learners. Agents(ti) represents the number { of different learners of a group have posted at least one "type": { "name": {"type": "string"}, message during ti time slot. TotalAgents represents the total }}} "value": {"type": "string" number of learners collaborating on the group. ], The “Fig. 5” illustrates the proposed process of the "returns": { "type": { integration and the use of a new indicator pattern. This "name": {"type": "string"}, process matches the different phases of the scenario. "value": {"type": "JSONObject"} }}}}} Figure 6. Extract of the indicator patterns schema. Phase 2 (implements): According to the provided schema, the designer/developer implements the RESTful 4 A platform offering users the ability to build and host web applications on Google's infrastructure web service representing the new indicator with the preferred 15 1st International Workshop on Cloud Education Environments (WCLOUD 2012) language. Subsequently, he deploys the developed web This result represents the value of the indicator PART equals service on Cloud in the preferred host and keeps the service to 0.6. The URI returns also the equivalent result on XML. URI. These various returned formats favorites interoperability. For instance, the following URI: [http://part-indicator- Phase 3 (provides new pattern): To integrate this new webservice.appspot.com/rest/part/executeIndicator/20/1] returns the following JSON result: {name: indicator in the platform, the designer/developer adds the deployed web service URI through the available web PARTICIPATION PERCENTAGE (PART), value : 0.6} interface (see “Fig. 7”). Figure 7. Web interface overview for adding new indicator. Phase 4 (publishes new pattern): The “calculating The JSON object in the red box shown in “Fig. 8” module” publishes the Name/URI of the new indicator represents the entry of our added indicator. Except from pattern in the services directory in order to be visible by the PART indicator URI that is useful, others are purely the platform. An example of a services directory is shown fictitious and URIs are added for demonstration purpose. in “Fig. 8”. The mentioned indicators names are extracted from an existing work [2]. {"Entries": [ { "name": "Collaboration level Indicator", Phase 5 (uses): A tutor can consult the list of available "uri": "http://collaboration-level-indicator- indicator patterns in the platform displayed in a web webservice.appspot.com/" }, interface accessible via Internet (see “Fig. 9”). He selects { the indicator PART from the list and provides the parameters needed for the calculation process. In our case, "name": "Participation percentage PART ", "uri": "http://part-indicator- webservice.appspot.com/rest/part/" }, the parameter is the group of learners the tutor wants to { observe. "name": "Division of labor Indicator", "uri": "http://division-of-labor-indicator- webservice.appspot.com/" } ] } Figure 8. Example of a services directory. 16 1st International Workshop on Cloud Education Environments (WCLOUD 2012) Figure 9. Web interface overview of the indicators search and calculation. REFERENCES VI. CONCLUSION AND PERSPECTIVES [1] É. Gendron, “Framework for the elaboration of collaboration This work operates in the CEHL domain and indicators from activity traces,” PhD thesis, University Claude Bernard Lyon 1, 2010. particularly in learners tracks analysis performed through [2] A. Dimitrakopoulou, “State of the art on interaction and generating indicators. It aims to help designers/tutors in collaboration analysis,” 2004. reengineering their pedagogical scenarios. [3] N. Bousbia, and J.M. Labat, “Perception de l’activité de In this context, this paper presents a shared platform in l’apprenant dans un environnement de formation sémantique du the Cloud provided to the designers/tutors acting in various parcours de l’apprenant,” in Actes de la conférence EIAH 2007, learning environments. This platform allows the 2007. designers/tutors to firstly gather a large number of [4] D.P.T. Ngoc, “Spécification et conception de services d’analyse de l’utilisation d’un environnement informatique pour l’apprentissage indicators in a reusable, extensible and interoperable humain,” PhD thesis, Université du Maine, 2011. database, and to secondly equip them by a tool for [5] F. Diagne, “Instrumentation de la supervision par la réutilisation managing this database. In other words, it is a d’indicateurs : Modèles et Architecture,” PhD thesis, Université collaborative and cooperative platform allowing the Joseph-Fourier- Grenoble I, 2009. exploitation of a set of educational indicators defined and [6] S. Iksal, and C. Choquet, “Usage analysis driven by models in a pedagogical context,” in Workshop on Usage Analysis in Learning integrated by several participants. Systems, In 12th International Conference on Artificial Our proposal is a scalable and an open architecture for Intelligence in Education (AIED 2005), Amsterdam 2005., pages integrating indicator patterns by several designers/tutors 49–56, 2005. in different educational environments. These indicator [7] H. Ma, Z. Zheng, F. Ye, and S. Tong, “The applied research of patterns are deployed in the Cloud and designed as cloud computing in the construction of collaborative learning platform under e-learning environment,” in System Science, reusable web services. This allows sharing experience, Engineering Design and Manufacturing Informatization (ICSEM), knowledge and expertise of the designers in various fields 2010 International Conference on, volume 1, pages 190–192. including computer literacy, education, psychology, etc. IEEE, 2010. The choice of Cloud architecture for the proposed [8] P. Pocatilu, F. Alecu, and M. Vetrici, “Measuring the efficiency of platform provides the following benefits: (1) cloud computing for e-learning systems,” WSEAS Transactions on Computers, 9(1) :42–51, 2010. centralization of reusable indicators, (2) sharing and reuse [9] M. Ben Sassi and M. Laroussi, “ Vers une modélisation of the hardware and software resources of the platform, standardisée des traces des apprenants,” in frantice.net, Numéro 5 - (3) scalability and extensibility of the platform, (4) high September 2012. availability of the platform resources, and (5) a quick and [10] D.P.T. Ngoc, S. Iksal, and C. Choquet, “Re-engineering of easy use of the indicators by tutors desiring to have a pedagogical scenarios using the data combination language and usage tracking language,” in Advanced Learning Technologies feedback on their pedagogical scenarios execution. (ICALT), 2010 IEEE 10th International Conference on, pages As perspectives of this work, we can envisage a set of 506–510. IEEE, 2010. improvements related to our indicators management [11] G. Serme, A.S. De Oliveira, Y. Roudier and J. Massiera, “Enabling platform like following: message security for RESTful services,” in ICWS 2012, 19th IEEE • Integrate other indicator patterns proposed in the International Conference on Web Services, June 24-29, 2012, Honolulu, Hawaii, USA, Honolulu, ÉTATS-UNIS, 06 2012. literature (e.g. UTL patterns [10], collaboration [Online]. Available : http://www.eurecom.fr/publication/3739 indicator patterns [1]). [12] M. A. Chatti, M. Jarke, and M. Specht, “PLEF: a conceptual • Provide advanced search functionalities for the framework for mashup personal learning environments,” IEEE indicators apart from the search by name. For Learning Technology Newsletter, vol. 11, no. 3, 2009. instance, we can add a search by: type of [13] C. Choquet and S. Iksal, “Modélisation et construction de traces d’utilisation d’une activité d’apprentissage : une approche langage indicators, operating domain, on-line publishing pour la réingénierie d’un eiah,” Revue des Sciences et date, etc. These search functionalities are provided Technologies de l’Information et de la Communication pour to the tutor through the web interface. l’Education et la Formation (STICEF), 14, 2007. [14] M.A.H. Masud, and X. Huang, “An e-learning system architecture based on cloud computing,” system, 10 :11. [15] A. Mikroyannidis, “A semantic framework for cloud learning environments,” 2012. 17