In the summer of 2018, the Games Institute was approached by the UW Engineering IDEAs Clinic who were looking to apply game design concepts towards the development of a special academic activity. Over the next five months, I worked with software engineering professors to develop a large-scale collaborative programming activity that exposed students to the complexities of large-scale, multi-version software development.
The goal of the activity is for teams of 16 students to collaborative program the various subsystems of a virtual interstellar colony ship such that it can safely and autonomously navigate to a habitable exoplanet. Each ship "crew" is organized into asymmetric sub-teams who are responsbile for programming the ship's propulsion, defence, sensors, and navigation systems as well as designing and specifying the interfaces between each system. At the same time, the students are exposed to the Git version control system in order to facilitate writing and integrating their code at both the per-squad, per-ship, and per-fleet levels.
Since 2018, each incoming class of first-year software engineering students has participated in the spaceship collaboration activity and I have periodically returned on a consulting basis to enhance and deploy the activity for new sets of students.