Backups ... there's a couple of thousands posts right there.
Let me try and cover some of the options.
First ... a "full backup" in terms of everything, including the OS is called a "nandroid" and will require a custom recovery which means your phone has already been rooted and modified. What it does is save a complete system image including files settings and OS that you can move off your device. If you restore a nandroid, it is like a time machine (don't sue me, Apple) because it will put your phone back to the exact state it was at the time of the backup.
Titanium backup does a good job of backing up apps, data and settings for those apps, but you'll need root for that, too. And Titanium, while powerful, has a bit of a learning curve.
There is a sort of back-up option within Android itself. If you got to menu>settings>backup & reset you can check the boxes to backup apps, data and settings to Google's servers ... and check to Automatically restore. What this does is store *some* data and settings, but not all, and it doesn't really backup the apps, but maintains a list of apps installed from the play store. What it doesn't do is back up protected databases like SMS messaging and email accounts. If you sync your accounts, then contacts will already be backed up. It also doesn't back up your files, like pictures, videos, music, etc.
If you have those settings checked and you either reset your existing device or get a new one, as soon as you login to your gmail account, Android will reinstall all the apps in the list that are available in the play store to the latest version and then restore and data and settings for those apps that could be backed up. It won't restore your home screen setups or set defaults. If you have any older apps that are no longer on play, or you want to use an older version of an app, you won't get them back. You'll need to back them up manually.
You can also backup using kies, but I have never had much luck with kies, so I don't know all the "gotcha's" there. maybe someone else could fill in that blank.
Here's what I do when resetting or getting new devices.
I back up my SMS messages using
SMS Backup & Restore and copy the file off the phone. I don't worry about email as I connect using IMAP accounts so all my messages are on the server. I sync my apps and contacts to Google and I copy my photos and media files off the phone to a PC for safekeeping. I use Apex launcher so I back up my launcher settings as well and copy them off the phone.
I don't play games so I don't really worry about losing settings or levels or whatever they call them (Yeah, I'm and old fart).
New phone scenario... charge it up, log in to my Google account and the play store and let Automatic restore do it's thing (connected to WiFi as there will be a lot of downloads ... I have well over 100 apps now
). When done, I restore my messages, setup my email accounts and restore my launcher settings. Then I'm back in business.