Istoria dialogului reprezinta o înlantuire a formularilor utilizatorului si ale sistemului, prin care se permite în orice moment al dialogului accesarea oricaror formulari anterioare. Scopul mentinerii unei istorii a dialogului este de a rezolva referintele si elipsele (definite în paragraful 3.1.3).
Din punct de vedere practic, istoria dialogului se implementeaza cel mai usor sub forma unei stive continând toate formularile anterioare. Aceasta solutie, desi simplu de implementat, este ineficienta din punct de vedere al vitezei, datorita necesitatii prelucrarii semantice a fiecarei formulari, în vederea localizarii informatiei. O solutie eficienta este pastrarea unei stive cu reprezentarile semantice, o asemenea stiva fiind utila si în momentul analizei semantice, pentru rezolvarea unor ambiguitati [10].