Chapter 4. Managing Your Class

Now that we have covered the basics of setting up a course and adding content, we need to take a look at some of Moodle’s underlying capabilities. At first glance, this may seem like administrivia, but understanding roles and groups is one of the keys to unlocking Moodle’s full potential as a learning environment. A person’s role in a course determines what he can do—in other words, what capabilities he has. It’s a very powerful system, but it does have a bit of underlying complexity. You can use groups to create student workgroups, recitation sections, or any other arbitrary grouping you need to realize your learning design.

We will start by discussing roles, since anyone who wants to do something in your course needs to be assigned a role.

This section covers the following MTC skills: 7.1 Enrolling participants; 7.5 Roles

The new roles and permissions system in Moodle provides you with a huge amount of flexibility for managing how students and other people interact with your course. In older versions of Moodle (prior to 1.7), there were only six roles possible: guest, student, non-editing teacher, editing teacher, course creator, and administrator. Whilst the new system supports these roles out of the box, it also allows you to create and customize roles, and to change what a given role can do in each activity. For example, you can now create permissions in individual forums, which allows you to let students act as moderators in one forum while you retain the moderator role in all of the other forums in your course.

If it seems a bit daunting, don’t worry. Using roles and permissions is something you can take slowly. You can start the usual way, assigning people as students, teachers, and other roles specified by your institution. Later, when your course design grows more elaborate, you can begin to experiment with overrides and assigning specific roles in specific contexts.

We’ll start simply, by assigning users to predefined roles in your course. Then we’ll take a look at the roles and capabilities system and later discuss how to use the advanced features.

Most of the time, students will enroll themselves or be added automatically by your university’s enrollment system, so there shouldn’t be much need for you to manually enroll students. However, if you need to add a teaching assistant, an outside guest, or a student who is having a problem with financial aid, you must manually enroll them, i.e., assign them a role in your Moodle course.

To assign a user the role of student:

  1. Click “Assign roles” in the Administration block.

  2. Choose the type of role you wish to assign, e.g., student

  3. On the “Assign roles” page, there are two columns, as shown in Figure 4-1. The left column lists users who currently have that role, and the right column lists users who don’t.

    Between the two columns is a hidden assignment checkbox next to an eye icon, for hiding which role a user is assigned to so that the user doesn’t appear in the list of course participants. Click the checkbox before assigning a role if required.

  4. Find the student you want to add to your course in the righthand column. You can limit the list by searching for the student’s name or email in the Search box below the righthand column.

  5. Select the student’s name from the list and use the left-facing arrow button to add the student to the list in the lefthand column.

Students will have access to your course as soon as you assign them a role. They won’t need to have an enrollment key or to confirm the enrollment.

If your university doesn’t have an automatic enrollment system, then ensuring that only students who are officially enrolled in your course have access to your Moodle course can be tricky.

Jason: At my university, students used to be able to drop and add courses at will for the first three weeks of the semester. Many instructors found it difficult to track the constant movement in the roster.

To minimize the amount of work you need to invest in this administrative detail, we recommend a three-pronged strategy.

First, use the course enrollment settings to limit who can enroll in the course and when. Set an enrollment period for the length of your drop/add time. Be sure to set an enrollment key as well. Only students who know the key will be able to enroll in your course, so you won’t need to worry about students enrolling without permission. For more information on these settings, see Chapter 2.

Second, closely monitor your official course roster during the drop/add period. Be consistent about dropping and adding students on a regular basis so you don’t have a big mess at the end of registration.

Third, encourage students who are enrolled to create an account and join your Moodle course as quickly as possible. Many instructors make logging in and joining their Moodle course a small, mandatory assignment. This helps students by forcing them to access your online resources early in the semester, and it makes enrollment management easier for you, since you won’t have to add as many students manually.

The new roles system introduces some new terminology that is important to understand before you dive in.

There are four primary concepts to understand:

Roles are made up of a matrix of capabilities and permissions that determine what a user can do within a given context. For example, a user may have course creator privileges at the site level but be unable to post to a particular forum in a certain course.

The permissions determine whether someone can use a capability. Permissions may be set to one of four values:

Keep in mind that permissions are set within a role, and then people are assigned to roles in a given context. A person can be assigned to more than one role, depending on the context, or even multiple roles within the same context.

The capabilities within a given role can also be overridden within a specific context. Let’s say you want to create a forum in which students can rate each other’s forum posts. (By default, only teachers can rate forum posts.)

The way to achieve this is through a role override. As long as the capabilities you want to allow your students to have in your course (or within a module in your course) aren’t prohibited at a higher level, you can override the permissions. Within your course, for example, you can override roles at the course level or in a particular activity. If you want to change what students can do anywhere in your course, override the role at the course level. If you want to create a different set of permissions for a given activity, override the role in the activity itself.

The override interface will only show you the capabilities for the context you are overriding. So if you want to allow students to rate forum posts, you can override the student role in a particular forum. You will only see the forum capabilities in the interface, as shown in Figure 4-2.

To set a role override for an activity:

To set a role override at course level:

The remaining steps are the same as for setting a role override for an activity.

Overrides allow you to create a lot of variation in the way students interact with an activity. However, before digging into the overrides system itself, be sure you have a clear understanding of what you are trying to achieve educationally with the override.

In addition to assigning roles in your course, you can also assign roles in activities. Let’s say you want to create a forum and allow particular students to moderate the discussions. To moderate, they will need to be able to delete posts, edit posts, and move threads. But the normal student role doesn’t allow them to do these things, nor do you want them to be able to moderate other forums in your course, or all students to be able to moderate.

The way to achieve this is by assigning a role in the activity module context. If you assign the role of non-editing teacher to the students you want to moderate forum discussions, then the students will have non-editing teacher capabilities in that forum only.

The method of assigning a role in the activity module context is very similar to assigning a role in your course.

To assign a user a role in an activity module context: