Lollipop workflow
You're on a website doing something. They've given you the tools to do it, and you're stepping through the workflow (let's call it A). In order to finish it, you need to take a side trip through a separate workflow (B). You follow the link provided on the A page to do B. You complete workflow B and are returned to ...the B workflow.
Wrong answer.
I recently encountered this scenario and it was maddening. For bonus points, workflow B had no link back to workflow A. I've decided to call this a "lollipop workflow". You're going from point A to point C, and have to cross through point B to get there. Trouble is, all roads from B lead to B.
It's called context
It's up to developers to understand the user experience they're creating. Respect what your users are doing beyond the current page and beyond the current workflow. It's called context, and it can work very much like code blocks.
while (the user is doing A) {
if (they want to do B) {
// They're still doing A
while (they're doing B) {
// They're doing B within the context of doing A
}
// They've finished B, but they're still doing A
}
// That's right. Still doing A!
}
Savvy?