In this lab students are to create a program in which the user interacts with virtual pets with different needs. Students are first asked to plan and design classes in the form of ADT's with their fellow classmates. Once they are designed, students are asked to work individually to implement the classes.
For more information on sequencing and how this laboratory fits within a Data Structures course, please see the syllabus linked below.
This laboratory is started in the classroom where students work collaboratively to design in the classes. Once the classes are designed, student are asked to implement these classes independently. This type of collaborative learning if only in the beginning, helps to grow an inclusive student community. Students are given a lot of choice in this laboratory. They can be as creative as they want to be in designing the classes, but are also given a list of requirements that need to be in the program in some form. Student choice in an assignments helps to "Make it Matter".