Software development is a complex task and there's no software without bugs. Debugging is the process to remove software failures. Debugging is a task that can involve some other software to facilitate the debugging process.
A plugin can become complex, requiring debugging tools to discover problems. The complexity of the debugging process can start by inserting some prints inside the code or adding log messages to finish controlling the execution instructions by instructing how to find execution problems.
Inserting a breakpoint to stop the execution at a certain point of the code of a third-party QGIS plugin can be useful to discover how it works.
There is a set of possible tools to debug the ...