"A Cure for the Common Code" lets the student experience and learn about formal software technical reviews. The course creates a virtual world in the form of a software development company in which the student learns about and participates in code inspections. The student takes the role of a software engineer who has just joined this company. The student can access various "rooms" in the company, including an auditorium, training room, library, office, and conference room.
The student controls which rooms to visit, with each room serving a specific purpose. The auditorium introduces the student to the importance of software quality and to the company environment in which the student will learn about code inspections. The training room gives background information on related topics such as the roles in an inspection and other types of software technical reviews. The library provides textual resources as well as short video segments of what to do and what to avoid during inspections. The office provides the student with tools for preparing for the inspection, such as a source level debugger and hypertext tool for examining the code. Within the conference room, the student takes part in a code inspection simulation.
The student is an active participant in the code inspection, and as such his or her comments, or lack thereof, as well as timeliness affect the course of the inspection dialogue and ultimately the success of the inspection. In addition, the role the student takes in the inspection is not predetermined but is selected by the student. In order to provide this flexibility, a rule base is used to control the code inspection simulation.
In order to participate effectively in the code inspection, the student needs to recognize and react to the other reviewers' comments as well as their emotional states. The importance of group process issues necessitated that the inspection simulation be presented as realistically as possible while still preserving the flexibility of dynamic role selection and active participation. The code inspection course made use of DVI technology for dynamic inspection scene creation in addressing this requirement.
For references on software technical reviews and inspections, consult Philip Johnson's Web bibliography on inspections. The references pertaining to the ALT Project here are listed in reverse chronological order.
Abstract: New digital video technologies provide a wide spectrum of multimedia interface capabilities for educational courses running on personal computers. A formal experiment was conducted using a digital video course on code inspection to determine the effects of such capabilities on recall performance and attitude. The finding suggest that the presentation of material as motion video rather than a slide show format within an interactive video course leads to better recall performance. In addition, the presence of motion video in the interfaces and the use of surrogate travel for navigation promote better student opinions toward the subject matter.
Much recent effort has focused on developing computer hardware and software to support compressed interactive video. Most of this work assumes a conventional "video-in-window" (VIW) from the TV or videoconference models, supported by computer-based interaction and retrieval features. The user has traditionally been outside looking in on data--able to play, pause, and stop video but do little else with it (a VCR paradigm). However, some interesting virtual environment applications turn the situation around.
Abstract: Variable granularity knowledge about a domain, content, image structure, and the appropriate use of content and image is embedded with multimedia objects. These often orthogonal descriptions of a multimedia object base are shown to promote usability, accessibility, and fidelity. Also described is Hitchcock, and expert system to intelligently and interactively create scenes from images and motion video objects. The coupling of embedded knowledge with Hitchcock provides, for the first time, the ability to present disparate text, audio, images, and video intelligently in response to users needs in a high fidelity, interactive environment.
Description: This paper documents how rule bases and digital multimedia can be used to support low-cost simulations. It uses the code inspection course produced by the Advanced Learning Technologies Project as demonstrable proof for the claim that the synergistic effects of using digital multimedia to improve visual fidelity along with rule bases for behavioral modeling and dynamic scene creation can significantly improve the utility of low-cost simulators and part-task trainers. Download pdf
Abstract: Software engineers need practical training in addition to classroom lectures in order to obtain the knowledge and skills necessary to succeed in industry. This training is provided by laboratories in other engineering disciplines. Such laboratories have been implemented as computer-based interactive video courses in the past, with numerous advantages. Based on this success, an interactive video course was created for use as a "code inspection laboratory", in which the skills of preparing for and participating in code inspections are learned and practiced. This paper summarizes the anecdotal feedback and usage data from 120 students who used the course over the past two years. Lessons learned from these experiences are discussed, with implications for the development of future interactive video software engineering laboratories.
Abstract: The need for technological solutions to learning in the software engineering field is increasing. The Advanced Learning Technologies Project (ALT) has developed a highly interactive, high-fidelity simulation of a group process communication. The first course demonstrating these techniques is on the formal technical review known as code inspection. This article discusses the motivation for creating a digital video code inspection course, as well as the rationale underlying the design decisions made during its development. The flexibility of digital video combined with the modeling and controlling capabilities of expert system technology results in an exceptionally interactive inspection simulation. Download pdf Watch the ACM produced video of the Project (requires RealPlayer).