Scan tools are designed to interface with a car's “on board diagnostic” system in order to facilitate the diagnostic process. In that way, they are a lot like car code readers. They can be plugged into an OBD-I or OBD-II socket, read and clear codes, and view data readouts from various sensors
Store and play back live data
Graph data
Read both generic and manufacturer-specific trouble codes
Display pending codes
Provide trouble code definitions
Provide troubleshooting procedures or tips
Although the ability to read and clear codes is important, the aditional functionality provided by a good scan tool can be extremely helpful in diagnosing a problem. OBD-II vehicles, in particular, can provide an enormous amount of data from a variety of different sensors, which is why many scanners have the ability to store and play back live data. That can allow you to test drive the vehicle and then view a recording of specific sensor output readings during operation.