GroupEng is an open source (AGPLv3) program that makes it easy for instructors to assign students to groups for projects or groupwork, even with large classes.

GroupEng was written specifically to help instructors follow education research guidelines for improving student, and especially minority, performance in group project based classwork. It allows instructors to think at an abstract level about what properties they want student groups to have; GroupEng handles the details of optimizing the groups to meet those criteria.

GroupEng operates on class data from an excel spreadsheet (exported to a .csv text file) and forms groups of students based on grouping rules supplied by the instructor. These rules are defined using four grouping operators:

You specify class data, desired group size, and an ordered list of grouping rules (earlier rules are given higher priority) in a simple text file, and GroupEng does the rest, outputting a grouping of the students, as well as statistics of how well it was able to meet your rules. GroupEng has a random element, so different runs with the same rules will generate different groups.


GroupEng v1.3

GroupEng requires only Python. If you are using a Mac, you already have python, but if it fails try this version.

We also have much more detailed instructions if you want them.

GroupEng is still fairly experimental software. I hope it is useful to you, but it is still a little rough around the edges. Feel free to contact me if you have any problems using GroupEng

Documentation and Publications

Kathryn's talk on GroupEng at the ASEE Lawrence Section in March 2012.

We presented talk and paper on GroupEng at the 2011 WEPAN conference in Seattle.

These documents give a good introduction and overview of GroupEng and how you should think about using it. We have simplified the input files since those documents were written, so follow the example that comes with the program instead of the directions in the paper.

Development / Bugs

GroupEng is on GitHub . You can get the latest development code there. If you know how to use github please file issues there if you have problems or want to request features, or you can email me.
GroupEng was written by Thomas Dimiduk while a grad student at Harvard (PhD 2016) with Kathryn Dimiduk of Cornell Engineering's James McCormick Family Teaching Excellence Institute.