I am working on a complete rewrite of a complex, multi-step and enterprise-/internal-facing web application. The existing application's UI was literally based upon Excel spreadsheets that had been previously used to fulfill the business need. The users loved Excel, which they found to be quick and flexible. However, they hate the 1998-ish web forms that replaced them a few years ago.
For the new application, we conducted detailed workflow analyses and user research, from which we identified four major steps within the end-to-end business process. We adopted a tab metaphor to create "swim lanes" in which multiple sub-tasks could be completed while maintaining the context of a primary step (read: tab).
To create a fluid and seamless "Excel-like" experience, I wrote the original UI spec to support auto-save, undo, and re-do across multiple tabs. However, our technical architect objects to the amount of coding and maintenance required to do any of this. So, we've compromised on prompting users to save changes when navigating between each major step. However, within a major step, a user might interact with up to a dozen forms contained within sub-tabs. Users need to be able to quickly move back and forth between these secondary tabs (which maps well to the task analyses). Sticking with the Excel metaphor, I therefore want to permit users to dynamically navigate back and forth between these sub-tabs without a barrage of save reminders and field validation interruptions. This is where we've reached a stalemate.
So, I'm reaching out to the UX universe to solicit best practices for gently prompting users to save changes with minimal disruption to the users' thought processes. I also want to avoid modal or javascript popups wherever possible, but so far, I haven't come up with an alternative to the dialogue approach. Because this is complex and data-intensive business process, I want to reduce users' cognitive load and minimize the frustration that constant save reminders would likely impose.