Reference Hardware Components
In order to relate the hardware component model to software, I will frequently refer to two hardware componentsa TV and a VCR. Furthermore, I will simplify the example by considering only the video signal interaction between the two components.In order to obtain the video signal from the VCR, the video-output jack of the VCR needs to be connected to the video-input jack of the TV, as shown in Figure 1.1.
Figure 1.1. Connecting a VCR to a TV using Video Jacks.

Some advantages of keeping these two hardware components as separate units are obvious:a defect in VCR logic requires only the VCR to be field-replaced; the VCR can be upgraded without necessarily upgrading the TV; and any brand VCR will work with any brand TV, as long as they have standard jacks for video input/output.I will now write a program to simulate the behavior of TV-VCR interconnection.