ProFormA Programming Question Type

Question types ::: qtype_proforma
Maintained by Karin Borm
Quiz question type for automatically graded programming questions. Questions can be created in Moodle or imported as ProFormA tasks (https://github.com/ProFormA/proformaxml). Plugin requires the qbehaviour_adaptiveexternalgrading plugin and ProFormA Praktomat (https://github.com/elearning-ostfalia/Proforma-Praktomat).

ProFormA Programming Question Type 1.0.6

Moodle 3.4, 3.5, 3.6, 3.7
Released: Wednesday, 18 September 2019, 3:28 PM

The ProForma Moodle Question Type is a Moodle Plugin that is used for automatically graded programming questions in Moodle quizzes.

Grading is performed by an external grading system that conforms to the ProFormA standard (https://github.com/ProFormA/proformaxml).

Standard test frameworks (e.g. JUNIT for Java) are used for specifying tests. So there is no need to learn a new complex test description language.

The grading back-end detemines what programming languages can be used. The Moodle question type itself does not care about the programming language as far as there is support by the the grading back-end. It does not contain any code depending on a particular programming language (except for syntax highlighting).

Note: The renderer code partly bases upon the renderer from essay question type (Moodle core). Small code parts (in particular in qbehaviour_adaptiveexternalgrading) are copied from Coderunner (https://moodle.org/plugins/qtype_coderunner).

Features

  • Moodle quiz question type
  • submission as file upload or as input into editor
  • Submission file upload with more than one file
  • Syntax highlighting in editor
  • Code snippet as starting point for student
  • immediate feedback for students (optional)
  • supported programming languages are only limited by the available grader back-ends

Screenshots

Student view with editor input (code template and syntax highlighting):

Alternative: File upload with filepicker for large files or if the response consists of more than one file:

Feedback from grader:

Installation

Running this Plugin also requires the following plugins to be installed:

  • Moodle-Plugin qbehaviour_adaptiveexternalgrading (question engine changes)
  • Moodle-Plugin qformat_proforma (import for ProFormA questions)

Besides:

Import process:

Settings

Admin settings

  • set grader URI to IP address and port number of your 'Ostfalia Praktomat server'

Quiz settings

In order to show the grading feedback to the student you need to set the following options in your Moodle quiz:

  • Question behaviour: 'Adaptive' (with our without penalties) for showing immediate feedback or 'deferred feedback' if the student shall not see any feedback
  • Review Options: 'Specific Feedback' set to 'on' for showing detailed grading results
  • Review Options: opt out 'Right Answer' if you do not want to show the model solution

Version information

Version build number
2019091700
Version release name
1.0.6
Maturity
Stable version
MD5 Sum
160165d41e031ea5acc00df17e8ccc39
Supported software
Moodle 3.4, Moodle 3.5, Moodle 3.6, Moodle 3.7

Version control information

Version control system (VCS)
GIT
VCS repository URL
VCS tag
1.0.6

Default installation instructions for plugins of the type Question types

  1. Make sure you have all the required versions.
  2. Download and unpack the module.
  3. Place the folder (eg "myquestiontype") in the "question/type" subdirectory.
  4. Visit http://yoursite.com/admin to finish the installation