Should you incorporate AutoSave in your Saas solutions?
Autosave is a technique employed by most computer applications and video games to save the current progress to help reduce the risk of data loss in unlikely cases of freeze, crash, or interface error or network issues. Autosaving is typically done in fixed intervals of a complex editing task. Because of this there seems to be a growing trend with online applications integrating auto save data automatically.
In many cases during an interruption this has been greatly welcomed among the user as it gets the task done if one forgets to do so manually. A perfect common example of this is the Google Docs a web application that saves the edits and changes after each user action. Microsoft OneNote is another example of a desktop application that employs the same.
Although this is well appreciated and welcomed among users there are times when it is overdone. Here is a list of what, when and where not to use the AutoSave option?
Usage of autosave button is great, but it must be an option of the user and must provide flexibility rather a one way forced-choice made on their behalf. Have you typed in a long text only for it to disappear because of a network error? Applications and platforms that employ forms with a text area might benefit from AutoSave option. There are some cases where a user might want to undo his actions, including Autosave under such cases will fire lots of server calls. In case of storing information such as payment, credit cards or passwords and other sensitive data the user must be provided a choice and the user must be notified beforehand.
This might not be beneficial if your form contains countless fields. In other words, every time your application triggers the auto save event your form executes the save to database command. If your form has 10 fields, then you should expect your server to run this command at least 10 times or more which may impact the user experience. Since webpages are always operating on send/receive commands, a user’s system may allocate an unnecessary amount of resources to your page/form. Added this may invite higher attacks as your database holds control over these events and block you from checking if the data provider is a human or a bot.
Therefore, your page may be in higher risk of denial of service attacks. In addition, your database processes thousands of scrap data, reducing data quality and overall database performance. Furthermore, you have to consider the possibility if the employed AutoSave option has a wider impact in cases of application changes and should take into consideration the amount of work to be done in case a user intends to redo the task. To wrap things up, AutoSave is an option that has proven beneficial under most circumstances, however, it requires context to become a successful feature of your SaaS products.