Team Maker

Team Maker groups students into teams, evenly distributing students based on survey responses while not isolating female and minority students. The original idea for Team Maker is in the Source Forge code Team Maker. The method was published by Layton, Loughry, Ohland, and Ricco (2010) in Advances in Engineering Education. A version of Team Maker, which also includes scheduling support, is incoporated into the program CATME, along with additional tools such as peer evalaution and rater practice.

The Team Maker described here uses a quiz in Canvas, which can be downloaded from the Canvas Commons. After the students have completed the survey, install R or R Studio and download the Team Maker R script. The script will pull results from the Team Maker quiz, organize students into teams, and create those teams as a Group Set in Canvas. The current version of the script will create teams nested with Canvas sections (for example if two course sections have been merged into a single Canvas shell). Questions and weightings can be customized in the script, while the advanced programmer can customize any feature of the code. Instructions are below.

Team Maker Quiz in Canvas

  1. Navigate to the Canvas Commons on the left-hand side of Canvas, search for the Team Maker quiz. Click Import/Download to bring it into your course.
  2.  The recommendations are to adminster the quiz as a Graded Survey, so that students receive points for completing the quiz regardless of their answers. Allow Multiple Attempts lets a student change their answer if the choose to, and letting them see the quiz responses along with "Let Students See The Correct Answers" allows them to see that their are no correct answers. Otherwise Canvas displays a statement that the correct answers are hidden, implying that their are correct and incorrect answers.
  3. The order of the first three questions is critical: gender, race, and GPA. The remaining questions can be modified, removed, or added to. The only requirement is that the questions be multiple-choice.
  4. For gender, the R script is specifically looking for "Female" and "Non-binary". The others can be modified if needed.
  5. For race, the R script is specifically looking for "White" and "Prefer no to answer". The others can be modified, removed, or added to.

Team Maker R Script

  1. Download and install R or R Studio.
  2. Download and save the Team Maker R Script.
  3. Open the script in R or R Studio to modify the configuration parameters, listed at the beginning.
  4. In Canvas, you must go to your Account, Settings, Approved Integrations, and click on "New Access Token". Copy that list of characters into the R script as the "CanvasToken". The token authorizes the script to interact with Canvas with the same rights as you. Never share it with anyone.
  5. Similarily, modify the "baseurl" parameter in the script for your institution. Note, you can use the test environment ([organization name].test.instructure.com) to try out the script before using it on the real environment.
  6. The weights control how each question is used in making teams. If you did not modify the Canvas quiz, you can use the default weights. The minimum weight is -1, which will disperse people across the teams. A weight of zero will ignore a category. The maximum weight of 1 will cluster people with the same choices. Fractional weights result in less influence for that category. Gender and race have a specific algorithm designed to avoid isolating non-male and non-white. It is recommended you keep the first two weights = 1. In general the remaining weights are negative to disperse students, with less negative numbers for those categories that have less influence on the sorting. The weights are in the same order as the Canvas quiz questions, and their needs to be the same number of weights as questions.
  7. If you choose to insert a text-only "question" in Canvas as the first question, typically as a notice to students, set ignoreNotice = TRUE so that the first question is ignored.
  8. Teams can be choosing so that each team has a minimum size (chooseTeams = "minSize") but an undetermined number of teams. Alternatively, set chooseTeams = "numberOf" to create a given number of teams  but an undetermined size. Then set the TeamSize or NumberOfTeams accordingly.
  9. You can also change some optimization parameters, but the default settings should work well.
  10. Run the code. In R Studio, pressing Ctrl-Shift-S will source the entire script, only displaying key information. In RGui, accomplish the same by choosing from the menu File/Source R code..
  11. You will be prompted to choose the course, confirm labels match, and confirm weights match labels. The groups will be displayed, saved to TeamMaker.csv, posted to a Teams page in Canvas, and created in the Teams group set in Canvas People.

Teams in Canvas

Students will see their group name, for example "Team 1", listed at the right-hand side under "Course Groups". Clicking on that will bring them to their course page, in which they can click on "People" and see the names of their group members. They can send group members messages via Canvas.

Instructors can also direct students to list of students by team in the "Teams" page in Canvas Pages.

In addition, the TeamMaker.csv can be used by instructors in other programs, like Microsoft Excel or Google Sheets, to visualize the teams.