This two-year project is evaluating the efficacy of the Microlab Learning Cycle. The Microlab Learning Cycle is an innovative approach to active learning based on Process Oriented Guided Inquiry Learning (POGIL). During the learning cycle, students explore a problem with guided discovery. The instructor then introduces the topic in lecture and students apply this knowledge to related problems. Microlabs are 10-15 minute computer-based activities that are completed during lecture. In a logical microlab, students are asked to solve a problem by entering their answers using a graphical input tool and submitting their solutions to an automated grading system. In a programming microlab, students are asked to complete a skeleton program that uses automated grading. The Microlab Learning Cycle is based on using logical microlabs during the exploration phase and programming microlabs during the application phase.

Formal evaluation methodologies are being used to demonstrate the effectiveness of the Microlab Learning Cycle. Faculty participants at several universities, including HBCUs, are initially teaching the target topics using traditional lecture. During the next offering of the course they are using the microlab learning cycle approach. Students are solving similar problems in both terms and an external evaluator is measuring the learning outcomes. Faculty participants and students are being asked to report on their experiences using microlabs.

A "cloud-based" approach allows access to the learning materials to anyone with Internet access. The principal investigators are presenting papers and offering workshops to promote active learning using microlabs.

Project Report

The microlab approach is a form of active learning designed to engage the student in the learning process. A microlab typically lasts 5-10 minutes and can be completed on desktops, laptops, tablets, and mobile devices. When using a logical microlab students solve a conceptual problem by arranging icons on a screen to represent a solution. For example, given the preorder and inorder traversals of a binary tree, the student is asked to construct the original tree. When solving a code magnet microlab students construct a method by dragging and dropping code magnets inside the skeleton of the method. Control structures can nest other magnets, including nested control structures. The method is then compiled and subjected to unit testing. Code magnets are supported for Java, C/C++, Python and Prolog. With both types of labs, students are given feedback to guide them to a correct solution and they can repeat the lab until it is correct. We have refined the microlab approach and used it in many core courses at a variety of universities. A Microlab Repository provides easy access to existing materials via the Internet. Student exam results and surveys show that microlabs are very popular and help improve student learning. Students often repeat microlabs they have already solved in preparation for an examination. Since dissemination is critically important, multiple workshops have been presented so that other faculty can adopt the microlab approach and help develop new microlabs. Contributions from workshop participants have expanded the Microlab Repository. Additionally papers have been published and workshops presented at international and national conferences on using microlabs to promote active learning throughout the computer science curriculum.

National Science Foundation (NSF)
Division of Undergraduate Education (DUE)
Standard Grant (Standard)
Application #
Program Officer
Jane Prey
Project Start
Project End
Budget Start
Budget End
Support Year
Fiscal Year
Total Cost
Indirect Cost
Appalachian State University
United States
Zip Code