Stringer allows you to step forward and backward through your shuffle easily. Within the app, all you need to do it either move the String down to step back or you can jump through albums that have already played by entering edit mode (swipe to the left) and pulling down on the table to peek back at what's played before.
Here's a video of String history in action.
One note about using history: if you leave the app and use Control Center to navigate your String from elsewhere on your phone, you'll only be able to step backward to the song that was playing when you last left the app. If you return to the app, you can go as far back as your String allows, but from outside the app it "freezes" that last known position.
We use the default system music player on iOS, and unfortunately, this is a limitation of that integration. It probably won't come up all that often, but we wanted to make it known in advance so there would be no confusion as to how the app worked in the background.
Questions? Comments? Let us know.