MONASH ENGINEERING MoodleBOT The development of an automated intelligent support system for Moodle designers Luke Low
Context 2005-2012 | Victoria University: Lecturer of Innovative Pedagogies 2012-2016 | PSA: Senior eLearning and Instructional Designer 2016- | Monash University: Online learning system coordinator
Beginnings Was set a task to automate the process of rolling over units for the new semester Endeavour was a failure Learnt how to automate others processes in Moodle
Reality about academia Time poor High cognitive load The time between setting up Moodle activities can be somewhat lengthy New and powerful tool as a learning admin
What is MoodleBot?
Example Create links to unit guide for a variety of units formed as https://unitguidemanager.monash.edu/access?tpS=SX&tpY=XX&tpUC=XXXXXX Change permissions set so that only admin can hide, move or delete the link ~150 times per semester
Example
What is my purpose? Automation tool for labour intensive repetitive tasks Persistent Moodle grammar checker Informed training needs analysis Predictive support model (future development)
What is MoodleBot?
Increase capacity to do more for academics Results have been Increase capacity to do more for academics KEY: 27 critical incidents were prevented last semester This early detection results: improves perceived quality from staff and students reduces workload for academics and support staff Insight into Moodle usage in the faculty
Creating your first script
What you will need Selenium WebDriver Selenium IDE* An IDE that supports a language you are comfortable with Know how Moodle users URL query string parameters eg yourdomain.com.au/course/search.php?search=XXX
Things to avoid Don’t record your username and password Don’t go too fast, put plenty of intentional breaks into the code Don’t test on a production server Test your scripts thoroughly Know your servers limits
Our script View a course Login Turn editing on Add a URL Configure it
Start recording Open Selenium IDE Start recording
Recording - output
Recording - cleanup
Recording - cleanup
Recording - polished output
Test to see if it works….still
Export to Python / Web Driver
Python script - Raw
Python script - Raw
Python script - Raw
Python script - clean up
Python script - clean up
Python script - clean up
Python script - clean up
Python script - clean up
Python script - clean up
Slowing things down
Slowing things down
Summary Automation for Selenium Powerful tool for system admins Clean data from recording system Put breaks into programming Take care of your educators
Questions