The Structure of a Lab

Throughout this documentation, and in the application itself, the following terminology is used:

Lab
A workshop-style practical exercise that a student performs with a computer, intended to achieve a learning objective.

Lab stage
Each lab may be subdivided into intermediate "goals" that occur throughout the activities. These are referred to lab stages and a WLab lab object can contain as many or as few as you like. The end point of a given lab stage is usually considered the correct "answer" for that part of the lab exercise. Usually, subsequent stages will start from the end point of the previous, or at the very least build on the activities of the previous stage.

Virtual Machine or VM
A virtual machine image that includes the required software and data, and starts up at a point appropriate for a lab stage. A lab stage always contains a VM. There are two types of VMs in WLab, a backend VM and a tutor VM. (See The difference between a backend VM and a tutor VM.)

Resource
A static piece of learning content, in the form of a web page, referred to in the form of a URL. This is intended to inform, instruct and assist the student with the activities of a given lab stage. A lab stage can contain multiple resources; equally, it may not contain any resources at all.

These various components fit together as described with by this diagram:

WLab Lab Structure Diagram

Thus, a lab contain several lab stages. Each lab stage contains a virtual machine, which provides both the IT environment and the data/files/etc required for the student to carry out that part of the exercise. Finally, each lab stage may also have one or more resources which should complement the practical environment provided by the VM, and deliver associated learning materials to assist with the exercise.

The order of the lab stages, and the evolution of the VMs that form them should describe the path the student will take from start to finish while completing the target activity:

Stage Path