Best practices for upgrading user data when updating versions of software

Posted by Javy on Programmers See other posts from Programmers or by Javy
Published on 2011-11-27T16:24:55Z Indexed on 2011/11/27 18:04 UTC
Read the original article Hit count: 260

In my code I check the current version of the software on launch and compare it to the version stored in the user's data file(s). If the version is newer, then I call different methods to update the old data to the newer data version, if necessary.

I usually have to make a new method to convert the data with each update that changes user data in some way, and cannot remove the old ones in case there was someone who missed an update. So the app must be able to go through each method call and update their data until they get their data current. With larger data sets, this could be a problem.

In addition, I recently had a brief discussion with another StackOverflow user this and he indicated he always appended a date stamp to the filename to manage data versions, although his reasoning as to why this was better than storing the version data in the file itself was unclear.

Since I've rarely seen management of user data versions in books I've read, I'm curious what are the best practices for naming user data files and procedures for updating older data to newer versions.

© Programmers or respective owner

Related posts about versioning

Related posts about software-updates