1. A method for enhancing an interactive voice response (IVR) system, the method comprising: inspecting the IVR system to determine states defined therein, the states representing choices available to a user to navigate the IVR system; composing visual representations of the states of the IVR system to display to the user; and enabling user interaction with the IVR system via the visual representations.