For Windows disk imaging, I use DriveImageXML. I do regular images on multiple machines and I've actually restored images (make sure to ALWAYS test your backups! If you can't restore them, they're useless.) not only to like hardware but to disparate hardware. DriveImageXML holds up well against a lot of commercial packages and it is free.
For Windows file backups, I use a tool called FreeFileSync. It's available on SourceForge and is actively supported. I have Windows user folders (documents, pictures, etc.) setup in "mirror" mode between the PC and NAS, so if a user adds, changes, or deletes a file locally on the machine, FFS instantly copies that information to the NAS if the NAS is online. If the machine is offline (e.g. a traveling laptop), all changes are done locally and mirrored as soon as the machine is back online with the NAS again.
For Mac, I use Time Machine and I also use FreeFileSync as well.
For the NAS, I use the built-in backup software (QNAP Backup Station) to a USB device.