Reverse Debugging is a new paradigm that simplifies bug analysis.
It greatly improves debugging experience for the developers and reduces debugging effort dramatically.
The program is run unmodified and without breakpoints until a misbehavior occurs.
From there, developers step back in time and investigate what happened.