Skip to content

Development of Moodle Module prior to deployment on main OEA repository

Notifications You must be signed in to change notification settings

cstohlmann/oea-moodle-module

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Note: This module is currently released as v0.1rc1, and is dependent on the OEA framework v0.8rc1

Moodle Module

Moodle is a learning management system (LMS) for educational institutions, that provides data on learners' digital activity in Moodle applications such as assignments, lesson progresses, forum discussions, and quiz results.

Using this module, data from Moodle can be exported into your organization's OEA data lakes to combine it with other datasets for a variety of use cases, including Learning Analytics.

Moodle requires the access of the Moodle Database from Moodle, which provides school and class roster data as well as activity/student performance data, to enable retrieving the files to be landed in the data lake.

Moodle Module v0.1 Overview

(Moodle documentation on tables contained in the Moodle database: Moodle Database Tables)

Problem Statement and Module Impact

Many education systems across the world use Moodle as a primary source of LMS data. This particular data source provides a wealth of data from SIS to student learning outcomes, as well as digital activity taking place. This module provides methods of data processing and refinement of certain rostering and activity tables from the Moodle database. These tables can then be fitted into schemas (used for supporting package) for individual use-cases.

Moodle data can be used for a variety of analytics purposes, including:

  • School and district dashboards for education leaders to identify student activity in learning outcomes progress.
  • Combining Moodle data with other data sources to show the relationship between digital activity and other metrics such as attendance.

Module Setup Instructions

Moodle Setup Instructions

Preparation: This module currently leans on v0.8rc1 of the OEA framework. Ensure you have proper Azure subscription and credentials and setup of the OEA framework. This will include v0.8rc1 of the OEA python class.

Note: All the steps outlined below are applicable to deployment of this module with test data. However, if you are doing a production deployment, this module currently does not provide guidance and assets will be need to be elevated for interactions with production data, depending on the Moodle database structure for an education system.

  1. Run the setup.sh script
    • Open cloud shell in your Azure subscription (use ctrl+click on the button below to open in a new page)
      Launch Cloud Shell
    • Download the module release to your Azure clouddrive
      cd clouddrive
      wget https://github.com/cstohlmann/oea-moodle-module/releases/download/module_Moodle_v0.1rc1/module_Moodle_v0.1rc1.zip
      unzip ./module_Moodle_v0.1rc1.zip
    • Run the setup script like this (substitute "mysynapseworkspacename" with your synapse workspace name, which must be less than 13 characters and can only contain letters and numbers - e.g. syn-oea-cisd3v07kw1):
      ./module_Moodle_v0.1rc1/setup.sh mysynapseworkspacename) to install this package into your own environment.
  2. Run the Moodle module main pipeline template or the Moodle_example notebook into your Synapse workspace to see the functionality of module assets.
    • It is recommended that you first run the module example notebook to understanding the methods of data processing, before running the pipeline. Although, running either the example notebook or the main pipeline accomplish the same processes.
  3. Verify that the module pipeline landed data into stage 1 and 2, and SQL and lake databases were created. See the module pipeline page for detailed instructions.
  4. Download the module Power BI template file. Module test data is already imported into the Power BI. See the module Power BI page page for details and instructions for switching the Power BI template data source, to import from your Synapse workspace data source.
    • Note: This step is still under development (that is, this module currently does not contain a specific Power BI dashboard).

OEA Learning Analytics Schema:

After completing the setup of this module, the Moodle activity schema can be transformed into the OEA schema standard for learning analytics. Refer to the documentation and assets to see how this module can be extended and standardized for OEA package-use.

Data Sources

This module imports digital activity, learning outcomes, and roster data for an education system via queries from the Moodle database.

  • Moodle Database Table Information provides a reference of the schemas for all tables held in the Moodle database.
  • The Moodle data source is used for ingesting Moodle digital activity, learning outcomes and SIS data, as explained above. There are also additional Moodle tables that can be ingested upon creating your own pipeline, or adding to the pipeline template provided.
  • The data ingested is expected to be formatted as CSV files (per table) from the Moodle database.

See the module test data page for details on data format and contents.

Module Components

Out-of-the box assets for this OEA module include:

  1. Test Data: One artificially generated test data set, which supports the module pipeline and Power BI template. Test data matches the Moodle database tables format. This asset also includes a metadata.csv which is responsible for schema definitions and the pseudonymization process.
    • Higher Education Test Data: Test data formatted as a higher education system.
    • metadata.csv: Metadata CSV to support module data ingestion and refining for all Moodle tables contained in the module.
  2. Pipeline Template: One main pipeline template which lands data into the data lake in Stage 1 (for raw data) and processes into the Stage 2 data lake (for structured, queryable data). Stage 2 data is then made available via a serverless SQL endpoint.
  3. Notebooks: Two sets of notebooks that can be used for either data exploration, or necessary for ingesting and refining data in the pipeline; notebooks are automatically installed upon running the setup script.
    • Moodle_example.ipynb: A module example notebook that demonstrates the basic functions of landing raw test data to Stage 1, ingestion from Stage 1 to Stage 2/Ingested, and refinement to Stage2/Refined.
    • Moodle Pipeline-Supporting Notebooks: Module-specific notebooks that ingests the Moodle tables and refines the dataset.
  4. PowerBI Template: Coming soon.
Dashboard Explanation Digital Learning Outcomes Summary

Additional Information

Resource Description
Overview of Moodle Intro to Moodle, what it can do, and what it can provide.
Moodle Database Overview Overview of Moodle and reference to full documentation.
Moodle Database Table Information Reference to learn about the schema details for Moodle tables ingested into stage 1.

Contributions from the Community

The Moodle module welcomes contributions.

This module was developed by Analytikus in collaboration with Kwantum Analytics. The architecture and reference implementation for all modules is built on Azure Synapse Analytics - with Azure Data Lake Storage as the storage backbone, and Azure Active Directory providing the role-based access control.

Legal Notices

Microsoft and any contributors grant you a license to the Microsoft documentation and other content in this repository under the Creative Commons Attribution 4.0 International Public License, see the LICENSE file, and grant you a license to any code in the repository under the MIT License, see the LICENSE-CODE file.

Microsoft, Windows, Microsoft Azure and/or other Microsoft products and services referenced in the documentation may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653.

Privacy information can be found at https://privacy.microsoft.com/en-us/

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.

About

Development of Moodle Module prior to deployment on main OEA repository

Resources

Stars

Watchers

Forks

Packages

No packages published