Problets - How instructors can use them.
Problets are designed to be used as supplements to classroom
instruction and as complements to programming projects traditionally
assigned in introductory programming courses.
Instructors can use the problets for learning or testing:
- For learning:
Instructors can use the problets to help students learn new
concepts and reinforce learned concepts.
Instructors can assign students to use the problets in one of two modes:
- In class, for a specified duration of time, in supervised mode;
- After class, on students' own time, in unsupervised mode.
In order to facilitate unsupervised use, problets provide
help-menus, self-timing, and remote logging of data.
In this mode, instructors need not set aside any class time to use the
problets; students can use them to learn at their own pace, on their
own time.
However, in order for students to use problets in unsupervised mode,
two conditions must be met:
- Instructors must make using the problets a mandatory part of
the course. Otherwise, students are unlikely to use problets, or
for that matter, any other supplementary material;
- Even though using the problets is a required part of the
course, students must not get any credit towards the course
grade for using the problets. This helps prevent cheating.
The following features of the problets are designed to promote learning:
- Problets generate problems as random instances of
templates. Therefore, students can use the problets to practice
problem-solving for as long/often as they like.
- Problets generate problems adaptively, i.e., on only the
topics the student has not yet mastered. This helps save students
time.
- Problets provide detailed feedback, including explanation of
the step-by-step execution of programs. This helps students learn from
their mistakes.
- For testing -
Instructors can use the problets for assignments and tests in class.
Since the problets have no way of authenticating the user, it is
recommended that problets be used for testing in supervised mode only.
The following features of the problets are designed to facilitate
testing:
- Problets generate problems from a predefined sequence of
templates. This helps minimize the variability of the test from one
student to the next.
- Problets generate problems as random instances of
templates. Therefore, every student gets a different set of
problems. This prevents cheating during the tests.
- Problets do not provide any feedback, not even whether the
student's answer is correct or wrong.
- Problets automatically grade the student's answers. This saves
instructors the time and labor of grading the tests.
- Problets collect and log the student's scores on the
server. This again saves the instructor time and effort.
- Problets can be configured to administer tests of fixed
duration, tests with a fixed number of questions, or tests that
last until the student has demonstrated a pre-determined level of
mastery.
Amruth Kumar, amruth@ramapo.edu