Appendix C — Using SEB in Biweekly Mock Exams and Assessments

Besides the two exams with parameterized questions (see Appendix A), the Safe Exam Browser (SEB) was also used to restrict access during the biweekly mock exams — VPL (Virtual Programming Lab) activities with Programming Exercises (EPs) similar to those in the regular assignment lists, worth a bonus of up to 5% on the final grade —, as well as the other practical assessments.

SEB ensures a secure assessment environment by blocking access to unauthorized external resources on the lab machines. For the implementation adopted in this work, Windows 10 and SEB version 3.7.1.704, available at https://safeexambrowser.org/, were used, and must be pre-installed on every lab workstation.

The procedure for configuring the SEB environment file and linking it to the VPL activity in Moodle is described below.

C.1 Configuring the application in SEB Tool

To generate the .seb configuration file that will be distributed to students, open the SEB Tool utility and follow the steps below.

  1. General
    • In the Start URL field, enter the direct URL of the VPL activity in Moodle.
    • Note: if it is necessary to navigate to more than one activity within the same course, enter the course’s main URL and, on the Browser tab, check the Allow navigation back/forward in exam option.
  2. Network
    • Include the URLs allowed for navigation. To restrict access to the desired activity, use a filter expression in the pattern /mod/vpl/*?id=4624*, where the final number corresponds to the VPL activity’s identifier in Moodle. In Table C.1, the last row contains the URL of the course’s main page (identifier 475), but it can also be replaced by the URL of a section containing several activities. This setting is optional and useful when there is more than one VPL activity. In that case, the first row of the table should be repeated for each assessment activity that should remain accessible during the exam.

    • General settings on the Filter tab:

Table C.1: URL filter expressions used in the SEB configuration.
Active Regex Expression Action
[x] [ ] https://moodle.ufabc.edu.br/mod/vpl/*?id=4624* Allow
[x] [ ] https://moodle.ufabc.edu.br/login/index.php* Allow
[x] [ ] https://moodle.ufabc.edu.br/course/switchrole.php* Allow
[x] [ ] https://mctest.ufabc.edu.br/compare Allow
[x] [ ] https://moodle.ufabc.edu.br/enrol/index.php?id=475 Allow
  1. Security
    • If the lab uses a projector or a secondary monitor, set the Maximum allowed number of connected displays field to a value greater than 1, to prevent SEB from blocking the display.
  2. Config File
    • Click Save Settings As… and save the file with the .seb extension.
  3. Exam
    • Check the Use Browser Exam Key and Configuration Key option.
    • Copy the code generated in the Browser Exam Key field. Important: copy this key only after saving the file in the previous step.

C.2 Linking the SEB key to the VPL activity in Moodle

After generating the file and obtaining the Browser Exam Key, access Moodle to apply the restrictions.

  1. On the VPL activity page, click the gear icon (Settings).
  2. Go to Configuration → Submission restrictions and click Show more.
  3. Change the SEB browser required option to Yes.
  4. Paste the copied key into the SEB exam key(s) field.

C.3 Restriction by IP address (optional)

To ensure that submissions come exclusively from the lab computers, SEB can be combined with Moodle’s network filter, by filling in the Allowed submission from net field.

  • Consecutive ranges: use a hyphen to define the range. Example: 111.11.11.1-62 (allows IPs from 111.11.11.1 to 111.11.11.62).
  • Non-consecutive IPs: list the individual addresses separated by commas.

C.4 Final remarks

The integration of SEB with VPL in Moodle creates a simple flow for the student: just double-click the .seb file provided by the instructor for the secure browser to open directly on the configured activity.

The combination of the Browser Exam Key with IP-range restriction on the lab machines provides a robust solution for online programming assessments, hindering improper access and contributing to the integrity of the assessment process.