You may also want to follow a few flow sequences that a typical user traverses on your website. This would help you in identifying things that you might have missed. A simple rule to follow in this process is to think about the constituents and not backup. Once you are done with the list, rotate it through a couple of associates to get their feedback and ammend it, if necessary. You need to decide upon a few tools to help you in the backup process.
Some techies prefer to develop an in-house tool rather than buying one.
It's more of a question of your personal choice and the cost to develop, desired functionality and the available time. Whatever you decide, make sure you evaluate the tool to see it meets your expectations. This question may seem simple at the outset, but is an important concern. This is because it's related to choosing the most appropriate date and time for the backup. For instance, you may want to do a daily backup and you also run a few cron jobs that update the database during the day.