Computer labs are commonly used in computing education to help students to reinforce the knowledge learnt in classrooms and to gain hands-on experiences on specific learning subjects. While traditional computer labs are based on physical computer centers on campus, more and more virtual computer lab systems have been developed that allow students to carry out labs on virtualized resources remotely through the Internet. Virtual computer labs make it possible for students to use their own computers at home instead of relying on computer centers on campus to work on lab assignments. However, they also make it difficult for students to collaborate, due to the fact that students work remotely and there is a lack of support of sharing and collaboration. This is in contrast to traditional computer labs where students naturally feel the presence of their peers in a lab room and can easily work together and help each other if needed.
Funded by NSF’s Division of Undergraduate Education, this project develops a collaborative virtual computer lab (CVCL) environment to support collaborative learning in virtual computer labs. The CVCL environment leverages existing open source collaboration tools and desktop sharing technologies and adds new functions unique to virtual computer labs to make it easy for students to collaborate while working on computer labs remotely. It also implements several collaborative lab models to support different forms of collaboration in both form and informal settings. We have developed the main functions of the CVCL environment and established a web portal for students to use the environment.
To evaluate the developed environment, we incorporate it in three classes of the System Level Programming course in the 2018 fall semester. This course requires students to practice Unix commands and C programming in a Unix/Linux environment. We identified multiple ways of using the CVCL environment to support computer labs associated with this course. These include: 1) class-affiliated virtual study room that offers a common virtual space for students of a class to discuss and propose solutions for practice problems posted by the instructor; 2) virtual tutoring center where students can have real-time one-to-one interactions with tutors in designated tutoring hours (similar to what happen in a physical tutoring center); 3) virtual computer lab where students carry out computer labs under the guidance of a lab assistant; 4) ad-hoc virtual study room where students can reserve virtual study rooms and invite classmates/friends to study together whenever they want to. We have incorporated these functions in the System Level Programming course and are collecting evaluation data in this semester. This paper will describe the CVCL environment and report preliminary evaluation results regarding how effective the CVCL environment can support remote collaboration in virtual computer labs.
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.