Considering the complexity of today’s software intensive systems, there is an increasing need for a debugging method that can tackle system level faults, where reproducibility and observability of multiple interacting programs and subsystems can be dealt with holistically and where in-field debugging is as important as predeployment debugging. This paper describes System Debugging as the next step into which traditional debugging methods need to evolve in order to understand complex failure situations, by using computer aided methods for finding and understanding complex failure situations.