How to go back or move forward to any usertask

Can take a look at the discussion here: Chaining User Tasks to create an interactive flow (sort of a wizard style)? - #5 by StephenOTT

User tasks cannot go “backwards”. You have a create a new instance. If you want to use the standard/common apis you would need to model every sequence flow path. Otherwise you need to use the Process Modification APi to move the token/execution around.

Personally I have argued that BPMN is not good for wizard / form flows.