Personalized Assessment thRough generaTed Exercises foR pRogramming coursEs
flagPázmány Péter Catholic University

  • 05 – Natural sciences, mathematics and statistics
  • 06 – Information and Communication Technologies

3. Innovative student’s learning assessment
  • Learning outcome-oriented, innovative ways of students' assessment
  • Effective and safe ways and methods of online assessment
  • Promoting self-assessment and peer assessment to empower students and enhance their learning
  • Student learning enhancement using formative assessment
  • Online real-time feedback and assessment for continuous improvement of students learning

In our project named “Personalized Assessment thRough generaTed Exercises foR pRogramming coursEs” (PARTERRE), we introduce a comprehensive toolset for digital teaching material and exercise generation for programming courses. The digitalization in HE gets more and more focus, especially after the break of the pandemic in 2020. We faced several challenges in our introduction to MATLAB programming course. As our course is in the second semester, almost all of our students participate in it, which means we cannot hold the exam for everyone at the same time. We did not have time and resources to give personalized feedback throughout the semester for students for homework assignments, or the feedback was late. Additionally, students had the exams in groups, and they felt that the difficulty level of exams fluctuated. We developed a pipeline consisting of Python scripts and MATLAB live scripts to generate teaching materials problems for homework and exams and exercises to answer these needs. The current implementation works for MATLAB as the programming language and Moodle as the LMS, but it can be adapted to other languages or platforms. The underlying code is stored at GitHub to support collaborative development and versioning. With the toolset, we can generate virtually infinite variations for a given exercise, defining interchangeable parameters which the system randomly generates. This way, students get unique exam sheets, but the difficulty level is the same for everyone. For teachers, it is easier to create many similar problems and exercises and import them into Moodle, which saves a lot of time both in the construction phase of the course and for the assessments. The exercises have a built-in evaluation and feedback, encouraging students to work individually. The toolset generates MATLAB live scripts and the evaluation code in MATLAB p-codes. Students can run the evaluations but cannot see the source code of the evaluation functions. The exercise prints the feedback on the live script output with a hash code that students copy into Moodle to get subpoints. This way, the points are stored in Moodle grade book. We created a module that logs students’ activity to a server to filter out fraud attempts for online exams. We used the toolset to implement the course in the K-MOOC platform, which is open to the public. The course language is Hungarian, but most parts are also available in English, as we offer the course to our international students.

Tools, equipment, technology used
Outcomes and outputs, main results
Lessons learnt
Adaptability and sustainability of the best practice (for other institutions)
Promotion of best practice
Scope and impact
  • Course/department level
  • Faculty level
  • Cross-institutional level

6.1 Digitalization
  • Innovative, novel methodology in using digital tools/devices in teaching
  • Innovative use of digital administration tools
  • Digital skills development and assessment both general and profession-related, embedded in course design, in teaching and assessment
  • Novel digital solutions (tools, frameworks, devices, tasks to enhance efficiency and motivation)

Reasoning: We developed a pipeline consisting of Python scripts and MATLAB live scripts for exercise generation in Moodle XML that we import into our course with attachments in the data URI scheme to support automation. We use MATLAB live scripts as teaching material for homework and exams with automatic feedback and assessment. We use Moodle embedded answer question type with generated hash codes to calculate and store subpoints. Thus, we connected the MATLAB live script capabilities with Moodle grading.

6.2 Internationalization
  • Courses offered to international multicultural students both online and offline

Reasoning: The course is part of the preparatory semester for international students starting their MSc at our Faculty. The course material the contrary to the BSc course has less emphasis on the homework. The timing is also different as all the classes are in a three-week period, and the number of students is usually less than ten. The course includes the MATLAB Fundamentals online course provided by MathWorks and the exam is a mini project where the students can choose from ten different exercises.

6.3 Inclusion and diversity, universal design
  • Alternative, flexible assessment methods for students with special needs

Reasoning: Most parts of the course material are readable for a text-to-speech synthesizer. During the last couple of years, we had two visually impaired students. Both have completed the course. They needed more time to solve the exam problems and they did get more time for it. For other parts, they could follow the course with other students.

6.4 Sustainability
  • Special courses reflecting to UN 2030 Sustainability goals, Green Deal - mini-courses, microcredentials

Reasoning: The developed course material can be used as part of a microcredential program. The example or pilot implementation is the one which was done in the K-MOOC framework, where we introduced the course entitled "Bevezetés a MATLAB programozásba" using the methods as mentioned earlier and technologies. The course is self-paced and gives direct feedback to the students. The students can also get help through the Moodle forum or email from the instructor.

3.3 Public contact datas
Name Email address Website
Tamás Zsedrovits