In my application, I am providing a ticket form that the users can go back and edit. I had designed it so that they can change one to many fields without real-time saving by providing a save and discard changes buttons. It is obvious to the users if they are viewing a modified form by providing an obvious asterisk.
I am second-guessing this approach and wondering if it might be better to save after each inline edit? By doing so, it seems like the only effective way of accomplishing this would be to provide a save/cancel option on a per field basis during the editing process -- similar to what JIRA does.
Is the above way the only effective way of doing real-time editing? Or is simply saving the new fields on blur good enough (so long as the user expects this behavior)? The only issue I can see saving in real-time would be if the user assigns the ticket to someone on mistake and email notifications are mistakenly sent out as a result.
Am I overthinking this, or is one way truly better to the end user?