A good approach is also to try to reproduce the issue with a fresh set of data. For instance, a fresh user, or a fresh object (thing), etc. An issue can happen because of a legacy situation in your data, and if you cannot reproduce the issue with a fresh set of data, this is a strong hint that this is the case. The approach here is then different, instead of changing the whole workflow, a fix could be to extract the things that meet the requirements to lead to an issue, and modify these things using Bulk Operations.